[Bug target/101325] [12 Regression] arm: Wrong code with MVE vcmpeqq intrinsic since r12-671-gd083fbf72
clyon at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Jul 7 08:19:59 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101325
Christophe Lyon <clyon at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |ASSIGNED
Last reconfirmed| |2021-07-07
Ever confirmed|0 |1
--- Comment #4 from Christophe Lyon <clyon at gcc dot gnu.org> ---
Before r12-671, in combine we have:
(insn 7 4 8 2 (set (reg:HI 117)
(unspec:HI [
(reg:V16QI 119)
(reg:V16QI 120)
] VCMPEQQ_S)) {mve_vcmpeqq_v16qi}
(expr_list:REG_DEAD (reg:V16QI 120)
(expr_list:REG_DEAD (reg:V16QI 119)
(nil))))
(note 8 7 14 2 NOTE_INSN_DELETED)
(insn 14 8 15 2 (set (reg/i:SI 0 r0)
(zero_extend:SI (reg:HI 117))) "pr101325.c":7:1 1019
{*thumb2_zero_extendhisi2_v6}
(expr_list:REG_DEAD (reg:HI 117)
(nil)))
After the patch:
(insn 7 4 8 2 (set (reg:HI 117)
(eq:HI (reg:V16QI 119)
(reg:V16QI 120))) {mve_vcmpeqq_v16qi}
(expr_list:REG_DEAD (reg:V16QI 120)
(expr_list:REG_DEAD (reg:V16QI 119)
(nil))))
(note 8 7 14 2 NOTE_INSN_DELETED)
(insn 14 8 15 2 (set (reg/i:SI 0 r0)
(and:SI (subreg:SI (reg:HI 117) 0)
(const_int 1 [0x1]))) "pr101325.c":7:1 90 {*arm_andsi3_insn}
(expr_list:REG_DEAD (reg:HI 117)
(nil)))
More information about the Gcc-bugs
mailing list