diff options
| author | 2013-06-03 14:49:28 -0700 | |
|---|---|---|
| committer | 2013-06-07 14:43:24 -0700 | |
| commit | 0aba0ba155bef7346bde19e53581200b89ae8a7a (patch) | |
| tree | 6590f8a50bde7c30b57f1bb0ae67c6d88cea8116 /src/compiler/driver/compiler_driver.h | |
| parent | 515661b14b60ab9684efa1ab1d5124934406094e (diff) | |
Created compiled stubs in image.
Saves class linker from having to set code pointers when loading
from an image. Added stubs for quick and portable resolution
trampolines, and interpreter-to-interpreter and interpreter-to-quick
entry points. Also added sizing stats output for oat writer.
Change-Id: I3905fae81047742c23d1cf0ca001db798db971b1
Diffstat (limited to 'src/compiler/driver/compiler_driver.h')
| -rw-r--r-- | src/compiler/driver/compiler_driver.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/compiler/driver/compiler_driver.h b/src/compiler/driver/compiler_driver.h index 9fd3c81c21..4f77bdb7a7 100644 --- a/src/compiler/driver/compiler_driver.h +++ b/src/compiler/driver/compiler_driver.h @@ -98,6 +98,16 @@ class CompilerDriver { CompilerTls* GetTls(); + // Generate the trampolines that are invoked by unresolved direct methods. + const std::vector<uint8_t>* CreatePortableResolutionTrampoline() const + SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); + const std::vector<uint8_t>* CreateQuickResolutionTrampoline() const + SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); + const std::vector<uint8_t>* CreateInterpreterToInterpreterEntry() const + SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); + const std::vector<uint8_t>* CreateInterpreterToQuickEntry() const + SHARED_LOCKS_REQUIRED(Locks::mutator_lock_); + // A class is uniquely located by its DexFile and the class_defs_ table index into that DexFile typedef std::pair<const DexFile*, uint32_t> ClassReference; |