https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116711
Bug ID: 116711
Summary: Use simple_dce_from_worklist inside the vectorizer
Product: gcc
Version: 15.0
Status: UNCONFIRMED
Keywords: internal-improvement
Severity: enhancement
Priority: P3
Component: tree-optimization
Assignee: pinskia at gcc dot gnu.org
Reporter: pinskia at gcc dot gnu.org
Target Milestone: ---
During Richard B.'s 2018 GNU tools cauldron talk
(https://gcc.gnu.org/wiki/cauldron2018#value-numbering), he mentioned that
there is a full dce run after the vectorizer to do some cleanups. He hinted
that this should maybe replaced with something else. simple_dce_from_worklist
exists, and did at that point but only was used in a few places (PRE and
veclowering) that has changed more recently (now used in isel, interchange,
sccopy, strength-reduction, fixup_cfg [which removes write only stores],
complex lowering, object-size, phiopt, forwprop, phiprop, propagate engine,
vrp).
r6-6864-gcdc23927eee5df added a simple dceing but only if there was a masked
store which can be removed once moved over to using simple_dce_from_worklist
too.