basic asm and memory clobbers
Paul_Koning@Dell.com
Paul_Koning@Dell.com
Fri Nov 20 22:07:00 GMT 2015
> On Nov 20, 2015, at 3:01 PM, Jeff Law <law@redhat.com> wrote:
>
> On 11/20/2015 07:56 AM, Segher Boessenkool wrote:
>
>>>>> When basic asm changes, I expect that having a way to "just do what it
>>>>> used to do" is going to be useful for some people.
>>>> 24414 says the documented behaviour hasn't been true for at least
>>>> fourteen years. It isn't likely anyone is relying on that behaviour.
>>>
>>> ?
>>
>> 24414 says these things haven't worked since at least 2.95.3, which is
>> fourteen years old now.
> That's not a good reason to leave things as-is.
>
> The problem is that optimizers continue to improve. So an old-style asm that worked in the past may mysteriously start failing as folks move forward with their compiler -- because we haven't properly implemented the right semantics of old-style asms, which is in part because certain aspects were never documented properly and partly because of reload issues :(
>
> If we keep old style asms, then we need to properly document what their behaviour is supposed to be, and continue to fix bugs where we do not honor that behaviour.
Yes. I know I've run into cases before where certain documented properties were not honored. I can't find the details right now; I think it was "old style asm always behaves as if marked 'volatile'. "
paul
More information about the Gcc
mailing list