Commit 101c1a3d by Jeff Law

combine.c (find_split_point): Don't turn a SIGN_EXTEND into a series of shifts if...

        * combine.c (find_split_point): Don't turn a SIGN_EXTEND into
        a series of shifts if either mode is a partial integer mode.

From-SVN: r13665
parent 930aeef3
......@@ -2699,6 +2699,14 @@ find_split_point (loc, insn)
case SIGN_EXTEND:
inner = XEXP (SET_SRC (x), 0);
/* We can't optimize if either mode is a partial integer
mode as we don't know how many bits are significant
in those modes. */
if (GET_MODE_CLASS (GET_MODE (inner)) == MODE_PARTIAL_INT
|| GET_MODE_CLASS (GET_MODE (SET_SRC (x))) == MODE_PARTIAL_INT)
break;
pos = 0;
len = GET_MODE_BITSIZE (GET_MODE (inner));
unsignedp = 0;
......
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