Commit d5d6a58b by Richard Henderson Committed by Richard Henderson

i386.md: Remove constraints strings from define_split and define_peephole2 patterns.

        * config/i386/i386.md: Remove constraints strings from define_split
        and define_peephole2 patterns.
        (eh_return_si, eh_return_di): Split eh_return_1 for modes.
        (eh_return): Use them.

From-SVN: r43846
parent 25076a07
2001-07-08 Richard Henderson <rth@redhat.com> 2001-07-08 Richard Henderson <rth@redhat.com>
* config/i386/i386.md: Remove constraints strings from define_split
and define_peephole2 patterns.
(eh_return_si, eh_return_di): Split eh_return_1 for modes.
(eh_return): Use them.
2001-07-08 Richard Henderson <rth@redhat.com>
* doc/tm.texi (Exception Handling): New subnode of Stack and Calling. * doc/tm.texi (Exception Handling): New subnode of Stack and Calling.
Document MD_FALLBACK_FRAME_STATE_FOR. Document MD_FALLBACK_FRAME_STATE_FOR.
......
...@@ -8039,7 +8039,7 @@ ...@@ -8039,7 +8039,7 @@
(define_split (define_split
[(set (reg 17) [(set (reg 17)
(compare (zero_extract (compare (zero_extract
(match_operand 0 "nonimmediate_operand" "rm") (match_operand 0 "nonimmediate_operand" "")
(match_operand 1 "const_int_operand" "") (match_operand 1 "const_int_operand" "")
(match_operand 2 "const_int_operand" "")) (match_operand 2 "const_int_operand" ""))
(const_int 0)))] (const_int 0)))]
...@@ -13449,13 +13449,24 @@ ...@@ -13449,13 +13449,24 @@
tmp = gen_rtx_MEM (Pmode, tmp); tmp = gen_rtx_MEM (Pmode, tmp);
emit_move_insn (tmp, ra); emit_move_insn (tmp, ra);
emit_insn (gen_eh_return_1 (sa)); if (Pmode == SImode)
emit_insn (gen_eh_return_si (sa));
else
emit_insn (gen_eh_return_di (sa));
emit_barrier (); emit_barrier ();
DONE; DONE;
}) })
(define_insn_and_split "eh_return_1" (define_insn_and_split "eh_return_si"
[(unspec_volatile [(match_operand 0 "register_operand" "c")] 13)] [(unspec_volatile [(match_operand:SI 0 "register_operand" "c")] 13)]
""
"#"
"reload_completed"
[(const_int 1)]
"ix86_expand_epilogue (2); DONE;")
(define_insn_and_split "eh_return_di"
[(unspec_volatile [(match_operand:DI 0 "register_operand" "c")] 13)]
"" ""
"#" "#"
"reload_completed" "reload_completed"
...@@ -16608,8 +16619,8 @@ ...@@ -16608,8 +16619,8 @@
;; lifetime information then. ;; lifetime information then.
(define_peephole2 (define_peephole2
[(set (match_operand:SI 0 "nonimmediate_operand" "=rm") [(set (match_operand:SI 0 "nonimmediate_operand" "")
(not:SI (match_operand:SI 1 "nonimmediate_operand" "0")))] (not:SI (match_operand:SI 1 "nonimmediate_operand" "")))]
"!optimize_size "!optimize_size
&& peep2_regno_dead_p (0, FLAGS_REG) && peep2_regno_dead_p (0, FLAGS_REG)
&& ((TARGET_PENTIUM && ((TARGET_PENTIUM
...@@ -16622,8 +16633,8 @@ ...@@ -16622,8 +16633,8 @@
"") "")
(define_peephole2 (define_peephole2
[(set (match_operand:HI 0 "nonimmediate_operand" "=rm") [(set (match_operand:HI 0 "nonimmediate_operand" "")
(not:HI (match_operand:HI 1 "nonimmediate_operand" "0")))] (not:HI (match_operand:HI 1 "nonimmediate_operand" "")))]
"!optimize_size "!optimize_size
&& peep2_regno_dead_p (0, FLAGS_REG) && peep2_regno_dead_p (0, FLAGS_REG)
&& ((TARGET_PENTIUM && ((TARGET_PENTIUM
...@@ -16636,8 +16647,8 @@ ...@@ -16636,8 +16647,8 @@
"") "")
(define_peephole2 (define_peephole2
[(set (match_operand:QI 0 "nonimmediate_operand" "=rm") [(set (match_operand:QI 0 "nonimmediate_operand" "")
(not:QI (match_operand:QI 1 "nonimmediate_operand" "0")))] (not:QI (match_operand:QI 1 "nonimmediate_operand" "")))]
"!optimize_size "!optimize_size
&& peep2_regno_dead_p (0, FLAGS_REG) && peep2_regno_dead_p (0, FLAGS_REG)
&& ((TARGET_PENTIUM && ((TARGET_PENTIUM
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment