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
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to