[PATCH] D144677: [SelectionDAG] Transitively copy NodeExtraInfo on RAUW

Marco Elver via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 23 14:43:50 PST 2023


melver created this revision.
melver added reviewers: dvyukov, vitalybuka.
Herald added subscribers: ecnelises, pengfei, hiraditya.
Herald added a project: All.
melver requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

During legalization of the SelectionDAG, some nodes are replaced with
arch-specific nodes. These may be complex nodes, where the root node no
longer corresponds to the node that should carry the extra info.

Fix the issue by copying extra info to the new node and all its new
transitive operands during RAUW. See code comments for more details.

This fixes the remaining pcsections-atomics.ll tests on X86.

Depends on D144676 <https://reviews.llvm.org/D144676>


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D144677

Files:
  llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
  llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
  llvm/test/CodeGen/X86/pcsections-atomics.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D144677.499984.patch
Type: text/x-patch
Size: 265900 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230223/1f9998f6/attachment-0001.bin>


More information about the llvm-commits mailing list