[all-commits] [llvm/llvm-project] c91c3f: [InstCombine] Do not combine shuffle+bitcast if th...

Ricardo Jesus via All-commits all-commits at lists.llvm.org
Wed Apr 30 00:23:00 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c91c3f930cfc75eb4e8b623ecd59c807863aa6c0
      https://github.com/llvm/llvm-project/commit/c91c3f930cfc75eb4e8b623ecd59c807863aa6c0
  Author: Ricardo Jesus <rjj at nvidia.com>
  Date:   2025-04-30 (Wed, 30 Apr 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/test/Transforms/InstCombine/shufflevec-bitcast.ll

  Log Message:
  -----------
  [InstCombine] Do not combine shuffle+bitcast if the bitcast is eliminable. (#135769)

If we are attempting to combine shuffle+bitcast but the bitcast is
pairable with a subsequent bitcast, we should not fold the shuffle as
doing so can block further simplifications.

The motivation for this is a long-standing regression affecting SIMDe on
AArch64, introduced indirectly by the AlwaysInliner (1a2e77cf). Some
reproducers:
* https://godbolt.org/z/53qx18s6M
* https://godbolt.org/z/o5e43h5M7



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list