summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2019-12-26 17:30:07 -0500
committerBen Gamari <ben@smart-cactus.org>2019-12-26 17:32:40 -0500
commit93c6891463e3173ce21ad7f43a5fa9663a9f14df (patch)
tree497a312d6135c3108bfc5afc90b6dc6c1d840e2e
parent334290b6681796dd141c964b88c541da13ce03c7 (diff)
downloadhaskell-wip/derefnull-llvm.tar.gz
testsuite: Disable derefnull when built with LLVMwip/derefnull-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