31 if (
Name.find_first_not_of(
"0123456789_."
32 "abcdefghijklmnopqrstuvwxyz"
33 "ABCDEFGHIJKLMNOPQRSTUVWXYZ") ==
Name.npos) {
38 for (
const char *
B =
Name.begin(), *
E =
Name.end();
B <
E; ++
B) {
55 const MCExpr *Subsection)
const {
120 }
else if (
T.isARM() ||
T.isThumb()) {
143 OS <<
"preinit_array";
159 OS <<
"llvm_linker_options";
161 OS <<
"llvm_call_graph_profile";
163 OS <<
"llvm_dependent_libraries";
165 OS <<
"llvm_sympart";
167 OS <<
"llvm_bb_addr_map";
169 OS <<
"llvm_bb_addr_map_v0";
171 OS <<
"llvm_offloading";
178 OS <<
"," << EntrySize;
197 OS <<
",unique," << UniqueID;
202 OS <<
"\t.subsection\t";
static GCRegistry::Add< OcamlGC > B("ocaml", "ocaml 3.10-compatible GC")
static GCRegistry::Add< CoreCLRGC > E("coreclr", "CoreCLR-compatible GC")
static void printName(raw_ostream &OS, StringRef Name)
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
This class is intended to be used as a base class for asm properties and features specific to the tar...
bool usesSunStyleELFSectionSwitchSyntax() const
StringRef getCommentString() const
virtual bool shouldOmitSectionDirective(StringRef SectionName) const
Return true if the .section directive should be omitted when emitting SectionName.
Base class for the full range of assembler expressions which are needed for parsing.
void print(raw_ostream &OS, const MCAsmInfo *MAI, bool InParens=false) const
unsigned getFlags() const
void printSwitchToSection(const MCAsmInfo &MAI, const Triple &T, raw_ostream &OS, const MCExpr *Subsection) const override
StringRef getVirtualSectionKind() const override
bool shouldOmitSectionDirective(StringRef Name, const MCAsmInfo &MAI) const
Decides whether a '.section' directive should be printed before the section name.
bool isVirtualSection() const override
Check whether this section is "virtual", that is has no actual object file contents.
bool useCodeAlign() const override
Return true if a .align directive should use "optimized nops" to fill instead of 0s.
StringRef getName() const
StringRef getName() const
getName - Get the symbol name.
StringRef - Represent a constant reference to a string, i.e.
Triple - Helper class for working with autoconf configuration names.
static Twine utohexstr(const uint64_t &Val)
The instances of the Type class are immutable: once they are created, they are never changed.
This class implements an extremely fast bulk output stream that can only output to a stream.
@ XCORE_SHF_DP_SECTION
All sections with the "d" flag are grouped together by the linker to form the data section and the dp...
@ XCORE_SHF_CP_SECTION
All sections with the "c" flag are grouped together by the linker to form the constant pool and the c...
@ SHT_LLVM_BB_ADDR_MAP_V0
@ SHT_LLVM_DEPENDENT_LIBRARIES
@ SHT_LLVM_LINKER_OPTIONS
@ SHT_LLVM_CALL_GRAPH_PROFILE
This is an optimization pass for GlobalISel generic memory operations.
void report_fatal_error(Error Err, bool gen_crash_diag=true)
Report a serious error, calling any installed error handler.