[PATCH] D67963: [MIPS GlobalISel] Lower aggregate structure return arguments
Petar Avramovic via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 24 09:21:55 PDT 2019
Petar.Avramovic marked 2 inline comments as done.
Petar.Avramovic added a comment.
> It looks like the tests check calling the splitToValueTypes from the MipsCallLowering::lowerReturn only.
Right. I will add tests for call of a function that returns aggregate structure.
Now that I think of it, I didn't encounter any aggregate structure as an argument in test-suite.
They get turned into inreg arguments like in this tests,
maybe we could mark aggregate structure as unsupported if they are arguments for now
and only allow them if they are return values?
================
Comment at: lib/Target/Mips/MipsCallLowering.cpp:466
setArgFlags(AInfo, i + AttributeList::FirstArgIndex, DL, F);
- splitToValueTypes(AInfo, i, ArgInfos, OrigArgIndices);
+ splitToValueTypes(DL, AInfo, i, ArgInfos, OrigArgIndices);
++i;
----------------
If yes, then we could also inline old splitToValueTypes here.
================
Comment at: lib/Target/Mips/MipsCallLowering.cpp:586
- splitToValueTypes(Arg, i, ArgInfos, OrigArgIndices);
+ splitToValueTypes(DL, Arg, i, ArgInfos, OrigArgIndices);
++i;
----------------
and here.
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D67963/new/
https://reviews.llvm.org/D67963
More information about the llvm-commits
mailing list