[clang] [clang][CodeGen] Return RValue from `EmitVAArg` (PR #94635)

John McCall via cfe-commits cfe-commits at lists.llvm.org
Thu Jun 6 10:38:58 PDT 2024


https://github.com/rjmccall commented:

I was hoping that you might push this down into the target code — if you make `emitVoidPtrVAArg` return an `RValue`, that'll handle about half of the targets.  Most of the rest will just need an `EmitLoadOfLValue` at the end.  MIPS (which is the target with the weird unpromotion logic) calls `emitVoidPtrVAArg`, so it will just need to do its unpromotion on the scalar value, which it should be able to do without creating a temporary.

But this works as a first pass if you think that's too much to ask.

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


More information about the cfe-commits mailing list