MacDue wrote: Does this change the final codegen? There's a flag `--extra-vectorizer-passes` that enables some cleanup after loop vectorization (including `early-cse`, which de-duplicates these extends), but it's not enabled by default. https://github.com/llvm/llvm-project/pull/147731