summaryrefslogtreecommitdiff
path: root/gcc/config/i386/i386.c
diff options
context:
space:
mode:
authoraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>2011-05-31 16:25:15 +0000
committeraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>2011-05-31 16:25:15 +0000
commitc42ab3cf064030cb3e30d6f91093123398b553f8 (patch)
treebaeae37bc7ce10d4055b0c003d45f0e712672660 /gcc/config/i386/i386.c
parent400b18e778f8b553add64eacf8054098f65d3b2f (diff)
downloadgcc-c42ab3cf064030cb3e30d6f91093123398b553f8.tar.gz
* config/i386/i386.c (ix86_rtx_costs): Drop NEG from sub for FMA.
* config/i386/sse.md: Add n to negated FMA pattern names. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174493 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/i386/i386.c')
-rw-r--r--gcc/config/i386/i386.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 85d145a9428..c4f0b9dea0e 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -29226,12 +29226,12 @@ ix86_rtx_costs (rtx x, int code, int outer_code_i, int *total, bool speed)
/* Negate in op0 or op2 is free: FMS, FNMA, FNMS. */
sub = XEXP (x, 0);
if (GET_CODE (sub) == NEG)
- sub = XEXP (x, 0);
+ sub = XEXP (sub, 0);
*total += rtx_cost (sub, FMA, speed);
sub = XEXP (x, 2);
if (GET_CODE (sub) == NEG)
- sub = XEXP (x, 0);
+ sub = XEXP (sub, 0);
*total += rtx_cost (sub, FMA, speed);
return true;
}