ART: Clean up #includes in jit_code_cache.h .

And fix code that relied on those indirect #includes.

Also remove forward declaration of art::LinkerPatch because
we actually use art::linker::LinkerPatch.

Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Bug: 65574695
Change-Id: I102affed9a3eacbd21b79c370fbc72b5fc762c96
diff --git a/runtime/jit/jit_code_cache.h b/runtime/jit/jit_code_cache.h
index 9790e3a..46a4085 100644
--- a/runtime/jit/jit_code_cache.h
+++ b/runtime/jit/jit_code_cache.h
@@ -24,24 +24,33 @@
 #include "base/histogram-inl.h"
 #include "base/macros.h"
 #include "base/mutex.h"
-#include "gc/accounting/bitmap.h"
 #include "gc_root.h"
-#include "jni.h"
 #include "method_reference.h"
-#include "oat_file.h"
-#include "profile_compilation_info.h"
 #include "safe_map.h"
-#include "thread_pool.h"
 
 namespace art {
 
 class ArtMethod;
+template<class T> class Handle;
 class LinearAlloc;
 class InlineCache;
 class IsMarkedVisitor;
 class OatQuickMethodHeader;
+struct ProfileMethodInfo;
 class ProfilingInfo;
 
+namespace gc {
+namespace accounting {
+template<size_t kAlignment> class MemoryRangeBitmap;
+}  // namespace accounting
+}  // namespace gc
+
+namespace mirror {
+class Class;
+class Object;
+template<class T> class ObjectArray;
+}  // namespace mirror
+
 namespace jit {
 
 class JitInstrumentationCache;
@@ -66,6 +75,7 @@
                               size_t max_capacity,
                               bool generate_debug_info,
                               std::string* error_msg);
+  ~JitCodeCache();
 
   // Number of bytes allocated in the code cache.
   size_t CodeCacheSize() REQUIRES(!lock_);
@@ -210,11 +220,6 @@
 
   uint64_t GetLastUpdateTimeNs() const;
 
-  size_t GetCurrentCapacity() REQUIRES(!lock_) {
-    MutexLock lock(Thread::Current(), lock_);
-    return current_capacity_;
-  }
-
   size_t GetMemorySizeOfCodePointer(const void* ptr) REQUIRES(!lock_);
 
   void InvalidateCompiledCodeFor(ArtMethod* method, const OatQuickMethodHeader* code)