[Bug target/95444] New: Incorrect constraints on length operand in cmpstrnqi patterns
hjl.tools at gmail dot com
gcc-bugzilla@gcc.gnu.org
Sat May 30 22:09:44 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95444
Bug ID: 95444
Summary: Incorrect constraints on length operand in cmpstrnqi
patterns
Product: gcc
Version: 11.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: hjl.tools at gmail dot com
CC: crazylht at gmail dot com, hubicka at ucw dot cz, ubizjak at gmail dot com
Target Milestone: ---
Target: i386,x864-64
cmpstrnqi patterns has
(define_insn "*cmpstrnqi_1"
[(set (reg:CC FLAGS_REG)
(if_then_else:CC (ne (match_operand:P 6 "register_operand" "2")
(const_int 0))
(compare:CC (mem:BLK (match_operand:P 4 "register_operand" "0"))
(mem:BLK (match_operand:P 5 "register_operand" "1")))
(const_int 0)))
(use (match_operand:SI 3 "immediate_operand" "i"))
(use (reg:CC FLAGS_REG))
(clobber (match_operand:P 0 "register_operand" "=S"))
(clobber (match_operand:P 1 "register_operand" "=D"))
(clobber (match_operand:P 2 "register_operand" "=c"))]
"=c" is incorrect since the CX register is used for both input and output.
More information about the Gcc-bugs
mailing list