mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 23:04:50 +02:00
Merge
This commit is contained in:
commit
a68c69fd65
14 changed files with 63 additions and 59 deletions
|
@ -168,12 +168,12 @@ endif
|
||||||
# conversions which might affect the values. To avoid that, we need to turn
|
# conversions which might affect the values. To avoid that, we need to turn
|
||||||
# it off explicitly.
|
# it off explicitly.
|
||||||
ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
|
ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
|
||||||
ACCEPTABLE_WARNINGS = -Wpointer-arith -Wsign-compare
|
WARNING_FLAGS = -Wpointer-arith -Wsign-compare -Wundef
|
||||||
else
|
else
|
||||||
ACCEPTABLE_WARNINGS = -Wpointer-arith -Wconversion -Wsign-compare
|
WARNING_FLAGS = -Wpointer-arith -Wconversion -Wsign-compare -Wundef
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) $(ACCEPTABLE_WARNINGS)
|
CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) $(WARNING_FLAGS)
|
||||||
# Special cases
|
# Special cases
|
||||||
CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))
|
CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))
|
||||||
# XXXDARWIN: for _dyld_bind_fully_image_containing_address
|
# XXXDARWIN: for _dyld_bind_fully_image_containing_address
|
||||||
|
|
|
@ -69,7 +69,7 @@ ifeq ($(INCLUDE_CDS), false)
|
||||||
CXXFLAGS += -DINCLUDE_CDS=0
|
CXXFLAGS += -DINCLUDE_CDS=0
|
||||||
CFLAGS += -DINCLUDE_CDS=0
|
CFLAGS += -DINCLUDE_CDS=0
|
||||||
|
|
||||||
Src_Files_EXCLUDE += metaspaceShared.cpp
|
Src_Files_EXCLUDE += filemap.cpp metaspaceShared.cpp
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(INCLUDE_ALL_GCS), false)
|
ifeq ($(INCLUDE_ALL_GCS), false)
|
||||||
|
|
|
@ -131,12 +131,12 @@ WARNINGS_ARE_ERRORS = -Werror
|
||||||
# conversions which might affect the values. To avoid that, we need to turn
|
# conversions which might affect the values. To avoid that, we need to turn
|
||||||
# it off explicitly.
|
# it off explicitly.
|
||||||
ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
|
ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0"
|
||||||
ACCEPTABLE_WARNINGS = -Wpointer-arith -Wsign-compare
|
WARNING_FLAGS = -Wpointer-arith -Wsign-compare -Wundef
|
||||||
else
|
else
|
||||||
ACCEPTABLE_WARNINGS = -Wpointer-arith -Wconversion -Wsign-compare
|
WARNING_FLAGS = -Wpointer-arith -Wconversion -Wsign-compare -Wundef
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) $(ACCEPTABLE_WARNINGS)
|
CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) $(WARNING_FLAGS)
|
||||||
# Special cases
|
# Special cases
|
||||||
CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))
|
CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))
|
||||||
|
|
||||||
|
|
|
@ -118,8 +118,8 @@ endif
|
||||||
# Compiler warnings are treated as errors
|
# Compiler warnings are treated as errors
|
||||||
WARNINGS_ARE_ERRORS = -Werror
|
WARNINGS_ARE_ERRORS = -Werror
|
||||||
# Enable these warnings. See 'info gcc' about details on these options
|
# Enable these warnings. See 'info gcc' about details on these options
|
||||||
ADDITIONAL_WARNINGS = -Wpointer-arith -Wconversion -Wsign-compare
|
WARNING_FLAGS = -Wpointer-arith -Wconversion -Wsign-compare -Wundef
|
||||||
CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) $(ADDITIONAL_WARNINGS)
|
CFLAGS_WARN/DEFAULT = $(WARNINGS_ARE_ERRORS) $(WARNING_FLAGS)
|
||||||
# Special cases
|
# Special cases
|
||||||
CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))
|
CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))
|
||||||
|
|
||||||
|
|
|
@ -356,7 +356,7 @@ frame frame::sender_for_entry_frame(RegisterMap* map) const {
|
||||||
// Verifies the calculated original PC of a deoptimization PC for the
|
// Verifies the calculated original PC of a deoptimization PC for the
|
||||||
// given unextended SP. The unextended SP might also be the saved SP
|
// given unextended SP. The unextended SP might also be the saved SP
|
||||||
// for MethodHandle call sites.
|
// for MethodHandle call sites.
|
||||||
#if ASSERT
|
#ifdef ASSERT
|
||||||
void frame::verify_deopt_original_pc(nmethod* nm, intptr_t* unextended_sp, bool is_method_handle_return) {
|
void frame::verify_deopt_original_pc(nmethod* nm, intptr_t* unextended_sp, bool is_method_handle_return) {
|
||||||
frame fr;
|
frame fr;
|
||||||
|
|
||||||
|
|
|
@ -170,7 +170,7 @@
|
||||||
return (intptr_t*) addr_at(offset);
|
return (intptr_t*) addr_at(offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if ASSERT
|
#ifdef ASSERT
|
||||||
// Used in frame::sender_for_{interpreter,compiled}_frame
|
// Used in frame::sender_for_{interpreter,compiled}_frame
|
||||||
static void verify_deopt_original_pc( nmethod* nm, intptr_t* unextended_sp, bool is_method_handle_return = false);
|
static void verify_deopt_original_pc( nmethod* nm, intptr_t* unextended_sp, bool is_method_handle_return = false);
|
||||||
static void verify_deopt_mh_original_pc(nmethod* nm, intptr_t* unextended_sp) {
|
static void verify_deopt_mh_original_pc(nmethod* nm, intptr_t* unextended_sp) {
|
||||||
|
|
|
@ -2375,7 +2375,7 @@ class LIR_OpVisitState: public StackObj {
|
||||||
// collects all register operands of the instruction
|
// collects all register operands of the instruction
|
||||||
void visit(LIR_Op* op);
|
void visit(LIR_Op* op);
|
||||||
|
|
||||||
#if ASSERT
|
#ifdef ASSERT
|
||||||
// check that an operation has no operands
|
// check that an operation has no operands
|
||||||
bool no_operands(LIR_Op* op);
|
bool no_operands(LIR_Op* op);
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -2540,7 +2540,7 @@ void ciTypeFlow::build_loop_tree(Block* blk) {
|
||||||
} else if (innermost->head() == blk) {
|
} else if (innermost->head() == blk) {
|
||||||
// If loop header, complete the tree pointers
|
// If loop header, complete the tree pointers
|
||||||
if (blk->loop() != innermost) {
|
if (blk->loop() != innermost) {
|
||||||
#if ASSERT
|
#ifdef ASSERT
|
||||||
assert(blk->loop()->head() == innermost->head(), "same head");
|
assert(blk->loop()->head() == innermost->head(), "same head");
|
||||||
Loop* dl;
|
Loop* dl;
|
||||||
for (dl = innermost; dl != NULL && dl != blk->loop(); dl = dl->parent());
|
for (dl = innermost; dl != NULL && dl != blk->loop(); dl = dl->parent());
|
||||||
|
|
|
@ -195,7 +195,7 @@ void CompressedWriteStream::write_int_mb(jint value) {
|
||||||
// for this block (a matching directive turns it back on later).
|
// for this block (a matching directive turns it back on later).
|
||||||
// These directives can be removed once the MS VS.NET 2005
|
// These directives can be removed once the MS VS.NET 2005
|
||||||
// compiler stack overflow is fixed.
|
// compiler stack overflow is fixed.
|
||||||
#if _MSC_VER >=1400 && !defined(_WIN64)
|
#if defined(_MSC_VER) && _MSC_VER >=1400 && !defined(_WIN64)
|
||||||
#pragma optimize("", off)
|
#pragma optimize("", off)
|
||||||
#pragma warning(disable: 4748)
|
#pragma warning(disable: 4748)
|
||||||
#endif
|
#endif
|
||||||
|
@ -276,7 +276,7 @@ void test_compressed_stream(int trace) {
|
||||||
guarantee(fails == 0, "test failures");
|
guarantee(fails == 0, "test failures");
|
||||||
}
|
}
|
||||||
|
|
||||||
#if _MSC_VER >=1400 && !defined(_WIN64)
|
#if defined(_MSC_VER) &&_MSC_VER >=1400 && !defined(_WIN64)
|
||||||
#pragma warning(default: 4748)
|
#pragma warning(default: 4748)
|
||||||
#pragma optimize("", on)
|
#pragma optimize("", on)
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1310,11 +1310,6 @@ void ConcurrentMark::checkpointRootsFinal(bool clear_all_soft_refs) {
|
||||||
_markStack.expand();
|
_markStack.expand();
|
||||||
}
|
}
|
||||||
|
|
||||||
#if VERIFY_OBJS_PROCESSED
|
|
||||||
_scan_obj_cl.objs_processed = 0;
|
|
||||||
ThreadLocalObjQueue::objs_enqueued = 0;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Statistics
|
// Statistics
|
||||||
double now = os::elapsedTime();
|
double now = os::elapsedTime();
|
||||||
_remark_mark_times.add((mark_work_end - start) * 1000.0);
|
_remark_mark_times.add((mark_work_end - start) * 1000.0);
|
||||||
|
@ -2555,17 +2550,6 @@ void ConcurrentMark::checkpointRootsFinalWork() {
|
||||||
guarantee(satb_mq_set.completed_buffers_num() == 0, "invariant");
|
guarantee(satb_mq_set.completed_buffers_num() == 0, "invariant");
|
||||||
|
|
||||||
print_stats();
|
print_stats();
|
||||||
|
|
||||||
#if VERIFY_OBJS_PROCESSED
|
|
||||||
if (_scan_obj_cl.objs_processed != ThreadLocalObjQueue::objs_enqueued) {
|
|
||||||
gclog_or_tty->print_cr("Processed = %d, enqueued = %d.",
|
|
||||||
_scan_obj_cl.objs_processed,
|
|
||||||
ThreadLocalObjQueue::objs_enqueued);
|
|
||||||
guarantee(_scan_obj_cl.objs_processed ==
|
|
||||||
ThreadLocalObjQueue::objs_enqueued,
|
|
||||||
"Different number of objs processed and enqueued.");
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef PRODUCT
|
#ifndef PRODUCT
|
||||||
|
|
|
@ -112,12 +112,19 @@ public:
|
||||||
char* region_base(int i) { return _header._space[i]._base; }
|
char* region_base(int i) { return _header._space[i]._base; }
|
||||||
struct FileMapHeader* header() { return &_header; }
|
struct FileMapHeader* header() { return &_header; }
|
||||||
|
|
||||||
static void set_current_info(FileMapInfo* info) { _current_info = info; }
|
static void set_current_info(FileMapInfo* info) {
|
||||||
static FileMapInfo* current_info() { return _current_info; }
|
CDS_ONLY(_current_info = info;)
|
||||||
|
}
|
||||||
|
|
||||||
|
static FileMapInfo* current_info() {
|
||||||
|
CDS_ONLY(return _current_info;)
|
||||||
|
NOT_CDS(return NULL;)
|
||||||
|
}
|
||||||
|
|
||||||
static void assert_mark(bool check);
|
static void assert_mark(bool check);
|
||||||
|
|
||||||
// File manipulation.
|
// File manipulation.
|
||||||
bool initialize();
|
bool initialize() NOT_CDS_RETURN_(false);
|
||||||
bool open_for_read();
|
bool open_for_read();
|
||||||
void open_for_write();
|
void open_for_write();
|
||||||
void write_header();
|
void write_header();
|
||||||
|
@ -141,7 +148,7 @@ public:
|
||||||
void fail_continue(const char *msg, ...);
|
void fail_continue(const char *msg, ...);
|
||||||
|
|
||||||
// Return true if given address is in the mapped shared space.
|
// Return true if given address is in the mapped shared space.
|
||||||
bool is_in_shared_space(const void* p);
|
bool is_in_shared_space(const void* p) NOT_CDS_RETURN_(false);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // SHARE_VM_MEMORY_FILEMAP_HPP
|
#endif // SHARE_VM_MEMORY_FILEMAP_HPP
|
||||||
|
|
|
@ -890,7 +890,7 @@ void JvmtiSuspendControl::print() {
|
||||||
|
|
||||||
tty->print("Suspended Threads: [");
|
tty->print("Suspended Threads: [");
|
||||||
for (JavaThread *thread = Threads::first(); thread != NULL; thread = thread->next()) {
|
for (JavaThread *thread = Threads::first(); thread != NULL; thread = thread->next()) {
|
||||||
#if JVMTI_TRACE
|
#ifdef JVMTI_TRACE
|
||||||
const char *name = JvmtiTrace::safe_get_thread_name(thread);
|
const char *name = JvmtiTrace::safe_get_thread_name(thread);
|
||||||
#else
|
#else
|
||||||
const char *name = "";
|
const char *name = "";
|
||||||
|
|
|
@ -43,10 +43,10 @@
|
||||||
|
|
||||||
// Support tracing except in product build on the client compiler
|
// Support tracing except in product build on the client compiler
|
||||||
#ifndef PRODUCT
|
#ifndef PRODUCT
|
||||||
#define JVMTI_TRACE 1
|
#define JVMTI_TRACE
|
||||||
#else
|
#else
|
||||||
#ifdef COMPILER2
|
#ifdef COMPILER2
|
||||||
#define JVMTI_TRACE 1
|
#define JVMTI_TRACE
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -2273,10 +2273,12 @@ jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args,
|
||||||
}
|
}
|
||||||
#if !INCLUDE_JVMTI
|
#if !INCLUDE_JVMTI
|
||||||
if ((strcmp(name, "hprof") == 0) || (strcmp(name, "jdwp") == 0)) {
|
if ((strcmp(name, "hprof") == 0) || (strcmp(name, "jdwp") == 0)) {
|
||||||
warning("profiling and debugging agents are not supported in this VM");
|
jio_fprintf(defaultStream::error_stream(),
|
||||||
} else
|
"Profiling and debugging agents are not supported in this VM\n");
|
||||||
|
return JNI_ERR;
|
||||||
|
}
|
||||||
#endif // !INCLUDE_JVMTI
|
#endif // !INCLUDE_JVMTI
|
||||||
add_init_library(name, options);
|
add_init_library(name, options);
|
||||||
}
|
}
|
||||||
// -agentlib and -agentpath
|
// -agentlib and -agentpath
|
||||||
} else if (match_option(option, "-agentlib:", &tail) ||
|
} else if (match_option(option, "-agentlib:", &tail) ||
|
||||||
|
@ -2293,16 +2295,19 @@ jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args,
|
||||||
}
|
}
|
||||||
#if !INCLUDE_JVMTI
|
#if !INCLUDE_JVMTI
|
||||||
if ((strcmp(name, "hprof") == 0) || (strcmp(name, "jdwp") == 0)) {
|
if ((strcmp(name, "hprof") == 0) || (strcmp(name, "jdwp") == 0)) {
|
||||||
warning("profiling and debugging agents are not supported in this VM");
|
jio_fprintf(defaultStream::error_stream(),
|
||||||
} else
|
"Profiling and debugging agents are not supported in this VM\n");
|
||||||
|
return JNI_ERR;
|
||||||
|
}
|
||||||
#endif // !INCLUDE_JVMTI
|
#endif // !INCLUDE_JVMTI
|
||||||
add_init_agent(name, options, is_absolute_path);
|
add_init_agent(name, options, is_absolute_path);
|
||||||
|
|
||||||
}
|
}
|
||||||
// -javaagent
|
// -javaagent
|
||||||
} else if (match_option(option, "-javaagent:", &tail)) {
|
} else if (match_option(option, "-javaagent:", &tail)) {
|
||||||
#if !INCLUDE_JVMTI
|
#if !INCLUDE_JVMTI
|
||||||
warning("Instrumentation agents are not supported in this VM");
|
jio_fprintf(defaultStream::error_stream(),
|
||||||
|
"Instrumentation agents are not supported in this VM\n");
|
||||||
|
return JNI_ERR;
|
||||||
#else
|
#else
|
||||||
if(tail != NULL) {
|
if(tail != NULL) {
|
||||||
char *options = strcpy(NEW_C_HEAP_ARRAY(char, strlen(tail) + 1, mtInternal), tail);
|
char *options = strcpy(NEW_C_HEAP_ARRAY(char, strlen(tail) + 1, mtInternal), tail);
|
||||||
|
@ -2443,8 +2448,9 @@ jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args,
|
||||||
#if INCLUDE_FPROF
|
#if INCLUDE_FPROF
|
||||||
_has_profile = true;
|
_has_profile = true;
|
||||||
#else // INCLUDE_FPROF
|
#else // INCLUDE_FPROF
|
||||||
// do we have to exit?
|
jio_fprintf(defaultStream::error_stream(),
|
||||||
warning("Flat profiling is not supported in this VM.");
|
"Flat profiling is not supported in this VM.\n");
|
||||||
|
return JNI_ERR;
|
||||||
#endif // INCLUDE_FPROF
|
#endif // INCLUDE_FPROF
|
||||||
// -Xaprof
|
// -Xaprof
|
||||||
} else if (match_option(option, "-Xaprof", &tail)) {
|
} else if (match_option(option, "-Xaprof", &tail)) {
|
||||||
|
@ -2478,8 +2484,9 @@ jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args,
|
||||||
#if INCLUDE_MANAGEMENT
|
#if INCLUDE_MANAGEMENT
|
||||||
FLAG_SET_CMDLINE(bool, ManagementServer, true);
|
FLAG_SET_CMDLINE(bool, ManagementServer, true);
|
||||||
#else
|
#else
|
||||||
vm_exit_during_initialization(
|
jio_fprintf(defaultStream::output_stream(),
|
||||||
"-Dcom.sun.management is not supported in this VM.", NULL);
|
"-Dcom.sun.management is not supported in this VM.\n");
|
||||||
|
return JNI_ERR;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
// -Xint
|
// -Xint
|
||||||
|
@ -2492,16 +2499,10 @@ jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args,
|
||||||
} else if (match_option(option, "-Xcomp", &tail)) {
|
} else if (match_option(option, "-Xcomp", &tail)) {
|
||||||
// for testing the compiler; turn off all flags that inhibit compilation
|
// for testing the compiler; turn off all flags that inhibit compilation
|
||||||
set_mode_flags(_comp);
|
set_mode_flags(_comp);
|
||||||
|
|
||||||
// -Xshare:dump
|
// -Xshare:dump
|
||||||
} else if (match_option(option, "-Xshare:dump", &tail)) {
|
} else if (match_option(option, "-Xshare:dump", &tail)) {
|
||||||
#if !INCLUDE_CDS
|
|
||||||
vm_exit_during_initialization(
|
|
||||||
"Dumping a shared archive is not supported in this VM.", NULL);
|
|
||||||
#else
|
|
||||||
FLAG_SET_CMDLINE(bool, DumpSharedSpaces, true);
|
FLAG_SET_CMDLINE(bool, DumpSharedSpaces, true);
|
||||||
set_mode_flags(_int); // Prevent compilation, which creates objects
|
set_mode_flags(_int); // Prevent compilation, which creates objects
|
||||||
#endif
|
|
||||||
// -Xshare:on
|
// -Xshare:on
|
||||||
} else if (match_option(option, "-Xshare:on", &tail)) {
|
} else if (match_option(option, "-Xshare:on", &tail)) {
|
||||||
FLAG_SET_CMDLINE(bool, UseSharedSpaces, true);
|
FLAG_SET_CMDLINE(bool, UseSharedSpaces, true);
|
||||||
|
@ -2514,7 +2515,6 @@ jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args,
|
||||||
} else if (match_option(option, "-Xshare:off", &tail)) {
|
} else if (match_option(option, "-Xshare:off", &tail)) {
|
||||||
FLAG_SET_CMDLINE(bool, UseSharedSpaces, false);
|
FLAG_SET_CMDLINE(bool, UseSharedSpaces, false);
|
||||||
FLAG_SET_CMDLINE(bool, RequireSharedSpaces, false);
|
FLAG_SET_CMDLINE(bool, RequireSharedSpaces, false);
|
||||||
|
|
||||||
// -Xverify
|
// -Xverify
|
||||||
} else if (match_option(option, "-Xverify", &tail)) {
|
} else if (match_option(option, "-Xverify", &tail)) {
|
||||||
if (strcmp(tail, ":all") == 0 || strcmp(tail, "") == 0) {
|
if (strcmp(tail, ":all") == 0 || strcmp(tail, "") == 0) {
|
||||||
|
@ -2828,8 +2828,9 @@ SOLARIS_ONLY(
|
||||||
FLAG_SET_CMDLINE(bool, UseVMInterruptibleIO, true);
|
FLAG_SET_CMDLINE(bool, UseVMInterruptibleIO, true);
|
||||||
#if !INCLUDE_MANAGEMENT
|
#if !INCLUDE_MANAGEMENT
|
||||||
} else if (match_option(option, "-XX:+ManagementServer", &tail)) {
|
} else if (match_option(option, "-XX:+ManagementServer", &tail)) {
|
||||||
vm_exit_during_initialization(
|
jio_fprintf(defaultStream::error_stream(),
|
||||||
"ManagementServer is not supported in this VM.", NULL);
|
"ManagementServer is not supported in this VM.\n");
|
||||||
|
return JNI_ERR;
|
||||||
#endif // INCLUDE_MANAGEMENT
|
#endif // INCLUDE_MANAGEMENT
|
||||||
} else if (match_option(option, "-XX:", &tail)) { // -XX:xxxx
|
} else if (match_option(option, "-XX:", &tail)) { // -XX:xxxx
|
||||||
// Skip -XX:Flags= since that case has already been handled
|
// Skip -XX:Flags= since that case has already been handled
|
||||||
|
@ -3135,7 +3136,9 @@ jint Arguments::parse(const JavaVMInitArgs* args) {
|
||||||
#if INCLUDE_NMT
|
#if INCLUDE_NMT
|
||||||
MemTracker::init_tracking_options(tail);
|
MemTracker::init_tracking_options(tail);
|
||||||
#else
|
#else
|
||||||
warning("Native Memory Tracking is not supported in this VM");
|
jio_fprintf(defaultStream::error_stream(),
|
||||||
|
"Native Memory Tracking is not supported in this VM\n");
|
||||||
|
return JNI_ERR;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3254,6 +3257,16 @@ jint Arguments::parse(const JavaVMInitArgs* args) {
|
||||||
force_serial_gc();
|
force_serial_gc();
|
||||||
#endif // INCLUDE_ALL_GCS
|
#endif // INCLUDE_ALL_GCS
|
||||||
#if !INCLUDE_CDS
|
#if !INCLUDE_CDS
|
||||||
|
if (DumpSharedSpaces || RequireSharedSpaces) {
|
||||||
|
jio_fprintf(defaultStream::error_stream(),
|
||||||
|
"Shared spaces are not supported in this VM\n");
|
||||||
|
return JNI_ERR;
|
||||||
|
}
|
||||||
|
if (UseSharedSpaces || PrintSharedSpaces) {
|
||||||
|
warning("Shared spaces are not supported in this VM");
|
||||||
|
FLAG_SET_DEFAULT(UseSharedSpaces, false);
|
||||||
|
FLAG_SET_DEFAULT(PrintSharedSpaces, false);
|
||||||
|
}
|
||||||
no_shared_spaces();
|
no_shared_spaces();
|
||||||
#endif // INCLUDE_CDS
|
#endif // INCLUDE_CDS
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue