Skip to content

Commit

Permalink
Merge pull request #8316 from dnakamura/atomic_free
Browse files Browse the repository at this point in the history
CMake: Update atomic configuration
  • Loading branch information
DanHeidinga committed Mar 5, 2020
2 parents 32a6de1 + ee4ef13 commit 8acaaba
Show file tree
Hide file tree
Showing 9 changed files with 25 additions and 6 deletions.
8 changes: 4 additions & 4 deletions buildspecs/j9.flags
Original file line number Diff line number Diff line change
Expand Up @@ -999,14 +999,14 @@ all data is stored in their own region. It additionaly reduces footprint, mainly
<description>DEBUGGING FEATURE. Determines if the interpreter produces debug information at every bytecode.</description>
<ifRemoved>No full trace available.</ifRemoved>
</flag>
<flag id="interp_updateVMCTracing">
<description>Debug mode for tracing uses of updateVMStruct</description>
<ifRemoved>No tracing of updateVMStruct helpers</ifRemoved>
</flag>
<flag id="interp_twoPassExclusive">
<description>Exclusive VM access - Set halt bit in one pass, count responders in another pass</description>
<ifRemoved>Set and count in a single pass</ifRemoved>
</flag>
<flag id="interp_updateVMCTracing">
<description>Debug mode for tracing uses of updateVMStruct</description>
<ifRemoved>No tracing of updateVMStruct helpers</ifRemoved>
</flag>
<flag id="interp_useUnsafeHelper">
<description>If set, use helper functions in UnsafeAPI to access native memory</description>
<ifRemoved></ifRemoved>
Expand Down
3 changes: 3 additions & 0 deletions runtime/cmake/caches/aix_ppc-64.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,9 @@ set(OMR_GC_TLH_PREFETCH_FTA OFF CACHE BOOL "")
set(J9VM_PORT_RUNTIME_INSTRUMENTATION ON CACHE BOOL "")
set(J9VM_MODULE_CODEGEN_PPC ON CACHE BOOL "")
set(J9VM_GC_IDLE_HEAP_MANAGER OFF CACHE BOOL "")
set(J9VM_INTERP_ATOMIC_FREE_JNI ON CACHE BOOL "")
set(J9VM_INTERP_ATOMIC_FREE_JNI_USES_FLUSH ON CACHE BOOL "")
set(J9VM_INTERP_TWO_PASS_EXCLUSIVE ON CACHE BOOL "")
set(J9VM_OPT_SWITCH_STACKS_FOR_SIGNAL_HANDLER OFF CACHE BOOL "")
set(J9VM_THR_ASYNC_NAME_UPDATE OFF CACHE BOOL "")

Expand Down
3 changes: 3 additions & 0 deletions runtime/cmake/caches/linux_ppc-64_le_gcc.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,9 @@ set(J9VM_PORT_RUNTIME_INSTRUMENTATION ON CACHE BOOL "")
set(J9VM_MODULE_CODEGEN_PPC ON CACHE BOOL "")
set(J9VM_MODULE_THRTRACE ON CACHE BOOL "")
set(J9VM_GC_IDLE_HEAP_MANAGER OFF CACHE BOOL "")
set(J9VM_INTERP_ATOMIC_FREE_JNI ON CACHE BOOL "")
set(J9VM_INTERP_ATOMIC_FREE_JNI_USES_FLUSH ON CACHE BOOL "")
set(J9VM_INTERP_TWO_PASS_EXCLUSIVE ON CACHE BOOL "")
set(J9VM_OPT_SWITCH_STACKS_FOR_SIGNAL_HANDLER OFF CACHE BOOL "")
set(J9VM_PORT_RUNTIME_INSTRUMENTATION ON CACHE BOOL "")

Expand Down
3 changes: 3 additions & 0 deletions runtime/cmake/caches/linux_x86-64.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@ set(J9VM_MODULE_JIT_IA32 ON CACHE BOOL "")
set(J9VM_MODULE_JITRT_IA32 ON CACHE BOOL "")
set(J9VM_MODULE_MASM2GAS ON CACHE BOOL "")
set(J9VM_GC_IDLE_HEAP_MANAGER ON CACHE BOOL "")
set(J9VM_INTERP_ATOMIC_FREE_JNI ON CACHE BOOL "")
set(J9VM_INTERP_ATOMIC_FREE_JNI_USES_FLUSH ON CACHE BOOL "")
set(J9VM_INTERP_TWO_PASS_EXCLUSIVE ON CACHE BOOL "")
set(J9VM_OPT_SWITCH_STACKS_FOR_SIGNAL_HANDLER ON CACHE BOOL "")

set(OMR_GC_IDLE_HEAP_MANAGER ON CACHE BOOL "")
Expand Down
3 changes: 3 additions & 0 deletions runtime/cmake/caches/osx_x86-64.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,9 @@ set(J9VM_MODULE_JIT_IA32 ON CACHE BOOL "")
set(J9VM_MODULE_JITRT_IA32 ON CACHE BOOL "")
set(J9VM_MODULE_MASM2GAS ON CACHE BOOL "")
set(J9VM_GC_IDLE_HEAP_MANAGER ON CACHE BOOL "")
set(J9VM_INTERP_ATOMIC_FREE_JNI ON CACHE BOOL "")
set(J9VM_INTERP_ATOMIC_FREE_JNI_USES_FLUSH ON CACHE BOOL "")
set(J9VM_INTERP_TWO_PASS_EXCLUSIVE ON CACHE BOOL "")
set(J9VM_OPT_SWITCH_STACKS_FOR_SIGNAL_HANDLER ON CACHE BOOL "")
set(OMR_PORT_NUMA_SUPPORT ON CACHE BOOL "")

