diff options
author | Jie Zhang <jie.zhang@analog.com> | 2006-10-12 08:52:58 +0000 |
---|---|---|
committer | Jie Zhang <jiez@gcc.gnu.org> | 2006-10-12 08:52:58 +0000 |
commit | 1e96b1c34fc5653ab1cd75b8e19034f5f56a1f84 (patch) | |
tree | a477fde64c77e7ae4ee2f7b1818145d14798f72e | |
parent | f724eac4c554e4c2b29e0009e3e0dd8b6e87c71e (diff) | |
download | gcc-1e96b1c34fc5653ab1cd75b8e19034f5f56a1f84.zip gcc-1e96b1c34fc5653ab1cd75b8e19034f5f56a1f84.tar.gz gcc-1e96b1c34fc5653ab1cd75b8e19034f5f56a1f84.tar.bz2 |
bfin.md (eh_return): Call emit_jump_insn instead of emit_insn to emit eh_return_internal instruction.
* config/bfin/bfin.md (eh_return): Call emit_jump_insn instead of
emit_insn to emit eh_return_internal instruction.
(eh_return_internal): Explicitly set pc.
From-SVN: r117662
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/bfin/bfin.md | 5 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6fd39c7..4edb41e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2006-10-12 Jie Zhang <jie.zhang@analog.com> + + * config/bfin/bfin.md (eh_return): Call emit_jump_insn instead of + emit_insn to emit eh_return_internal instruction. + (eh_return_internal): Explicitly set pc. + 2006-10-11 Richard Guenther <rguenther@suse.de> PR tree-optimization/28230 diff --git a/gcc/config/bfin/bfin.md b/gcc/config/bfin/bfin.md index 03747e8..425f995 100644 --- a/gcc/config/bfin/bfin.md +++ b/gcc/config/bfin/bfin.md @@ -2337,13 +2337,14 @@ "" { emit_move_insn (EH_RETURN_HANDLER_RTX, operands[0]); - emit_insn (gen_eh_return_internal ()); + emit_jump_insn (gen_eh_return_internal ()); emit_barrier (); DONE; }) (define_insn_and_split "eh_return_internal" - [(unspec_volatile [(reg:SI REG_P2)] UNSPEC_VOLATILE_EH_RETURN)] + [(set (pc) + (unspec_volatile [(reg:SI REG_P2)] UNSPEC_VOLATILE_EH_RETURN))] "" "#" "reload_completed" |