Commit 707e58b1 by Eric Botcazou Committed by Eric Botcazou

re PR rtl-optimization/8178 (__builtin_ffs broken with -march=k6)

	PR optimization/8178
	* config/i386/i386.md (*movsi_zero): Delete.
	(*ffs_no_cmove): Use ix86_expand_clear to zero the third operand.

Co-Authored-By: Richard Henderson <rth@redhat.com>

From-SVN: r72680
parent 8f4c7b67
2003-10-19 Eric Botcazou <ebotcazou@libertysurf.fr>
Richard Henderson <rth@redhat.com>
PR optimization/8178
* config/i386/i386.md (*movsi_zero): Delete.
(*ffs_no_cmove): Use ix86_expand_clear to zero the third operand.
2003-10-19 Richard Henderson <rth@redhat.com> 2003-10-19 Richard Henderson <rth@redhat.com>
* config/alpha/alpha.c (fix_operator): New. * config/alpha/alpha.c (fix_operator): New.
......
...@@ -1161,15 +1161,6 @@ ...@@ -1161,15 +1161,6 @@
[(set_attr "type" "alu1") [(set_attr "type" "alu1")
(set_attr "mode" "SI") (set_attr "mode" "SI")
(set_attr "length_immediate" "0")]) (set_attr "length_immediate" "0")])
(define_insn "*movsi_zero"
[(set (match_operand:SI 0 "register_operand" "=r")
(match_operand:SI 1 "const0_operand" "i"))
(clobber (reg:CC 17))]
"reload_completed && (TARGET_USE_MOV0 && !optimize_size)"
"mov{l}\t{%1, %0|%0, %1}"
[(set_attr "type" "imov")
(set_attr "mode" "SI")])
(define_insn "*movsi_or" (define_insn "*movsi_or"
[(set (match_operand:SI 0 "register_operand" "=r") [(set (match_operand:SI 0 "register_operand" "=r")
...@@ -14464,9 +14455,7 @@ ...@@ -14464,9 +14455,7 @@
"" ""
"#" "#"
"reload_completed" "reload_completed"
[(parallel [(set (match_dup 2) (const_int 0)) [(parallel [(set (reg:CCZ 17) (compare:CCZ (match_dup 1) (const_int 0)))
(clobber (reg:CC 17))])
(parallel [(set (reg:CCZ 17) (compare:CCZ (match_dup 1) (const_int 0)))
(set (match_dup 0) (ctz:SI (match_dup 1)))]) (set (match_dup 0) (ctz:SI (match_dup 1)))])
(set (strict_low_part (match_dup 3)) (set (strict_low_part (match_dup 3))
(eq:QI (reg:CCZ 17) (const_int 0))) (eq:QI (reg:CCZ 17) (const_int 0)))
...@@ -14478,6 +14467,7 @@ ...@@ -14478,6 +14467,7 @@
(clobber (reg:CC 17))])] (clobber (reg:CC 17))])]
{ {
operands[3] = gen_lowpart (QImode, operands[2]); operands[3] = gen_lowpart (QImode, operands[2]);
ix86_expand_clear (operands[2]);
}) })
(define_insn "*ffssi_1" (define_insn "*ffssi_1"
......
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