[llvm] r225217 - [PowerPC] Remove old README.txt entry

Duncan P. N. Exon Smith dexonsmith at apple.com
Mon Jan 5 15:16:51 PST 2015


(Ignore this comment, it was directed at the similar commit in r225214!)

> On 2015-Jan-05, at 15:15, Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote:
> 
> This test fails (at least on Darwin):
> 
> http://lab.llvm.org:8080/green/view/Clang/job/clang-stage1-cmake-RA-incremental_check/2358/
> http://lab.llvm.org:8080/green/view/Clang/job/clang-stage1-cmake-RA-incremental_check/2358/testReport/
> http://lab.llvm.org:8080/green/view/Clang/job/clang-stage1-cmake-RA-incremental_check/2358/testReport/LLVM/CodeGen_PowerPC/2007_03_24_cntlzd_ll/
> 
> 
>> On 2015-Jan-05, at 14:20, Hal Finkel <hfinkel at anl.gov> wrote:
>> 
>> Author: hfinkel
>> Date: Mon Jan  5 16:20:22 2015
>> New Revision: 225217
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=225217&view=rev
>> Log:
>> [PowerPC] Remove old README.txt entry
>> 
>> We no longer generate horrible code for the stated function:
>> 
>> void f(signed char *a, _Bool b, _Bool c) {
>> signed char t = 0;
>> if (b)  t = *a;
>> if (c)  *a = t;
>> }
>> 
>> for which we now generate:
>> 
>> .L.f:
>>       andi. 5, 5, 1
>>       cmpldi 1, 4, 0
>>       li 5, 0
>>       beq 1, .LBB0_2
>>       lbz 5, 0(3)
>> .LBB0_2:                                # %if.end
>>       bclr 4, 1, 0
>>       stb 5, 0(3)
>>       blr
>> 
>> so we don't need the README.txt entry.
>> 
>> Modified:
>>   llvm/trunk/lib/Target/PowerPC/README.txt
>> 
>> Modified: llvm/trunk/lib/Target/PowerPC/README.txt
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/PowerPC/README.txt?rev=225217&r1=225216&r2=225217&view=diff
>> ==============================================================================
>> --- llvm/trunk/lib/Target/PowerPC/README.txt (original)
>> +++ llvm/trunk/lib/Target/PowerPC/README.txt Mon Jan  5 16:20:22 2015
>> @@ -211,16 +211,6 @@ _foo:
>> 
>> ===-------------------------------------------------------------------------===
>> 
>> -We generate really bad code for this:
>> -
>> -int f(signed char *a, _Bool b, _Bool c) {
>> -   signed char t = 0;
>> -  if (b)  t = *a;
>> -  if (c)  *a = t;
>> -}
>> -
>> -===-------------------------------------------------------------------------===
>> -
>> On the G5, logical CR operations are more expensive in their three
>> address form: ops that read/write the same register are half as expensive as
>> those that read from two registers that are different from their destination.
>> 
>> 
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
> 
> 
> _______________________________________________
> 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