[clang] [CIR] Accept __int128 in x86_64 calling-convention lowering (PR #211142)
Andy Kaylor via cfe-commits
cfe-commits at lists.llvm.org
Wed Jul 22 10:54:08 PDT 2026
================
@@ -107,21 +107,32 @@ static bool isSupportedType(mlir::Type ty) {
mlir::isa<cir::TargetAddressSpaceAttr>(ptrTy.getAddrSpace());
if (isa<cir::VoidType, cir::BoolType, cir::SingleType, cir::DoubleType>(ty))
return true;
- if (auto intTy = dyn_cast<cir::IntType>(ty))
- return !intTy.getIsBitInt() && intTy.getWidth() <= 64;
+ if (auto intTy = dyn_cast<cir::IntType>(ty)) {
+ // A register-sized integer is Direct (kept as-is, or extended for a
----------------
andykaylor wrote:
This comment seems unnecessary. It's talking about details of other parts of the implementation. For example, the fact that this ends up being passed in two registers is an implementation detail of the x86 backend. We represent it as a single value, so talking about the two registers just adds confusion here.
https://github.com/llvm/llvm-project/pull/211142
More information about the cfe-commits
mailing list