[llvm-commits] CVS: llvm/include/llvm/CodeGen/AsmPrinter.h
Chris Lattner
lattner at cs.uiuc.edu
Mon Nov 21 11:52:03 PST 2005
Changes in directory llvm/include/llvm/CodeGen:
AsmPrinter.h updated: 1.20 -> 1.21
---
Log message:
Add some more directives
---
Diffs of the changes: (+18 -1)
AsmPrinter.h | 19 ++++++++++++++++++-
1 files changed, 18 insertions(+), 1 deletion(-)
Index: llvm/include/llvm/CodeGen/AsmPrinter.h
diff -u llvm/include/llvm/CodeGen/AsmPrinter.h:1.20 llvm/include/llvm/CodeGen/AsmPrinter.h:1.21
--- llvm/include/llvm/CodeGen/AsmPrinter.h:1.20 Mon Nov 21 02:24:11 2005
+++ llvm/include/llvm/CodeGen/AsmPrinter.h Mon Nov 21 13:51:51 2005
@@ -134,6 +134,20 @@
/// before emitting the constant pool for a function.
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)
: FunctionNumber(0), O(o), TM(tm),
CommentString("#"),
@@ -153,7 +167,10 @@
AlignDirective("\t.align\t"),
AlignmentIsInBytes(true),
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
More information about the llvm-commits
mailing list