summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2019-12-26 17:30:07 -0500
committerMarge Bot <ben+marge-bot@smart-cactus.org>2019-12-30 06:54:01 -0500
commit5baa2a4326700c3044904ca0535d45d373ef3b89 (patch)
tree23b67e287b0aa0460f3f36ac77fae3df2f3b9563
parent9ce3ba68ad30d2173983be309ecfc08737e1dc38 (diff)
downloadhaskell-5baa2a4326700c3044904ca0535d45d373ef3b89.tar.gz
testsuite: Disable derefnull when built with LLVM
LLVM does not guarantee any particular semantics when dereferencing null pointers. Consequently, this test actually passes when built with the LLVM backend.
-rw-r--r--testsuite/tests/rts/all.T8
1 files changed, 4 insertions, 4 deletions
diff --git a/testsuite/tests/rts/all.T b/testsuite/tests/rts/all.T
index 450ee7c762..91f3dec387 100644
--- a/testsuite/tests/rts/all.T
+++ b/testsuite/tests/rts/all.T
@@ -23,10 +23,10 @@ def normalise_address(str):
str)
test('derefnull',
- [# LLVM Optimiser considers dereference of a null pointer
- # undefined and marks the code as unreachable which means
- # that later optimisations remove it altogether.
- omit_ways(['optllvm']),
+ [# The LLVM backend in particular does not guarantee any particular
+ # behavior on null dereference (similar to #10332).
+ omit_ways(llvm_ways),
+ when(not(have_ncg()), skip),
# SIGSEGV on Linux (which we make the default)
exit_code(139),
# Apparently the output can be different on different