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
15using namespace llvm;
16
17// Pin the vtable to this file.
18void HexagonMCAsmInfo::anchor() {}
19
20HexagonMCAsmInfo::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