[flang-commits] [flang] b59c888 - [flang] Add aarch64 processor defines (#142606)
via flang-commits
flang-commits at lists.llvm.org
Wed Jun 4 06:42:27 PDT 2025
Author: David Truby
Date: 2025-06-04T14:42:23+01:00
New Revision: b59c88835fd3f642b3c95331913e0565fb89a7b1
URL: https://github.com/llvm/llvm-project/commit/b59c88835fd3f642b3c95331913e0565fb89a7b1
DIFF: https://github.com/llvm/llvm-project/commit/b59c88835fd3f642b3c95331913e0565fb89a7b1.diff
LOG: [flang] Add aarch64 processor defines (#142606)
This patch adds aarch64 specific processor defines when targeting
aarch64, similar to the ones for ppc64 and x86_64
Added:
flang/test/Driver/predefined-macros-aarch64.f90
Modified:
flang/lib/Frontend/CompilerInvocation.cpp
Removed:
################################################################################
diff --git a/flang/lib/Frontend/CompilerInvocation.cpp b/flang/lib/Frontend/CompilerInvocation.cpp
index 90a002929eff0..89aaee9f13853 100644
--- a/flang/lib/Frontend/CompilerInvocation.cpp
+++ b/flang/lib/Frontend/CompilerInvocation.cpp
@@ -1656,6 +1656,10 @@ void CompilerInvocation::setDefaultPredefinitions() {
fortranOptions.predefinitions.emplace_back("__64BIT__", "1");
}
break;
+ case llvm::Triple::ArchType::aarch64:
+ fortranOptions.predefinitions.emplace_back("__aarch64__", "1");
+ fortranOptions.predefinitions.emplace_back("__aarch64", "1");
+ break;
}
}
diff --git a/flang/test/Driver/predefined-macros-aarch64.f90 b/flang/test/Driver/predefined-macros-aarch64.f90
new file mode 100644
index 0000000000000..dabbd19771032
--- /dev/null
+++ b/flang/test/Driver/predefined-macros-aarch64.f90
@@ -0,0 +1,16 @@
+! Test predefined macro for AArch64
+
+! REQUIRES: aarch64-registered-target
+
+! RUN: %flang_fc1 -triple aarch64-unknown-linux-gnu -cpp -E %s | FileCheck %s
+
+! CHECK: integer :: var1 = 1
+! CHECK: integer :: var2 = 1
+
+#if __aarch64__
+ integer :: var1 = __aarch64__
+#endif
+#if __aarch64
+ integer :: var2 = __aarch64
+#endif
+end program
More information about the flang-commits
mailing list