[llvm-commits] [llvm] r93992 - in /llvm/trunk: lib/CodeGen/AsmPrinter/AsmPrinter.cpp test/CodeGen/PIC16/globals.ll test/CodeGen/X86/remat-scalar-zero.ll

Chris Lattner sabre at nondot.org
Tue Jan 19 23:19:20 PST 2010


Author: lattner
Date: Wed Jan 20 01:19:19 2010
New Revision: 93992

URL: http://llvm.org/viewvc/llvm-project?rev=93992&view=rev
Log:
emit integer and fp zeros as (e.g.) .byte 0 instead of .space 1,
for tidiness.

Modified:
    llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    llvm/trunk/test/CodeGen/PIC16/globals.ll
    llvm/trunk/test/CodeGen/X86/remat-scalar-zero.ll

Modified: llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp?rev=93992&r1=93991&r2=93992&view=diff

==============================================================================
--- llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp (original)
+++ llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp Wed Jan 20 01:19:19 2010
@@ -700,9 +700,7 @@
 void AsmPrinter::EOL(const Twine &Comment) const {
   if (VerboseAsm && !Comment.isTriviallyEmpty()) {
     O.PadToColumn(MAI->getCommentColumn());
-    O << MAI->getCommentString()
-      << ' '
-      << Comment;
+    O << MAI->getCommentString() << ' ' << Comment;
   }
   O << '\n';
 }
@@ -1212,7 +1210,7 @@
 
 /// EmitGlobalConstant - Print a general LLVM constant to the .s file.
 void AsmPrinter::EmitGlobalConstant(const Constant *CV, unsigned AddrSpace) {
-  if (CV->isNullValue() || isa<UndefValue>(CV)) {
+  if (isa<ConstantAggregateZero>(CV) || isa<UndefValue>(CV)) {
     uint64_t Size = TM.getTargetData()->getTypeAllocSize(CV->getType());
     return OutStreamer.EmitZeros(Size, AddrSpace);
   }
@@ -1250,6 +1248,7 @@
   if (const ConstantVector *V = dyn_cast<ConstantVector>(CV))
     return EmitGlobalConstantVector(V, AddrSpace, *this);
 
+  // ConstantExpr case.
   printDataDirective(CV->getType(), AddrSpace);
   EmitConstantValueOnly(CV);
   O << '\n';
@@ -1307,19 +1306,17 @@
   if (CurDLT.getScope().isNull())
     return;
 
-  if (BeforePrintingInsn) {
-    if (CurDLT.getNode() != PrevDLT) {
-      unsigned L = DW->RecordSourceLine(CurDLT.getLineNumber(), 
-                                        CurDLT.getColumnNumber(),
-                                        CurDLT.getScope().getNode());
-      printLabel(L);
-      O << '\n';
-      DW->BeginScope(MI, L);
-      PrevDLT = CurDLT.getNode();
-    }
-  } else {
+  if (!BeforePrintingInsn) {
     // After printing instruction
     DW->EndScope(MI);
+  } else if (CurDLT.getNode() != PrevDLT) {
+    unsigned L = DW->RecordSourceLine(CurDLT.getLineNumber(), 
+                                      CurDLT.getColumnNumber(),
+                                      CurDLT.getScope().getNode());
+    printLabel(L);
+    O << '\n';
+    DW->BeginScope(MI, L);
+    PrevDLT = CurDLT.getNode();
   }
 }
 

Modified: llvm/trunk/test/CodeGen/PIC16/globals.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/PIC16/globals.ll?rev=93992&r1=93991&r2=93992&view=diff

==============================================================================
--- llvm/trunk/test/CodeGen/PIC16/globals.ll (original)
+++ llvm/trunk/test/CodeGen/PIC16/globals.ll Wed Jan 20 01:19:19 2010
@@ -2,7 +2,8 @@
 
 @G1 = global i32 4712, section "Address=412"
 ; CHECK: @G1.412..user_section.#	IDATA	412
-; CHECK: @G1 dl 4712
+; CHECK: @G1
+; CHECK:     dl 4712
 
 @G2 = global i32 0, section "Address=412"
 ; CHECK: @G2.412..user_section.#	UDATA	412
@@ -10,6 +11,7 @@
 
 @G3 = addrspace(1) constant i32 4712, section "Address=412"
 ; CHECK: @G3.412..user_section.#	ROMDATA	412
-; CHECK: @G3 rom_dl 4712
+; CHECK: @G3
+; CHECK:     rom_dl 4712
 
 

Modified: llvm/trunk/test/CodeGen/X86/remat-scalar-zero.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/remat-scalar-zero.ll?rev=93992&r1=93991&r2=93992&view=diff

==============================================================================
--- llvm/trunk/test/CodeGen/X86/remat-scalar-zero.ll (original)
+++ llvm/trunk/test/CodeGen/X86/remat-scalar-zero.ll Wed Jan 20 01:19:19 2010
@@ -1,7 +1,7 @@
 ; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu > %t
 ; RUN: not grep xor %t
 ; RUN: not grep movap %t
-; RUN: grep {\\.zero} %t
+; RUN: grep {\\.quad.*0} %t
 
 ; Remat should be able to fold the zero constant into the div instructions
 ; as a constant-pool load.





More information about the llvm-commits mailing list