diff options
author | Jan Hubicka <jh@suse.cz> | 2002-03-27 23:23:12 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2002-03-27 22:23:12 +0000 |
commit | d337d653ca302134c4e668cdcce30e7518163957 (patch) | |
tree | 2ce9927ec32f655ae24af08763c7f453ed92da21 /gcc/config/i960 | |
parent | 218aa620c4a1f7c2fadd6605d9ed5caee604079b (diff) | |
download | gcc-d337d653ca302134c4e668cdcce30e7518163957.zip gcc-d337d653ca302134c4e668cdcce30e7518163957.tar.gz gcc-d337d653ca302134c4e668cdcce30e7518163957.tar.bz2 |
i960.md (ret): Set PC.
* i960.md (ret): Set PC.
(nonlocal_goto): Fix expander.
* builtins.c (epxand_builin_longjmp): Check that we've emitted
some jump or call.
From-SVN: r51478
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 80e4efa..5755598 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; }") |