diff options
Diffstat (limited to 'repos/clang/firefox/sqlite-ppc.patch')
| -rw-r--r-- | repos/clang/firefox/sqlite-ppc.patch | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/repos/clang/firefox/sqlite-ppc.patch b/repos/clang/firefox/sqlite-ppc.patch new file mode 100644 index 00000000..6314b729 --- /dev/null +++ b/repos/clang/firefox/sqlite-ppc.patch @@ -0,0 +1,46 @@ +From f6546e3e0cadd98764ad85f80e771dca043cb77d Mon Sep 17 00:00:00 2001 +From: q66 <q66@chimera-linux.org> +Date: Fri, 23 Sep 2022 02:38:29 +0200 +Subject: [PATCH] fix sqlite3 on ppc with clang + +The __ppc__ macro is always defined on clang but not gcc, which +results in sqlite mistakenly thinking that ppc64le with clang +is big endian. + +Also disable some inline assembly stuff on ppc that is never used +with gcc and probably was never tested with modern machines. +--- + third_party/sqlite3/src/sqlite3.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/third_party/sqlite3/src/sqlite3.c b/third_party/sqlite3/src/sqlite3.c +index dd3b5c5757..73398934f0 100644 +--- a/third_party/sqlite3/src/sqlite3.c ++++ b/third_party/sqlite3/src/sqlite3.c +@@ -14875,7 +14875,7 @@ + # elif defined(i386) || defined(__i386__) || defined(_M_IX86) || \ + defined(__x86_64) || defined(__x86_64__) || defined(_M_X64) || \ + defined(_M_AMD64) || defined(_M_ARM) || defined(__x86) || \ +- defined(__ARMEL__) || defined(__AARCH64EL__) || defined(_M_ARM64) ++ defined(__ARMEL__) || defined(__AARCH64EL__) || defined(_M_ARM64) || defined(__LITTLE_ENDIAN__) + # define SQLITE_BYTEORDER 1234 + # elif defined(sparc) || defined(__ARMEB__) || defined(__AARCH64EB__) + # define SQLITE_BYTEORDER 4321 +@@ -35670,7 +35670,7 @@ SQLITE_PRIVATE int sqlite3VListNameToNum(VList *pIn, const char *zName, int nNam + return (sqlite_uint64)hi << 32 | lo; + } + +-#elif !defined(__STRICT_ANSI__) && (defined(__GNUC__) && defined(__ppc__)) ++#elif 0 + + __inline__ sqlite_uint64 sqlite3Hwtime(void){ + unsigned long long retval; +@@ -207003,7 +207003,7 @@ + # elif defined(i386) || defined(__i386__) || defined(_M_IX86) || \ + defined(__x86_64) || defined(__x86_64__) || defined(_M_X64) || \ + defined(_M_AMD64) || defined(_M_ARM) || defined(__x86) || \ +- defined(__ARMEL__) || defined(__AARCH64EL__) || defined(_M_ARM64) ++ defined(__ARMEL__) || defined(__AARCH64EL__) || defined(_M_ARM64) || defined(__LITTLE_ENDIAN__) + # define SQLITE_BYTEORDER 1234 + # elif defined(sparc) || defined(__ARMEB__) || defined(__AARCH64EB__) + # define SQLITE_BYTEORDER 4321 |