[llvm-commits] [llvm] r140861 - /llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp

Jim Grosbach grosbach at apple.com
Fri Sep 30 15:05:00 PDT 2011


On Sep 30, 2011, at 11:49 AM, Eli Friedman wrote:

> On Fri, Sep 30, 2011 at 10:23 AM, Jim Grosbach <grosbach at apple.com> wrote:
>> Author: grosbach
>> Date: Fri Sep 30 12:23:05 2011
>> New Revision: 140861
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=140861&view=rev
>> Log:
>> ARM Fixup valus for movt/movw are for the whole value.
>> 
>> Remove an assert that was expecting only the relevant 16bit portion for
>> the fixup being handled. Also kill some dead code in the T2 portion.
>> 
>> rdar://9653509
>> 
>> Modified:
>>    llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
>> 
>> Modified: llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp?rev=140861&r1=140860&r2=140861&view=diff
>> ==============================================================================
>> --- llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp (original)
>> +++ llvm/trunk/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp Fri Sep 30 12:23:05 2011
>> @@ -183,8 +183,6 @@
>>   case ARM::fixup_arm_movw_lo16_pcrel: {
>>     unsigned Hi4 = (Value & 0xF000) >> 12;
>>     unsigned Lo12 = Value & 0x0FFF;
>> -    assert ((((int64_t)Value) >= -0x8000) && (((int64_t)Value) <= 0x7fff) &&
>> -            "Out of range pc-relative fixup value!");
>>     // inst{19-16} = Hi4;
>>     // inst{11-0} = Lo12;
>>     Value = (Hi4 << 16) | (Lo12);
>> @@ -205,11 +203,6 @@
>>     // inst{26} = i;
>>     // inst{14-12} = Mid3;
>>     // inst{7-0} = Lo8;
>> -    // The value comes in as the whole thing, not just the portion required
>> -    // for this fixup, so we need to mask off the bits not handled by this
>> -    // portion (lo vs. hi).
>> -    Value &= 0xffff;
>> -    Value = (Hi4 << 16) | (i << 26) | (Mid3 << 12) | (Lo8);
>>     uint64_t swapped = (Value & 0xFFFF0000) >> 16;
>>     swapped |= (Value & 0x0000FFFF) << 16;
>>     return swapped;
> 
> I'm getting a bunch of unused variable warnings from this change.

Fixed r140892.

Thanks for the heads-up!

> 
> /Volumes/storage/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp:198:14:
> warning: unused variable 'Hi4' [-Wunused-variable]
>    unsigned Hi4 = (Value & 0xF000) >> 12;
>             ^
> /Volumes/storage/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp:199:14:
> warning: unused variable 'i' [-Wunused-variable]
>    unsigned i = (Value & 0x800) >> 11;
>             ^
> /Volumes/storage/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp:200:14:
> warning: unused variable 'Mid3' [-Wunused-variable]
>    unsigned Mid3 = (Value & 0x700) >> 8;
>             ^
> /Volumes/storage/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp:201:14:
> warning: unused variable 'Lo8' [-Wunused-variable]
>    unsigned Lo8 = Value & 0x0FF;
>             ^
> 
> -Eli




More information about the llvm-commits mailing list