================ @@ -2016,8 +2016,9 @@ TypeInfo ASTContext::getTypeInfoImpl(const Type *T) const { case Type::Vector: { const auto *VT = cast<VectorType>(T); TypeInfo EltInfo = getTypeInfo(VT->getElementType()); - Width = VT->isExtVectorBoolType() ? VT->getNumElements() - : EltInfo.Width * VT->getNumElements(); + Width = (VT->isExtVectorBoolType() && !getLangOpts().HLSL) + ? VT->getNumElements() + : EltInfo.Width * VT->getNumElements(); ---------------- spall wrote:
EltInfo.Width should be the size of the Element type in the vector, and that is set to be an i32 in CodeGenTypes. If that changed in the future to be an integer of a different size, this would still be correct. https://github.com/llvm/llvm-project/pull/123977 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits