diff options
author | Rui Ueyama <ruiu@google.com> | 2015-06-21 22:31:52 +0000 |
---|---|---|
committer | Rui Ueyama <ruiu@google.com> | 2015-06-21 22:31:52 +0000 |
commit | a77336bd5dc4eb2f3cf300a88c918aa2f7d4c108 (patch) | |
tree | c2bd1a08b5c6ecf0b3b5641cdcc6f19fc5bb7e7c /clang/unittests/libclang/LibclangTest.cpp | |
parent | 5055f6dfe0df092ae81a838223f2216353c16064 (diff) | |
download | llvm-a77336bd5dc4eb2f3cf300a88c918aa2f7d4c108.zip llvm-a77336bd5dc4eb2f3cf300a88c918aa2f7d4c108.tar.gz llvm-a77336bd5dc4eb2f3cf300a88c918aa2f7d4c108.tar.bz2 |
COFF: Support delay-load import tables.
DLLs are usually resolved at process startup, but you can
delay-load them by passing /delayload option to the linker.
If a /delayload is specified, the linker has to create data
which is similar to regular import table.
One notable difference is that the pointers in a delay-load
import table are originally pointing to thunks that resolves
themselves. Each thunk loads a DLL, resolve its name, and then
overwrites the pointer with the result so that subsequent
function calls directly call a desired function. The linker
has to emit thunks.
llvm-svn: 240250
Diffstat (limited to 'clang/unittests/libclang/LibclangTest.cpp')
0 files changed, 0 insertions, 0 deletions