[PATCH] D92953: [GlobalISel] Base implementation for sret demotion.
Christudasan Devadasan via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Dec 15 04:10:53 PST 2020
cdevadas added inline comments.
================
Comment at: llvm/lib/CodeGen/GlobalISel/CallLowering.cpp:578-587
+ for (EVT VT : SplitVTs) {
+ unsigned NumParts =
+ TLI->getNumRegistersForCallingConv(Context, CallConv, VT);
+ MVT RegVT = TLI->getRegisterTypeForCallingConv(Context, CallConv, VT);
+ Type *PartTy = EVT(RegVT).getTypeForEVT(Context);
+
+ for (unsigned I = 0; I < NumParts; ++I) {
----------------
arsenm wrote:
> I think something is off here because this shouldn't depend on the NumRegistersForCallingConv code
Why do you think so?
`getNumRegistersForCallingConv` helps here to get the actual number of target registers required for the return type.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D92953/new/
https://reviews.llvm.org/D92953
More information about the llvm-commits
mailing list