Commit b75b1be2 by Richard Sandiford Committed by Richard Sandiford

arm.md: Use match_test rather than eq/ne symbol_ref throughout file.

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.

From-SVN: r178821
parent 280deda6
2011-09-13 Richard Sandiford <rdsandiford@googlemail.com>
* 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 <sevak.sargsyan@ispras.ru> 2011-09-13 Sevak Sargsyan <sevak.sargsyan@ispras.ru>
* config/arm/neon.md (neon_vabd<mode>_2, neon_vabd<mode>_3): New * config/arm/neon.md (neon_vabd<mode>_2, neon_vabd<mode>_3): New
...@@ -211,31 +211,31 @@ ...@@ -211,31 +211,31 @@
(const_string "yes") (const_string "yes")
(and (eq_attr "arch" "a") (and (eq_attr "arch" "a")
(ne (symbol_ref "TARGET_ARM") (const_int 0))) (match_test "TARGET_ARM"))
(const_string "yes") (const_string "yes")
(and (eq_attr "arch" "t") (and (eq_attr "arch" "t")
(ne (symbol_ref "TARGET_THUMB") (const_int 0))) (match_test "TARGET_THUMB"))
(const_string "yes") (const_string "yes")
(and (eq_attr "arch" "t1") (and (eq_attr "arch" "t1")
(ne (symbol_ref "TARGET_THUMB1") (const_int 0))) (match_test "TARGET_THUMB1"))
(const_string "yes") (const_string "yes")
(and (eq_attr "arch" "t2") (and (eq_attr "arch" "t2")
(ne (symbol_ref "TARGET_THUMB2") (const_int 0))) (match_test "TARGET_THUMB2"))
(const_string "yes") (const_string "yes")
(and (eq_attr "arch" "32") (and (eq_attr "arch" "32")
(ne (symbol_ref "TARGET_32BIT") (const_int 0))) (match_test "TARGET_32BIT"))
(const_string "yes") (const_string "yes")
(and (eq_attr "arch" "v6") (and (eq_attr "arch" "v6")
(ne (symbol_ref "(TARGET_32BIT && arm_arch6)") (const_int 0))) (match_test "TARGET_32BIT && arm_arch6"))
(const_string "yes") (const_string "yes")
(and (eq_attr "arch" "nov6") (and (eq_attr "arch" "nov6")
(ne (symbol_ref "(TARGET_32BIT && !arm_arch6)") (const_int 0))) (match_test "TARGET_32BIT && !arm_arch6"))
(const_string "yes") (const_string "yes")
(and (eq_attr "arch" "onlya8") (and (eq_attr "arch" "onlya8")
...@@ -7413,7 +7413,7 @@ ...@@ -7413,7 +7413,7 @@
(set_attr "type" "branch") (set_attr "type" "branch")
(set (attr "length") (set (attr "length")
(if_then_else (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)) (and (ge (minus (match_dup 0) (pc)) (const_int -250))
(le (minus (match_dup 0) (pc)) (const_int 256)))) (le (minus (match_dup 0) (pc)) (const_int 256))))
(const_int 2) (const_int 2)
...@@ -7439,7 +7439,7 @@ ...@@ -7439,7 +7439,7 @@
(set_attr "type" "branch") (set_attr "type" "branch")
(set (attr "length") (set (attr "length")
(if_then_else (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)) (and (ge (minus (match_dup 0) (pc)) (const_int -250))
(le (minus (match_dup 0) (pc)) (const_int 256)))) (le (minus (match_dup 0) (pc)) (const_int 256))))
(const_int 2) (const_int 2)
...@@ -7898,7 +7898,7 @@ ...@@ -7898,7 +7898,7 @@
[(set_attr "predicable" "yes") [(set_attr "predicable" "yes")
(set (attr "length") (set (attr "length")
(if_then_else (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)) (and (ge (minus (match_dup 0) (pc)) (const_int -2044))
(le (minus (match_dup 0) (pc)) (const_int 2048)))) (le (minus (match_dup 0) (pc)) (const_int 2048))))
(const_int 2) (const_int 2)
......
...@@ -44,14 +44,14 @@ ...@@ -44,14 +44,14 @@
(define_insn_reservation "cortex_m4_store1_1" 1 (define_insn_reservation "cortex_m4_store1_1" 1
(and (and (eq_attr "tune" "cortexm4") (and (and (eq_attr "tune" "cortexm4")
(eq_attr "type" "store1")) (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") "cortex_m4_a")
;; Other byte, half-word and word load is two cycles. ;; Other byte, half-word and word load is two cycles.
(define_insn_reservation "cortex_m4_store1_2" 2 (define_insn_reservation "cortex_m4_store1_2" 2
(and (and (eq_attr "tune" "cortexm4") (and (and (eq_attr "tune" "cortexm4")
(eq_attr "type" "store1")) (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") "cortex_m4_a*2")
(define_insn_reservation "cortex_m4_load2" 3 (define_insn_reservation "cortex_m4_load2" 3
......
...@@ -951,7 +951,7 @@ ...@@ -951,7 +951,7 @@
(if_then_else (if_then_else
(and (ge (minus (match_dup 1) (pc)) (const_int 2)) (and (ge (minus (match_dup 1) (pc)) (const_int 2))
(le (minus (match_dup 1) (pc)) (const_int 128)) (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 2)
(const_int 8)))] (const_int 8)))]
) )
...@@ -974,7 +974,7 @@ ...@@ -974,7 +974,7 @@
(if_then_else (if_then_else
(and (ge (minus (match_dup 1) (pc)) (const_int 2)) (and (ge (minus (match_dup 1) (pc)) (const_int 2))
(le (minus (match_dup 1) (pc)) (const_int 128)) (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 2)
(const_int 8)))] (const_int 8)))]
) )
......
...@@ -173,7 +173,7 @@ ...@@ -173,7 +173,7 @@
(eq_attr "alternative" "3") (const_int 16) (eq_attr "alternative" "3") (const_int 16)
(eq_attr "alternative" "9") (eq_attr "alternative" "9")
(if_then_else (if_then_else
(eq (symbol_ref "TARGET_VFP_SINGLE") (const_int 1)) (match_test "TARGET_VFP_SINGLE")
(const_int 8) (const_int 8)
(const_int 4))] (const_int 4))]
(const_int 4))) (const_int 4)))
...@@ -454,8 +454,7 @@ ...@@ -454,8 +454,7 @@
(set (attr "length") (cond [(eq_attr "alternative" "5,6,8") (const_int 8) (set (attr "length") (cond [(eq_attr "alternative" "5,6,8") (const_int 8)
(eq_attr "alternative" "7") (eq_attr "alternative" "7")
(if_then_else (if_then_else
(eq (symbol_ref "TARGET_VFP_SINGLE") (match_test "TARGET_VFP_SINGLE")
(const_int 1))
(const_int 8) (const_int 8)
(const_int 4))] (const_int 4))]
(const_int 4))) (const_int 4)))
...@@ -498,8 +497,7 @@ ...@@ -498,8 +497,7 @@
(set (attr "length") (cond [(eq_attr "alternative" "5,6,8") (const_int 8) (set (attr "length") (cond [(eq_attr "alternative" "5,6,8") (const_int 8)
(eq_attr "alternative" "7") (eq_attr "alternative" "7")
(if_then_else (if_then_else
(eq (symbol_ref "TARGET_VFP_SINGLE") (match_test "TARGET_VFP_SINGLE")
(const_int 1))
(const_int 8) (const_int 8)
(const_int 4))] (const_int 4))]
(const_int 4))) (const_int 4)))
......
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