r194952 - Fix the problem that the arm_neon.h can't be used in a cpp file. Also fix a minor bug with poly64 name mangling.

Hao Liu Hao.Liu at arm.com
Sun Nov 17 01:14:46 PST 2013


Author: haoliu
Date: Sun Nov 17 03:14:46 2013
New Revision: 194952

URL: http://llvm.org/viewvc/llvm-project?rev=194952&view=rev
Log:
Fix the problem that the arm_neon.h can't be used in a cpp file. Also fix a minor bug with poly64 name mangling.

Modified:
    cfe/trunk/lib/AST/ItaniumMangle.cpp

Modified: cfe/trunk/lib/AST/ItaniumMangle.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ItaniumMangle.cpp?rev=194952&r1=194951&r2=194952&view=diff
==============================================================================
--- cfe/trunk/lib/AST/ItaniumMangle.cpp (original)
+++ cfe/trunk/lib/AST/ItaniumMangle.cpp Sun Nov 17 03:14:46 2013
@@ -2235,9 +2235,6 @@ void CXXNameMangler::mangleAArch64NeonVe
   assert((BitSize == 64 || BitSize == 128) &&
          "Neon vector type not 64 or 128 bits");
 
-  assert(getASTContext().getTypeSize(EltType) != BitSize &&
-         "Vector of 1 element not permitted");
-
   StringRef EltName;
   if (T->getVectorKind() == VectorType::NeonPolyVector) {
     switch (cast<BuiltinType>(EltType)->getKind()) {
@@ -2247,6 +2244,9 @@ void CXXNameMangler::mangleAArch64NeonVe
     case BuiltinType::UShort:
       EltName = "Poly16";
       break;
+    case BuiltinType::ULongLong:
+      EltName = "Poly64";
+      break;
     default:
       llvm_unreachable("unexpected Neon polynomial vector element type");
     }





More information about the cfe-commits mailing list