From: Chris Lattner Date: Tue, 27 Nov 2007 07:28:18 +0000 (+0000) Subject: handle __vector_size__ like vector_size X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7ee261c8e71f363d86461f4d1a37e3def354c976;p=clang handle __vector_size__ like vector_size git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44358 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/AST/Type.cpp b/AST/Type.cpp index 02a90047da..b0ba353112 100644 --- a/AST/Type.cpp +++ b/AST/Type.cpp @@ -687,7 +687,7 @@ void VariableArrayType::getAsStringInternal(std::string &S) const { } void VectorType::getAsStringInternal(std::string &S) const { - S += " __attribute__((vector_size("; + S += " __attribute__((__vector_size__("; // FIXME: should multiply by element size somehow. S += llvm::utostr_32(NumElements*4); // convert back to bytes. S += ")))"; diff --git a/Sema/SemaDecl.cpp b/Sema/SemaDecl.cpp index 30505d66cd..e50fe1101a 100644 --- a/Sema/SemaDecl.cpp +++ b/Sema/SemaDecl.cpp @@ -2470,7 +2470,8 @@ void Sema::AddTopLevelDecl(Decl *current, Decl *last) { } void Sema::HandleDeclAttribute(Decl *New, AttributeList *rawAttr) { - if (strcmp(rawAttr->getAttributeName()->getName(), "vector_size") == 0) { + if (!strcmp(rawAttr->getAttributeName()->getName(), "vector_size") || + !strcmp(rawAttr->getAttributeName()->getName(), "__vector_size__")) { if (ValueDecl *vDecl = dyn_cast(New)) { QualType newType = HandleVectorTypeAttribute(vDecl->getType(), rawAttr); if (!newType.isNull()) // install the new vector type into the decl @@ -2483,7 +2484,8 @@ void Sema::HandleDeclAttribute(Decl *New, AttributeList *rawAttr) { tDecl->setUnderlyingType(newType); } } - if (strcmp(rawAttr->getAttributeName()->getName(), "ocu_vector_type") == 0) { + if (!strcmp(rawAttr->getAttributeName()->getName(), "ocu_vector_type") || + !strcmp(rawAttr->getAttributeName()->getName(), "__ocu_vector_type__")) { if (TypedefDecl *tDecl = dyn_cast(New)) HandleOCUVectorTypeAttribute(tDecl, rawAttr); else