ART: Reduce dependencies on CompilerDriver.

Preparation for moving CompilerDriver and other stuff
from libart-compiler.so to dex2oat.

Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Change-Id: Ic221ebca4b8c79dd1549316921ace655f2e3f0fe
diff --git a/compiler/compiler.cc b/compiler/compiler.cc
index 54da446..d044c2f 100644
--- a/compiler/compiler.cc
+++ b/compiler/compiler.cc
@@ -22,17 +22,18 @@
 #include "base/utils.h"
 #include "dex/code_item_accessors-inl.h"
 #include "dex/dex_file.h"
-#include "driver/compiler_driver.h"
 #include "optimizing/optimizing_compiler.h"
 
 namespace art {
 
-Compiler* Compiler::Create(CompilerDriver* driver, Compiler::Kind kind) {
+Compiler* Compiler::Create(const CompilerOptions& compiler_options,
+                           CompiledMethodStorage* storage,
+                           Compiler::Kind kind) {
   switch (kind) {
     case kQuick:
       // TODO: Remove Quick in options.
     case kOptimizing:
-      return CreateOptimizingCompiler(driver);
+      return CreateOptimizingCompiler(compiler_options, storage);
 
     default:
       LOG(FATAL) << "UNREACHABLE";