diff options
author | Dan Liew <dan@su-root.co.uk> | 2016-06-07 23:32:50 +0000 |
---|---|---|
committer | Dan Liew <dan@su-root.co.uk> | 2016-06-07 23:32:50 +0000 |
commit | 1873a496e20a391633fc29665d6620c1ca3191f7 (patch) | |
tree | abb6a28df749fed5b9e653269cdcd941af9d7bb1 /lldb/packages/Python/lldbsuite/test/python_api/breakpoint | |
parent | 32c940de377ec87a072e3d7c3f3200beec6fe90e (diff) | |
download | bcm5719-llvm-1873a496e20a391633fc29665d6620c1ca3191f7.tar.gz bcm5719-llvm-1873a496e20a391633fc29665d6620c1ca3191f7.zip |
[LibFuzzer] Declare and use sanitizer functions in ``fuzzer::ExternalFunctions``
This fixes linking problems on OSX.
Unfortunately it turns out we need to use an instance of the
``fuzzer::ExternalFunctions`` object in several places so this
commit also replaces all instances with a single global instance.
It also turns out initializing a global ``fuzzer::ExternalFunctions``
before main is entered (i.e. letting the object be initialised by the
global initializers) is not safe (on OSX the call to ``Printf()`` in the
CTOR crashes if it is called from a global initializer) so we instead
have a global ``fuzzer::ExternalFunctions*`` and initialize it inside
``FuzzerDriver()``.
Multiple unit tests depend also depend on the
``fuzzer::ExternalFunctions*`` global so a ``main()`` function has been
added that initializes it before running any tests.
Differential Revision: http://reviews.llvm.org/D20943
llvm-svn: 272072
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/breakpoint')
0 files changed, 0 insertions, 0 deletions