[compiler-rt] r337224 - [libFuzzer] Avoid STL in MSan test.

Matt Morehouse via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 16 16:22:54 PDT 2018


Author: morehouse
Date: Mon Jul 16 16:22:54 2018
New Revision: 337224

URL: http://llvm.org/viewvc/llvm-project?rev=337224&view=rev
Log:
[libFuzzer] Avoid STL in MSan test.

Summary:
STL can cause MSan false positives if lib[std]c++ isn't instrumented
with MSan.

Reviewers: kcc

Reviewed By: kcc

Subscribers: Dor1s, llvm-commits

Differential Revision: https://reviews.llvm.org/D49404

Added:
    compiler-rt/trunk/test/fuzzer/SimpleTestStdio.cpp
Modified:
    compiler-rt/trunk/test/fuzzer/msan.test

Added: compiler-rt/trunk/test/fuzzer/SimpleTestStdio.cpp
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/fuzzer/SimpleTestStdio.cpp?rev=337224&view=auto
==============================================================================
--- compiler-rt/trunk/test/fuzzer/SimpleTestStdio.cpp (added)
+++ compiler-rt/trunk/test/fuzzer/SimpleTestStdio.cpp Mon Jul 16 16:22:54 2018
@@ -0,0 +1,26 @@
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+
+// Simple test for a fuzzer. The fuzzer must find the string "Hi!".
+#include <assert.h>
+#include <cstdint>
+#include <cstdio>
+#include <cstdlib>
+
+static volatile int Sink;
+
+extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) {
+  assert(Data);
+  if (Size > 0 && Data[0] == 'H') {
+    Sink = 1;
+    if (Size > 1 && Data[1] == 'i') {
+      Sink = 2;
+      if (Size > 2 && Data[2] == '!') {
+        fprintf(stderr, "BINGO; Found the target, exiting\n");
+        exit(0);
+      }
+    }
+  }
+  return 0;
+}
+

Modified: compiler-rt/trunk/test/fuzzer/msan.test
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/fuzzer/msan.test?rev=337224&r1=337223&r2=337224&view=diff
==============================================================================
--- compiler-rt/trunk/test/fuzzer/msan.test (original)
+++ compiler-rt/trunk/test/fuzzer/msan.test Mon Jul 16 16:22:54 2018
@@ -1,5 +1,5 @@
 REQUIRES: msan
-RUN: %msan_compiler %S/SimpleTest.cpp -o %t
+RUN: %msan_compiler %S/SimpleTestStdio.cpp -o %t
 RUN: not %run %t -seed=1 -runs=10000000 2>&1 | FileCheck %s --check-prefix=NO-REPORT
 
 RUN: %msan_compiler %S/SimpleCmpTest.cpp -o %t




More information about the llvm-commits mailing list