X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=include%2Fllvm%2FTarget%2FTargetAsmInfo.h;h=50e08bda445c9118bcfe829fdb15337846c27157;hb=617dd7baa6dfd3a7b5ee72ace37f6b6aeaa6006b;hp=b871009dda8ddef8c191a76fd30700db9f9f122c;hpb=c6fa3ff0bddca92e443ef9ff454d2a74cac867bd;p=oota-llvm.git diff --git a/include/llvm/Target/TargetAsmInfo.h b/include/llvm/Target/TargetAsmInfo.h index b871009dda8..50e08bda445 100644 --- a/include/llvm/Target/TargetAsmInfo.h +++ b/include/llvm/Target/TargetAsmInfo.h @@ -130,7 +130,6 @@ namespace llvm { private: mutable StringMap
Sections; mutable SectionFlags::FlagsStringsMapType FlagsStrings; - void fillDefaultValues(); protected: /// TM - The current TargetMachine. const TargetMachine &TM; @@ -215,6 +214,10 @@ namespace llvm { /// measure inline asm instructions. char SeparatorChar; // Defaults to ';' + /// CommentColumn - This indicates the comment num (zero-based) at + /// which asm comments should be printed. + unsigned CommentColumn; // Defaults to 60 + /// CommentString - This indicates the comment character used by the /// assembler. const char *CommentString; // Defaults to "#" @@ -272,12 +275,10 @@ namespace llvm { /// AssemblerDialect - Which dialect of an assembler variant to use. unsigned AssemblerDialect; // Defaults to 0 - /// StringConstantPrefix - Prefix for FEs to use when generating unnamed - /// constant strings. These names get run through the Mangler later; if - /// you want the Mangler not to add the GlobalPrefix as well, - /// use '\1' as the first character. - const char *StringConstantPrefix; // Defaults to ".str" - + /// AllowQuotesInName - This is true if the assembler allows for complex + /// symbol names to be surrounded in quotes. This defaults to false. + bool AllowQuotesInName; + //===--- Data Emission Directives -------------------------------------===// /// ZeroDirective - this should be set to the directive used to get some @@ -308,8 +309,7 @@ namespace llvm { /// directives for various sizes and non-default address spaces. virtual const char *getASDirective(unsigned size, unsigned AS) const { - assert (AS > 0 - && "Dont know the directives for default addr space"); + assert(AS > 0 && "Dont know the directives for default addr space"); return NULL; } @@ -384,6 +384,11 @@ namespace llvm { /// GlobalDirective - This is the directive used to declare a global entity. /// const char *GlobalDirective; // Defaults to NULL. + + /// ExternDirective - This is the directive used to declare external + /// globals. + /// + const char *ExternDirective; // Defaults to NULL. /// SetDirective - This is the name of a directive that can be used to tell /// the assembler to set the value of a variable to some expression. @@ -463,13 +468,13 @@ namespace llvm { /// bool DwarfRequiresFrameSection; // Defaults to true. - /// SupportsMacInfo - true if the Dwarf output supports macro information - /// - bool SupportsMacInfoSection; // Defaults to true + /// DwarfUsesInlineInfoSection - True if DwarfDebugInlineSection is used to + /// encode inline subroutine information. + bool DwarfUsesInlineInfoSection; // Defaults to false. - /// NonLocalEHFrameLabel - If set, the EH_frame label needs to be non-local. - /// - bool NonLocalEHFrameLabel; // Defaults to false. + /// Is_EHSymbolPrivate - If set, the "_foo.eh" is made private so that it + /// doesn't show up in the symbol table of the object file. + bool Is_EHSymbolPrivate; // Defaults to true. /// GlobalEHDirective - This is the directive used to make exception frame /// tables globally visible. @@ -506,7 +511,11 @@ namespace llvm { /// DwarfPubTypesSection - Section directive for Dwarf info. /// const char *DwarfPubTypesSection; // Defaults to ".debug_pubtypes". - + + /// DwarfDebugInlineSection - Section directive for inline info. + /// + const char *DwarfDebugInlineSection; // Defaults to ".debug_inlined" + /// DwarfStrSection - Section directive for Dwarf info. /// const char *DwarfStrSection; // Defaults to ".debug_str". @@ -523,9 +532,9 @@ namespace llvm { /// const char *DwarfRangesSection; // Defaults to ".debug_ranges". - /// DwarfMacInfoSection - Section directive for Dwarf info. + /// DwarfMacroInfoSection - Section directive for DWARF macro info. /// - const char *DwarfMacInfoSection; // Defaults to ".debug_macinfo". + const char *DwarfMacroInfoSection; // Defaults to ".debug_macinfo". /// DwarfEHFrameSection - Section directive for Exception frames. /// @@ -682,6 +691,9 @@ namespace llvm { char getSeparatorChar() const { return SeparatorChar; } + unsigned getCommentColumn() const { + return CommentColumn; + } const char *getCommentString() const { return CommentString; } @@ -691,12 +703,6 @@ namespace llvm { const char *getPrivateGlobalPrefix() const { return PrivateGlobalPrefix; } - /// EHGlobalPrefix - Prefix for EH_frame and the .eh symbols. - /// This is normally PrivateGlobalPrefix, but some targets want - /// these symbols to be visible. - virtual const char *getEHGlobalPrefix() const { - return PrivateGlobalPrefix; - } const char *getLessPrivateGlobalPrefix() const { return LessPrivateGlobalPrefix; } @@ -733,8 +739,8 @@ namespace llvm { unsigned getAssemblerDialect() const { return AssemblerDialect; } - const char *getStringConstantPrefix() const { - return StringConstantPrefix; + bool doesAllowQuotesInName() const { + return AllowQuotesInName; } const char *getZeroDirective() const { return ZeroDirective; @@ -793,6 +799,9 @@ namespace llvm { const char *getGlobalDirective() const { return GlobalDirective; } + const char *getExternDirective() const { + return ExternDirective; + } const char *getSetDirective() const { return SetDirective; } @@ -847,11 +856,11 @@ namespace llvm { bool doesDwarfRequireFrameSection() const { return DwarfRequiresFrameSection; } - bool doesSupportMacInfoSection() const { - return SupportsMacInfoSection; + bool doesDwarfUsesInlineInfoSection() const { + return DwarfUsesInlineInfoSection; } - bool doesRequireNonLocalEHFrameLabel() const { - return NonLocalEHFrameLabel; + bool is_EHSymbolPrivate() const { + return Is_EHSymbolPrivate; } const char *getGlobalEHDirective() const { return GlobalEHDirective; @@ -880,6 +889,9 @@ namespace llvm { const char *getDwarfPubTypesSection() const { return DwarfPubTypesSection; } + const char *getDwarfDebugInlineSection() const { + return DwarfDebugInlineSection; + } const char *getDwarfStrSection() const { return DwarfStrSection; } @@ -892,8 +904,8 @@ namespace llvm { const char *getDwarfRangesSection() const { return DwarfRangesSection; } - const char *getDwarfMacInfoSection() const { - return DwarfMacInfoSection; + const char *getDwarfMacroInfoSection() const { + return DwarfMacroInfoSection; } const char *getDwarfEHFrameSection() const { return DwarfEHFrameSection;