diff options
author | Jeff Cohen <jeffc@jolt-lang.org> | 2006-05-02 03:46:13 +0000 |
---|---|---|
committer | Jeff Cohen <jeffc@jolt-lang.org> | 2006-05-02 03:46:13 +0000 |
commit | f34ddb1e0dafacb760f13e739c999971023a8b11 (patch) | |
tree | e900bf5ee40311f88479b8d951c1f90e513a63d3 /llvm/lib/CodeGen | |
parent | bfe9ffb4490a80c1e1a685b461cdcd19268ef834 (diff) | |
download | bcm5719-llvm-f34ddb1e0dafacb760f13e739c999971023a8b11.tar.gz bcm5719-llvm-f34ddb1e0dafacb760f13e739c999971023a8b11.zip |
De-virtualize EmitZeroes.
llvm-svn: 28046
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter.cpp b/llvm/lib/CodeGen/AsmPrinter.cpp index 9e94f7a52fa..aad02327c64 100644 --- a/llvm/lib/CodeGen/AsmPrinter.cpp +++ b/llvm/lib/CodeGen/AsmPrinter.cpp @@ -37,6 +37,7 @@ AsmPrinter::AsmPrinter(std::ostream &o, TargetMachine &tm) InlineAsmStart("#APP\n\t"), InlineAsmEnd("\t#NO_APP\n"), ZeroDirective("\t.zero\t"), + ZeroDirectiveSuffix(0), AsciiDirective("\t.ascii\t"), AscizDirective("\t.asciz\t"), Data8bitsDirective("\t.byte\t"), @@ -240,9 +241,12 @@ void AsmPrinter::EmitAlignment(unsigned NumBits, const GlobalValue *GV) const { /// void AsmPrinter::EmitZeros(uint64_t NumZeros) const { if (NumZeros) { - if (ZeroDirective) - O << ZeroDirective << NumZeros << "\n"; - else { + if (ZeroDirective) { + O << ZeroDirective << NumZeros; + if (ZeroDirectiveSuffix) + O << ZeroDirectiveSuffix; + O << "\n"; + } else { for (; NumZeros; --NumZeros) O << Data8bitsDirective << "0\n"; } |