From: rsandifo Date: Tue, 13 Sep 2011 18:11:00 +0000 (+0000) Subject: gcc/ X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=commitdiff_plain;h=0bf497f5cdb9604b34123c692c45e4e09c02dc20 gcc/ * config/arm/arm.md: Use match_test rather than eq/ne symbol_ref throughout file. * config/arm/neon.md: Likewise. * config/arm/vfp.md: Likewise. * config/arm/thumb2.md: Likewise. * config/arm/cortex-m4.md: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178821 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2670db85609..33d7b04c1ec 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2011-09-13 Richard Sandiford + + * config/arm/arm.md: Use match_test rather than eq/ne symbol_ref + throughout file. + * config/arm/neon.md: Likewise. + * config/arm/vfp.md: Likewise. + * config/arm/thumb2.md: Likewise. + * config/arm/cortex-m4.md: Likewise. + 2011-09-13 Sevak Sargsyan * config/arm/neon.md (neon_vabd_2, neon_vabd_3): New diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md index cd7cb06f45f..0732ba17e90 100644 --- a/gcc/config/arm/arm.md +++ b/gcc/config/arm/arm.md @@ -211,31 +211,31 @@ (const_string "yes") (and (eq_attr "arch" "a") - (ne (symbol_ref "TARGET_ARM") (const_int 0))) + (match_test "TARGET_ARM")) (const_string "yes") (and (eq_attr "arch" "t") - (ne (symbol_ref "TARGET_THUMB") (const_int 0))) + (match_test "TARGET_THUMB")) (const_string "yes") (and (eq_attr "arch" "t1") - (ne (symbol_ref "TARGET_THUMB1") (const_int 0))) + (match_test "TARGET_THUMB1")) (const_string "yes") (and (eq_attr "arch" "t2") - (ne (symbol_ref "TARGET_THUMB2") (const_int 0))) + (match_test "TARGET_THUMB2")) (const_string "yes") (and (eq_attr "arch" "32") - (ne (symbol_ref "TARGET_32BIT") (const_int 0))) + (match_test "TARGET_32BIT")) (const_string "yes") (and (eq_attr "arch" "v6") - (ne (symbol_ref "(TARGET_32BIT && arm_arch6)") (const_int 0))) + (match_test "TARGET_32BIT && arm_arch6")) (const_string "yes") (and (eq_attr "arch" "nov6") - (ne (symbol_ref "(TARGET_32BIT && !arm_arch6)") (const_int 0))) + (match_test "TARGET_32BIT && !arm_arch6")) (const_string "yes") (and (eq_attr "arch" "onlya8") @@ -7413,7 +7413,7 @@ (set_attr "type" "branch") (set (attr "length") (if_then_else - (and (ne (symbol_ref "TARGET_THUMB2") (const_int 0)) + (and (match_test "TARGET_THUMB2") (and (ge (minus (match_dup 0) (pc)) (const_int -250)) (le (minus (match_dup 0) (pc)) (const_int 256)))) (const_int 2) @@ -7439,7 +7439,7 @@ (set_attr "type" "branch") (set (attr "length") (if_then_else - (and (ne (symbol_ref "TARGET_THUMB2") (const_int 0)) + (and (match_test "TARGET_THUMB2") (and (ge (minus (match_dup 0) (pc)) (const_int -250)) (le (minus (match_dup 0) (pc)) (const_int 256)))) (const_int 2) @@ -7898,7 +7898,7 @@ [(set_attr "predicable" "yes") (set (attr "length") (if_then_else - (and (ne (symbol_ref "TARGET_THUMB2") (const_int 0)) + (and (match_test "TARGET_THUMB2") (and (ge (minus (match_dup 0) (pc)) (const_int -2044)) (le (minus (match_dup 0) (pc)) (const_int 2048)))) (const_int 2) diff --git a/gcc/config/arm/cortex-m4.md b/gcc/config/arm/cortex-m4.md index b71037585d0..57479853610 100644 --- a/gcc/config/arm/cortex-m4.md +++ b/gcc/config/arm/cortex-m4.md @@ -44,14 +44,14 @@ (define_insn_reservation "cortex_m4_store1_1" 1 (and (and (eq_attr "tune" "cortexm4") (eq_attr "type" "store1")) - (ne (symbol_ref ("arm_address_offset_is_imm (insn)")) (const_int 0))) + (match_test "arm_address_offset_is_imm (insn)")) "cortex_m4_a") ;; Other byte, half-word and word load is two cycles. (define_insn_reservation "cortex_m4_store1_2" 2 (and (and (eq_attr "tune" "cortexm4") (eq_attr "type" "store1")) - (eq (symbol_ref ("arm_address_offset_is_imm (insn)")) (const_int 0))) + (not (match_test "arm_address_offset_is_imm (insn)"))) "cortex_m4_a*2") (define_insn_reservation "cortex_m4_load2" 3 diff --git a/gcc/config/arm/neon.md b/gcc/config/arm/neon.md index b70c7af98f3..0d94a49adbb 100644 --- a/gcc/config/arm/neon.md +++ b/gcc/config/arm/neon.md @@ -576,8 +576,8 @@ "TARGET_NEON && (! || flag_unsafe_math_optimizations)" "vadd.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_1")))] @@ -612,8 +612,8 @@ "TARGET_NEON && (! || flag_unsafe_math_optimizations)" "vsub.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_2")))] @@ -649,16 +649,16 @@ "TARGET_NEON && (! || flag_unsafe_math_optimizations)" "vmul.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (if_then_else - (ne (symbol_ref "") (const_int 0)) + (match_test "") (const_string "neon_mul_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mul_qqq_8_16_32_ddd_32")) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mul_qqq_8_16_32_ddd_32") (const_string "neon_mul_qqq_8_16_32_ddd_32")))))] ) @@ -671,16 +671,16 @@ "TARGET_NEON && (! || flag_unsafe_math_optimizations)" "vmla.\t%0, %2, %3" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vmla_ddd") (const_string "neon_fp_vmla_qqq")) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (if_then_else - (ne (symbol_ref "") (const_int 0)) + (match_test "") (const_string "neon_mla_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long")) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_qqq_8_16") (const_string "neon_mla_qqq_32_qqd_32_scalar")))))] ) @@ -693,16 +693,16 @@ "TARGET_NEON && (! || flag_unsafe_math_optimizations)" "vmls.\t%0, %2, %3" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vmla_ddd") (const_string "neon_fp_vmla_qqq")) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (if_then_else - (ne (symbol_ref "") (const_int 0)) + (match_test "") (const_string "neon_mla_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long")) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_qqq_8_16") (const_string "neon_mla_qqq_32_qqd_32_scalar")))))] ) @@ -902,8 +902,8 @@ "TARGET_NEON" "vabs.\t%0, %1" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_3")))] @@ -915,8 +915,8 @@ "TARGET_NEON" "vneg.\t%0, %1" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_3")))] @@ -947,7 +947,7 @@ "TARGET_NEON" "vmin.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_int_5")))] ) @@ -959,7 +959,7 @@ "TARGET_NEON" "vmax.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_int_5")))] ) @@ -985,7 +985,7 @@ } } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_vshl_ddd") (const_string "neon_shift_3")))] ) @@ -1001,7 +1001,7 @@ false); } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_vshl_ddd") (const_string "neon_shift_3")))] ) @@ -1017,7 +1017,7 @@ false); } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_vshl_ddd") (const_string "neon_shift_3")))] ) @@ -1035,7 +1035,7 @@ "TARGET_NEON" "vshl.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_vshl_ddd") (const_string "neon_shift_3")))] ) @@ -1051,7 +1051,7 @@ "TARGET_NEON" "vshl.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_vshl_ddd") (const_string "neon_shift_3")))] ) @@ -1491,8 +1491,8 @@ "vpadd.\t%P0, %P1, %P2" ;; Assume this schedules like vadd. [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_1")))] @@ -1507,7 +1507,7 @@ "vpmin.\t%P0, %P1, %P2" ;; Assume this schedules like vmin. [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_int_5")))] ) @@ -1521,7 +1521,7 @@ "vpmax.\t%P0, %P1, %P2" ;; Assume this schedules like vmax. [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_int_5")))] ) @@ -1794,8 +1794,8 @@ "TARGET_NEON" "vadd.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_1")))] @@ -1873,16 +1873,16 @@ "TARGET_NEON" "vmul.%F3%#\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (if_then_else - (ne (symbol_ref "") (const_int 0)) + (match_test "") (const_string "neon_mul_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mul_qqq_8_16_32_ddd_32")) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mul_qqq_8_16_32_ddd_32") (const_string "neon_mul_qqq_8_16_32_ddd_32")))))] ) @@ -1915,16 +1915,16 @@ "TARGET_NEON" "vmla.\t%0, %2, %3" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vmla_ddd") (const_string "neon_fp_vmla_qqq")) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (if_then_else - (ne (symbol_ref "") (const_int 0)) + (match_test "") (const_string "neon_mla_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long")) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_qqq_8_16") (const_string "neon_mla_qqq_32_qqd_32_scalar")))))] ) @@ -1939,7 +1939,7 @@ "TARGET_NEON" "vmlal.%T4%#\t%q0, %P2, %P3" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long")))] ) @@ -1972,17 +1972,17 @@ "TARGET_NEON" "vmls.\t%0, %2, %3" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vmla_ddd") (const_string "neon_fp_vmla_qqq")) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (if_then_else - (ne (symbol_ref "") (const_int 0)) + (match_test "") (const_string "neon_mla_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long")) (if_then_else - (ne (symbol_ref "") (const_int 0)) + (match_test "") (const_string "neon_mla_qqq_8_16") (const_string "neon_mla_qqq_32_qqd_32_scalar")))))] ) @@ -1997,7 +1997,7 @@ "TARGET_NEON" "vmlsl.%T4%#\t%q0, %P2, %P3" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long")))] ) @@ -2011,11 +2011,11 @@ "TARGET_NEON" "vq%O3dmulh.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_mul_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mul_qqq_8_16_32_ddd_32")) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mul_qqq_8_16_32_ddd_32") (const_string "neon_mul_qqq_8_16_32_ddd_32"))))] ) @@ -2030,7 +2030,7 @@ "TARGET_NEON" "vqdmlal.\t%q0, %P2, %P3" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long")))] ) @@ -2045,7 +2045,7 @@ "TARGET_NEON" "vqdmlsl.\t%q0, %P2, %P3" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long")))] ) @@ -2059,7 +2059,7 @@ "TARGET_NEON" "vmull.%T3%#\t%q0, %P1, %P2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mul_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mul_qdd_64_32_long_qqd_16_ddd_32_scalar_64_32_long_scalar")))] ) @@ -2073,7 +2073,7 @@ "TARGET_NEON" "vqdmull.\t%q0, %P1, %P2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mul_ddd_8_16_qdd_16_8_long_32_16_long") (const_string "neon_mul_qdd_64_32_long_qqd_16_ddd_32_scalar_64_32_long_scalar")))] ) @@ -2103,8 +2103,8 @@ "TARGET_NEON" "vsub.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_2")))] @@ -2177,8 +2177,8 @@ vceq.\t%0, %1, %2 vceq.\t%0, %1, #0" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_5")))] @@ -2196,8 +2196,8 @@ vcge.%T3%#\t%0, %1, %2 vcge.%T3%#\t%0, %1, #0" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_5")))] @@ -2215,8 +2215,8 @@ vcgt.%T3%#\t%0, %1, %2 vcgt.%T3%#\t%0, %1, #0" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_5")))] @@ -2235,8 +2235,8 @@ "TARGET_NEON" "vcle.%T3%#\t%0, %1, #0" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_5")))] @@ -2252,8 +2252,8 @@ "TARGET_NEON" "vclt.%T3%#\t%0, %1, #0" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_5")))] @@ -2268,7 +2268,7 @@ "TARGET_NEON" "vacge.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")))] ) @@ -2282,7 +2282,7 @@ "TARGET_NEON" "vacgt.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")))] ) @@ -2307,8 +2307,8 @@ "TARGET_NEON" "vabd.%T3%#\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_5")))] @@ -2335,7 +2335,7 @@ "TARGET_NEON" "vaba.%T4%#\t%0, %2, %3" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_vaba") (const_string "neon_vaba_qqq")))] ) @@ -2360,8 +2360,8 @@ "TARGET_NEON" "vmax.%T3%#\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_5")))] @@ -2376,8 +2376,8 @@ "TARGET_NEON" "vmin.%T3%#\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")) (const_string "neon_int_5")))] @@ -2428,7 +2428,7 @@ "vpmax.%T3%#\t%0, %1, %2" ;; Assume this schedules like vmax. [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_int_5")))] ) @@ -2443,7 +2443,7 @@ "vpmin.%T3%#\t%0, %1, %2" ;; Assume this schedules like vmin. [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_int_5")))] ) @@ -2457,7 +2457,7 @@ "TARGET_NEON" "vrecps.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vrecps_vrsqrts_ddd") (const_string "neon_fp_vrecps_vrsqrts_qqq")))] ) @@ -2471,7 +2471,7 @@ "TARGET_NEON" "vrsqrts.\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vrecps_vrsqrts_ddd") (const_string "neon_fp_vrecps_vrsqrts_qqq")))] ) @@ -2570,7 +2570,7 @@ "TARGET_NEON" "vrecpe.\t%0, %1" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")))] ) @@ -2583,7 +2583,7 @@ "TARGET_NEON" "vrsqrte.\t%0, %1" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")))] ) @@ -3155,7 +3155,7 @@ "TARGET_NEON" "vcvt.%T2%#32.f32\t%0, %1" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")))] ) @@ -3168,7 +3168,7 @@ "TARGET_NEON" "vcvt.f32.%T2%#32\t%0, %1" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")))] ) @@ -3185,7 +3185,7 @@ return "vcvt.%T3%#32.f32\t%0, %1, %2"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")))] ) @@ -3202,7 +3202,7 @@ return "vcvt.f32.%T3%#32\t%0, %1, %2"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vadd_ddd_vabs_dd") (const_string "neon_fp_vadd_qqq_vabs_qq")))] ) @@ -3261,9 +3261,9 @@ return "vmul.\t%P0, %P1, %P2[%c3]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vmul_ddd") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mul_ddd_16_scalar_32_16_long_scalar") (const_string "neon_mul_qdd_64_32_long_qqd_16_ddd_32_scalar_64_32_long_scalar"))))] ) @@ -3282,9 +3282,9 @@ return "vmul.\t%q0, %q1, %P2[%c3]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vmul_qqd") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mul_qdd_64_32_long_qqd_16_ddd_32_scalar_64_32_long_scalar") (const_string "neon_mul_qqd_32_scalar"))))] ) @@ -3303,7 +3303,7 @@ return "vmull.%T4%#\t%q0, %P1, %P2[%c3]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mul_ddd_16_scalar_32_16_long_scalar") (const_string "neon_mul_qdd_64_32_long_qqd_16_ddd_32_scalar_64_32_long_scalar")))] ) @@ -3322,7 +3322,7 @@ return "vqdmull.\t%q0, %P1, %P2[%c3]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mul_ddd_16_scalar_32_16_long_scalar") (const_string "neon_mul_qdd_64_32_long_qqd_16_ddd_32_scalar_64_32_long_scalar")))] ) @@ -3341,7 +3341,7 @@ return "vq%O4dmulh.%T4%#\t%q0, %q1, %P2[%c3]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mul_qdd_64_32_long_qqd_16_ddd_32_scalar_64_32_long_scalar") (const_string "neon_mul_qqd_32_scalar")))] ) @@ -3360,7 +3360,7 @@ return "vq%O4dmulh.%T4%#\t%P0, %P1, %P2[%c3]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mul_ddd_16_scalar_32_16_long_scalar") (const_string "neon_mul_qdd_64_32_long_qqd_16_ddd_32_scalar_64_32_long_scalar")))] ) @@ -3380,9 +3380,9 @@ return "vmla.\t%P0, %P2, %P3[%c4]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vmla_ddd_scalar") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_ddd_16_scalar_qdd_32_16_long_scalar") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long"))))] ) @@ -3402,9 +3402,9 @@ return "vmla.\t%q0, %q2, %P3[%c4]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vmla_qqq_scalar") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long") (const_string "neon_mla_qqq_32_qqd_32_scalar"))))] ) @@ -3424,7 +3424,7 @@ return "vmlal.%T5%#\t%q0, %P2, %P3[%c4]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_ddd_16_scalar_qdd_32_16_long_scalar") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long")))] ) @@ -3444,7 +3444,7 @@ return "vqdmlal.\t%q0, %P2, %P3[%c4]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_ddd_16_scalar_qdd_32_16_long_scalar") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long")))] ) @@ -3464,9 +3464,9 @@ return "vmls.\t%P0, %P2, %P3[%c4]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vmla_ddd_scalar") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_ddd_16_scalar_qdd_32_16_long_scalar") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long"))))] ) @@ -3486,9 +3486,9 @@ return "vmls.\t%q0, %q2, %P3[%c4]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_fp_vmla_qqq_scalar") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long") (const_string "neon_mla_qqq_32_qqd_32_scalar"))))] ) @@ -3508,7 +3508,7 @@ return "vmlsl.%T5%#\t%q0, %P2, %P3[%c4]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_ddd_16_scalar_qdd_32_16_long_scalar") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long")))] ) @@ -3528,7 +3528,7 @@ return "vqdmlsl.\t%q0, %P2, %P3[%c4]"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_mla_ddd_16_scalar_qdd_32_16_long_scalar") (const_string "neon_mla_ddd_32_qqd_16_ddd_32_scalar_qdd_64_32_long_scalar_qdd_64_32_long")))] ) @@ -3756,7 +3756,7 @@ return "vext.\t%0, %1, %2, %3"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_bp_simple") (const_string "neon_bp_2cycle")))] ) @@ -3834,7 +3834,7 @@ "TARGET_NEON" "v%O3shl.%T3%#\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_vshl_ddd") (const_string "neon_shift_3")))] ) @@ -3848,7 +3848,7 @@ "TARGET_NEON" "vq%O3shl.%T3%#\t%0, %1, %2" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_shift_2") (const_string "neon_vqshl_vrshl_vqrshl_qqq")))] ) @@ -3993,7 +3993,7 @@ return "vsri.\t%0, %2, %3"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_shift_1") (const_string "neon_shift_3")))] ) @@ -4010,7 +4010,7 @@ return "vsli.\t%0, %2, %3"; } [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_shift_1") (const_string "neon_shift_3")))] ) @@ -4182,7 +4182,7 @@ "TARGET_NEON" "vtrn.\t%0, %3" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_bp_simple") (const_string "neon_bp_3cycle")))] ) @@ -4209,7 +4209,7 @@ "TARGET_NEON" "vzip.\t%0, %3" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_bp_simple") (const_string "neon_bp_3cycle")))] ) @@ -4236,7 +4236,7 @@ "TARGET_NEON" "vuzp.\t%0, %3" [(set (attr "neon_type") - (if_then_else (ne (symbol_ref "") (const_int 0)) + (if_then_else (match_test "") (const_string "neon_bp_simple") (const_string "neon_bp_3cycle")))] ) diff --git a/gcc/config/arm/thumb2.md b/gcc/config/arm/thumb2.md index 9a11012641d..05585dabbab 100644 --- a/gcc/config/arm/thumb2.md +++ b/gcc/config/arm/thumb2.md @@ -951,7 +951,7 @@ (if_then_else (and (ge (minus (match_dup 1) (pc)) (const_int 2)) (le (minus (match_dup 1) (pc)) (const_int 128)) - (eq (symbol_ref ("which_alternative")) (const_int 0))) + (not (match_test "which_alternative"))) (const_int 2) (const_int 8)))] ) @@ -974,7 +974,7 @@ (if_then_else (and (ge (minus (match_dup 1) (pc)) (const_int 2)) (le (minus (match_dup 1) (pc)) (const_int 128)) - (eq (symbol_ref ("which_alternative")) (const_int 0))) + (not (match_test "which_alternative"))) (const_int 2) (const_int 8)))] ) diff --git a/gcc/config/arm/vfp.md b/gcc/config/arm/vfp.md index 991b5174cf8..0c85c46019b 100644 --- a/gcc/config/arm/vfp.md +++ b/gcc/config/arm/vfp.md @@ -173,7 +173,7 @@ (eq_attr "alternative" "3") (const_int 16) (eq_attr "alternative" "9") (if_then_else - (eq (symbol_ref "TARGET_VFP_SINGLE") (const_int 1)) + (match_test "TARGET_VFP_SINGLE") (const_int 8) (const_int 4))] (const_int 4))) @@ -454,8 +454,7 @@ (set (attr "length") (cond [(eq_attr "alternative" "5,6,8") (const_int 8) (eq_attr "alternative" "7") (if_then_else - (eq (symbol_ref "TARGET_VFP_SINGLE") - (const_int 1)) + (match_test "TARGET_VFP_SINGLE") (const_int 8) (const_int 4))] (const_int 4))) @@ -498,8 +497,7 @@ (set (attr "length") (cond [(eq_attr "alternative" "5,6,8") (const_int 8) (eq_attr "alternative" "7") (if_then_else - (eq (symbol_ref "TARGET_VFP_SINGLE") - (const_int 1)) + (match_test "TARGET_VFP_SINGLE") (const_int 8) (const_int 4))] (const_int 4)))