From e840986fa432888fbc893cd963dcd08a0020b668 Mon Sep 17 00:00:00 2001 From: Jiajie Chen Date: Mon, 2 May 2022 20:12:45 +0800 Subject: [PATCH] loongarch64: add initial loongarch support This commit adds architecture support for LoongArch. The toolchain currently only supports the 64-bit target loongarch64-unknown-linux-gnu. It has been tested to build with GCC 12.1, GDB 12.1, Glibc 2.36, Linux 5.19 and Binutils 2.39 as of Aug 2022. Signed-off-by: Jiajie Chen --- config/arch/loongarch.in | 19 +++++++++++++++++++ scripts/build/arch/loongarch.sh | 5 +++++ 2 files changed, 24 insertions(+) create mode 100644 config/arch/loongarch.in create mode 100644 scripts/build/arch/loongarch.sh diff --git a/config/arch/loongarch.in b/config/arch/loongarch.in new file mode 100644 index 00000000..6218c33d --- /dev/null +++ b/config/arch/loongarch.in @@ -0,0 +1,19 @@ +# LoongArch specific config options + +## no-package +## depends on EXPERIMENTAL +## +## select ARCH_SUPPORTS_64 +## select ARCH_DEFAULT_64 +## select ARCH_SUPPORTS_BOTH_MMU +## select ARCH_SUPPORTS_WITH_ABI +## select ARCH_SUPPORTS_WITH_ARCH +## select ARCH_SUPPORTS_WITH_TUNE +## select GCC_REQUIRE_12_or_later +## select BINUTILS_REQUIRE_2_39_or_later +## select LINUX_REQUIRE_5_19_or_later +## select GDB_REQUIRE_12_1_or_later if DEBUG_GDB +## select GLIBC_REQUIRE_2_36_or_later if LIBC_GLIBC + +## help The LoongArch architecture, as defined by: +## help https://loongson.github.io/LoongArch-Documentation/README-EN.html diff --git a/scripts/build/arch/loongarch.sh b/scripts/build/arch/loongarch.sh new file mode 100644 index 00000000..2e981888 --- /dev/null +++ b/scripts/build/arch/loongarch.sh @@ -0,0 +1,5 @@ +# Compute LoongArch-specific values + +CT_DoArchTupleValues() { + CT_TARGET_ARCH="loongarch${CT_ARCH_BITNESS}" +}