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
diff --git a/runtime/jit/profiling_info.h b/runtime/jit/profiling_info.h
index d4dc498..ada1036 100644
--- a/runtime/jit/profiling_info.h
+++ b/runtime/jit/profiling_info.h
@@ -126,9 +126,18 @@
         (current_inline_uses_ > 0);
   }
 
+  static constexpr MemberOffset BaselineHotnessCountOffset() {
+    return MemberOffset(OFFSETOF_MEMBER(ProfilingInfo, baseline_hotness_count_));
+  }
+
  private:
   ProfilingInfo(ArtMethod* method, const std::vector<uint32_t>& entries);
 
+  // Hotness count for methods compiled with the JIT baseline compiler. Once
+  // a threshold is hit (currentily the maximum value of uint16_t), we will
+  // JIT compile optimized the method.
+  uint16_t baseline_hotness_count_;
+
   // Method this profiling info is for.
   // Not 'const' as JVMTI introduces obsolete methods that we implement by creating new ArtMethods.
   // See JitCodeCache::MoveObsoleteMethod.