diff options
Diffstat (limited to 'clang')
| -rw-r--r-- | clang/lib/AST/ItaniumMangle.cpp | 1 | ||||
| -rw-r--r-- | clang/lib/CodeGen/CGBuiltin.cpp | 1 | ||||
| -rw-r--r-- | clang/lib/Sema/SemaChecking.cpp | 1 | ||||
| -rw-r--r-- | clang/lib/Sema/SemaType.cpp | 6 |
4 files changed, 7 insertions, 2 deletions
diff --git a/clang/lib/AST/ItaniumMangle.cpp b/clang/lib/AST/ItaniumMangle.cpp index 0e332a6f2de..f7dbf09d152 100644 --- a/clang/lib/AST/ItaniumMangle.cpp +++ b/clang/lib/AST/ItaniumMangle.cpp @@ -2298,6 +2298,7 @@ void CXXNameMangler::mangleType(const VectorType *T) { getASTContext().getTargetInfo().getTriple().getArch(); if (Arch == llvm::Triple::aarch64 || Arch == llvm::Triple::aarch64_be || + Arch == llvm::Triple::arm64_be || (Arch == llvm::Triple::arm64 && !Target.isOSDarwin())) mangleAArch64NeonVectorType(T); else diff --git a/clang/lib/CodeGen/CGBuiltin.cpp b/clang/lib/CodeGen/CGBuiltin.cpp index d8e363387b0..25f26aeff6e 100644 --- a/clang/lib/CodeGen/CGBuiltin.cpp +++ b/clang/lib/CodeGen/CGBuiltin.cpp @@ -1646,6 +1646,7 @@ Value *CodeGenFunction::EmitTargetBuiltinExpr(unsigned BuiltinID, case llvm::Triple::thumbeb: return EmitARMBuiltinExpr(BuiltinID, E); case llvm::Triple::arm64: + case llvm::Triple::arm64_be: return EmitARM64BuiltinExpr(BuiltinID, E); case llvm::Triple::x86: case llvm::Triple::x86_64: diff --git a/clang/lib/Sema/SemaChecking.cpp b/clang/lib/Sema/SemaChecking.cpp index 6c84b974c41..526f891f87e 100644 --- a/clang/lib/Sema/SemaChecking.cpp +++ b/clang/lib/Sema/SemaChecking.cpp @@ -310,6 +310,7 @@ Sema::CheckBuiltinFunctionCall(unsigned BuiltinID, CallExpr *TheCall) { return ExprError(); break; case llvm::Triple::arm64: + case llvm::Triple::arm64_be: if (CheckARM64BuiltinFunctionCall(BuiltinID, TheCall)) return ExprError(); break; diff --git a/clang/lib/Sema/SemaType.cpp b/clang/lib/Sema/SemaType.cpp index e273cb6e364..b8a1a3851ca 100644 --- a/clang/lib/Sema/SemaType.cpp +++ b/clang/lib/Sema/SemaType.cpp @@ -4731,7 +4731,8 @@ static bool isPermittedNeonBaseType(QualType &Ty, // now. bool IsPolyUnsigned = Triple.getArch() == llvm::Triple::aarch64 || Triple.getArch() == llvm::Triple::aarch64_be || - Triple.getArch() == llvm::Triple::arm64; + Triple.getArch() == llvm::Triple::arm64 || + Triple.getArch() == llvm::Triple::arm64_be; if (VecKind == VectorType::NeonPolyVector) { if (IsPolyUnsigned) { // AArch64 polynomial vectors are unsigned and support poly64. @@ -4750,7 +4751,8 @@ static bool isPermittedNeonBaseType(QualType &Ty, // float64_t on AArch64. bool Is64Bit = Triple.getArch() == llvm::Triple::aarch64 || Triple.getArch() == llvm::Triple::aarch64_be || - Triple.getArch() == llvm::Triple::arm64; + Triple.getArch() == llvm::Triple::arm64 || + Triple.getArch() == llvm::Triple::arm64_be; if (Is64Bit && BTy->getKind() == BuiltinType::Double) return true; |

