This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hello! Attached patch removes invalid alternative that generates "movlps" insn form vec_concat:V2DI patterns. The problem is, that operand 1 DImode value lives on lowest 64bits of XMM reg and movlps overwrites this value with operand 2 from memory. Attached patch generates "punpcklqdq" insn instead. 2008-08-14 Christophe Saout <christophe@saout.de> Uros Bizjak <ubizjak@gmail.com> PR target/37101 * config/i386/sse.md (vec_concatv2di): Remove movlps alternative. (*vec_concatv2di_rex64_sse4_1): Ditto. (*vec_concatv2di_rex64_sse): Ditto. testsuite/ChangeLog: 2008-08-14 Uros Bizjak <ubizjak@gmail.com> PR target/37101 * gcc.target/i386/pr37101.c: New test. Patch was bootstrapped and regression tested on x86_64-pc-linux-gnu {,-m32}. Thanks Christophe for analyzing the problem in depth and for his patch! Uros.
Attachment:
p.diff.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |