diff options
Diffstat (limited to 'community/ghc/0005-Set-min-LLVM-version-to-9-and-make-version-checking-.patch')
-rw-r--r-- | community/ghc/0005-Set-min-LLVM-version-to-9-and-make-version-checking-.patch | 143 |
1 files changed, 0 insertions, 143 deletions
diff --git a/community/ghc/0005-Set-min-LLVM-version-to-9-and-make-version-checking-.patch b/community/ghc/0005-Set-min-LLVM-version-to-9-and-make-version-checking-.patch deleted file mode 100644 index f2a00c3e5d3..00000000000 --- a/community/ghc/0005-Set-min-LLVM-version-to-9-and-make-version-checking-.patch +++ /dev/null @@ -1,143 +0,0 @@ -From 5279eac5ce1a82d661dfaa911e892a591c7f95c0 Mon Sep 17 00:00:00 2001 -From: Zubin Duggal <zubin.duggal@gmail.com> -Date: Thu, 17 Jun 2021 16:25:46 +0530 -Subject: [PATCH 5/9] Set min LLVM version to 9 and make version checking use a - non-inclusive upper bound. - -We use a non-inclusive upper bound so that setting the upper bound to 13 for -example means that all 12.x versions are accepted. ---- - aclocal.m4 | 2 +- - compiler/GHC/CmmToLlvm.hs | 6 +++--- - compiler/GHC/CmmToLlvm/Base.hs | 16 +++++++++------- - compiler/GHC/SysTools/Tasks.hs | 9 +++++---- - configure.ac | 4 ++-- - 5 files changed, 20 insertions(+), 17 deletions(-) - -diff --git a/aclocal.m4 b/aclocal.m4 -index a296dbc243..0219ea3a61 100644 ---- a/aclocal.m4 -+++ b/aclocal.m4 -@@ -2251,7 +2251,7 @@ AC_DEFUN([FIND_LLVM_PROG],[ - [AC_MSG_RESULT(no) - $1="" - AC_MSG_NOTICE([We only support llvm $3 to $4 (found $PROG_VERSION).])], -- [AX_COMPARE_VERSION([$PROG_VERSION], [gt], [$4], -+ [AX_COMPARE_VERSION([$PROG_VERSION], [ge], [$4], - [AC_MSG_RESULT(no) - $1="" - AC_MSG_NOTICE([We only support llvm $3 to $4 (found $PROG_VERSION).])], -diff --git a/compiler/GHC/CmmToLlvm.hs b/compiler/GHC/CmmToLlvm.hs -index 0d2ecb16be..8bc7dc65b4 100644 ---- a/compiler/GHC/CmmToLlvm.hs -+++ b/compiler/GHC/CmmToLlvm.hs -@@ -64,8 +64,8 @@ llvmCodeGen dflags h cmm_stream - let doWarn = wopt Opt_WarnUnsupportedLlvmVersion dflags - when (not (llvmVersionSupported ver) && doWarn) $ putMsg dflags $ - "You are using an unsupported version of LLVM!" $$ -- "Currently only" <+> text (llvmVersionStr supportedLlvmVersionMin) <+> -- "to" <+> text (llvmVersionStr supportedLlvmVersionMax) <+> "is supported." <+> -+ "Currently only" <+> text (llvmVersionStr supportedLlvmVersionLowerBound) <+> -+ "to" <+> text (llvmVersionStr supportedLlvmVersionUpperBound) <+> "is supported." <+> - "System LLVM version: " <> text (llvmVersionStr ver) $$ - "We will try though..." - let isS390X = platformArch (targetPlatform dflags) == ArchS390X -@@ -78,7 +78,7 @@ llvmCodeGen dflags h cmm_stream - -- currently don't use the LLVM version to guide code generation - -- so this is okay. - let llvm_ver :: LlvmVersion -- llvm_ver = fromMaybe supportedLlvmVersionMin mb_ver -+ llvm_ver = fromMaybe supportedLlvmVersionLowerBound mb_ver - - -- run code generation - a <- runLlvm dflags llvm_ver bufh $ -diff --git a/compiler/GHC/CmmToLlvm/Base.hs b/compiler/GHC/CmmToLlvm/Base.hs -index a47bfd3baa..86f9944f59 100644 ---- a/compiler/GHC/CmmToLlvm/Base.hs -+++ b/compiler/GHC/CmmToLlvm/Base.hs -@@ -15,7 +15,7 @@ module GHC.CmmToLlvm.Base ( - LiveGlobalRegs, - LlvmUnresData, LlvmData, UnresLabel, UnresStatic, - -- LlvmVersion, supportedLlvmVersionMin, supportedLlvmVersionMax, -+ LlvmVersion, supportedLlvmVersionLowerBound, supportedLlvmVersionUpperBound, - llvmVersionSupported, parseLlvmVersion, - llvmVersionStr, llvmVersionList, - -@@ -265,7 +265,6 @@ llvmPtrBits platform = widthInBits $ typeWidth $ gcWord platform - -- * Llvm Version - -- - ---- Newtype to avoid using the Eq instance! - newtype LlvmVersion = LlvmVersion { llvmVersionNE :: NE.NonEmpty Int } - deriving (Eq, Ord) - -@@ -283,14 +282,17 @@ parseLlvmVersion = - where - (ver_str, rest) = span isDigit s - ---- | The LLVM Version that is currently supported. --supportedLlvmVersionMin, supportedLlvmVersionMax :: LlvmVersion --supportedLlvmVersionMin = LlvmVersion (sUPPORTED_LLVM_VERSION_MIN NE.:| []) --supportedLlvmVersionMax = LlvmVersion (sUPPORTED_LLVM_VERSION_MAX NE.:| []) -+-- | The (inclusive) lower bound on the LLVM Version that is currently supported. -+supportedLlvmVersionLowerBound :: LlvmVersion -+supportedLlvmVersionLowerBound = LlvmVersion (sUPPORTED_LLVM_VERSION_MIN NE.:| []) -+ -+-- | The (not-inclusive) upper bound bound on the LLVM Version that is currently supported. -+supportedLlvmVersionUpperBound :: LlvmVersion -+supportedLlvmVersionUpperBound = LlvmVersion (sUPPORTED_LLVM_VERSION_MAX NE.:| []) - - llvmVersionSupported :: LlvmVersion -> Bool - llvmVersionSupported v = -- v > supportedLlvmVersionMin && v <= supportedLlvmVersionMax -+ v >= supportedLlvmVersionLowerBound && v < supportedLlvmVersionUpperBound - - llvmVersionStr :: LlvmVersion -> String - llvmVersionStr = intercalate "." . map show . llvmVersionList -diff --git a/compiler/GHC/SysTools/Tasks.hs b/compiler/GHC/SysTools/Tasks.hs -index 1ab3a0a425..4d5158e940 100644 ---- a/compiler/GHC/SysTools/Tasks.hs -+++ b/compiler/GHC/SysTools/Tasks.hs -@@ -11,7 +11,7 @@ module GHC.SysTools.Tasks where - - import GHC.Utils.Exception as Exception - import GHC.Utils.Error --import GHC.CmmToLlvm.Base (LlvmVersion, llvmVersionStr, supportedLlvmVersionMin, supportedLlvmVersionMax, llvmVersionStr, parseLlvmVersion) -+import GHC.CmmToLlvm.Base (LlvmVersion, llvmVersionStr, supportedLlvmVersionLowerBound, supportedLlvmVersionUpperBound, llvmVersionStr, parseLlvmVersion) - import GHC.Driver.Types - import GHC.Driver.Session - import GHC.Utils.Outputable -@@ -235,10 +235,11 @@ figureLlvmVersion dflags = traceToolCommand dflags "llc" $ do - errorMsg dflags $ vcat - [ text "Warning:", nest 9 $ - text "Couldn't figure out LLVM version!" $$ -- text ("Make sure you have installed LLVM between " -- ++ llvmVersionStr supportedLlvmVersionMin -+ text ("Make sure you have installed LLVM between [" -+ ++ llvmVersionStr supportedLlvmVersionLowerBound - ++ " and " -- ++ llvmVersionStr supportedLlvmVersionMax) ] -+ ++ llvmVersionStr supportedLlvmVersionUpperBound -+ ++ ")") ] - return Nothing) - - -diff --git a/configure.ac b/configure.ac -index cf93f10938..e0423add87 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -716,8 +716,8 @@ AC_SUBST(InstallNameToolCmd) - # tools we are looking for. In the past, GHC supported a number of - # versions of LLVM simultaneously, but that stopped working around - # 3.5/3.6 release of LLVM. --LlvmMinVersion=10 --LlvmMaxVersion=12 # inclusive -+LlvmMinVersion=9 # inclusive -+LlvmMaxVersion=13 # not inclusive - AC_SUBST([LlvmMinVersion]) - AC_SUBST([LlvmMaxVersion]) - sUPPORTED_LLVM_VERSION_MIN=$(echo \($LlvmMinVersion\) | sed 's/\./,/') --- -2.33.0 - |