diff options
author | Eric Botcazou <ebotcazou@libertysurf.fr> | 2003-10-01 08:08:35 +0200 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2003-10-01 06:08:35 +0000 |
commit | 8ee37f152b5d78c349a58d1d0fc9046f4fcdb01f (patch) | |
tree | 16095f9694336fb55ffb30112445294e7c0c59e7 /gcc | |
parent | ed80cd6809e600cf021fc66cbc1d5fa5c682cab7 (diff) | |
download | gcc-8ee37f152b5d78c349a58d1d0fc9046f4fcdb01f.zip gcc-8ee37f152b5d78c349a58d1d0fc9046f4fcdb01f.tar.gz gcc-8ee37f152b5d78c349a58d1d0fc9046f4fcdb01f.tar.bz2 |
re PR rtl-optimization/11753 (%o7 register being used immediately in the delay slot before a call with -O2)
PR optimization/11753
* config/sparc/sparc.md (length attribute) [fcc branch]: Add 1 to
the length in the non-V9 case.
From-SVN: r71968
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/sparc/sparc.md | 8 |
2 files changed, 12 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e2b09d7..c1f67d5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2003-10-01 Eric Botcazou <ebotcazou@libertysurf.fr> + + PR optimization/11753 + * config/sparc/sparc.md (length attribute) [fcc branch]: Add 1 to + the length in the non-V9 case. + 2003-09-30 Richard Henderson <rth@redhat.com> * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes): Honor diff --git a/gcc/config/sparc/sparc.md b/gcc/config/sparc/sparc.md index a987041..6f2ebff 100644 --- a/gcc/config/sparc/sparc.md +++ b/gcc/config/sparc/sparc.md @@ -155,8 +155,12 @@ (eq_attr "branch_type" "fcc") (if_then_else (match_operand 0 "fcc0_reg_operand" "") (if_then_else (eq_attr "empty_delay_slot" "true") - (const_int 2) - (const_int 1)) + (if_then_else (eq (symbol_ref "TARGET_V9") (const_int 0)) + (const_int 3) + (const_int 2)) + (if_then_else (eq (symbol_ref "TARGET_V9") (const_int 0)) + (const_int 2) + (const_int 1))) (if_then_else (lt (pc) (match_dup 2)) (if_then_else (lt (minus (match_dup 2) (pc)) (const_int 260000)) (if_then_else (eq_attr "empty_delay_slot" "true") |