Commit 0f177d7c by Richard Henderson Committed by Richard Henderson

* sparc.md (ffsdi2): Disable. Simplify the expression as well.

From-SVN: r19674
parent 28233641
Mon May 11 17:24:27 1998 Richard Henderson <rth@cygnus.com>
* sparc.md (ffsdi2): Disable. Simplify the expression as well.
Mon May 11 13:30:44 1998 Jim Wilson <wilson@cygnus.com> Mon May 11 13:30:44 1998 Jim Wilson <wilson@cygnus.com>
* varasm.c (make_decl_rtl): Disable April 1 change. * varasm.c (make_decl_rtl): Disable April 1 change.
......
...@@ -6123,14 +6123,17 @@ if (! TARGET_ARCH64) ...@@ -6123,14 +6123,17 @@ if (! TARGET_ARCH64)
;; ??? This should be a define expand, so that the extra instruction have ;; ??? This should be a define expand, so that the extra instruction have
;; a chance of being optimized away. ;; a chance of being optimized away.
(define_insn "ffsdi2" ;; Disabled because none of the UltraSparcs implement popc. The HAL R1
[(set (match_operand:DI 0 "register_operand" "=&r") ;; does, but no one uses that and we don't have a switch for it.
(ffs:DI (match_operand:DI 1 "register_operand" "r"))) ;
(clobber (match_scratch:DI 2 "=&r"))] ;(define_insn "ffsdi2"
"TARGET_ARCH64" ; [(set (match_operand:DI 0 "register_operand" "=&r")
"neg %1,%2\;not %2,%2\;xor %1,%2,%2\;popc %2,%0\;movrz %1,0,%0" ; (ffs:DI (match_operand:DI 1 "register_operand" "r")))
[(set_attr "type" "multi") ; (clobber (match_scratch:DI 2 "=&r"))]
(set_attr "length" "5")]) ; "TARGET_ARCH64"
; "neg %1,%2\;xnor %1,%2,%2\;popc %2,%0"
; [(set_attr "type" "multi")
; (set_attr "length" "3")])
;; Split up troublesome insns for better scheduling. */ ;; Split up troublesome insns for better scheduling. */
......
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