[Bug target/115982] ICE: unrecognizable insn in ira_remove_insn_scratches with -mavx512vl
pinskia at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Jul 18 17:39:10 GMT 2024
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115982
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords|ra |
Component|rtl-optimization |target
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
IRA is the first pass after split1 that runs recog on the instructions. So that
is why ira is mentioned.
split1 splits:
```
(insn 17 13 18 2 (set (reg/i:V4SI 20 xmm0)
(vec_merge:V4SI (const_vector:V4SI [
(const_int -1 [0xffffffffffffffff]) repeated x4
])
(const_vector:V4SI [
(const_int 0 [0]) repeated x4
])
(unspec:QI [
(reg:V4SF 106)
(reg:V4SF 102)
(const_int 0 [0])
] UNSPEC_PCMP))) "/app/example.cpp":20:1 2929 {*avx_cmpv4sf3_1}
(expr_list:REG_DEAD (reg:V4SF 102)
(expr_list:REG_DEAD (reg:V4SF 106)
(nil))))
```
into:
```
(insn 23 13 24 2 (set (reg:V4SF 107)
(unspec:V4SF [
(reg:V4SF 106)
(reg:V4SF 102)
(const_int 0 [0])
] UNSPEC_PCMP)) "/app/example.cpp":20:1 -1
(nil))
(insn 24 23 18 2 (set (reg/i:V4SI 20 xmm0)
(subreg:V4SI (reg:V4SF 107) 0)) "/app/example.cpp":20:1 -1
(nil))
```
More information about the Gcc-bugs
mailing list