[PATCH] D86476: [AIX] Add support for vector parameters in LowerFormalArguments_AIX
Sean Fertile via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 29 10:09:39 PDT 2020
sfertile added a comment.
We are in a poor position since this depends on D75059 <https://reviews.llvm.org/D75059> which I never commit-ed since as I realized it was not really NFC because we were wrongly inserting VR_SAVE code for AIX. This had the effect of emitting a fatal error if we used vector arguments, return values and I believe if we selected any vector instructions. I never went back and updated it because there was always something higher priority to work on. I have a non-NFC update I haven't posted which relies on the calling convention lowering to emit an error when passing vector arguments, and I add an error when returning vector arguments. I will post that shortly.
This patch is trying implement 2 related but distinct things
1. Passing vector arguments.
2. Spilling and restoring of the vector.
The test for 1 will have a problem since the dependent patch will change to emitting an error for the return of a vector type. The second thing has no test coverage in this test. I suggest we put this patch on hold, and then proceed with:
1. I post the updated VRSAVE removal patch, which we can review and get commited first.
2. You split out the frame lowering changes from this patch and test them separately. We should be able to land that once D75059 <https://reviews.llvm.org/D75059> lands.
Then we can either rework the lit test here to not return vector types and try to land this patch first, or enable vector returns (I think it will work as it, but we need lit test coverage).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D86476/new/
https://reviews.llvm.org/D86476
More information about the llvm-commits
mailing list