Revert "Introduce SymbolResolver and its subclasses."

This reverts commit ee69009f3590748aac4db17c0f9774252326d6cb.
diff --git a/lib/ExecutionEngine/Compiler.cpp b/lib/ExecutionEngine/Compiler.cpp
index c4a0870..a56c11c 100644
--- a/lib/ExecutionEngine/Compiler.cpp
+++ b/lib/ExecutionEngine/Compiler.cpp
@@ -23,13 +23,11 @@
 #include "Disassembler/Disassembler.h"
 #endif
 
-#include "BCCRuntimeSymbolResolver.h"
 #include "DebugHelper.h"
+#include "Runtime.h"
 #include "ScriptCompiled.h"
 #include "Sha1Helper.h"
 #include "CompilerOption.h"
-#include "SymbolResolverProxy.h"
-#include "SymbolResolvers.h"
 
 #include "librsloader.h"
 
@@ -404,20 +402,10 @@
     return 0;
 
   // Load the ELF Object
-  {
-    BCCRuntimeSymbolResolver BCCRuntimesResolver;
-    LookupFunctionSymbolResolver<void*> RSSymbolResolver(mpSymbolLookupFn,
-                                                         mpSymbolLookupContext);
-
-    SymbolResolverProxy Resolver;
-    Resolver.chainResolver(BCCRuntimesResolver);
-    Resolver.chainResolver(RSSymbolResolver);
-
-    mRSExecutable =
-        rsloaderCreateExec((unsigned char *)&*mEmittedELFExecutable.begin(),
-                           mEmittedELFExecutable.size(),
-                           SymbolResolverProxy::LookupFunction, &Resolver);
-  }
+  mRSExecutable =
+      rsloaderCreateExec((unsigned char *)&*mEmittedELFExecutable.begin(),
+                         mEmittedELFExecutable.size(),
+                         &resolveSymbolAdapter, this);
 
   if (!mRSExecutable) {
     setError("Fail to load emitted ELF relocatable file");
@@ -664,6 +652,25 @@
   return rsloaderGetSymbolAddress(mRSExecutable, name);
 }
 
+
+void *Compiler::resolveSymbolAdapter(void *context, char const *name) {
+  Compiler *self = reinterpret_cast<Compiler *>(context);
+
+  if (void *Addr = FindRuntimeFunction(name)) {
+    return Addr;
+  }
+
+  if (self->mpSymbolLookupFn) {
+    if (void *Addr = self->mpSymbolLookupFn(self->mpSymbolLookupContext, name)) {
+      return Addr;
+    }
+  }
+
+  ALOGE("Unable to resolve symbol: %s\n", name);
+  return NULL;
+}
+
+
 Compiler::~Compiler() {
   rsloaderDisposeExec(mRSExecutable);