summaryrefslogtreecommitdiffstats
path: root/llvm/unittests/Support
diff options
context:
space:
mode:
authorMarcos Pividori <mpividori@google.com>2017-02-10 01:35:46 +0000
committerMarcos Pividori <mpividori@google.com>2017-02-10 01:35:46 +0000
commit0ae27e80b08d05d9d160e119e16a2c79d6f0817d (patch)
tree55dac7c5d09640c733bb1fbbd78a72f82589080f /llvm/unittests/Support
parente072cf51da2cb858dabfd9593a3336bb74209465 (diff)
downloadbcm5719-llvm-0ae27e80b08d05d9d160e119e16a2c79d6f0817d.tar.gz
bcm5719-llvm-0ae27e80b08d05d9d160e119e16a2c79d6f0817d.zip
[libFuzzer] Use dynamic loading for External Functions on Windows.
Replace weak aliases with dynamic loading. Weak aliases were generating some problems when linking for MT on Windows. For MT, compiler-rt's libraries are statically linked to the main executable the same than libFuzzer, so if we use weak aliases, we are providing two different default implementations for the same weak function and the linker fails. In this diff I re implement ExternalFunctions() using dynamic loading, so it works in both cases (MD and MT). Also, dynamic loading is simpler, since we are not defining any auxiliary external function, and we don't need to deal with weak aliases. This is equivalent to the implementation using dlsym(RTLD_DEFAULT, FnName) for Posix. Differential revision: https://reviews.llvm.org/D29751 llvm-svn: 294687
Diffstat (limited to 'llvm/unittests/Support')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud