symbol_ref constants
Sanjiv Kumar Gupta
sanjiv.gupta@oracle.com
Wed Mar 30 18:39:00 GMT 2005
Nathan Sidwell wrote:
> Sanjiv Kumar Gupta wrote:
>
>> calculated by linker. Now
>> add r1, foo
>> add r1, 10
>> add r1, -10
>> are okay but add r1, foo + 10
>> add r1, -10 are not, since (foo + 10) may overflow during
>> relocation, so the value (foo + 10) && 0xff inserted
>> by linker is not correct.
>
>
> What is stopping the value of 'foo' itself being > 255?
>
> nathan
>
Programmer will get an overflow error for that during linking.
But the problem here is that with foo = 255, the code works without -O2, but
not with -O2, which looks strange. Since -O2 (CSE)
combines
add r1, foo
add r1, 10
to
add r1, foo + 10
Thanks.
--Sanjiv
More information about the Gcc
mailing list