This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/67609] [5/6 Regression] Generates wrong code for SSE2 _mm_load_pd
- From: "rth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 26 Oct 2015 19:18:22 +0000
- Subject: [Bug rtl-optimization/67609] [5/6 Regression] Generates wrong code for SSE2 _mm_load_pd
- Auto-submitted: auto-generated
- References: <bug-67609-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67609
--- Comment #29 from Richard Henderson <rth at gcc dot gnu.org> ---
(In reply to Vladimir Makarov from comment #27)
> (In reply to Vladimir Makarov from comment #25)
> > So it would be nice to benchmark it. I'll try to do this on
> > Friday.
>
> Practically every SPEC2000 benchmark failed to compile with this patch. GCC
> crashes in split2 pass with messages like this
>
> Error: unrecognizable insn:
> (insn 381 345 67 3 (set (subreg:V2DF (reg:DF 22 xmm1 [287]) 0)
> (xor:V2DF (subreg:V2DF (reg:DF 22 xmm1 [287]) 0)
> (mem/u/c:V2DF (symbol_ref/u:DI ("*.LC6") [flags 0x2]) [2 S16
> A128])))
Ho hum. Sorry, Vlad, if I'd bothered bootstrapping I'd have seen this myself.
Please change != to < in the patch to re-try. (That is, allow the TO mode to
be wider than the FROM mode in order to support the paradoxical subregs seen
above.)