1 //===-- LanaiMCAsmInfo.cpp - Lanai asm properties -----------------------===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 // 9 // This file contains the declarations of the LanaiMCAsmInfo properties. 10 // 11 //===----------------------------------------------------------------------===// 12 13 #include "LanaiMCAsmInfo.h" 14 15 #include "llvm/ADT/Triple.h" 16 17 using namespace llvm; 18 19 void LanaiMCAsmInfo::anchor() {} 20 21 LanaiMCAsmInfo::LanaiMCAsmInfo(const Triple & /*TheTriple*/) { 22 IsLittleEndian = false; 23 PrivateGlobalPrefix = ".L"; 24 WeakRefDirective = "\t.weak\t"; 25 ExceptionsType = ExceptionHandling::DwarfCFI; 26 27 // Lanai assembly requires ".section" before ".bss" 28 UsesELFSectionDirectiveForBSS = true; 29 30 // Use the integrated assembler instead of system one. 31 UseIntegratedAssembler = true; 32 33 // Use '!' as comment string to correspond with old toolchain. 34 CommentString = "!"; 35 36 // Target supports emission of debugging information. 37 SupportsDebugInformation = true; 38 39 // Set the instruction alignment. Currently used only for address adjustment 40 // in dwarf generation. 41 MinInstAlignment = 4; 42 } 43