[all-commits] [llvm/llvm-project] ed866d: [X86][Combine] Ensure single use chain in extract-...

Evgenii Kudriashov via All-commits all-commits at lists.llvm.org
Thu Apr 24 07:17:12 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ed866d994c3b074cb1b7a380b1ce9169dde3362c
      https://github.com/llvm/llvm-project/commit/ed866d994c3b074cb1b7a380b1ce9169dde3362c
  Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
  Date:   2025-04-24 (Thu, 24 Apr 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/extractelement-load.ll

  Log Message:
  -----------
  [X86][Combine] Ensure single use chain in extract-load combine (#136520)

The problem is that `SrcBC = peekThroughBitcasts(Src)` doesn't ensure
single use chain. It results in the situation when a cast may have
multiple users and instead of replacing a load we introduce a new one.
The situation is worsened by the fact that we've replaced the token from
the original load and its correct memory order now is not guaranteed.



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