sparc.md (nonlocal_goto): Remove disabled code.
* config/sparc/sparc.md (nonlocal_goto): Remove disabled code. (goto_handler_and_restore_v9): Delete disabled insn. (goto_handler_and_restore_v9_sp64): Likewise. From-SVN: r84135
This commit is contained in:
parent
09b5267035
commit
6109c659f9
|
@ -1,3 +1,9 @@
|
|||
2004-07-05 Eric Botcazou <ebotcazou@libertysurf.fr>
|
||||
|
||||
* config/sparc/sparc.md (nonlocal_goto): Remove disabled code.
|
||||
(goto_handler_and_restore_v9): Delete disabled insn.
|
||||
(goto_handler_and_restore_v9_sp64): Likewise.
|
||||
|
||||
2004-07-05 Roger Sayle <roger@eyesopen.com>
|
||||
|
||||
* calls.c (load_register_parameters): Call expand_shift instead
|
||||
|
|
|
@ -7778,9 +7778,6 @@
|
|||
(match_operand:SI 3 "" "")]
|
||||
""
|
||||
{
|
||||
#if 0
|
||||
rtx chain = operands[0];
|
||||
#endif
|
||||
rtx lab = operands[1];
|
||||
rtx stack = operands[2];
|
||||
rtx fp = operands[3];
|
||||
|
@ -7806,27 +7803,10 @@
|
|||
and reload the appropriate value into %fp. */
|
||||
emit_move_insn (hard_frame_pointer_rtx, stack);
|
||||
|
||||
/* USE of frame_pointer_rtx added for consistency; not clear if
|
||||
really needed. */
|
||||
/*emit_insn (gen_rtx_USE (VOIDmode, frame_pointer_rtx));*/
|
||||
emit_insn (gen_rtx_USE (VOIDmode, stack_pointer_rtx));
|
||||
|
||||
#if 0
|
||||
/* Return, restoring reg window and jumping to goto handler. */
|
||||
if (TARGET_V9 && GET_CODE (chain) == CONST_INT
|
||||
&& ! (INTVAL (chain) & ~(HOST_WIDE_INT)0xffffffff))
|
||||
{
|
||||
emit_jump_insn (gen_goto_handler_and_restore_v9 (labreg,
|
||||
static_chain_rtx,
|
||||
chain));
|
||||
emit_barrier ();
|
||||
DONE;
|
||||
}
|
||||
/* Put in the static chain register the nonlocal label address. */
|
||||
emit_move_insn (static_chain_rtx, chain);
|
||||
#endif
|
||||
|
||||
emit_insn (gen_rtx_USE (VOIDmode, static_chain_rtx));
|
||||
|
||||
/* ??? The V9-specific version was disabled in rev 1.65. */
|
||||
emit_jump_insn (gen_goto_handler_and_restore (labreg));
|
||||
emit_barrier ();
|
||||
DONE;
|
||||
|
@ -7846,28 +7826,6 @@
|
|||
[(set_attr "type" "multi")
|
||||
(set_attr "length" "2")])
|
||||
|
||||
;;(define_insn "goto_handler_and_restore_v9"
|
||||
;; [(unspec_volatile [(match_operand:SI 0 "register_operand" "=r,r")
|
||||
;; (match_operand:SI 1 "register_operand" "=r,r")
|
||||
;; (match_operand:SI 2 "const_int_operand" "I,n")] UNSPECV_GOTO_V9)]
|
||||
;; "TARGET_V9 && ! TARGET_ARCH64"
|
||||
;; "@
|
||||
;; return\t%0+0\n\tmov\t%2, %Y1
|
||||
;; sethi\t%%hi(%2), %1\n\treturn\t%0+0\n\tor\t%Y1, %%lo(%2), %Y1"
|
||||
;; [(set_attr "type" "multi")
|
||||
;; (set_attr "length" "2,3")])
|
||||
;;
|
||||
;;(define_insn "*goto_handler_and_restore_v9_sp64"
|
||||
;; [(unspec_volatile [(match_operand:DI 0 "register_operand" "=r,r")
|
||||
;; (match_operand:DI 1 "register_operand" "=r,r")
|
||||
;; (match_operand:SI 2 "const_int_operand" "I,n")] UNSPECV_GOTO_V9)]
|
||||
;; "TARGET_V9 && TARGET_ARCH64"
|
||||
;; "@
|
||||
;; return\t%0+0\n\tmov\t%2, %Y1
|
||||
;; sethi\t%%hi(%2), %1\n\treturn\t%0+0\n\tor\t%Y1, %%lo(%2), %Y1"
|
||||
;; [(set_attr "type" "multi")
|
||||
;; (set_attr "length" "2,3")])
|
||||
|
||||
;; For __builtin_setjmp we need to flush register windows iff the function
|
||||
;; calls alloca as well, because otherwise the register window might be
|
||||
;; saved after %sp adjustment and thus setjmp would crash
|
||||
|
|
Loading…
Reference in New Issue