Add some more directives

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24474 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2005-11-21 19:51:51 +00:00
parent 8fccc97b0b
commit 02d09206ee

View File

@ -134,6 +134,20 @@ namespace llvm {
/// before emitting the constant pool for a function. /// before emitting the constant pool for a function.
const char *ConstantPoolSection; // Defaults to "\t.section .rodata\n" const char *ConstantPoolSection; // Defaults to "\t.section .rodata\n"
//===--- Global Variable Emission Directives --------------------------===//
/// LCOMMDirective - This is the name of a directive (if supported) that can
/// be used to efficiently declare a local (internal) block of zero
/// initialized data in the .bss/.data section. The syntax expected is:
/// <LCOMMDirective> SYMBOLNAME LENGTHINBYTES, ALIGNMENT
const char *LCOMMDirective; // Defaults to null.
const char *COMMDirective; // Defaults to "\t.comm\t".
/// COMMDirectiveTakesAlignment - True if COMMDirective take a third
/// argument that specifies the alignment of the declaration.
bool COMMDirectiveTakesAlignment; // Defaults to true.
AsmPrinter(std::ostream &o, TargetMachine &tm) AsmPrinter(std::ostream &o, TargetMachine &tm)
: FunctionNumber(0), O(o), TM(tm), : FunctionNumber(0), O(o), TM(tm),
CommentString("#"), CommentString("#"),
@ -153,7 +167,10 @@ namespace llvm {
AlignDirective("\t.align\t"), AlignDirective("\t.align\t"),
AlignmentIsInBytes(true), AlignmentIsInBytes(true),
SwitchToSectionDirective("\t.section\t"), SwitchToSectionDirective("\t.section\t"),
ConstantPoolSection("\t.section .rodata\n") { ConstantPoolSection("\t.section .rodata\n"),
LCOMMDirective(0),
COMMDirective("\t.comm\t"),
COMMDirectiveTakesAlignment(true) {
} }
/// SwitchSection - Switch to the specified section of the executable if we /// SwitchSection - Switch to the specified section of the executable if we