[Info-vax] Ada x86 (was Rdb/x86)

Arne Vajhøj arne at vajhoej.dk
Tue Dec 1 14:18:35 EST 2020


On 12/1/2020 11:03 AM, John Reagan wrote:
> On Tuesday, December 1, 2020 at 10:33:26 AM UTC-5, Arne Vajhøj
> wrote:
>> On 12/1/2020 8:07 AM, Simon Clubley wrote:
>>> Would declaring the variables volatile have avoided this
>>> reordering ?
>>> 
>>> And talking of volatile, I wonder if John has encountered any
>>> cases with LLVM where variables now need to be declared volatile
>>> where they did not need to be with the DEC compilers.
>> I am not a memory model expert, but everybody is saying that the
>> x86-64 memory model is easier to work with than the Alpha and
>> Itanium memory models.

> This is more a compiler issue with regards to legal code
> optimizations.  Compiling -O0 /NOOPT will keep the error in the
> "right" stop.
> 
> As far as the hardware memory ordering, yes, the x86 is more like
> VAX.  Alpha is the most, uh, "flexible" that needs MB and IMB
> instructions to serialize memory ordering.

 From what I have heard then MS engineers had to rethink some things
when they 15 years ago ported .NET from x86/x86-64 to Itanium.

Arne



More information about the Info-vax mailing list