diff options
author | Reid Kleckner <rnk@google.com> | 2015-10-16 23:43:22 +0000 |
---|---|---|
committer | Reid Kleckner <rnk@google.com> | 2015-10-16 23:43:22 +0000 |
commit | 02b74368ce181614741c7f5aa3a39a86df78f9af (patch) | |
tree | 27e34f0a50bc64fc5fb4439eefd1b54c3b03c05f /llvm/test/tools/llvm-symbolizer/Inputs/coff-exports.cpp | |
parent | 15560778df3e80d73d085d21196f531415c5b5fa (diff) | |
download | bcm5719-llvm-02b74368ce181614741c7f5aa3a39a86df78f9af.tar.gz bcm5719-llvm-02b74368ce181614741c7f5aa3a39a86df78f9af.zip |
[llvm-symbolizer] Use the export table if no symbols are present
This lets us make guesses about symbols in third party DLLs without
debug info, like MSVCR120.dll or kernel32.dll. dbghelp does the same
thing.
llvm-svn: 250582
Diffstat (limited to 'llvm/test/tools/llvm-symbolizer/Inputs/coff-exports.cpp')
-rw-r--r-- | llvm/test/tools/llvm-symbolizer/Inputs/coff-exports.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/llvm/test/tools/llvm-symbolizer/Inputs/coff-exports.cpp b/llvm/test/tools/llvm-symbolizer/Inputs/coff-exports.cpp new file mode 100644 index 00000000000..23b44b32902 --- /dev/null +++ b/llvm/test/tools/llvm-symbolizer/Inputs/coff-exports.cpp @@ -0,0 +1,20 @@ +// To generate the corresponding EXE, run: +// clang-cl -MD -c coff-exports.cpp && lld-link /MANIFEST:NO coff-exports.obj + +#define EXPORT __declspec(dllexport) + +extern "C" int puts(const char *str); + +EXPORT void __declspec(noinline) foo() { + puts("foo1"); + puts("foo2"); +} + +void bar() { + foo(); +} + +EXPORT int main() { + bar(); + return 0; +} |