From e89499406d072f1c959ce2553b18528fb60a337a Mon Sep 17 00:00:00 2001 From: Giulio De Pasquale Date: Fri, 15 Apr 2022 19:01:27 +0100 Subject: [PATCH] llvmPackages.compiler-rt: Backported X86 support patch from LLVM11 --- .../compiler-rt/X86-support-extension.patch | 23 +++++++++++++++++++ .../compilers/llvm/10/compiler-rt/default.nix | 1 + 2 files changed, 24 insertions(+) create mode 100644 pkgs/development/compilers/llvm/10/compiler-rt/X86-support-extension.patch diff --git a/pkgs/development/compilers/llvm/10/compiler-rt/X86-support-extension.patch b/pkgs/development/compilers/llvm/10/compiler-rt/X86-support-extension.patch new file mode 100644 index 000000000000..f6f9336ad5ad --- /dev/null +++ b/pkgs/development/compilers/llvm/10/compiler-rt/X86-support-extension.patch @@ -0,0 +1,23 @@ +diff --git a/lib/builtins/CMakeLists.txt b/lib/builtins/CMakeLists.txt +index 3a66dd9c3fb..7efc85d9f9f 100644 +--- a/lib/builtins/CMakeLists.txt ++++ b/lib/builtins/CMakeLists.txt +@@ -301,6 +301,10 @@ if (NOT MSVC) + i386/umoddi3.S + ) + ++ set(i486_SOURCES ${i386_SOURCES}) ++ set(i586_SOURCES ${i386_SOURCES}) ++ set(i686_SOURCES ${i386_SOURCES}) ++ + if (WIN32) + set(i386_SOURCES + ${i386_SOURCES} +@@ -608,6 +612,7 @@ else () + endif() + + foreach (arch ${BUILTIN_SUPPORTED_ARCH}) ++ message("arch: ${arch}") + if (CAN_TARGET_${arch}) + # For ARM archs, exclude any VFP builtins if VFP is not supported + if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em)$") diff --git a/pkgs/development/compilers/llvm/10/compiler-rt/default.nix b/pkgs/development/compilers/llvm/10/compiler-rt/default.nix index 91a09560626e..a126537f2aeb 100644 --- a/pkgs/development/compilers/llvm/10/compiler-rt/default.nix +++ b/pkgs/development/compilers/llvm/10/compiler-rt/default.nix @@ -56,6 +56,7 @@ stdenv.mkDerivation { ./find-darwin-sdk-version.patch # don't test for macOS being >= 10.15 ./gnu-install-dirs.patch ../../common/compiler-rt/libsanitizer-no-cyclades-11.patch + ./X86-support-extension.patch # backported from LLVM 11 ] ++ lib.optional stdenv.hostPlatform.isAarch32 ./armv7l.patch; # TSAN requires XPC on Darwin, which we have no public/free source files for. We can depend on the Apple frameworks