diff options
author | Lang Hames <lhames@gmail.com> | 2018-07-20 18:31:50 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2018-07-20 18:31:50 +0000 |
commit | fd0c1e71694ef1def33ec6293dbfae1f4c96f39b (patch) | |
tree | 541008992490aff54ab77d8e67ef8f69293c555a /llvm/lib/ExecutionEngine/Orc/Legacy.cpp | |
parent | a2e18bba304842cecb8d68bc4199af17067d7ef4 (diff) | |
download | bcm5719-llvm-fd0c1e71694ef1def33ec6293dbfae1f4c96f39b.tar.gz bcm5719-llvm-fd0c1e71694ef1def33ec6293dbfae1f4c96f39b.zip |
[ORC] Replace SymbolResolvers in the new ORC layers with search orders on VSOs.
A search order is a list of VSOs to be searched linearly to find symbols. Each
VSO now has a search order that will be used when fixing up definitions in that
VSO. Each VSO's search order defaults to just that VSO itself.
This is a first step towards removing symbol resolvers from ORC altogether. In
practice symbol resolvers tended to be used to implement a search order anyway,
sometimes with additional programatic generation of symbols. Now that VSOs
support programmatic generation of definitions via fallback generators, search
orders provide a cleaner way to achieve the desired effect (while removing a lot
of boilerplate).
llvm-svn: 337593
Diffstat (limited to 'llvm/lib/ExecutionEngine/Orc/Legacy.cpp')
-rw-r--r-- | llvm/lib/ExecutionEngine/Orc/Legacy.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/ExecutionEngine/Orc/Legacy.cpp b/llvm/lib/ExecutionEngine/Orc/Legacy.cpp index 795ddd582d8..79525baf92e 100644 --- a/llvm/lib/ExecutionEngine/Orc/Legacy.cpp +++ b/llvm/lib/ExecutionEngine/Orc/Legacy.cpp @@ -12,6 +12,8 @@ namespace llvm { namespace orc { +void SymbolResolver::anchor() {} + JITSymbolResolverAdapter::JITSymbolResolverAdapter( ExecutionSession &ES, SymbolResolver &R, MaterializationResponsibility *MR) : ES(ES), R(R), MR(MR) {} |