[llvm-commits] [llvm] r149299 - in /llvm/trunk: lib/CodeGen/AsmPrinter/AsmPrinter.cpp test/CodeGen/X86/fold-pcmpeqd-2.ll

Chris Lattner clattner at apple.com
Mon Jan 30 16:06:44 PST 2012


On Jan 30, 2012, at 3:47 PM, Chandler Carruth wrote:

> Author: chandlerc
> Date: Mon Jan 30 17:47:44 2012
> New Revision: 149299
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=149299&view=rev
> Log:
> Chris's constant data sequence refactoring actually enabled printing
> vectors of all one bits to be printed more cleverly in the AsmPrinter.
> Unfortunately, the byte value for all one bits is the same with
> -fsigned-char as the error return of '-1'. Force this to be the unsigned
> byte value when returning it to avoid this problem, and update the test
> case for the shiny new behavior.
> 
> Yay for building LLVM and Clang with -funsigned-char.
> 
> Chris, please review, and let me know if there is any reason to not
> desire this change. It seems good on the surface, and certainly intended
> based on the code written.

Looks right to me, thanks Chandler!  I thought the buildbot failure was due to one of Craig's recent patches, I appreciate you tracking it down.

-Chris

> 
> Modified:
>    llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
>    llvm/trunk/test/CodeGen/X86/fold-pcmpeqd-2.ll
> 
> Modified: llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp?rev=149299&r1=149298&r2=149299&view=diff
> ==============================================================================
> --- llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp (original)
> +++ llvm/trunk/lib/CodeGen/AsmPrinter/AsmPrinter.cpp Mon Jan 30 17:47:44 2012
> @@ -1558,7 +1558,7 @@
>   char C = Data[0];
>   for (unsigned i = 1, e = Data.size(); i != e; ++i)
>     if (Data[i] != C) return -1;
> -  return C;
> +  return static_cast<uint8_t>(C); // Ensure 255 is not returned as -1.
> }
> 
> 
> 
> Modified: llvm/trunk/test/CodeGen/X86/fold-pcmpeqd-2.ll
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/fold-pcmpeqd-2.ll?rev=149299&r1=149298&r2=149299&view=diff
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/fold-pcmpeqd-2.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/fold-pcmpeqd-2.ll Mon Jan 30 17:47:44 2012
> @@ -8,10 +8,7 @@
> ; RAGreedy defeats the test by splitting live ranges.
> 
> ; Constant pool all-ones vector:
> -; CHECK: .long 4294967295
> -; CHECK-NEXT: .long 4294967295
> -; CHECK-NEXT: .long 4294967295
> -; CHECK-NEXT: .long 4294967295
> +; CHECK: .space 16,255
> 
> ; No pcmpeqd instructions, everybody uses the constant pool.
> ; CHECK: program_1:
> 
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list