From 847d2d454944bc56fccb8fbd344e91b6ec678a22 Mon Sep 17 00:00:00 2001 From: Tim Northover Date: Mon, 18 Feb 2013 12:11:32 +0000 Subject: AArch64: add atomic support parameters to TargetInfo This allows Clang to detect and deal wih __atomic_* operations properly on AArch64. Previously we produced an error when encountering them at high optimisation levels. llvm-svn: 175438 --- clang/lib/Basic/Targets.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'clang/lib/Basic/Targets.cpp') diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 6f8dfe9b65d..eaf2e7d05e6 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -3167,6 +3167,10 @@ public: WCharType = UnsignedInt; LongDoubleFormat = &llvm::APFloat::IEEEquad; + // AArch64 backend supports 64-bit operations at the moment. In principle + // 128-bit is possible if register-pairs are used. + MaxAtomicPromoteWidth = MaxAtomicInlineWidth = 64; + TheCXXABI.set(TargetCXXABI::GenericAArch64); } virtual void getTargetDefines(const LangOptions &Opts, -- cgit v1.2.3