diff a/src/hotspot/share/runtime/globals.hpp b/src/hotspot/share/runtime/globals.hpp
--- a/src/hotspot/share/runtime/globals.hpp
+++ b/src/hotspot/share/runtime/globals.hpp
@@ -126,10 +126,15 @@
                                                                             \
   product(bool, UseCompressedClassPointers, true,                           \
           "Use 32-bit class pointers in 64-bit VM. "                        \
           "lp64_product means flag is always constant in 32 bit VM")        \
                                                                             \
+  /* Leyden */                                                              \
+  product(bool, UseCompatibleCompressedOops, false,                         \
+          "Always use HeapBasedNarrowOop mode, so that AOT code can be "    \
+          "always work regardless of runtime heap range")                   \
+                                                                            \
   product(int, ObjectAlignmentInBytes, 8,                                   \
           "Default object alignment in bytes, 8 is minimum")                \
           range(8, 256)                                                     \
           constraint(ObjectAlignmentInBytesConstraintFunc, AtParse)
 
@@ -1013,15 +1018,15 @@
   product(bool, LogVMOutput, false, DIAGNOSTIC,                             \
           "Save VM output to LogFile")                                      \
                                                                             \
   product(ccstr, LogFile, nullptr, DIAGNOSTIC,                              \
           "If LogVMOutput or LogCompilation is on, save VM output to "      \
-          "this file [default: ./hotspot_pid%p.log] (%p replaced with pid)")\
+          "this file [default: ./hotspot_%p.log] (%p replaced with pidNNN)")\
                                                                             \
   product(ccstr, ErrorFile, nullptr,                                        \
           "If an error occurs, save the error data to this file "           \
-          "[default: ./hs_err_pid%p.log] (%p replaced with pid)")           \
+          "[default: ./hs_err_%p.log] (%p replaced with pidNNN)")           \
                                                                             \
   product(bool, ExtensiveErrorReports,                                      \
           PRODUCT_ONLY(false) NOT_PRODUCT(true),                            \
           "Error reports are more extensive.")                              \
                                                                             \
@@ -1137,16 +1142,23 @@
                                                                             \
   product_pd(bool, PreferInterpreterNativeStubs,                            \
           "Use always interpreter stubs for native methods invoked via "    \
           "interpreter")                                                    \
                                                                             \
-  develop(bool, CountBytecodes, false,                                      \
+  product(bool, CountBytecodes, false, DIAGNOSTIC,                          \
           "Count number of bytecodes executed")                             \
                                                                             \
-  develop(bool, PrintBytecodeHistogram, false,                              \
+  product(bool, CountBytecodesPerThread, false, DIAGNOSTIC,                 \
+          "Count number of bytecodes executed per thread")                  \
+                                                                            \
+  product(bool, PrintBytecodeHistogram, false, DIAGNOSTIC,                  \
           "Print histogram of the executed bytecodes")                      \
                                                                             \
+  product(double, PrintBytecodeHistogramCutoff, 0.01,                       \
+          "Print cutoff for histogram of the executed bytecodes")           \
+          range(0.0, 100.0)                                                 \
+                                                                            \
   develop(bool, PrintBytecodePairHistogram, false,                          \
           "Print histogram of the executed bytecode pairs")                 \
                                                                             \
   product(bool, PrintSignatureHandlers, false, DIAGNOSTIC,                  \
           "Print code generated for native method signature handlers")      \
@@ -1182,10 +1194,13 @@
   product(intx, ProfileMaturityPercentage, 20,                              \
           "number of method invocations/branches (expressed as % of "       \
           "CompileThreshold) before using the method's profile")            \
           range(0, 100)                                                     \
                                                                             \
+  product(bool, ForceProfiling, false, DIAGNOSTIC,                          \
+          "Eagerly allocate MDOs")                                          \
+                                                                            \
   product(bool, PrintMethodData, false, DIAGNOSTIC,                         \
           "Print the results of +ProfileInterpreter at end of run")         \
                                                                             \
   develop(bool, VerifyDataPointer, trueInDebug,                             \
           "Verify the method data pointer during interpreter profiling")    \
@@ -1719,11 +1734,11 @@
           constraint(PerfDataSamplingIntervalFunc, AfterErgo)               \
                                                                             \
   product(bool, PerfDisableSharedMem, false,                                \
           "Store performance data in standard memory")                      \
                                                                             \
-  product(int, PerfDataMemorySize, 32*K,                                    \
+  product(int, PerfDataMemorySize, 64*K,                                    \
           "Size of performance data memory region. Will be rounded "        \
           "up to a multiple of the native os page size.")                   \
           range(128, 32*64*K)                                               \
                                                                             \
   product(int, PerfMaxStringConstLength, 1024,                              \
@@ -1966,10 +1981,22 @@
           "the platform supports that. Lower values will reclaim memory "   \
           "more eagerly at the cost of higher overhead. A value of 0 "      \
           "(default) disables native heap trimming.")                       \
           range(0, UINT_MAX)                                                \
                                                                             \
+  product(bool, ProfileVMLocks, false, DIAGNOSTIC,                          \
+          "Profile VM locks usage on main thread")                          \
+                                                                            \
+  product(bool, ProfileVMCalls, false, DIAGNOSTIC,                          \
+          "Profile VM calls on main thread")                                \
+                                                                            \
+  product(bool, ProfileVMOps, true, DIAGNOSTIC,                             \
+          "Profile VM operations on main thread")                           \
+                                                                            \
+  product(bool, ProfileRuntimeCalls, false, DIAGNOSTIC,                     \
+          "Profile calls into VM runtime on main thread")                   \
+                                                                            \
   develop(bool, SimulateFullAddressSpace, false,                            \
           "Simulates a very populated, fragmented address space; no "       \
           "targeted reservations will succeed.")                            \
                                                                             \
   product(bool, ProfileExceptionHandlers, true,                             \
@@ -1978,10 +2005,13 @@
   product(bool, AlwaysRecordEvolDependencies, true, EXPERIMENTAL,           \
                 "Unconditionally record nmethod dependencies on class "     \
                 "rewriting/transformation independently of the JVMTI "      \
                 "can_{retransform/redefine}_classes capabilities.")         \
                                                                             \
+  product(bool, TraceThreadTime, false,                                     \
+          "Enable tracing of thread time in Perf counters")                 \
+                                                                            \
   product(bool, UseSecondarySupersCache, true, DIAGNOSTIC,                  \
                 "Use secondary supers cache during subtype checks.")        \
                                                                             \
   product(bool, UseSecondarySupersTable, false, DIAGNOSTIC,                 \
                 "Use hash table to lookup secondary supers.")               \
@@ -1990,10 +2020,11 @@
           "Check that linear and hashed secondary lookups return the same result.") \
                                                                             \
   product(bool, StressSecondarySupers, false, DIAGNOSTIC,                   \
           "Use a terrible hash function in order to generate many collisions.") \
 
+
 // end of RUNTIME_FLAGS
 
 DECLARE_FLAGS(LP64_RUNTIME_FLAGS)
 DECLARE_ARCH_FLAGS(ARCH_FLAGS)
 DECLARE_FLAGS(RUNTIME_FLAGS)
