https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104800
--- Comment #22 from uecker at gcc dot gnu.org --- LLVM apparently has fixed these issues on their side. "Volatile operations are permitted to trap. The compiler may not assume that execution will continue after a volatile operation." https://llvm.org/docs/LangRef.html#volatile-memory-accesses
