diff options
author | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-03-27 22:23:12 +0000 |
---|---|---|
committer | hubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-03-27 22:23:12 +0000 |
commit | 4712c7d6025fc9dec8723012535d7a24f8aa8506 (patch) | |
tree | 2ce9927ec32f655ae24af08763c7f453ed92da21 /gcc/config/i960 | |
parent | 0814fb519110120ae530ab3c5cad3f9db97d2bda (diff) | |
download | ppe42-gcc-4712c7d6025fc9dec8723012535d7a24f8aa8506.tar.gz ppe42-gcc-4712c7d6025fc9dec8723012535d7a24f8aa8506.zip |
* i960.md (ret): Set PC.
(nonlocal_goto): Fix expander.
* builtins.c (epxand_builin_longjmp): Check that we've emitted
some jump or call.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@51478 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/i960')
-rw-r--r-- | gcc/config/i960/i960.md | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/config/i960/i960.md b/gcc/config/i960/i960.md index 80e4efaed62..5755598345f 100644 --- a/gcc/config/i960/i960.md +++ b/gcc/config/i960/i960.md @@ -2365,8 +2365,7 @@ ;; stack pointer, frame pointer, previous frame pointer and the return ;; instruction pointer. (define_insn "ret" - [(use (reg:SI 16)) - (unspec_volatile [(const_int 0)] 3)] + [(set (pc) (unspec_volatile [(reg:SI 16)] 3))] "" "ret" [(set_attr "type" "branch") @@ -2424,7 +2423,7 @@ because we are very careful to ret from the exact save area in use during the original call. */ - emit_insn (gen_ret ()); + emit_jump_insn (gen_ret ()); emit_barrier (); DONE; }") |