> So, the main question is not about triggering condition, but about the > behavior itself. Is it correct to flush and reload all constants ? They are > constants after all, they are even not stored in .data section but inlined > in the code, and thus cannot be modified.
I'd think that everyone more or less agrees that this behavior of RTL CSE is overly conservative and ought to be relaxed. The question is whether this can be done in a sensible way without totally getting rid of the barrier. -- Eric Botcazou