[llvm-dev] SROA and volatile memcpy/memset

Joerg Sonnenberger via llvm-dev llvm-dev at lists.llvm.org
Tue Nov 10 11:07:04 PST 2015


On Tue, Nov 10, 2015 at 10:41:06AM -0600, Krzysztof Parzyszek via llvm-dev wrote:
> I have a customer testcase where SROA splits a volatile memcpy and we end up
> generating bad code[1].  While this looks like a bug, simply preventing SROA
> from splitting volatile memory intrinsics causes basictest.ll for SROA to
> fail.  Not only that, but it also seems like handling of volatile memory
> transfers was done with some intent.

There is no such thing as a volatile memcpy or memset in standard ISO C,
so what exactly are you doing and why do you expect it to work that way?

Joerg


More information about the llvm-dev mailing list