Commit 04c3e511 authored by Simon Marlow's avatar Simon Marlow

enable the asm ways for ffi009 on i386 if -msse2 is available

parent adcdda69
......@@ -57,18 +57,18 @@ test('ffi008', compose(expect_fail_for(['extcore','optextcore']),
compile_and_run, [''])
# On i386, expect fail for way optasm, because the native code generator
# doesn't do -ffloat-store and gets different answers when
# optimisation is on. Doesn't have this issue on OpenBSD. Why?
if config.platform == 'i386-unknown-openbsd':
ways = expect_fail_for(['extcore','optextcore'])
elif config.platform.startswith('i386-'):
ways = only_ways(['optc','profc','ghci'])
ways = expect_fail_for(['extcore','optextcore'])
test('ffi009', compose(skip_if_fast,ways) ,compile_and_run, [''])
# On i386, we need -msse2 to get reliable floating point results
maybe_skip = normal
opts = ''
if config.platform.startswith('i386-'):
if config.compiler_type == 'ghc' and \
version_ge(config.compiler_version, '6.13'):
opts = '-msse2'
maybe_skip = only_ways(['optc','profc','ghci'])
test('ffi009', [skip_if_fast, expect_fail_for(['extcore','optextcore']),
maybe_skip] ,compile_and_run, [opts])
# Doesn't work with External Core due to __labels
test('ffi010', expect_fail_for(['extcore','optextcore']), compile_and_run, [''])
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment