1 //===---------- NullResolver.cpp - Reject symbol lookup requests ----------===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 
10 #include "llvm/ExecutionEngine/Orc/NullResolver.h"
11 
12 #include "llvm/Support/ErrorHandling.h"
13 
14 namespace llvm {
15 namespace orc {
16 
lookupFlags(const SymbolNameSet & Symbols)17 SymbolFlagsMap NullResolver::lookupFlags(const SymbolNameSet &Symbols) {
18   return SymbolFlagsMap();
19 }
20 
21 SymbolNameSet
lookup(std::shared_ptr<AsynchronousSymbolQuery> Query,SymbolNameSet Symbols)22 NullResolver::lookup(std::shared_ptr<AsynchronousSymbolQuery> Query,
23                      SymbolNameSet Symbols) {
24   assert(Symbols.empty() && "Null resolver: Symbols must be empty");
25   return Symbols;
26 }
27 
findSymbol(const std::string & Name)28 JITSymbol NullLegacyResolver::findSymbol(const std::string &Name) {
29   llvm_unreachable("Unexpected cross-object symbol reference");
30 }
31 
32 JITSymbol
findSymbolInLogicalDylib(const std::string & Name)33 NullLegacyResolver::findSymbolInLogicalDylib(const std::string &Name) {
34   llvm_unreachable("Unexpected cross-object symbol reference");
35 }
36 
37 } // End namespace orc.
38 } // End namespace llvm.
39