On Tue, Mar 15, 2011 at 5:19 AM, Richard Guenther <rguent...@suse.de> wrote: > > This avoids spilling SSE registers to memory just because we access > vector components in a C array way. The trick is to simply rewrite > those accesses to proper vector selects on the tree level and promote > the vector to SSA form. > > Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk.
I think this fixes comment # 1 in PR 28367 and maybe even that PR. I think you should do the same for complex too (well use REAL_EXPR and IMAG_EXPR instead) (the complex issue was mention in comment #2 in PR 26134 and IIRC that shows up in damn benchmark as part of SPEC 2k6). Thanks, Andrew Pinski