On 11/27/2012 09:35 AM, Eric Botcazou wrote: > It's well established in the RTL middle-end that UNSPEC_VOLATILE can do > pretty > much everything behind the back of the compiler.
This is false. U_V is a scheduling barrier, and is never deleted as dead (as opposed to unreachable) code. Certainly we don't do anything so complete as invalidate all registers, nor do we invalidate memory. r~