Commit 5e5f7673 by Kyrylo Tkachov Committed by Kyrylo Tkachov

constraints.md (Pd): Allow TARGET_THUMB instead of TARGET_THUMB1.

2013-07-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

	* config/arm/constraints.md (Pd): Allow TARGET_THUMB
	instead of TARGET_THUMB1.
	(Pz): New constraint.
	* config/arm/arm.md (arm_addsi3): Add alternatives for 16-bit
	encodings.
	(compare_negsi_si): Likewise.
	(compare_addsi2_op0): Likewise.
	(compare_addsi2_op1): Likewise.
	(addsi3_carryin_<optab>): Likewise.
	(addsi3_carryin_alt2_<optab>): Likewise.
	(addsi3_carryin_shift_<optab>): Disable cond_exec variant
	for arm_restrict_it.
	(subsi3_carryin): Likewise.
	(arm_subsi3_insn): Add alternatives for 16-bit encoding.
	(minmax_arithsi): Disable for arm_restrict_it.
	(minmax_arithsi_non_canon): Adjust for arm_restrict_it.
	(satsi_<SAT:code>): Disable cond_exec variant for arm_restrict_it.
	(satsi_<SAT:code>_shift): Likewise.
	(arm_shiftsi3): Add alternative for 16-bit encoding.
	(arm32_movhf): Disable for arm_restrict_it.
	(arm_cmpdi_unsigned): Add alternatives for 16-bit encoding.
	(arm_movtas_ze): Disable cond_exec variant for arm_restrict_it.

From-SVN: r201126
parent 6a2bf10f
2013-07-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/constraints.md (Pd): Allow TARGET_THUMB
instead of TARGET_THUMB1.
(Pz): New constraint.
* config/arm/arm.md (arm_addsi3): Add alternatives for 16-bit
encodings.
(compare_negsi_si): Likewise.
(compare_addsi2_op0): Likewise.
(compare_addsi2_op1): Likewise.
(addsi3_carryin_<optab>): Likewise.
(addsi3_carryin_alt2_<optab>): Likewise.
(addsi3_carryin_shift_<optab>): Disable cond_exec variant
for arm_restrict_it.
(subsi3_carryin): Likewise.
(arm_subsi3_insn): Add alternatives for 16-bit encoding.
(minmax_arithsi): Disable for arm_restrict_it.
(minmax_arithsi_non_canon): Adjust for arm_restrict_it.
(satsi_<SAT:code>): Disable cond_exec variant for arm_restrict_it.
(satsi_<SAT:code>_shift): Likewise.
(arm_shiftsi3): Add alternative for 16-bit encoding.
(arm32_movhf): Disable for arm_restrict_it.
(arm_cmpdi_unsigned): Add alternatives for 16-bit encoding.
(arm_movtas_ze): Disable cond_exec variant for arm_restrict_it.
2013-07-22 Sofiane Naci <sofiane.naci@arm.com>
* config/arm/arm.md (attribute "insn"): Delete.
......
......@@ -170,9 +170,9 @@
&& ival > 1020 && ival <= 1275")))
(define_constraint "Pd"
"@internal In Thumb-1 state a constant in the range 0 to 7"
"@internal In Thumb state a constant in the range 0 to 7"
(and (match_code "const_int")
(match_test "TARGET_THUMB1 && ival >= 0 && ival <= 7")))
(match_test "TARGET_THUMB && ival >= 0 && ival <= 7")))
(define_constraint "Pe"
"@internal In Thumb-1 state a constant in the range 256 to +510"
......@@ -214,6 +214,11 @@
(and (match_code "const_int")
(match_test "TARGET_THUMB2 && ival >= 0 && ival <= 255")))
(define_constraint "Pz"
"@internal In Thumb-2 state the constant 0"
(and (match_code "const_int")
(match_test "TARGET_THUMB2 && (ival == 0)")))
(define_constraint "G"
"In ARM/Thumb-2 state the floating-point constant 0."
(and (match_code "const_double")
......
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