8036547: test/runtime/CompressedOops/CompressedClassPointers.java fails with product build since -XX:+PrintMiscellaneous is a debug only flag
Summary: Use PrintCompressedOopsMode and these other flags that match printing compressed oop information
Reviewed-by: ctornqvi, sla
--- a/hotspot/src/share/vm/runtime/arguments.cpp Mon Mar 03 13:58:52 2014 -0500
+++ b/hotspot/src/share/vm/runtime/arguments.cpp Tue Mar 04 09:57:16 2014 -0500
@@ -1699,7 +1699,8 @@
// HeapBaseMinAddress can be greater than default but not less than.
if (!FLAG_IS_DEFAULT(HeapBaseMinAddress)) {
if (HeapBaseMinAddress < DefaultHeapBaseMinAddress) {
- if (PrintMiscellaneous && Verbose) { // matches compressed oops printing flags
+ // matches compressed oops printing flags
+ if (PrintCompressedOopsMode || (PrintMiscellaneous && Verbose)) {
jio_fprintf(defaultStream::error_stream(),
"HeapBaseMinAddress must be at least " UINTX_FORMAT
" (" UINTX_FORMAT "G) which is greater than value given "
--- a/hotspot/test/runtime/CompressedOops/CompressedClassPointers.java Mon Mar 03 13:58:52 2014 -0500
+++ b/hotspot/test/runtime/CompressedOops/CompressedClassPointers.java Tue Mar 04 09:57:16 2014 -0500
@@ -83,8 +83,8 @@
public static void heapBaseMinAddressTest() throws Exception {
ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
"-XX:HeapBaseMinAddress=1m",
- "-XX:+PrintMiscellaneous",
- "-XX:+Verbose",
+ "-XX:+UnlockDiagnosticVMOptions",
+ "-XX:+PrintCompressedOopsMode",
"-version");
OutputAnalyzer output = new OutputAnalyzer(pb.start());
output.shouldContain("HeapBaseMinAddress must be at least");