[ARM][4/4] Simplify checks for CONST_INT_P and comparison against 1/0
* config/arm/neon.md (ashldi3_neon): Replace comparison of INTVAL of operands[2] against 1 with comparison against CONST1_RTX. (<shift>di3_neon): Likewise. * config/arm/predicates.md (const0_operand): Replace with comparison against CONST0_RTX. From-SVN: r236641
This commit is contained in:
parent
dec21bbc97
commit
d1fb69400e
|
@ -1,3 +1,11 @@
|
|||
2016-05-24 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
|
||||
|
||||
* config/arm/neon.md (ashldi3_neon): Replace comparison of INTVAL of
|
||||
operands[2] against 1 with comparison against CONST1_RTX.
|
||||
(<shift>di3_neon): Likewise.
|
||||
* config/arm/predicates.md (const0_operand): Replace with comparison
|
||||
against CONST0_RTX.
|
||||
|
||||
2016-05-24 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
|
||||
|
||||
* config/arm/arm.md (ashldi3): Replace comparison of INTVAL of
|
||||
|
|
|
@ -1082,7 +1082,7 @@
|
|||
}
|
||||
else
|
||||
{
|
||||
if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 1
|
||||
if (operands[2] == CONST1_RTX (SImode)
|
||||
&& (!reg_overlap_mentioned_p (operands[0], operands[1])
|
||||
|| REGNO (operands[0]) == REGNO (operands[1])))
|
||||
/* This clobbers CC. */
|
||||
|
@ -1184,7 +1184,7 @@
|
|||
}
|
||||
else
|
||||
{
|
||||
if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 1
|
||||
if (operands[2] == CONST1_RTX (SImode)
|
||||
&& (!reg_overlap_mentioned_p (operands[0], operands[1])
|
||||
|| REGNO (operands[0]) == REGNO (operands[1])))
|
||||
/* This clobbers CC. */
|
||||
|
|
|
@ -141,8 +141,7 @@
|
|||
(match_test "const_ok_for_arm (~INTVAL (op))")))
|
||||
|
||||
(define_predicate "const0_operand"
|
||||
(and (match_code "const_int")
|
||||
(match_test "INTVAL (op) == 0")))
|
||||
(match_test "op == CONST0_RTX (mode)"))
|
||||
|
||||
;; Something valid on the RHS of an ARM data-processing instruction
|
||||
(define_predicate "arm_rhs_operand"
|
||||
|
|
Loading…
Reference in New Issue