Commit ff4d1662 by Richard Henderson Committed by Richard Henderson

i386: Fix logic error in r188785

PR target/53749
        * config/i386/i386.c (ix86_rtx_costs): Fix typo vs UNITS_PER_WORD
        in 2012-06-23 change.  Adjust two other DImode tests as well.

From-SVN: r189026
parent ae52af05
2012-06-27 Richard Henderson <rth@redhat.com>
PR target/53749
* config/i386/i386.c (ix86_rtx_costs): Fix typo vs UNITS_PER_WORD
in 2012-06-23 change. Adjust two other DImode tests as well.
2012-06-27 Nick Clifton <nickc@redhat.com> 2012-06-27 Nick Clifton <nickc@redhat.com>
* config/rx/rx.md (comparesi3_extend): Remove = modifier from * config/rx/rx.md (comparesi3_extend): Remove = modifier from
......
...@@ -32210,9 +32210,8 @@ ix86_rtx_costs (rtx x, int code_i, int outer_code_i, int opno, int *total, ...@@ -32210,9 +32210,8 @@ ix86_rtx_costs (rtx x, int code_i, int outer_code_i, int opno, int *total,
} }
else else
*total = cost->fabs; *total = cost->fabs;
return false;
} }
if (GET_MODE_SIZE (mode) < UNITS_PER_WORD) else if (GET_MODE_SIZE (mode) > UNITS_PER_WORD)
{ {
if (CONST_INT_P (XEXP (x, 1))) if (CONST_INT_P (XEXP (x, 1)))
{ {
...@@ -32441,7 +32440,7 @@ ix86_rtx_costs (rtx x, int code_i, int outer_code_i, int opno, int *total, ...@@ -32441,7 +32440,7 @@ ix86_rtx_costs (rtx x, int code_i, int outer_code_i, int opno, int *total,
case AND: case AND:
case IOR: case IOR:
case XOR: case XOR:
if (!TARGET_64BIT && mode == DImode) if (GET_MODE_SIZE (mode) > UNITS_PER_WORD)
{ {
*total = (cost->add * 2 *total = (cost->add * 2
+ (rtx_cost (XEXP (x, 0), outer_code, opno, speed) + (rtx_cost (XEXP (x, 0), outer_code, opno, speed)
...@@ -32479,9 +32478,8 @@ ix86_rtx_costs (rtx x, int code_i, int outer_code_i, int opno, int *total, ...@@ -32479,9 +32478,8 @@ ix86_rtx_costs (rtx x, int code_i, int outer_code_i, int opno, int *total,
/* At least for published AMD latencies, this really is the same /* At least for published AMD latencies, this really is the same
as the latency for a simple fpu operation like fabs. */ as the latency for a simple fpu operation like fabs. */
*total = cost->fabs; *total = cost->fabs;
return false;
} }
if (!TARGET_64BIT && mode == DImode) else if (GET_MODE_SIZE (mode) > UNITS_PER_WORD)
*total = cost->add * 2; *total = cost->add * 2;
else else
*total = cost->add; *total = cost->add;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment