Compile with -O1: long double f (long double x) { return __builtin_remainderl (x, x); } bug.c: In function 'f': bug.c:4: internal compiler error: in cselib_record_set, at cselib.c:1515
Subject: Bug 33438 Author: uros Date: Fri Sep 14 19:24:26 2007 New Revision: 128502 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=128502 Log: PR target/33438 * config/i386/i386.md (fmodxf3): Copy operands[2] to temporary register when operands[2] equals operands[1]. (remainderxf3): Ditto. testsuite/ChangeLog: PR target/33438 * gcc.target/i386/pr33438.c: New test. Added: trunk/gcc/testsuite/gcc.target/i386/pr33483.c Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/i386.md trunk/gcc/testsuite/ChangeLog
Fixed.
Subject: Bug 33438 Author: uros Date: Wed Oct 10 10:01:53 2007 New Revision: 129201 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=129201 Log: Backport from mainline: 2007-09-14 Uros Bizjak <ubizjak@gmail.com> PR target/33438 * config/i386/i386.md (fmodxf3): Copy operands[2] to temporary register when operands[2] equals operands[1]. (dremxf3): Ditto. 2007-09-10 Uros Bizjak <ubizjak@gmail.com> PR target/33369 * gcc/config/i386/sse.md (ashr<mode>3): Change op2 mode to SImode. Use 'N' operand constraint for op2. (lshr<mode>3): Ditto. (ashl<mode>3): Ditto. (vec_shl_<mode>): Use const_0_to_255_mul_8_operand predicate for op2. (vec_shr_<mode>): Use const_0_to_255_mul_8_operand predicate for op2. * gcc/config/i386/i386.c (ix86_expand_builtin) [IX86_BUILTIN_PSLL?128, IX86_BUILTIN_PSRA*?128, IX86_BUILTIN_PSRL?128]: Convert op1 to SImode. testsuite/ChangeLog: Backport from mainline: 2007-09-14 Uros Bizjak <ubizjak@gmail.com> PR target/33438 * gcc.target/i386/pr33438.c: New test. 2007-09-10 Uros Bizjak <ubizjak@gmail.com> PR target/33369 * gcc.dg/vect/pr33369.c: New test. Added: branches/gcc-4_2-branch/gcc/testsuite/gcc.dg/vect/pr33369.c - copied unchanged from r128328, trunk/gcc/testsuite/gcc.dg/vect/pr33369.c branches/gcc-4_2-branch/gcc/testsuite/gcc.target/i386/pr33483.c - copied unchanged from r128502, trunk/gcc/testsuite/gcc.target/i386/pr33483.c Modified: branches/gcc-4_2-branch/gcc/ChangeLog branches/gcc-4_2-branch/gcc/config/i386/i386.c branches/gcc-4_2-branch/gcc/config/i386/i386.md branches/gcc-4_2-branch/gcc/config/i386/sse.md branches/gcc-4_2-branch/gcc/testsuite/ChangeLog