[libFuzzer] remove some old code; also make __sanitizer_get_total_unique_caller_calle...
authorKostya Serebryany <kcc@google.com>
Fri, 23 Oct 2015 18:37:58 +0000 (18:37 +0000)
committerKostya Serebryany <kcc@google.com>
Fri, 23 Oct 2015 18:37:58 +0000 (18:37 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@251133 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Fuzzer/FuzzerInterface.cpp
lib/Fuzzer/FuzzerInterface.h
lib/Fuzzer/FuzzerInternal.h
lib/Fuzzer/FuzzerLoop.cpp

index 231e757c8b26a7d6aca9ec09f517e19f09b92085..79cb0e40f0e2454265dbe9e4ff4f2b651c48c9b0 100644 (file)
@@ -19,9 +19,6 @@ void FuzzerRandomLibc::ResetSeed(int seed) { srand(seed); }
 
 size_t FuzzerRandomLibc::Rand() { return rand(); }
 
-UserSuppliedFuzzer::UserSuppliedFuzzer()
-    : OwnRand(true), Rand(new FuzzerRandomLibc(0)), MD(*Rand) {}
-
 UserSuppliedFuzzer::UserSuppliedFuzzer(FuzzerRandomBase *Rand)
     : Rand(Rand), MD(*Rand) {}
 
index de5084222ef4539e317d5743f47bec329e15e573..c96343404f42904c3a608fd68bc86f54ea2ce456 100644 (file)
@@ -23,7 +23,6 @@
 
 namespace fuzzer {
 
-typedef void (*DeprecatedUserCallback)(const uint8_t *Data, size_t Size);
 /// Returns an int 0. Values other than zero are reserved for future.
 typedef int (*UserCallback)(const uint8_t *Data, size_t Size);
 /** Simple C-like interface with a single user-supplied callback.
@@ -46,7 +45,6 @@ int main(int argc, char **argv) {
 #\endcode
 */
 int FuzzerDriver(int argc, char **argv, UserCallback Callback);
-int FuzzerDriver(int argc, char **argv, DeprecatedUserCallback Callback);
 
 class FuzzerRandomBase {
  public:
@@ -137,7 +135,6 @@ int main(int argc, char **argv) {
 */
 class UserSuppliedFuzzer {
  public:
-  UserSuppliedFuzzer();  // Deprecated, don't use.
   UserSuppliedFuzzer(FuzzerRandomBase *Rand);
   /// Executes the target function on 'Size' bytes of 'Data'.
   virtual int TargetFunction(const uint8_t *Data, size_t Size) = 0;
index 7a90ce1ac65d3785131f10dd51c08dc2d309a71c..2dc44f98def23c82680cdbbe4bbe42ba0089859d 100644 (file)
@@ -186,17 +186,11 @@ class SimpleUserSuppliedFuzzer: public UserSuppliedFuzzer {
   SimpleUserSuppliedFuzzer(FuzzerRandomBase *Rand, UserCallback Callback)
       : UserSuppliedFuzzer(Rand), Callback(Callback) {}
 
-  SimpleUserSuppliedFuzzer(FuzzerRandomBase *Rand, DeprecatedUserCallback Callback)
-      : UserSuppliedFuzzer(Rand), DeprecatedCallback(Callback) {}
-
   virtual int TargetFunction(const uint8_t *Data, size_t Size) override {
-    if (Callback) return Callback(Data, Size);
-    DeprecatedCallback(Data, Size);
-    return 0;
+    return Callback(Data, Size);
   }
 
  private:
-  DeprecatedUserCallback DeprecatedCallback = nullptr;
   UserCallback Callback = nullptr;
 };
 
index 4f0d998813163113cc55a5f24582040ed1a0edfc..268989f103a4b865ca1157151bcc12578de36469 100644 (file)
@@ -15,6 +15,7 @@
 
 extern "C" {
 __attribute__((weak)) void __sanitizer_print_stack_trace();
+__attribute__((weak)) size_t __sanitizer_get_total_unique_caller_callee_pairs();
 }
 
 namespace fuzzer {
@@ -207,6 +208,8 @@ size_t Fuzzer::RecordBlockCoverage() {
 size_t Fuzzer::RecordCallerCalleeCoverage() {
   if (!Options.UseIndirCalls)
     return 0;
+  if (!__sanitizer_get_total_unique_caller_callee_pairs)
+    return 0;
   return LastRecordedCallerCalleeCoverage =
              __sanitizer_get_total_unique_caller_callee_pairs();
 }