> On Nov 20, 2015, at 3:01 PM, Jeff Law <[email protected]> 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