1 //===-- HexagonMCAsmInfo.cpp - Hexagon 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 HexagonMCAsmInfo properties. 10 // 11 //===----------------------------------------------------------------------===// 12 13 #include "HexagonMCAsmInfo.h" 14 15 using namespace llvm; 16 17 // Pin the vtable to this file. 18 void HexagonMCAsmInfo::anchor() {} 19 20 HexagonMCAsmInfo::HexagonMCAsmInfo(const Triple &TT) { 21 Data16bitsDirective = "\t.half\t"; 22 Data32bitsDirective = "\t.word\t"; 23 Data64bitsDirective = nullptr; // .xword is only supported by V9. 24 CommentString = "//"; 25 SupportsDebugInformation = true; 26 27 LCOMMDirectiveAlignmentType = LCOMM::ByteAlignment; 28 InlineAsmStart = "# InlineAsm Start"; 29 InlineAsmEnd = "# InlineAsm End"; 30 ZeroDirective = "\t.space\t"; 31 AscizDirective = "\t.string\t"; 32 33 MinInstAlignment = 4; 34 UsesELFSectionDirectiveForBSS = true; 35 ExceptionsType = ExceptionHandling::DwarfCFI; 36 UseLogicalShr = false; 37 } 38