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 anchor()19void LanaiMCAsmInfo::anchor() {} 20 LanaiMCAsmInfo(const Triple &,const MCTargetOptions & Options)21LanaiMCAsmInfo::LanaiMCAsmInfo(const Triple & /*TheTriple*/, 22 const MCTargetOptions &Options) { 23 IsLittleEndian = false; 24 PrivateGlobalPrefix = ".L"; 25 WeakRefDirective = "\t.weak\t"; 26 ExceptionsType = ExceptionHandling::DwarfCFI; 27 28 // Lanai assembly requires ".section" before ".bss" 29 UsesELFSectionDirectiveForBSS = true; 30 31 // Use the integrated assembler instead of system one. 32 UseIntegratedAssembler = true; 33 34 // Use '!' as comment string to correspond with old toolchain. 35 CommentString = "!"; 36 37 // Target supports emission of debugging information. 38 SupportsDebugInformation = true; 39 40 // Set the instruction alignment. Currently used only for address adjustment 41 // in dwarf generation. 42 MinInstAlignment = 4; 43 } 44