Hi Richard,
Thanks for getting back to me and your insight. I've implemented a
TARGET_CANNOT_COPY_INSN_P that rejects volatile memory and it appears to be
doing the trick!
It will take some time to determine if there are any other side effects but
I can move forward with this. Much appreciated!
Snapshot gcc-8-20201015 is now available on
https://gcc.gnu.org/pub/gcc/snapshots/8-20201015/
and on various mirrors, see http://gcc.gnu.org/mirrors.html for details.
This snapshot has been generated from the GCC 8 git branch
with the following options: git://gcc.gnu.org/git/gcc.git branch