On Fri, 20 Sep 2019, Jeff Law wrote: > > According to Bob Supnik (who is a very authoritative source on VAX), > > > >> Funny you should ask. The short answer is no. No VAX ever did > >> speculative or out of order execution. > > > > As such, marking VAX as not needing speculation barriers. > > > > > > PR target/86811 > > * config/vax/vax.c (TARGET_HAVE_SPECULATION_SAFE_VALUE): > > Define to speculation_safe_value_not_needed. > Installed on the trunk.
I don't think this is right. As I have just mentioned in a related discussion elsewhere, the NVAX and NVAX+ implementations include a branch predictor in their microarchitecture[1], so obviously they do execute speculatively. I think this change would best be reverted and the issue further investigated. References: [1] G. Michael Uhler et al, "The NVAX and NVAX+ High-performance VAX Microprocessors", Digital Technical Journal Vol. 4 No. 3 Summer 1992 <ftp://ftp.linux-mips.org/pub/linux/mips/people/macro/DEC/DTJ/DTJ701/DTJ701PF.PDF> Maciej