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