diff options
author | Nicolas Geoffray <ngeoffray@google.com> | 2014-09-02 15:17:15 +0100 |
---|---|---|
committer | Nicolas Geoffray <ngeoffray@google.com> | 2014-09-08 12:15:07 +0100 |
commit | 3946844c34ad965515f677084b07d663d70ad1b8 (patch) | |
tree | 0d85bfba2ff69c34a2897351d1e50a1464509305 /compiler/compiled_method.h | |
parent | e2c23739c6395a83b30ece38f8a2e9e1bf7cf3ce (diff) | |
download | android_art-3946844c34ad965515f677084b07d663d70ad1b8.tar.gz android_art-3946844c34ad965515f677084b07d663d70ad1b8.tar.bz2 android_art-3946844c34ad965515f677084b07d663d70ad1b8.zip |
Runtime support for the new stack maps for the opt compiler.
Now most of the methods supported by the compiler can be optimized,
instead of using the baseline.
Change-Id: I80ab36a34913fa4e7dd576c7bf55af63594dc1fa
Diffstat (limited to 'compiler/compiled_method.h')
-rw-r--r-- | compiler/compiled_method.h | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/compiler/compiled_method.h b/compiler/compiled_method.h index 36f4745f67..3e34144836 100644 --- a/compiler/compiled_method.h +++ b/compiler/compiled_method.h @@ -173,7 +173,7 @@ class SrcMap FINAL : public std::vector<SrcMapElem> { class CompiledMethod FINAL : public CompiledCode { public: - // Constructs a CompiledMethod for the non-LLVM compilers. + // Constructs a CompiledMethod for Quick. CompiledMethod(CompilerDriver* driver, InstructionSet instruction_set, const std::vector<uint8_t>& quick_code, @@ -186,6 +186,16 @@ class CompiledMethod FINAL : public CompiledCode { const std::vector<uint8_t>& native_gc_map, const std::vector<uint8_t>* cfi_info); + // Constructs a CompiledMethod for Optimizing. + CompiledMethod(CompilerDriver* driver, + InstructionSet instruction_set, + const std::vector<uint8_t>& quick_code, + const size_t frame_size_in_bytes, + const uint32_t core_spill_mask, + const uint32_t fp_spill_mask, + const std::vector<uint8_t>& mapping_table, + const std::vector<uint8_t>& vmap_table); + // Constructs a CompiledMethod for the QuickJniCompiler. CompiledMethod(CompilerDriver* driver, InstructionSet instruction_set, @@ -232,9 +242,8 @@ class CompiledMethod FINAL : public CompiledCode { return *vmap_table_; } - const std::vector<uint8_t>& GetGcMap() const { - DCHECK(gc_map_ != nullptr); - return *gc_map_; + std::vector<uint8_t> const* GetGcMap() const { + return gc_map_; } const std::vector<uint8_t>* GetCFIInfo() const { |