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>
* 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.
Document MD_FALLBACK_FRAME_STATE_FOR.
......
......@@ -8039,7 +8039,7 @@
(define_split
[(set (reg 17)
(compare (zero_extract
(match_operand 0 "nonimmediate_operand" "rm")
(match_operand 0 "nonimmediate_operand" "")
(match_operand 1 "const_int_operand" "")
(match_operand 2 "const_int_operand" ""))
(const_int 0)))]
......@@ -13449,13 +13449,24 @@
tmp = gen_rtx_MEM (Pmode, tmp);
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 ();
DONE;
})
(define_insn_and_split "eh_return_1"
[(unspec_volatile [(match_operand 0 "register_operand" "c")] 13)]
(define_insn_and_split "eh_return_si"
[(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"
......@@ -16608,8 +16619,8 @@
;; lifetime information then.
(define_peephole2
[(set (match_operand:SI 0 "nonimmediate_operand" "=rm")
(not:SI (match_operand:SI 1 "nonimmediate_operand" "0")))]
[(set (match_operand:SI 0 "nonimmediate_operand" "")
(not:SI (match_operand:SI 1 "nonimmediate_operand" "")))]
"!optimize_size
&& peep2_regno_dead_p (0, FLAGS_REG)
&& ((TARGET_PENTIUM
......@@ -16622,8 +16633,8 @@
"")
(define_peephole2
[(set (match_operand:HI 0 "nonimmediate_operand" "=rm")
(not:HI (match_operand:HI 1 "nonimmediate_operand" "0")))]
[(set (match_operand:HI 0 "nonimmediate_operand" "")
(not:HI (match_operand:HI 1 "nonimmediate_operand" "")))]
"!optimize_size
&& peep2_regno_dead_p (0, FLAGS_REG)
&& ((TARGET_PENTIUM
......@@ -16636,8 +16647,8 @@
"")
(define_peephole2
[(set (match_operand:QI 0 "nonimmediate_operand" "=rm")
(not:QI (match_operand:QI 1 "nonimmediate_operand" "0")))]
[(set (match_operand:QI 0 "nonimmediate_operand" "")
(not:QI (match_operand:QI 1 "nonimmediate_operand" "")))]
"!optimize_size
&& peep2_regno_dead_p (0, FLAGS_REG)
&& ((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