add loongarch64 support
authorDandan Zhang <zhangdandan@loongson.cn>
Thu, 9 Jan 2025 11:39:01 +0000 (14:39 +0300)
committerDmitry Shachnev <mitya57@debian.org>
Thu, 9 Jan 2025 11:39:01 +0000 (14:39 +0300)
Forwarded: https://github.com/qtwebkit/qtwebkit/pull/1096
Last-Update: 2024-03-09

Gbp-Pq: Name loongarch64.diff

CMakeLists.txt
Source/JavaScriptCore/CMakeLists.txt
Source/WTF/wtf/Platform.h
Source/WTF/wtf/dtoa/utils.h

index 51647672999b03462dd15ae8a2db56a02027b653..8229073c94b29702bf6860afc9466c961f7fb502 100644 (file)
@@ -85,6 +85,8 @@ elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "s390x")
     set(WTF_CPU_S390X 1)
 elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "riscv64")
     set(WTF_CPU_RISCV64 1)
+elseif (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "^loongarch64")
+    set(WTF_CPU_LOONGARCH64 1)
 else ()
     message(FATAL_ERROR "Unknown CPU '${LOWERCASE_CMAKE_SYSTEM_PROCESSOR}'")
 endif ()
index 3d184090dce7679d2699f39d2c1ca0baf422261b..8a51e34a3140b2e1f9141ea27fa3b0d437fd766f 100644 (file)
@@ -1280,6 +1280,7 @@ if (WTF_CPU_ARM)
 elseif (WTF_CPU_ARM64)
 elseif (WTF_CPU_ALPHA)
 elseif (WTF_CPU_HPPA)
+elseif (WTF_CPU_LOONGARCH64)
 elseif (WTF_CPU_PPC)
 elseif (WTF_CPU_PPC64)
 elseif (WTF_CPU_PPC64LE)
index 7aefa1bab50dcdf412745c6ecc56089287329c3d..938a6394947384a57195d21089f8240d9f38df4c 100644 (file)
 #define USE_ARENA_ALLOC_ALIGNMENT_INTEGER 1
 #endif /* MIPS */
 
+/* CPU(LOONGARCH64) - LoongArch 64-bit */
+#if defined(__loongarch64)
+#define WTF_CPU_LOONGARCH64 1
+#endif
+
 /* CPU(PPC64) - PowerPC 64-bit Big Endian */
 #if (  defined(__ppc64__)      \
     || defined(__PPC64__))     \
     || CPU(ARM64) \
     || CPU(S390X) \
     || CPU(MIPS64) \
+    || CPU(LOONGARCH64) \
     || CPU(PPC64) \
     || CPU(PPC64LE) \
     || CPU(RISCV64)
index 176d5909f7d32734252b498ac213634a8b823569..552a998f424d2e466a6bb6ed995f5ac1a210f189 100644 (file)
@@ -49,7 +49,7 @@
 defined(__ARMEL__) || \
 defined(_MIPS_ARCH_MIPS32R2)
 #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
-#elif CPU(MIPS) || CPU(MIPS64) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) || CPU(RISCV64)
+#elif CPU(MIPS) || CPU(MIPS64) || CPU(PPC) || CPU(PPC64) || CPU(PPC64LE) || CPU(SH4) || CPU(S390) || CPU(S390X) || CPU(IA64) || CPU(ALPHA) || CPU(ARM64) || CPU(HPPA) || CPU(RISCV64) || CPU(LOONGARCH64)
 #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1
 #elif defined(_M_IX86) || defined(__i386__)
 #if defined(_WIN32)