erichkeane added a comment. To add: I DID just try to fix that thing:
[ekeane1@scsel-clx-24 clang]$ git diff diff --git a/clang/lib/Sema/SemaExpr.cpp b/clang/lib/Sema/SemaExpr.cpp index 2b69c3727852..330772d2b10a 100644 --- a/clang/lib/Sema/SemaExpr.cpp +++ b/clang/lib/Sema/SemaExpr.cpp @@ -12265,6 +12265,8 @@ QualType Sema::GetSignedVectorType(QualType V) { return Context.getExtVectorType(Context.ShortTy, VTy->getNumElements()); else if (TypeSize == Context.getTypeSize(Context.IntTy)) return Context.getExtVectorType(Context.IntTy, VTy->getNumElements()); + else if (TypeSize == Context.getTypeSize(Context.Int128Ty)) + return Context.getExtVectorType(Context.Int128Ty, VTy->getNumElements()); else if (TypeSize == Context.getTypeSize(Context.LongTy)) return Context.getExtVectorType(Context.LongTy, VTy->getNumElements()); assert(TypeSize == Context.getTypeSize(Context.LongLongTy) && @@ -12272,7 +12274,10 @@ QualType Sema::GetSignedVectorType(QualType V) { return Context.getExtVectorType(Context.LongLongTy, VTy->getNumElements()); } - if (TypeSize == Context.getTypeSize(Context.LongLongTy)) + if (TypeSize == Context.getTypeSize(Context.Int128Ty)) + return Context.getVectorType(Context.Int128Ty, VTy->getNumElements(), + VectorType::GenericVector); + else if (TypeSize == Context.getTypeSize(Context.LongLongTy)) return Context.getVectorType(Context.LongLongTy, VTy->getNumElements(), VectorType::GenericVector); else if (TypeSize == Context.getTypeSize(Context.LongTy)) [ekeane1@scsel-clx-24 clang]$ I then compiled: using VecTy = __int128 __attribute__((vector_size(32))); constexpr auto F() { VecTy V{1,2}; return V <= 2; } auto bar() { constexpr auto Var = F(); return Var; } And got: ; Function Attrs: mustprogress noinline nounwind optnone define dso_local <2 x i128> @_Z3barv() #0 { entry: %Var = alloca <2 x i128>, align 32 store <2 x i128> <i128 18446744073709551615, i128 18446744073709551615>, <2 x i128>* %Var, align 32 ret <2 x i128> <i128 18446744073709551615, i128 18446744073709551615> } I believe that is the uint64 'max value', right? So would that would be what you mean? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115670/new/ https://reviews.llvm.org/D115670 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits