https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112860
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |101057 Ever confirmed|0 |1 Status|UNCONFIRMED |ASSIGNED Last reconfirmed| |2023-12-05 Target| |x86_64-*-* Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- vect_iftmp_12_158 = VEC_COND_EXPR <_151, vect__1_8_154, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }>; this shows startwith("slp") and -O0 don't play together and the ISEL pass is skipped. Don't mix startwith with an optimization level that doesn't enable the pass or with a name that doesn't exist. For ISEL specifically we should possibly provide a property as we lower VEC_COND_EXPR there. Or always execute it. diff --git a/gcc/passes.cc b/gcc/passes.cc index 6f894a41d22..cfdfe77e122 100644 --- a/gcc/passes.cc +++ b/gcc/passes.cc @@ -2514,6 +2514,10 @@ should_skip_pass_p (opt_pass *pass) if (strstr (pass->name, "build_cgraph_edges") != NULL) return false; + /* We need to run ISEL. */ + if (strstr (pass->name, "isel") != NULL) + return false; + /* Don't skip df init; later RTL passes need it. */ if (strstr (pass->name, "dfinit") != NULL || strstr (pass->name, "dfinish") != NULL) "Confirmed." Referenced Bugs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101057 [Bug 101057] [gimplefe] GIMPLE frontend issues