[llvm] [RFC] Extend FASTCC to use up to 22 registers under APX (PR #164638)

Shengchen Kan via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 22 19:23:58 PDT 2025


KanRobert wrote:

Hi @phoebewang @jyknight 

in https://github.com/llvm/llvm-project/pull/76868

We had the discussion

KanRobert : I won't expect this from the name preserve_none. R16-R31 should be used to pas arguments when they're available.

jkynight: They should not be used to pass arguments conditionally based on the current subtarget, since that creates two incompatible calling conventions.

There's no reason "preserve none" has to be read to imply "uses all possible registers to pass arguments.", so I don't see an issue with leaving it like it is.

I doubt if we have the same issue here? `preserve_none` is also new calling convention added by that PR.

https://github.com/llvm/llvm-project/pull/164638


More information about the llvm-commits mailing list