summaryrefslogtreecommitdiff
path: root/testsuite/tests/lib
diff options
context:
space:
mode:
authorSylvain Henry <sylvain@haskus.fr>2020-02-11 09:18:09 +0100
committerBen Gamari <ben@smart-cactus.org>2020-06-17 16:22:04 -0400
commitf817d816e60a487bca64037095c01e9956225b64 (patch)
tree7e2779c7e2485539001b3649bea62554b6d924f7 /testsuite/tests/lib
parentaa9e7b7196f03f84579e3b4a09068c668cbe6ffb (diff)
downloadhaskell-f817d816e60a487bca64037095c01e9956225b64.tar.gz
Update testsuite
* support detection of slow ghc-bignum backend (to replace the detection of integer-simple use). There are still some test cases that the native backend doesn't handle efficiently enough. * remove tests for GMP only functions that have been removed from ghc-bignum * fix test results showing dependent packages (e.g. integer-gmp) or showing suggested instances * fix test using Integer/Natural API or showing internal names
Diffstat (limited to 'testsuite/tests/lib')
-rw-r--r--testsuite/tests/lib/integer/all.T9
-rw-r--r--testsuite/tests/lib/integer/fromToInteger.hs6
-rw-r--r--testsuite/tests/lib/integer/gcdInteger.hs4
-rw-r--r--testsuite/tests/lib/integer/integerGmpInternals.hs4
-rw-r--r--testsuite/tests/lib/integer/integerImportExport.hs16
-rw-r--r--testsuite/tests/lib/integer/integerImportExport.stdout4
6 files changed, 22 insertions, 21 deletions
diff --git a/testsuite/tests/lib/integer/all.T b/testsuite/tests/lib/integer/all.T
index 33c5ea172d..3364bea241 100644
--- a/testsuite/tests/lib/integer/all.T
+++ b/testsuite/tests/lib/integer/all.T
@@ -7,8 +7,9 @@ test('IntegerConversionRules', [], makefile_test, ['IntegerConversionRules'])
test('gcdInteger', normal, compile_and_run, [''])
# skip ghci as it doesn't support unboxed tuples
-test('integerImportExport', [reqlib('integer-gmp'), omit_ways(['ghci'])], compile_and_run, [''])
-test('integerGcdExt', [reqlib('integer-gmp'), omit_ways(['ghci'])], compile_and_run, [''])
+test('integerImportExport', [omit_ways(['ghci'])], compile_and_run, [''])
-test('integerPowMod', [reqlib('integer-gmp')], compile_and_run, [''])
-test('integerGmpInternals', [reqlib('integer-gmp')], compile_and_run, [''])
+# Disable GMP only tests
+#test('integerGcdExt', [omit_ways(['ghci'])], compile_and_run, [''])
+#test('integerPowMod', [], compile_and_run, [''])
+#test('integerGmpInternals', [], compile_and_run, [''])
diff --git a/testsuite/tests/lib/integer/fromToInteger.hs b/testsuite/tests/lib/integer/fromToInteger.hs
index c36153864c..0b8cb08eec 100644
--- a/testsuite/tests/lib/integer/fromToInteger.hs
+++ b/testsuite/tests/lib/integer/fromToInteger.hs
@@ -4,11 +4,11 @@
module Q where
import GHC.Exts
-import GHC.Integer
+import GHC.Num.Integer
v :: Int
-v = I# (integerToInt (smallInteger 3#))
+v = I# (integerToInt# (IS 3#))
w :: Word
-w = W# (integerToWord (wordToInteger 3##))
+w = W# (integerToWord# (integerFromWord# 3##))
diff --git a/testsuite/tests/lib/integer/gcdInteger.hs b/testsuite/tests/lib/integer/gcdInteger.hs
index 2e945a876a..e25855c149 100644
--- a/testsuite/tests/lib/integer/gcdInteger.hs
+++ b/testsuite/tests/lib/integer/gcdInteger.hs
@@ -4,12 +4,12 @@
module Main (main) where
import GHC.Base
-import GHC.Integer
+import GHC.Num.Integer
main :: IO ()
main = case i of
I# i# ->
- print (gcd (smallInteger i#) (smallInteger i#))
+ print (gcd (IS i#) (IS i#))
{-# NOINLINE i #-}
i :: Int
diff --git a/testsuite/tests/lib/integer/integerGmpInternals.hs b/testsuite/tests/lib/integer/integerGmpInternals.hs
index 4d53560107..53a776e13d 100644
--- a/testsuite/tests/lib/integer/integerGmpInternals.hs
+++ b/testsuite/tests/lib/integer/integerGmpInternals.hs
@@ -9,8 +9,8 @@ import Control.Monad
import GHC.Word
import GHC.Base
-import GHC.Integer.GMP.Internals (Integer(S#,Jp#,Jn#))
-import qualified GHC.Integer.GMP.Internals as I
+import GHC.Num.Integer
+import qualified GHC.Num.Integer as I
recipModInteger :: Integer -> Integer -> Integer
recipModInteger = I.recipModInteger
diff --git a/testsuite/tests/lib/integer/integerImportExport.hs b/testsuite/tests/lib/integer/integerImportExport.hs
index 276167b6b6..bef208afd0 100644
--- a/testsuite/tests/lib/integer/integerImportExport.hs
+++ b/testsuite/tests/lib/integer/integerImportExport.hs
@@ -10,20 +10,20 @@ import Unsafe.Coerce (unsafeCoerce#)
import GHC.Word
import GHC.Base
-import GHC.Integer.GMP.Internals (Integer(S#,Jp#,Jn#))
-import qualified GHC.Integer.GMP.Internals as I
+import GHC.Num.Integer
+import qualified GHC.Num.Integer as I
exportInteger :: Integer -> MutableByteArray# RealWorld -> Word# -> Int# -> IO Word
-exportInteger = I.exportIntegerToMutableByteArray
+exportInteger = I.integerToMutableByteArray
exportIntegerAddr :: Integer -> Addr# -> Int# -> IO Word
-exportIntegerAddr = I.exportIntegerToAddr
+exportIntegerAddr = I.integerToAddr
importInteger :: ByteArray# -> Word# -> Word# -> Int# -> Integer
-importInteger = I.importIntegerFromByteArray
+importInteger ba off sz = I.integerFromByteArray sz ba off
importIntegerAddr :: Addr# -> Word# -> Int# -> IO Integer
-importIntegerAddr a l e = I.importIntegerFromAddr a l e
+importIntegerAddr a l = I.integerFromAddr l a
-- helpers
data MBA = MBA { unMBA :: !(MutableByteArray# RealWorld) }
@@ -57,8 +57,8 @@ freezeByteArray arr = IO $ \s -> case unsafeFreezeByteArray# arr s of (# s, arr
main :: IO ()
main = do
-- import/export primitives
- print $ [ W# (I.sizeInBaseInteger x 2#) | x <- [b1024,b*e,b,e,m,x,y,-1,0,1] ]
- print $ [ W# (I.sizeInBaseInteger x 256#) | x <- [b1024,b*e,b,e,m,x,y,-1,0,1] ]
+ print $ [ W# (I.integerSizeInBase# 2## x) | x <- [b1024,b*e,b,e,m,x,y,-1,0,1] ]
+ print $ [ W# (I.integerSizeInBase# 256## x) | x <- [b1024,b*e,b,e,m,x,y,-1,0,1] ]
BA ba <- do
MBA mba <- newByteArray 128##
diff --git a/testsuite/tests/lib/integer/integerImportExport.stdout b/testsuite/tests/lib/integer/integerImportExport.stdout
index 950d72c90b..19f24d12e0 100644
--- a/testsuite/tests/lib/integer/integerImportExport.stdout
+++ b/testsuite/tests/lib/integer/integerImportExport.stdout
@@ -1,5 +1,5 @@
-[1024,462,231,231,133,123,125,1,1,1]
-[128,58,29,29,17,16,16,1,1,1]
+[1024,462,231,231,133,123,125,1,0,1]
+[128,58,29,29,17,16,16,1,0,1]
0
0
23