diff options
| author | Nicolas Geoffray <ngeoffray@google.com> | 2019-06-26 06:04:14 -0700 |
|---|---|---|
| committer | android-build-merger <android-build-merger@google.com> | 2019-06-26 06:04:14 -0700 |
| commit | 370302ecaf86abd76e32aed4f92f4717eb13721c (patch) | |
| tree | 6e7bc0d2a3d8faa94c303d7d753319f3850fadcd /compiler/optimizing/nodes.h | |
| parent | 16a6fa82d706a271bb5c541c1847212b811a5833 (diff) | |
| parent | 48ccd7907fa15886e3a357fa7940d1e58bb71b44 (diff) | |
Make the JIT zygote memory shared. am: 05f87217dd am: ce31240100 am: 20a1449297
am: 48ccd7907f
Change-Id: Id923e93dc5396cd7d798083280b2023cb2316932
Diffstat (limited to 'compiler/optimizing/nodes.h')
| -rw-r--r-- | compiler/optimizing/nodes.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/compiler/optimizing/nodes.h b/compiler/optimizing/nodes.h index 8ac33a43094..759a8e6638f 100644 --- a/compiler/optimizing/nodes.h +++ b/compiler/optimizing/nodes.h @@ -320,6 +320,7 @@ class HGraph : public ArenaObject<kArenaAllocGraph> { bool dead_reference_safe = false, bool debuggable = false, bool osr = false, + bool is_shared_jit_code = false, int start_instruction_id = 0) : allocator_(allocator), arena_stack_(arena_stack), @@ -355,7 +356,8 @@ class HGraph : public ArenaObject<kArenaAllocGraph> { art_method_(nullptr), inexact_object_rti_(ReferenceTypeInfo::CreateInvalid()), osr_(osr), - cha_single_implementation_list_(allocator->Adapter(kArenaAllocCHA)) { + cha_single_implementation_list_(allocator->Adapter(kArenaAllocCHA)), + is_shared_jit_code_(is_shared_jit_code) { blocks_.reserve(kDefaultNumberOfBlocks); } @@ -585,6 +587,10 @@ class HGraph : public ArenaObject<kArenaAllocGraph> { bool IsCompilingOsr() const { return osr_; } + bool IsCompilingForSharedJitCode() const { + return is_shared_jit_code_; + } + ArenaSet<ArtMethod*>& GetCHASingleImplementationList() { return cha_single_implementation_list_; } @@ -774,6 +780,10 @@ class HGraph : public ArenaObject<kArenaAllocGraph> { // List of methods that are assumed to have single implementation. ArenaSet<ArtMethod*> cha_single_implementation_list_; + // Whether we are JIT compiling in the shared region area, putting + // restrictions on, for example, how literals are being generated. + bool is_shared_jit_code_; + friend class SsaBuilder; // For caching constants. friend class SsaLivenessAnalysis; // For the linear order. friend class HInliner; // For the reverse post order. |
