[PATCH] D123857: [CodeGen] Add separate UseList for each ResNo of SDNode
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 15 14:50:10 PDT 2022
craig.topper added a comment.
IR like this is discouraged. I think it's almost considered a historical design mistake that you can store an entire aggregate in one IR instruction.
%struct.large = type { [65535 x i8] }
define void @foo(%struct.large %s, %struct.large* %p) {
store %struct.large %s, %struct.large* %p, align 1
ret void
}
================
Comment at: llvm/include/llvm/CodeGen/SelectionDAGNodes.h:583
+ /// Lists of uses for each value of this SDNode.
+ SmallVector<SDUse *> ResNoToUseList;
+ /// List of all uses. Duplicates info from ResNoToUseList but is easier
----------------
How many inline values does this SmallVector end up creating? 1 or 2 results is by far the most common so I wonder if we should explicitly use 2 instead of leaving it up to the SmallVector to decide.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D123857/new/
https://reviews.llvm.org/D123857
More information about the llvm-commits
mailing list