Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions runtime/oti/j9consts.h
Original file line number Diff line number Diff line change
Expand Up @@ -376,6 +376,7 @@ extern "C" {
#define J9_EXTENDED_RUNTIME3_MODULE_PACKAGES_INITIALIZED 0x8
#define J9_EXTENDED_RUNTIME3_DISCLAIM_ROM_CLASS_MEMORY 0x10
#define J9_EXTENDED_RUNTIME3_DISCLAIM_RAM_CLASS_MEMORY 0x20
#define J9_EXTENDED_RUNTIME3_USE_DEBUG_LOCAL_MAP 0x40

#define J9_OBJECT_HEADER_AGE_DEFAULT 0xA /* OBJECT_HEADER_AGE_DEFAULT */
#define J9_OBJECT_HEADER_SHAPE_MASK 0xE /* OBJECT_HEADER_SHAPE_MASK */
Expand Down
2 changes: 2 additions & 0 deletions runtime/oti/jvminit.h
Original file line number Diff line number Diff line change
Expand Up @@ -415,6 +415,8 @@ enum INIT_STAGE {
#define VMOPT_XXNOCPULOADCOMPATIBILITY "-XX:-CpuLoadCompatibility"
#define VMOPT_XXENABLEEXTENDEDHCR "-XX:+EnableExtendedHCR"
#define VMOPT_XXDISABLEEXTENDEDHCR "-XX:-EnableExtendedHCR"
#define VMOPT_XXUSEDEBUGLOCALMAP "-XX:+UseDebugLocalMap"
#define VMOPT_XXNOUSEDEBUGLOCALMAP "-XX:-UseDebugLocalMap"

#if defined(J9VM_ZOS_3164_INTEROPERABILITY)
#define VMOPT_XXENABLE3164INTEROPERABILITY "-XX:+Enable3164Interoperability"
Expand Down
14 changes: 14 additions & 0 deletions runtime/vm/jvminit.c
Original file line number Diff line number Diff line change
Expand Up @@ -4474,6 +4474,16 @@ processVMArgsFromFirstToLast(J9JavaVM * vm)
}
}

{
IDATA useDebugLocalMap = FIND_AND_CONSUME_VMARG(EXACT_MATCH, VMOPT_XXUSEDEBUGLOCALMAP, NULL);
IDATA noUseDebugLocalMap = FIND_AND_CONSUME_VMARG(EXACT_MATCH, VMOPT_XXNOUSEDEBUGLOCALMAP, NULL);
if (useDebugLocalMap > noUseDebugLocalMap) {
vm->extendedRuntimeFlags3 |= J9_EXTENDED_RUNTIME3_USE_DEBUG_LOCAL_MAP;
} else if (useDebugLocalMap < noUseDebugLocalMap) {
vm->extendedRuntimeFlags3 &= ~J9_EXTENDED_RUNTIME3_USE_DEBUG_LOCAL_MAP;
}
}

if (FIND_AND_CONSUME_VMARG(EXACT_MATCH, VMOPT_XXKEEPJNIIDS, NULL) != -1) {
vm->extendedRuntimeFlags2 |= J9_EXTENDED_RUNTIME2_ALWAYS_KEEP_JNI_IDS;
}
Expand Down Expand Up @@ -7971,6 +7981,10 @@ protectedInitializeJavaVM(J9PortLibrary* portLibrary, void * userData)
}
#endif

if (J9_ARE_ANY_BITS_SET(vm->extendedRuntimeFlags3, J9_EXTENDED_RUNTIME3_USE_DEBUG_LOCAL_MAP)) {
installDebugLocalMapper(vm);
}

initializeInitialMethods(vm);

if (JNI_OK != (stageRC = runInitializationStage(vm, ABOUT_TO_BOOTSTRAP))) {
Expand Down