aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorHerman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>2000-08-05 01:43:22 +0200
committerMichael Hayes <m.hayes@gcc.gnu.org>2000-08-04 23:43:22 +0000
commit39c1728ea7321a2c2b9252e159c864cf92c9a548 (patch)
tree95f03d6c1e7bf5424e3623355a044bda79067ac6 /gcc
parent4e1e54607bca5b43285c73427c3eeabe05947e1f (diff)
downloadgcc-39c1728ea7321a2c2b9252e159c864cf92c9a548.zip
gcc-39c1728ea7321a2c2b9252e159c864cf92c9a548.tar.gz
gcc-39c1728ea7321a2c2b9252e159c864cf92c9a548.tar.bz2
c4x.md (return_indirect_internal): New.
2000-08-05 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> * config/c4x/c4x.md (return_indirect_internal): New. * config/c4x/c4x.c (c4x_expand_epilogue): Use it. From-SVN: r35497
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/c4x/c4x.c4
-rw-r--r--gcc/config/c4x/c4x.md7
3 files changed, 14 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6f56ef5..2880934 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-08-05 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * config/c4x/c4x.md (return_indirect_internal): New.
+ * config/c4x/c4x.c (c4x_expand_epilogue): Use it.
+
2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
* c-common.c (time_char_table): Mark up formats added in C99 and
diff --git a/gcc/config/c4x/c4x.c b/gcc/config/c4x/c4x.c
index c8d865c..49bfadc66 100644
--- a/gcc/config/c4x/c4x.c
+++ b/gcc/config/c4x/c4x.c
@@ -1165,8 +1165,8 @@ c4x_expand_epilogue()
if (jump)
{
- insn = emit_insn (gen_indirect_jump (
- gen_rtx_REG (QImode, R2_REGNO)));
+ insn = emit_jump_insn (gen_return_indirect_internal
+ (gen_rtx_REG (QImode, R2_REGNO)));
RTX_FRAME_RELATED_P (insn) = 1;
}
else
diff --git a/gcc/config/c4x/c4x.md b/gcc/config/c4x/c4x.md
index 99ca228..bd9cc96 100644
--- a/gcc/config/c4x/c4x.md
+++ b/gcc/config/c4x/c4x.md
@@ -5249,6 +5249,13 @@
"nop")
; Default to misc type attr.
+(define_insn "return_indirect_internal"
+ [(return)
+ (use (match_operand:QI 0 "reg_operand" ""))]
+ "reload_completed"
+ "bu%#\\t%0"
+ [(set_attr "type" "jump")])
+
(define_expand "prologue"
[(const_int 1)]
""