+Mon Dec 15 09:44:39 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (zero_extendqihi2, zero_extendqisi2, zero_extendqidi2):
+ Use and 255 instead of zapnot 1, since it schedules better.
+
Mon Dec 15 08:48:24 1997 Jeffrey A Law (law@cygnus.com)
* stmt.c (expand_asm_operands): If an ASM has no outputs, then treat
[(set (match_operand:HI 0 "register_operand" "=r")
(zero_extend:HI (match_operand:QI 1 "register_operand" "r")))]
""
- "zapnot %1,1,%0"
- [(set_attr "type" "shift")])
+ "and %1,255,%0"
+ [(set_attr "type" "ilog")])
(define_insn ""
[(set (match_operand:SI 0 "register_operand" "=r,r")
(zero_extend:SI (match_operand:QI 1 "nonimmediate_operand" "r,m")))]
"TARGET_BWX"
"@
- zapnot %1,1,%0
+ and %1,255,%0
ldbu %0,%1"
- [(set_attr "type" "shift,ld")])
+ [(set_attr "type" "ilog,ld")])
(define_insn ""
[(set (match_operand:SI 0 "register_operand" "=r")
(zero_extend:SI (match_operand:QI 1 "register_operand" "r")))]
"! TARGET_BWX"
- "zapnot %1,1,%0"
- [(set_attr "type" "shift")])
+ "and %1,255,%0"
+ [(set_attr "type" "ilog")])
(define_expand "zero_extendqisi2"
[(set (match_operand:SI 0 "register_operand" "")
(zero_extend:DI (match_operand:QI 1 "nonimmediate_operand" "r,m")))]
"TARGET_BWX"
"@
- zapnot %1,1,%0
+ and %1,255,%0
ldbu %0,%1"
- [(set_attr "type" "shift,ld")])
+ [(set_attr "type" "ilog,ld")])
(define_insn ""
[(set (match_operand:DI 0 "register_operand" "=r")
(zero_extend:DI (match_operand:QI 1 "register_operand" "r")))]
"! TARGET_BWX"
- "zapnot %1,1,%0"
- [(set_attr "type" "shift")])
+ "and %1,255,%0"
+ [(set_attr "type" "ilog")])
(define_expand "zero_extendqidi2"
[(set (match_operand:DI 0 "register_operand" "")