diff options
author | uweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-11-06 19:57:41 +0000 |
---|---|---|
committer | uweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-11-06 19:57:41 +0000 |
commit | cec0d54df84b3d2d9bdbdb46e86af53b98ce3d13 (patch) | |
tree | 4f831f5fa5c96b2383994ecb79b41ccb31af2dbf /gcc/config/s390/2064.md | |
parent | 2e3f2a1d271608d12267d7f3198b474e5d2acc7c (diff) | |
download | gcc-cec0d54df84b3d2d9bdbdb46e86af53b98ce3d13.tar.gz |
* config/s390/2064.md ("z_int", "z_agen"): Ensure the condition
matches no insns already matched by other reservations.
* config/s390/2084.md ("x_int", "x_agen"): Ensure the condition
matches no insns already matched by other reservations.
("x_ss"): Remove, replace by ...
("x_cs"): ... this new reservation. Check type instead of op_type.
Update bypasses to use x_cs instead of x_ss.
("x_nn"): Remove, replace by ...
("x_other"): ... this new reservation. Check type instead of op_type.
Add x_other and x_branch to bypasses.
("x_vs"): New reservation.
* config/s390/s390.md (attribute "type"): Default according to op_type.
("*execute"): Set type to "cs".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@90190 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/s390/2064.md')
-rw-r--r-- | gcc/config/s390/2064.md | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/gcc/config/s390/2064.md b/gcc/config/s390/2064.md index 643277e889b..211cd024d01 100644 --- a/gcc/config/s390/2064.md +++ b/gcc/config/s390/2064.md @@ -72,22 +72,20 @@ (eq_attr "type" "jsr")) "z_e1*5,z_wr") -; -; Insn still not mentioned are check for -; the usage of the agen unit -; +;; For everything else we check the atype flag. (define_insn_reservation "z_int" 1 (and (eq_attr "cpu" "z900,g5,g6") - (eq_attr "atype" "reg")) + (and (not (eq_attr "type" "la,larl,load,store,jsr")) + (eq_attr "atype" "reg"))) "z_e1,z_wr") (define_insn_reservation "z_agen" 1 (and (eq_attr "cpu" "z900,g5,g6") - (eq_attr "atype" "agen")) + (and (not (eq_attr "type" "la,larl,load,store,jsr")) + (eq_attr "atype" "agen"))) "z_e1,z_wr") - ;; ;; s390_agen_dep_p returns 1, if a register is set in the ;; first insn and used in the dependent insn to form a address. |