summaryrefslogtreecommitdiffstats
path: root/compiler-rt/test/sanitizer_common/TestCases/Linux/pvalloc-overflow.cc
diff options
context:
space:
mode:
Diffstat (limited to 'compiler-rt/test/sanitizer_common/TestCases/Linux/pvalloc-overflow.cc')
-rw-r--r--compiler-rt/test/sanitizer_common/TestCases/Linux/pvalloc-overflow.cc21
1 files changed, 11 insertions, 10 deletions
diff --git a/compiler-rt/test/sanitizer_common/TestCases/Linux/pvalloc-overflow.cc b/compiler-rt/test/sanitizer_common/TestCases/Linux/pvalloc-overflow.cc
index 93421af19da..537c57e1a69 100644
--- a/compiler-rt/test/sanitizer_common/TestCases/Linux/pvalloc-overflow.cc
+++ b/compiler-rt/test/sanitizer_common/TestCases/Linux/pvalloc-overflow.cc
@@ -6,7 +6,7 @@
// REQUIRES: stable-runtime
-// UNSUPPORTED: android, freebsd, netbsd, tsan, ubsan
+// UNSUPPORTED: android, freebsd, netbsd, ubsan
// Checks that pvalloc overflows are caught. If the allocator is allowed to
// return null, the errno should be set to ENOMEM.
@@ -14,6 +14,7 @@
#include <assert.h>
#include <errno.h>
#include <malloc.h>
+#include <stdio.h>
#include <stdint.h>
#include <string.h>
#include <unistd.h>
@@ -32,15 +33,15 @@ int main(int argc, char *argv[]) {
} else {
assert(0);
}
+ // CHECK: {{ERROR: .*Sanitizer: pvalloc parameters overflow: size .* rounded up to system page size .* cannot be represented in type size_t}}
+ // CHECK: {{#0 .*pvalloc}}
+ // CHECK: {{#1 .*main .*pvalloc-overflow.cc:}}
+ // CHECK: {{SUMMARY: .*Sanitizer: pvalloc-overflow}}
- fprintf(stderr, "errno: %d\n", errno);
+ // The NULL pointer is printed differently on different systems, while (long)0
+ // is always the same.
+ fprintf(stderr, "errno: %d, p: %lx\n", errno, (long)p);
+ // CHECK-NULL: errno: 12, p: 0
- return p != nullptr;
+ return 0;
}
-
-// CHECK: {{ERROR: .*Sanitizer: pvalloc parameters overflow: size .* rounded up to system page size .* cannot be represented in type size_t}}
-// CHECK: {{#0 0x.* in .*pvalloc}}
-// CHECK: {{#1 0x.* in main .*pvalloc-overflow.cc:}}
-// CHECK: {{SUMMARY: .*Sanitizer: pvalloc-overflow}}
-
-// CHECK-NULL: errno: 12
OpenPOWER on IntegriCloud