Commit 3dcd7d45 by Eric Christopher Committed by Eric Christopher

combine.c (expand_compound_operation): Make sure that zero_extend operation is profitable.

2003-05-15 Eric Christopher <echristo@redhat.com>

        * combine.c (expand_compound_operation): Make sure
        that zero_extend operation is profitable.

From-SVN: r66853
parent c1fefa09
2003-05-15 Eric Christopher <echristo@redhat.com>
* combine.c (expand_compound_operation): Make sure
that zero_extend operation is profitable.
2003-05-15 Richard Henderson <rth@redhat.com> 2003-05-15 Richard Henderson <rth@redhat.com>
* config/alpha/linux.h, config/alpha/linux-elf.h: Remove * config/alpha/linux.h, config/alpha/linux-elf.h: Remove
......
...@@ -5802,7 +5802,15 @@ expand_compound_operation (x) ...@@ -5802,7 +5802,15 @@ expand_compound_operation (x)
== 0))) == 0)))
{ {
rtx temp = gen_rtx_ZERO_EXTEND (GET_MODE (x), XEXP (x, 0)); rtx temp = gen_rtx_ZERO_EXTEND (GET_MODE (x), XEXP (x, 0));
return expand_compound_operation (temp); rtx temp2 = expand_compound_operation (temp);
/* Make sure this is a profitable operation. */
if (rtx_cost (x, SET) > rtx_cost (temp2, SET))
return temp2;
else if (rtx_cost (x, SET) > rtx_cost (temp, SET))
return temp;
else
return x;
} }
/* We can optimize some special cases of ZERO_EXTEND. */ /* We can optimize some special cases of ZERO_EXTEND. */
......
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