diff options
author | Jeff Hao <jeffhao@google.com> | 2014-03-13 17:55:43 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2014-03-13 17:55:44 +0000 |
commit | 9545a446e99b22248099fe66f5f9431530c20851 (patch) | |
tree | 359962d0a6a50f0c73f969d5ad67305de397e8a4 /compiler/driver/compiler_driver.h | |
parent | 0d64958d157ff6a30cbbe79df14ee4c723d14754 (diff) | |
parent | 49161cef10a308aedada18e9aa742498d6e6c8c7 (diff) | |
download | art-9545a446e99b22248099fe66f5f9431530c20851.zip art-9545a446e99b22248099fe66f5f9431530c20851.tar.gz art-9545a446e99b22248099fe66f5f9431530c20851.tar.bz2 |
Merge "Allow patching between dex files in the boot classpath."
Diffstat (limited to 'compiler/driver/compiler_driver.h')
-rw-r--r-- | compiler/driver/compiler_driver.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/compiler/driver/compiler_driver.h b/compiler/driver/compiler_driver.h index 71c431d..d88b2aa 100644 --- a/compiler/driver/compiler_driver.h +++ b/compiler/driver/compiler_driver.h @@ -316,6 +316,7 @@ class CompilerDriver { uint32_t referrer_method_idx, InvokeType referrer_invoke_type, uint32_t target_method_idx, + const DexFile* target_dex_file, InvokeType target_invoke_type, size_t literal_offset) LOCKS_EXCLUDED(compiled_methods_lock_); @@ -324,6 +325,7 @@ class CompilerDriver { uint32_t referrer_method_idx, InvokeType referrer_invoke_type, uint32_t target_method_idx, + const DexFile* target_dex_file, InvokeType target_invoke_type, size_t literal_offset, int32_t pc_relative_offset) @@ -333,6 +335,7 @@ class CompilerDriver { uint32_t referrer_method_idx, InvokeType referrer_invoke_type, uint32_t target_method_idx, + const DexFile* target_dex_file, InvokeType target_invoke_type, size_t literal_offset) LOCKS_EXCLUDED(compiled_methods_lock_); @@ -449,6 +452,9 @@ class CompilerDriver { uint32_t GetTargetMethodIdx() const { return target_method_idx_; } + const DexFile* GetTargetDexFile() const { + return target_dex_file_; + } InvokeType GetTargetInvokeType() const { return target_invoke_type_; } @@ -472,18 +478,21 @@ class CompilerDriver { uint32_t referrer_method_idx, InvokeType referrer_invoke_type, uint32_t target_method_idx, + const DexFile* target_dex_file, InvokeType target_invoke_type, size_t literal_offset) : PatchInformation(dex_file, referrer_class_def_idx, referrer_method_idx, literal_offset), referrer_invoke_type_(referrer_invoke_type), target_method_idx_(target_method_idx), + target_dex_file_(target_dex_file), target_invoke_type_(target_invoke_type) { } private: const InvokeType referrer_invoke_type_; const uint32_t target_method_idx_; + const DexFile* target_dex_file_; const InvokeType target_invoke_type_; friend class CompilerDriver; @@ -505,12 +514,13 @@ class CompilerDriver { uint32_t referrer_method_idx, InvokeType referrer_invoke_type, uint32_t target_method_idx, + const DexFile* target_dex_file, InvokeType target_invoke_type, size_t literal_offset, int32_t pc_relative_offset) : CallPatchInformation(dex_file, referrer_class_def_idx, - referrer_method_idx, referrer_invoke_type, - target_method_idx, target_invoke_type, literal_offset), + referrer_method_idx, referrer_invoke_type, target_method_idx, + target_dex_file, target_invoke_type, literal_offset), offset_(pc_relative_offset) { } |