[PATCH] D10357: SROA produces miscompiled code for bitfield access on big-endian targets

Chandler Carruth chandlerc at gmail.com
Tue Jul 21 03:16:35 PDT 2015


chandlerc added a comment.

I have investigated this thoroughly now. I believe I understand all of the interacting pieces.

Sadly, the situation is much, much worse than you might imagine. All of the robust fixes for this expose a terribly worse consequence. Currently, I've not found a robust fix that avoids dramatically regressing our ability to promote to SSA values. =/

There is a fundamental disconnect between SROA/mem2reg and how we are canonicalizing memory accesses. This is quite alarming and a source of great concern to me in addition to the big-endian miscompiles. I'm going to need to talk to several folks and look at abunch of other options to figure out what to actually do here.


Repository:
  rL LLVM

http://reviews.llvm.org/D10357







More information about the llvm-commits mailing list