From: Daniel Dunbar Date: Sun, 5 Oct 2008 05:43:11 +0000 (+0000) Subject: Make VectorType printing less broken. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5620b50f8f81854b2a6fea16c69ff1853f8f4d9b;p=clang Make VectorType printing less broken. - Print size as number of elements times "sizeof(elt type)", not perfect but better than just printing the completely wrong type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57100 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/AST/Type.cpp b/lib/AST/Type.cpp index e35525df9c..74e52fef88 100644 --- a/lib/AST/Type.cpp +++ b/lib/AST/Type.cpp @@ -921,11 +921,11 @@ void VariableArrayType::getAsStringInternal(std::string &S) const { } void VectorType::getAsStringInternal(std::string &S) const { + // FIXME: We prefer to print the size directly here, but have no way + // to get the size of the type. S += " __attribute__((__vector_size__("; - // FIXME: should multiply by element size somehow. - S += llvm::utostr_32(NumElements*4); // convert back to bytes. - S += ")))"; - ElementType.getAsStringInternal(S); + S += llvm::utostr_32(NumElements); // convert back to bytes. + S += " * sizeof(" + ElementType.getAsString() + "))))"; } void ExtVectorType::getAsStringInternal(std::string &S) const {