Expand Down
3 changes: 3 additions & 0 deletions runtime/cmake/caches/win_x86-64.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,9 @@ set(J9VM_ENV_LITTLE_ENDIAN ON CACHE BOOL "")
set(J9VM_ENV_HAS_FPU OFF CACHE INTERNAL "")
set(OMR_GC_IDLE_HEAP_MANAGER OFF CACHE BOOL "")
set(J9VM_GC_IDLE_HEAP_MANAGER OFF CACHE BOOL "")
set(J9VM_INTERP_ATOMIC_FREE_JNI ON CACHE BOOL "")
set(J9VM_INTERP_ATOMIC_FREE_JNI_USES_FLUSH ON CACHE BOOL "")
set(J9VM_INTERP_TWO_PASS_EXCLUSIVE ON CACHE BOOL "")
set(J9VM_INTERP_USE_UNSAFE_HELPER OFF CACHE BOOL "")
set(J9VM_MODULE_GDB OFF CACHE BOOL "")
set(J9VM_MODULE_GDB_PLUGIN OFF CACHE BOOL "")
Expand Down
3 changes: 2 additions & 1 deletion runtime/cmake/options.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@ j9vm_shadowed_option(J9VM_GC_VLHGC "Enables the Very Large Heap Garbage Collect
option(J9VM_INTERP_AOT_COMPILE_SUPPORT "Controls if the AOT compilation support is included in the VM")
option(J9VM_INTERP_AOT_RUNTIME_SUPPORT "Controls if the AOT runtime support is included in the VM")
option(J9VM_INTERP_ATOMIC_FREE_JNI "Use the new atomic-free JNI support")
option(J9VM_INTERP_ATOMIC_FREE_JNI_USES_FLUSH "Atomic free uses FlushProcessWriteBuffers instead of barriers")
option(J9VM_INTERP_BYTECODE_PREVERIFICATION "Does this VM support 1st pass bytecode verification (able to dynamically generate pre-verify data)")
option(J9VM_INTERP_BYTECODE_VERIFICATION "Does this VM support 2nd pass bytecode verification (pre-verify data in .jxe only)")

Expand Down Expand Up @@ -105,7 +106,7 @@ option(J9VM_INTERP_ROMABLE_AOT_SUPPORT "ROMable AOT Support for TJ Watson")


option(J9VM_INTERP_TRACING "DEBUGGING FEATURE. Determines if the interpreter produces debug information at every bytecode.")

option(J9VM_INTERP_TWO_PASS_EXCLUSIVE "Exclusive VM access - Set halt bit in one pass, count responders in another pass")

option(J9VM_INTERP_USE_SPLIT_SIDE_TABLES "Use split side tables for handling constant pool entry shared between multiple invoke bytecodes")
option(J9VM_INTERP_USE_UNSAFE_HELPER "If set, use helper functions in UnsafeAPI to access native memory")
Expand Down
2 changes: 2 additions & 0 deletions runtime/include/j9cfg.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,7 @@ extern "C" {
#cmakedefine J9VM_INTERP_AOT_COMPILE_SUPPORT
#cmakedefine J9VM_INTERP_AOT_RUNTIME_SUPPORT
#cmakedefine J9VM_INTERP_ATOMIC_FREE_JNI
#cmakedefine J9VM_INTERP_ATOMIC_FREE_JNI_USES_FLUSH
#cmakedefine J9VM_INTERP_BYTECODE_PREVERIFICATION
#cmakedefine J9VM_INTERP_BYTECODE_VERIFICATION
#cmakedefine J9VM_INTERP_COMPRESSED_OBJECT_HEADER
Expand All @@ -173,6 +174,7 @@ extern "C" {
#cmakedefine J9VM_INTERP_SIG_QUIT_THREAD_USES_SEMAPHORES
#cmakedefine J9VM_INTERP_SMALL_MONITOR_SLOT
#cmakedefine J9VM_INTERP_TRACING
#cmakedefine J9VM_INTERP_TWO_PASS_EXCLUSIVE
#cmakedefine J9VM_INTERP_UPDATE_VMCTRACING
#cmakedefine J9VM_INTERP_USE_SPLIT_SIDE_TABLES
#cmakedefine J9VM_INTERP_USE_UNSAFE_HELPER
Expand Down
3 changes: 2 additions & 1 deletion runtime/vm/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
################################################################################
# Copyright (c) 2017, 2019 IBM Corp. and others
# Copyright (c) 2017, 2020 IBM Corp. and others
#
# This program and the accompanying materials are made available under
# the terms of the Eclipse Public License 2.0 which accompanies this
Expand Down Expand Up @@ -55,6 +55,7 @@ add_library(j9vm SHARED
FastJNI_java_lang_Throwable.cpp
FastJNI_sun_misc_Unsafe.cpp
findmethod.c
FlushProcessWriteBuffers.cpp
gphandle.c
growstack.cpp
guardedstorage.c
Expand Down

0 comments on commit 8acaaba

Please sign in to comment.