blob: 8e90b72f8c527581c0a47282d6576724e8689e2b [file] [log] [blame]
Sean Fertilef09d54e2019-07-09 19:21:01 +00001//===- MC/MCAsmInfoXCOFF.cpp - XCOFF asm properties ------------ *- C++ -*-===//
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#include "llvm/MC/MCAsmInfoXCOFF.h"
10
11using namespace llvm;
12
13void MCAsmInfoXCOFF::anchor() {}
14
15MCAsmInfoXCOFF::MCAsmInfoXCOFF() {
16 IsLittleEndian = false;
17 HasDotTypeDotSizeDirective = false;
diggerlina2c8cd12020-04-30 09:53:41 -040018 HasDotExternDirective = true;
Sean Fertile942537d2019-07-22 19:15:29 +000019 COMMDirectiveAlignmentIsInBytes = false;
David Tenty8558aac2019-08-08 15:40:35 +000020 LCOMMDirectiveAlignmentType = LCOMM::Log2Alignment;
Xing Xueef039a32019-08-25 15:17:25 +000021 UseDotAlignForAlignment = true;
22 AsciiDirective = nullptr; // not supported
23 AscizDirective = nullptr; // not supported
Xiangling Liao3b808fb2019-09-26 19:38:32 +000024 NeedsFunctionDescriptors = true;
25 HasDotLGloblDirective = true;
Xing Xueef039a32019-08-25 15:17:25 +000026 Data64bitsDirective = "\t.llong\t";
Xiangling Liao3b808fb2019-09-26 19:38:32 +000027 SupportsQuotedNames = false;
28}
29
Jason Liu0dc05722019-11-08 09:26:28 -050030bool MCAsmInfoXCOFF::isAcceptableChar(char C) const {
31 // QualName is allowed for a MCSymbolXCOFF, and
32 // QualName contains '[' and ']'.
33 if (C == '[' || C == ']')
Xiangling Liao3b808fb2019-09-26 19:38:32 +000034 return true;
35
Jason Liu0dc05722019-11-08 09:26:28 -050036 return MCAsmInfo::isAcceptableChar(C);
Sean Fertilef09d54e2019-07-09 19:21:01 +000037}