summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2017-04-06 17:14:47 -0400
committerBen Gamari <ben@smart-cactus.org>2017-04-06 17:43:51 -0400
commite5e07be2df1a0d6f1cb47e9d301053445020589c (patch)
tree93abe51eb60ed608d99098a106962ec4c881268e
parente61900c994334c209a9de763993716314abf9f6d (diff)
downloadhaskell-e5e07be2df1a0d6f1cb47e9d301053445020589c.tar.gz
base: Run num009 with -msse2 on i386
x87's transcendental instructions are terribly imprecise and fail this test. Moreover, we really ouch to enable -mse2 on i386 by default as it is nearly universally supported at this point. See #13540.
-rw-r--r--libraries/base/tests/Numeric/all.T8
1 files changed, 7 insertions, 1 deletions
diff --git a/libraries/base/tests/Numeric/all.T b/libraries/base/tests/Numeric/all.T
index 36b2d6f0d6..a0a9d68382 100644
--- a/libraries/base/tests/Numeric/all.T
+++ b/libraries/base/tests/Numeric/all.T
@@ -6,6 +6,12 @@ test('num005', normal, compile_and_run, [''])
test('num006', normal, compile_and_run, [''])
test('num007', normal, compile_and_run, [''])
test('num008', normal, compile_and_run, [''])
+
+# On i386, we need -msse2 to get reliable floating point results
+if config.arch == 'i386':
+ opts = '-msse2'
+else:
+ opts = ''
test('num009', [ when(fast(), skip)
, when(platform('i386-apple-darwin'), expect_broken(2370))
, when(opsys('mingw32'), omit_ways(['ghci'])) ],
@@ -14,7 +20,7 @@ test('num009', [ when(fast(), skip)
# serious, since the results for lower numbers are all fine.
# We also get another set of results for 1e02 with GHCi, so
# I'm skipping that way altogether.
- compile_and_run, [''])
+ compile_and_run, [opts])
test('num010',
when(platform('i386-apple-darwin'), expect_broken_for(7043, 'ghci')),
compile_and_run,