Before, for each original argument i, ValNo was set to i + PartIdx, but
ValNo is intended to reflect the index of the value before splitting.
Hence, ValNo should always be set to i and not consider the PartIdx.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
I should mention that this is required for split arguments to work for our target, and it is possible that we're doing something wrong on our end. I don't see it, however, so I decided to submit this for review in hopes that someone either can tell me whether our backend is incorrectly implemented or this is indeed a bug in global-isel.
Comment Actions
LGTM. There's definitely something wrong with the call lowering API where the argument splitting responsibility seems to be randomly split between the generic and target code