summaryrefslogtreecommitdiff
path: root/runtime/stack_map.h
diff options
context:
space:
mode:
author Nicolas Geoffray <ngeoffray@google.com> 2019-11-27 17:42:32 +0000
committer Nicolas Geoffray <ngeoffray@google.com> 2019-12-03 14:32:09 +0000
commita59af8aeaad8fe7d68d8f8de63eab9cf85b6ab31 (patch)
tree83195c74b135731cc4555254763a8f449691c1b0 /runtime/stack_map.h
parent5c8cc64b5f1580faf510f27527e7e22987174963 (diff)
JIT baseline: trigger optimized compilation on hotness threshold.
- Add a new hotness count in the ProfilingInfo to not conflict with interpreter hotness which may use it for OSR. - Add a baseline flag in the OatQuickMethodHeader to identify baseline compiled methods. - Add a -Xusetieredjit flag to experiment and test. Bug: 119800099 Test: test.py with Xusetieredjit to true Change-Id: I8512853f869f1312e3edc60bf64413dee9143c52
Diffstat (limited to 'runtime/stack_map.h')
-rw-r--r--runtime/stack_map.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/runtime/stack_map.h b/runtime/stack_map.h
index 598f3e4473..2065a79dd5 100644
--- a/runtime/stack_map.h
+++ b/runtime/stack_map.h
@@ -429,6 +429,10 @@ class CodeInfo {
return (*code_info_data & kHasInlineInfo) != 0;
}
+ ALWAYS_INLINE static bool IsBaseline(const uint8_t* code_info_data) {
+ return (*code_info_data & kIsBaseline) != 0;
+ }
+
private:
// Scan backward to determine dex register locations at given stack map.
void DecodeDexRegisterMap(uint32_t stack_map_index,
@@ -472,6 +476,7 @@ class CodeInfo {
enum Flags {
kHasInlineInfo = 1 << 0,
+ kIsBaseline = 1 << 1,
};
// The CodeInfo starts with sequence of variable-length bit-encoded integers.