summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Potapenko <glider@google.com>2017-05-12 09:39:32 +0000
committerAlexander Potapenko <glider@google.com>2017-05-12 09:39:32 +0000
commitf06fbd47941b79021a61d56be99a34e7fe484168 (patch)
tree7000314f6d5c6379f94947693355fec4877ad03c
parentc05fcc0d9e4f5bc894335fb144f5b74732accfe2 (diff)
downloadbcm5719-llvm-f06fbd47941b79021a61d56be99a34e7fe484168.tar.gz
bcm5719-llvm-f06fbd47941b79021a61d56be99a34e7fe484168.zip
[msan] Remove a failing test from MemorySanitizer.ICmpRelational
This is a follow-up to r302787, which broke MemorySanitizer.ICmpRelational. MSan is now reporting a false positive on the following test case: TestForNotPoisoned((poisoned(-1, 0x80000000U) >= poisoned(-1, 0U))) , which is sort of anticipated, because we're approximating the comparison with an OR of the arguments' shadow values. llvm-svn: 302887
-rw-r--r--compiler-rt/lib/msan/tests/msan_test.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/compiler-rt/lib/msan/tests/msan_test.cc b/compiler-rt/lib/msan/tests/msan_test.cc
index 40f56270a1e..58f695e69e1 100644
--- a/compiler-rt/lib/msan/tests/msan_test.cc
+++ b/compiler-rt/lib/msan/tests/msan_test.cc
@@ -3724,8 +3724,10 @@ TEST(MemorySanitizer, ICmpRelational) {
EXPECT_POISONED(poisoned(6, 0xF) > poisoned(7, 0));
EXPECT_POISONED(poisoned(0xF, 0xF) > poisoned(7, 0));
-
- EXPECT_NOT_POISONED(poisoned(-1, 0x80000000U) >= poisoned(-1, 0U));
+ // Note that "icmp op X, Y" is approximated with "or shadow(X), shadow(Y)"
+ // and therefore may generate false positives in some cases, e.g. the
+ // following one:
+ // EXPECT_NOT_POISONED(poisoned(-1, 0x80000000U) >= poisoned(-1, 0U));
}
#if MSAN_HAS_M128
OpenPOWER on IntegriCloud