aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/rtfinal.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2023-01-09 12:46:28 +0100
committerRichard Biener <rguenther@suse.de>2023-01-09 13:31:44 +0100
commita5a8242153d078f1ebe60f00409415da260a29ee (patch)
tree14727901463d84d5f0759cc663254cc77db12ce8 /gcc/ada/rtfinal.c
parentfb082e3293d45d928ae107d8f351b04be89d1bc2 (diff)
downloadgcc-a5a8242153d078f1ebe60f00409415da260a29ee.zip
gcc-a5a8242153d078f1ebe60f00409415da260a29ee.tar.gz
gcc-a5a8242153d078f1ebe60f00409415da260a29ee.tar.bz2
middle-end/69482 - not preserving volatile accesses
The following addresses a long standing issue with not preserving accesses to non-volatile objects through volatile qualified pointers in the case that object gets expanded to a register. The fix is to treat accesses to an object with a volatile qualified access as forcing that object to memory. This issue got more exposed recently so it regressed more since GCC 11. PR middle-end/69482 * cfgexpand.cc (discover_nonconstant_array_refs_r): Volatile qualified accesses also force objects to memory. * gcc.target/i386/pr69482-1.c: New testcase. * gcc.target/i386/pr69482-2.c: Likewise.
Diffstat (limited to 'gcc/ada/rtfinal.c')
0 files changed, 0 insertions, 0 deletions