[combine] Check WORD_REGISTER_OPERATIONS normally rather than through preprocessor
* combine.c (simplify_comparison): Convert preprocessor check of WORD_REGISTER_OPERATIONS into runtime check. From-SVN: r231899
This commit is contained in:
parent
18fccdb440
commit
dda5c83188
2 changed files with 7 additions and 3 deletions
|
@ -1,3 +1,8 @@
|
|||
2015-12-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
|
||||
|
||||
* combine.c (simplify_comparison): Convert preprocessor check of
|
||||
WORD_REGISTER_OPERATIONS into runtime check.
|
||||
|
||||
2015-12-22 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
PR debug/60756
|
||||
|
|
|
@ -11437,10 +11437,10 @@ simplify_comparison (enum rtx_code code, rtx *pop0, rtx *pop1)
|
|||
/* Try a few ways of applying the same transformation to both operands. */
|
||||
while (1)
|
||||
{
|
||||
#if !WORD_REGISTER_OPERATIONS
|
||||
/* The test below this one won't handle SIGN_EXTENDs on these machines,
|
||||
so check specially. */
|
||||
if (code != GTU && code != GEU && code != LTU && code != LEU
|
||||
if (!WORD_REGISTER_OPERATIONS
|
||||
&& code != GTU && code != GEU && code != LTU && code != LEU
|
||||
&& GET_CODE (op0) == ASHIFTRT && GET_CODE (op1) == ASHIFTRT
|
||||
&& GET_CODE (XEXP (op0, 0)) == ASHIFT
|
||||
&& GET_CODE (XEXP (op1, 0)) == ASHIFT
|
||||
|
@ -11460,7 +11460,6 @@ simplify_comparison (enum rtx_code code, rtx *pop0, rtx *pop1)
|
|||
op0 = SUBREG_REG (XEXP (XEXP (op0, 0), 0));
|
||||
op1 = SUBREG_REG (XEXP (XEXP (op1, 0), 0));
|
||||
}
|
||||
#endif
|
||||
|
||||
/* If both operands are the same constant shift, see if we can ignore the
|
||||
shift. We can if the shift is a rotate or if the bits shifted out of
|
||||
|
|
Loading…
Add table
Reference in a new issue