Line data Source code
1 : //===-- MCTargetDesc/AMDGPUMCAsmInfo.cpp - Assembly Info ------------------===//
2 : //
3 : // The LLVM Compiler Infrastructure
4 : //
5 : // This file is distributed under the University of Illinois Open Source
6 : // License. See LICENSE.TXT for details.
7 : //
8 : /// \file
9 : //===----------------------------------------------------------------------===//
10 :
11 : #include "AMDGPUMCAsmInfo.h"
12 : #include "llvm/ADT/Triple.h"
13 :
14 : using namespace llvm;
15 :
16 3275 : AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(const Triple &TT) : MCAsmInfoELF() {
17 3275 : CodePointerSize = (TT.getArch() == Triple::amdgcn) ? 8 : 4;
18 3275 : StackGrowsUp = true;
19 3275 : HasSingleParameterDotFile = false;
20 : //===------------------------------------------------------------------===//
21 3275 : MinInstAlignment = 4;
22 3275 : MaxInstLength = (TT.getArch() == Triple::amdgcn) ? 8 : 16;
23 3275 : SeparatorString = "\n";
24 3275 : CommentString = ";";
25 3275 : PrivateLabelPrefix = "";
26 3275 : InlineAsmStart = ";#ASMSTART";
27 3275 : InlineAsmEnd = ";#ASMEND";
28 :
29 : //===--- Data Emission Directives -------------------------------------===//
30 3275 : SunStyleELFSectionSwitchSyntax = true;
31 3275 : UsesELFSectionDirectiveForBSS = true;
32 :
33 : //===--- Global Variable Emission Directives --------------------------===//
34 3275 : HasAggressiveSymbolFolding = true;
35 3275 : COMMDirectiveAlignmentIsInBytes = false;
36 3275 : HasNoDeadStrip = true;
37 3275 : WeakRefDirective = ".weakref\t";
38 : //===--- Dwarf Emission Directives -----------------------------------===//
39 3275 : SupportsDebugInformation = true;
40 3275 : }
41 :
42 66731 : bool AMDGPUMCAsmInfo::shouldOmitSectionDirective(StringRef SectionName) const {
43 : return SectionName == ".hsatext" || SectionName == ".hsadata_global_agent" ||
44 : SectionName == ".hsadata_global_program" ||
45 66731 : SectionName == ".hsarodata_readonly_agent" ||
46 66731 : MCAsmInfo::shouldOmitSectionDirective(SectionName);
47 : }
|