aboutsummaryrefslogtreecommitdiffstats
path: root/hotspot/.hg/patches/arguments-java8.patch
diff options
context:
space:
mode:
Diffstat (limited to 'hotspot/.hg/patches/arguments-java8.patch')
-rw-r--r--hotspot/.hg/patches/arguments-java8.patch57
1 files changed, 57 insertions, 0 deletions
diff --git a/hotspot/.hg/patches/arguments-java8.patch b/hotspot/.hg/patches/arguments-java8.patch
new file mode 100644
index 00000000..fc505020
--- /dev/null
+++ b/hotspot/.hg/patches/arguments-java8.patch
@@ -0,0 +1,57 @@
+Adds AllowEnhancedClassRedefinition argument.
+diff --git a/src/share/vm/runtime/arguments.cpp b/src/share/vm/runtime/arguments.cpp
+--- a/src/share/vm/runtime/arguments.cpp
++++ b/src/share/vm/runtime/arguments.cpp
+@@ -59,8 +59,8 @@
+ #include "gc_implementation/parallelScavenge/parallelScavengeHeap.hpp"
+ #endif // INCLUDE_ALL_GCS
+
+-// Note: This is a special bug reporting site for the JVM
+-#define DEFAULT_VENDOR_URL_BUG "http://bugreport.sun.com/bugreport/crash.jsp"
++// (DCEVM) The DCE VM has its own JIRA bug tracking system.
++#define DEFAULT_VENDOR_URL_BUG "https://github.com/Guidewire/DCEVM/issues"
+ #define DEFAULT_JAVA_LAUNCHER "generic"
+
+ // Disable options not supported in this release, with a warning if they
+@@ -1507,6 +1507,10 @@
+
+ void Arguments::set_ergonomics_flags() {
+
++ if (AllowEnhancedClassRedefinition) {
++ // (DCEVM) enforces serial GC
++ FLAG_SET_ERGO(bool, UseSerialGC, true);
++ }
+ if (os::is_server_class_machine()) {
+ // If no other collector is requested explicitly,
+ // let the VM select the collector based on
+@@ -1948,6 +1952,17 @@
+ if (UseConcMarkSweepGC || UseParNewGC) i++;
+ if (UseParallelGC || UseParallelOldGC) i++;
+ if (UseG1GC) i++;
++
++ if (AllowEnhancedClassRedefinition) {
++ // (DCEVM) Must use serial GC. This limitation applies because the instance size changing GC modifications
++ // are only built into the mark and compact algorithm.
++ if (!UseSerialGC && i >= 1) {
++ jio_fprintf(defaultStream::error_stream(),
++ "Must use the serial GC in the DCEVM\n");
++ status = false;
++ }
++ }
++
+ if (i > 1) {
+ jio_fprintf(defaultStream::error_stream(),
+ "Conflicting collector combinations in option list; "
+diff --git a/src/share/vm/runtime/globals.hpp b/src/share/vm/runtime/globals.hpp
+--- a/src/share/vm/runtime/globals.hpp
++++ b/src/share/vm/runtime/globals.hpp
+@@ -1273,6 +1273,9 @@
+ product(intx, TraceRedefineClasses, 0, \
+ "Trace level for JVMTI RedefineClasses") \
+ \
++ product(bool, AllowEnhancedClassRedefinition, true, \
++ "Allow enhanced class redefinition beyond swapping method bodies")\
++ \
+ develop(bool, StressMethodComparator, false, \
+ "Run the MethodComparator on all loaded methods") \
+ \