From: Justin Bogner Date: Fri, 1 Sep 2017 19:37:49 +0000 (+0000) Subject: llvm-isel-fuzzer: Weak function invoke the ire of PE/COFF X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f2de8c1c55180a4726931681898382664eaf3715;p=llvm llvm-isel-fuzzer: Weak function invoke the ire of PE/COFF It's non-trivial to use weak symbols in a cross platform way (See sanitizer_win_defs.h in compiler-rt), and doing it naively like we have here causes some build failures: http://lab.llvm.org:8011/builders/clang-with-thin-lto-windows/builds/1260 Instead of going down the rabbit hole of emulating weak symbols for this very trivial dummy fuzzer driver, we can just rely on the fact that we know which hooks any given fuzz target implements and forward declare a normal symbol. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@312354 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/llvm-isel-fuzzer/DummyISelFuzzer.cpp b/tools/llvm-isel-fuzzer/DummyISelFuzzer.cpp index 929a63a541d..89c1c81cdbe 100644 --- a/tools/llvm-isel-fuzzer/DummyISelFuzzer.cpp +++ b/tools/llvm-isel-fuzzer/DummyISelFuzzer.cpp @@ -20,10 +20,7 @@ using namespace llvm; extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size); -extern "C" LLVM_ATTRIBUTE_WEAK int LLVMFuzzerInitialize(int *argc, - char ***argv) { - return 0; -} +extern "C" int LLVMFuzzerInitialize(int *argc, char ***argv); int main(int argc, char *argv[]) { errs() << "*** This tool was not linked to libFuzzer.\n"