[clang] [clang] Lower _BitInt(129+) to a different type in LLVM IR (PR #91364)

Eli Friedman via cfe-commits cfe-commits at lists.llvm.org
Tue May 7 15:39:33 PDT 2024


efriedma-quic wrote:

You're suggesting we should fork ConvertTypeForMem into two functions?  So there's actually three types: the "register" type, the "load/store" type, and the "in-memory" type.  I guess that makes sense from a theoretical perspective, but... as a practical matter, I'm not sure how many places need to call the proposed "ConvertTypeForLoadStore".

In EmitLoadOfScalar(), instead of checking for BitInt, you just unconditionally do `Addr = Addr.withElementType(ConvertTypeForLoadStore(Ty));`.  Logical cleanup, I guess.  In EmitStoreOfScalar, you don't really need the interface because you can assume the result of EmitToMemory() has the load/store type.  And then... what else calls it?

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


More information about the cfe-commits mailing list