[all-commits] [llvm/llvm-project] 39f7ff: DAG: Use poison for some load/store offsets in leg...

Matt Arsenault via All-commits all-commits at lists.llvm.org
Fri Jul 31 05:04:05 PDT 2026


  Branch: refs/heads/users/arsenm/dag/legalizer-use-poison-load-store-offsets
  Home:   https://github.com/llvm/llvm-project
  Commit: 39f7ff302a288561bd1bf142c00d89af618c2b12
      https://github.com/llvm/llvm-project/commit/39f7ff302a288561bd1bf142c00d89af618c2b12
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-31 (Fri, 31 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  DAG: Use poison for some load/store offsets in legalizer

Unindexed load/store offsets are a don't-care operand that must be poison
rather than undef now that poison is legal. Convert the remaining producers
that build the offset with getUNDEF (in SelectionDAGBuilder and the ARM,
Hexagon, RISCV, and X86 lowerings) to getPOISON, and strengthen the offset
asserts in the SelectionDAG memory-node builders to require POISON exactly
instead of accepting any undef-or-poison value.

Co-Authored-By: Claude (Claude-Opus-4.8) <noreply at anthropic.com>



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