[Bug target/69810] PowerPC64: unrecognizable insn
segher at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Feb 22 04:42:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69810
--- Comment #4 from Segher Boessenkool <segher at gcc dot gnu.org> ---
The patch introducing the EXTQI stuff did
-(define_insn ""
- [(set (match_operand:CC 2 "cc_reg_operand" "=x,?y")
- (compare:CC (sign_extend:HI (match_operand:QI 1 "gpc_reg_operand"
"r,r")
- (const_int 0)))
- (set (match_operand:HI 0 "gpc_reg_operand" "=r,r")
- (sign_extend:HI (match_dup 1)))]
- ""
- "@
- extsb. %0,%1
- #"
- [(set_attr "type" "compare")
- (set_attr "length" "4,8")])
-
-(define_split
- [(set (match_operand:CC 2 "cc_reg_not_micro_cr0_operand" "")
- (compare:CC (sign_extend:HI (match_operand:QI 1 "gpc_reg_operand" ""))
- (const_int 0)))
- (set (match_operand:HI 0 "gpc_reg_operand" "")
- (sign_extend:HI (match_dup 1)))]
- "reload_completed"
- [(set (match_dup 0)
- (sign_extend:HI (match_dup 1)))
- (set (match_dup 2)
- (compare:CC (match_dup 0)
- (const_int 0)))]
- "")
so this problem is older.
Extending _to_ HImode doesn't make much sense (like doing any other
non-memory operation in HImode, and it can always be expressed with
a subreg:SI. David, I think your patch is just right :-)
More information about the Gcc-bugs
mailing list