AMDGPU/SI: Emit constant arrays in the .hsrodata_readonly_agent section
[oota-llvm.git] / lib / Target / AMDGPU / MCTargetDesc / AMDGPUMCAsmInfo.cpp
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
13 using namespace llvm;
14 AMDGPUMCAsmInfo::AMDGPUMCAsmInfo(const Triple &TT) : MCAsmInfoELF() {
15   HasSingleParameterDotFile = false;
16   //===------------------------------------------------------------------===//
17   MaxInstLength = 16;
18   SeparatorString = "\n";
19   CommentString = ";";
20   PrivateLabelPrefix = "";
21   InlineAsmStart = ";#ASMSTART";
22   InlineAsmEnd = ";#ASMEND";
23
24   //===--- Data Emission Directives -------------------------------------===//
25   SunStyleELFSectionSwitchSyntax = true;
26   UsesELFSectionDirectiveForBSS = true;
27
28   //===--- Global Variable Emission Directives --------------------------===//
29   HasAggressiveSymbolFolding = true;
30   COMMDirectiveAlignmentIsInBytes = false;
31   HasDotTypeDotSizeDirective = false;
32   HasNoDeadStrip = true;
33   WeakRefDirective = ".weakref\t";
34   //===--- Dwarf Emission Directives -----------------------------------===//
35   SupportsDebugInformation = true;
36 }
37
38 bool AMDGPUMCAsmInfo::shouldOmitSectionDirective(StringRef SectionName) const {
39   return SectionName == ".hsatext" || SectionName == ".hsadata_global_agent" ||
40          SectionName == ".hsadata_global_program" ||
41          SectionName == ".hsarodata_readonly_agent" ||
42          MCAsmInfo::shouldOmitSectionDirective(SectionName);
43 }