https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115384
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Status|UNCONFIRMED |NEW Last reconfirmed| |2024-06-07 --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- CONST_VECTOR_DUPLICATE_P (op1) does not check if the operand a CONST_INT or a CONST_WIDE_INT. (insn 6 5 7 2 (set (reg:V1TI 101 [ _2 ]) (ashiftrt:V1TI (reg:V1TI 102 [ wD.2793 ]) (const_int 4 [0x4]))) "/app/example.cpp":8:9 6884 {*ashrv1ti3_internal} (expr_list:REG_DEAD (reg:V1TI 102 [ wD.2793 ]) (nil))) (insn 7 6 8 2 (set (reg:V1TI 104) (mem/u/c:V1TI (symbol_ref/u:DI ("*.LC0") [flags 0x2]) [0 S16 A128])) "/app/example.cpp":8:14 2132 {movv1ti_internal} (expr_list:REG_EQUAL (const_vector:V1TI [ (const_wide_int 0x0fffffffffffffff0) ]) (nil))) (insn 8 7 9 2 (set (reg:V1TI 103 [ _3 ]) (and:V1TI (reg:V1TI 101 [ _2 ]) (reg:V1TI 104))) "/app/example.cpp":8:14 7213 {andv1ti3} (expr_list:REG_DEAD (reg:V1TI 104) (expr_list:REG_DEAD (reg:V1TI 101 [ _2 ]) (nil)))) Confirmed.