diff --git a/make/Images.gmk b/make/Images.gmk index 3f2b34bc9c6..22e3e43cb1f 100644 --- a/make/Images.gmk +++ b/make/Images.gmk @@ -162,7 +162,7 @@ define CreateCDSArchive endif ifeq ($(DEBUG_CDS_ARCHIVE), true) - $1_$2_CDS_DUMP_FLAGS += -Xlog:cds+map*=trace:file=$$(JDK_IMAGE_DIR)/$$($1_$2_CDS_ARCHIVE).cdsmap:none:filesize=0 + $1_$2_CDS_DUMP_FLAGS += -Xlog:aot+map*=trace:file=$$(JDK_IMAGE_DIR)/$$($1_$2_CDS_ARCHIVE).cdsmap:none:filesize=0 endif $$(eval $$(call SetupExecute, $1_$2_gen_cds_archive_jdk, \ diff --git a/src/hotspot/share/cds/aotArtifactFinder.cpp b/src/hotspot/share/cds/aotArtifactFinder.cpp index f16e0d9e908..d27e75ba0ab 100644 --- a/src/hotspot/share/cds/aotArtifactFinder.cpp +++ b/src/hotspot/share/cds/aotArtifactFinder.cpp @@ -22,9 +22,10 @@ * */ -#include "cds/aotClassLinker.hpp" #include "cds/aotArtifactFinder.hpp" #include "cds/aotClassInitializer.hpp" +#include "cds/aotClassLinker.hpp" +#include "cds/aotLogging.hpp" #include "cds/aotReferenceObjSupport.hpp" #include "cds/dumpTimeClassInfo.inline.hpp" #include "cds/heapShared.hpp" @@ -155,9 +156,9 @@ void AOTArtifactFinder::find_artifacts() { if (!info.is_excluded() && _seen_classes->get(k) == nullptr) { info.set_excluded(); info.set_has_checked_exclusion(); - if (log_is_enabled(Debug, cds)) { + if (aot_log_is_enabled(Debug, aot)) { ResourceMark rm; - log_debug(cds)("Skipping %s: %s class", k->name()->as_C_string(), + aot_log_debug(aot)("Skipping %s: %s class", k->name()->as_C_string(), k->is_hidden() ? "Unreferenced hidden" : "AOT tooling"); } } diff --git a/src/hotspot/share/cds/aotClassInitializer.cpp b/src/hotspot/share/cds/aotClassInitializer.cpp index 6f45c979880..46a118c42e9 100644 --- a/src/hotspot/share/cds/aotClassInitializer.cpp +++ b/src/hotspot/share/cds/aotClassInitializer.cpp @@ -219,7 +219,7 @@ bool AOTClassInitializer::can_archive_initialized_mirror(InstanceKlass* ik) { // // Then run the following: // java -XX:AOTMode=record -XX:AOTConfiguration=jc.aotconfig com.sun.tools.javac.Main - // java -XX:AOTMode=create -Xlog:cds -XX:AOTCache=jc.aot -XX:AOTConfiguration=jc.aotconfig + // java -XX:AOTMode=create -Xlog:aot -XX:AOTCache=jc.aot -XX:AOTConfiguration=jc.aotconfig // // You will see an error like this: // @@ -350,9 +350,9 @@ bool AOTClassInitializer::is_runtime_setup_required(InstanceKlass* ik) { void AOTClassInitializer::call_runtime_setup(JavaThread* current, InstanceKlass* ik) { assert(ik->has_aot_initialized_mirror(), "sanity"); if (ik->is_runtime_setup_required()) { - if (log_is_enabled(Info, cds, init)) { + if (log_is_enabled(Info, aot, init)) { ResourceMark rm; - log_info(cds, init)("Calling %s::runtimeSetup()", ik->external_name()); + log_info(aot, init)("Calling %s::runtimeSetup()", ik->external_name()); } JavaValue result(T_VOID); JavaCalls::call_static(&result, ik, @@ -375,7 +375,7 @@ void AOTClassInitializer::init_test_class(TRAPS) { // -XX:AOTInitTestClass is NOT a general mechanism for including user-defined objects into // the AOT cache. Therefore, this option is NOT available in product JVM. if (AOTInitTestClass != nullptr && CDSConfig::is_initing_classes_at_dump_time()) { - log_info(cds)("Debug build only: force initialization of AOTInitTestClass %s", AOTInitTestClass); + log_info(aot)("Debug build only: force initialization of AOTInitTestClass %s", AOTInitTestClass); TempNewSymbol class_name = SymbolTable::new_symbol(AOTInitTestClass); Handle app_loader(THREAD, SystemDictionary::java_system_loader()); Klass* k = SystemDictionary::resolve_or_null(class_name, app_loader, CHECK); diff --git a/src/hotspot/share/cds/aotClassLocation.cpp b/src/hotspot/share/cds/aotClassLocation.cpp index ae7dcd7ffd4..cf5d52a5676 100644 --- a/src/hotspot/share/cds/aotClassLocation.cpp +++ b/src/hotspot/share/cds/aotClassLocation.cpp @@ -23,6 +23,7 @@ */ #include "cds/aotClassLocation.hpp" +#include "cds/aotLogging.hpp" #include "cds/archiveBuilder.hpp" #include "cds/cdsConfig.hpp" #include "cds/dynamicArchive.hpp" @@ -250,7 +251,7 @@ AOTClassLocation* AOTClassLocation::allocate(JavaThread* current, const char* pa // We allow the file to not exist, as long as it also doesn't exist during runtime. type = FileType::NOT_EXIST; } else { - log_error(cds)("Unable to open file %s.", path); + aot_log_error(aot)("Unable to open file %s.", path); MetaspaceShared::unrecoverable_loading_error(); } @@ -359,7 +360,7 @@ char* AOTClassLocation::get_cpattr() const { if (found != nullptr) { // Same behavior as jdk/src/share/classes/java/util/jar/Attributes.java // If duplicated entries are found, the last one is used. - log_warning(cds)("Warning: Duplicate name in Manifest: %s.\n" + log_warning(aot)("Warning: Duplicate name in Manifest: %s.\n" "Ensure that the manifest does not have duplicate entries, and\n" "that blank lines separate individual sections in both your\n" "manifest and in the META-INF/MANIFEST.MF entry in the jar file:\n%s\n", tag, path()); @@ -392,31 +393,31 @@ bool AOTClassLocation::check(const char* runtime_path, bool has_aot_linked_class struct stat st; if (os::stat(runtime_path, &st) != 0) { if (_file_type != FileType::NOT_EXIST) { - log_warning(cds)("Required classpath entry does not exist: %s", runtime_path); + aot_log_warning(aot)("Required classpath entry does not exist: %s", runtime_path); return false; } } else if ((st.st_mode & S_IFMT) == S_IFDIR) { if (_file_type == FileType::NOT_EXIST) { - log_warning(cds)("'%s' must not exist", runtime_path); + aot_log_warning(aot)("'%s' must not exist", runtime_path); return false; } if (_file_type == FileType::NORMAL) { - log_warning(cds)("'%s' must be a file", runtime_path); + aot_log_warning(aot)("'%s' must be a file", runtime_path); return false; } if (!os::dir_is_empty(runtime_path)) { - log_warning(cds)("directory is not empty: '%s'", runtime_path); + aot_log_warning(aot)("directory is not empty: '%s'", runtime_path); return false; } } else { if (_file_type == FileType::NOT_EXIST) { - log_warning(cds)("'%s' must not exist", runtime_path); + aot_log_warning(aot)("'%s' must not exist", runtime_path); if (has_aot_linked_classes) { - log_error(cds)("CDS archive has aot-linked classes. It cannot be used because the " + aot_log_error(aot)("CDS archive has aot-linked classes. It cannot be used because the " "file %s exists", runtime_path); return false; } else { - log_warning(cds)("Archived non-system classes are disabled because the " + aot_log_warning(aot)("Archived non-system classes are disabled because the " "file %s exists", runtime_path); FileMapInfo::current_info()->set_has_platform_or_app_classes(false); if (DynamicArchive::is_mapped()) { @@ -425,13 +426,13 @@ bool AOTClassLocation::check(const char* runtime_path, bool has_aot_linked_class } } if (_file_type == FileType::DIR) { - log_warning(cds)("'%s' must be a directory", runtime_path); + aot_log_warning(aot)("'%s' must be a directory", runtime_path); return false; } bool size_differs = _filesize != st.st_size; bool time_differs = _check_time && (_timestamp != st.st_mtime); if (size_differs || time_differs) { - log_warning(cds)("This file is not the one used while building the shared archive file: '%s'%s%s", + aot_log_warning(aot)("This file is not the one used while building the shared archive file: '%s'%s%s", runtime_path, time_differs ? ", timestamp has changed" : "", size_differs ? ", size has changed" : ""); @@ -689,7 +690,7 @@ void AOTClassLocationConfig::check_nonempty_dirs() const { } if (cs->is_dir()) { if (!os::dir_is_empty(cs->path())) { - log_error(cds)("Error: non-empty directory '%s'", cs->path()); + aot_log_error(aot)("Error: non-empty directory '%s'", cs->path()); has_nonempty_dir = true; } } @@ -714,7 +715,7 @@ bool AOTClassLocationConfig::is_valid_classpath_index(int classpath_index, Insta const char* const file_name = ClassLoader::file_name_for_class_name(class_name, ik->name()->utf8_length()); if (!zip->has_entry(current, file_name)) { - log_warning(cds)("class %s cannot be archived because it was not defined from %s as claimed", + aot_log_warning(aot)("class %s cannot be archived because it was not defined from %s as claimed", class_name, zip->name()); return false; } @@ -776,7 +777,7 @@ bool AOTClassLocationConfig::check_classpaths(bool is_boot_classpath, bool has_a cs->from_cpattr() ? " (from JAR manifest ClassPath attribute)" : ""); if (!cs->from_cpattr() && file_exists(effective_dumptime_path)) { if (!runtime_css.has_next()) { - log_warning(cds)("%s classpath has fewer elements than expected", which); + aot_log_warning(aot)("%s classpath has fewer elements than expected", which); return false; } const char* runtime_path = runtime_css.get_next(); @@ -784,7 +785,7 @@ bool AOTClassLocationConfig::check_classpaths(bool is_boot_classpath, bool has_a runtime_path = runtime_css.get_next(); } if (!os::same_files(effective_dumptime_path, runtime_path)) { - log_warning(cds)("The name of %s classpath [%d] does not match: expected '%s', got '%s'", + aot_log_warning(aot)("The name of %s classpath [%d] does not match: expected '%s', got '%s'", which, runtime_css.current(), effective_dumptime_path, runtime_path); return false; } @@ -800,7 +801,7 @@ bool AOTClassLocationConfig::check_classpaths(bool is_boot_classpath, bool has_a if (is_boot_classpath && runtime_css.has_next() && (need_to_check_app_classpath() || num_module_paths() > 0)) { // the check passes if all the extra runtime boot classpath entries are non-existent if (check_paths_existence(runtime_css)) { - log_warning(cds)("boot classpath is longer than expected"); + aot_log_warning(aot)("boot classpath is longer than expected"); return false; } } @@ -869,7 +870,7 @@ bool AOTClassLocationConfig::check_module_paths(bool has_aot_linked_classes, int while (true) { if (!runtime_css.has_next()) { - log_warning(cds)("module path has fewer elements than expected"); + aot_log_warning(aot)("module path has fewer elements than expected"); *has_extra_module_paths = true; return true; } @@ -1021,11 +1022,11 @@ bool AOTClassLocationConfig::validate(bool has_aot_linked_classes, bool* has_ext "" : " (hint: enable -Xlog:class+path=info to diagnose the failure)"; if (RequireSharedSpaces && !PrintSharedArchiveAndExit) { if (CDSConfig::is_dumping_final_static_archive()) { - log_error(cds)("class path and/or module path are not compatible with the " + aot_log_error(aot)("class path and/or module path are not compatible with the " "ones specified when the AOTConfiguration file was recorded%s", hint_msg); vm_exit_during_initialization("Unable to use create AOT cache.", nullptr); } else { - log_error(cds)("%s%s", mismatch_msg, hint_msg); + aot_log_error(aot)("%s%s", mismatch_msg, hint_msg); MetaspaceShared::unrecoverable_loading_error(); } } else { diff --git a/src/hotspot/share/cds/aotConstantPoolResolver.cpp b/src/hotspot/share/cds/aotConstantPoolResolver.cpp index 6787242adbd..6ab63418e09 100644 --- a/src/hotspot/share/cds/aotConstantPoolResolver.cpp +++ b/src/hotspot/share/cds/aotConstantPoolResolver.cpp @@ -204,7 +204,7 @@ void AOTConstantPoolResolver::preresolve_class_cp_entries(JavaThread* current, I if (HAS_PENDING_EXCEPTION) { CLEAR_PENDING_EXCEPTION; // just ignore } else { - log_trace(cds, resolve)("Resolved class [%3d] %s -> %s", cp_index, ik->external_name(), + log_trace(aot, resolve)("Resolved class [%3d] %s -> %s", cp_index, ik->external_name(), resolved_klass->external_name()); } } @@ -292,12 +292,12 @@ void AOTConstantPoolResolver::maybe_resolve_fmi_ref(InstanceKlass* ik, Method* m ShouldNotReachHere(); } - if (log_is_enabled(Trace, cds, resolve)) { + if (log_is_enabled(Trace, aot, resolve)) { ResourceMark rm(THREAD); bool resolved = cp->is_resolved(raw_index, bc); Symbol* name = cp->name_ref_at(raw_index, bc); Symbol* signature = cp->signature_ref_at(raw_index, bc); - log_trace(cds, resolve)("%s %s [%3d] %s -> %s.%s:%s", + log_trace(aot, resolve)("%s %s [%3d] %s -> %s.%s:%s", (resolved ? "Resolved" : "Failed to resolve"), Bytecodes::name(bc), cp_index, ik->external_name(), resolved_klass->external_name(), @@ -326,9 +326,9 @@ void AOTConstantPoolResolver::preresolve_indy_cp_entries(JavaThread* current, In CLEAR_PENDING_EXCEPTION; // just ignore } } - if (log_is_enabled(Trace, cds, resolve)) { + if (log_is_enabled(Trace, aot, resolve)) { ResourceMark rm(THREAD); - log_trace(cds, resolve)("%s indy [%3d] %s", + log_trace(aot, resolve)("%s indy [%3d] %s", rie->is_resolved() ? "Resolved" : "Failed to resolve", cp_index, ik->external_name()); } @@ -350,9 +350,9 @@ bool AOTConstantPoolResolver::check_methodtype_signature(ConstantPool* cp, Symbo } if (SystemDictionaryShared::should_be_excluded(k)) { - if (log_is_enabled(Warning, cds, resolve)) { + if (log_is_enabled(Warning, aot, resolve)) { ResourceMark rm; - log_warning(cds, resolve)("Cannot aot-resolve Lambda proxy because %s is excluded", k->external_name()); + log_warning(aot, resolve)("Cannot aot-resolve Lambda proxy because %s is excluded", k->external_name()); } return false; } @@ -383,9 +383,9 @@ bool AOTConstantPoolResolver::check_lambda_metafactory_signature(ConstantPool* c // as can have side effects ==> exclude such cases. InstanceKlass* intf = InstanceKlass::cast(k); bool exclude = intf->interface_needs_clinit_execution_as_super(); - if (log_is_enabled(Debug, cds, resolve)) { + if (log_is_enabled(Debug, aot, resolve)) { ResourceMark rm; - log_debug(cds, resolve)("%s aot-resolve Lambda proxy of interface type %s", + log_debug(aot, resolve)("%s aot-resolve Lambda proxy of interface type %s", exclude ? "Cannot" : "Can", k->external_name()); } return !exclude; @@ -399,9 +399,9 @@ bool AOTConstantPoolResolver::check_lambda_metafactory_methodtype_arg(ConstantPo } Symbol* sig = cp->method_type_signature_at(mt_index); - if (log_is_enabled(Debug, cds, resolve)) { + if (log_is_enabled(Debug, aot, resolve)) { ResourceMark rm; - log_debug(cds, resolve)("Checking MethodType for LambdaMetafactory BSM arg %d: %s", arg_i, sig->as_C_string()); + log_debug(aot, resolve)("Checking MethodType for LambdaMetafactory BSM arg %d: %s", arg_i, sig->as_C_string()); } return check_methodtype_signature(cp, sig); @@ -415,9 +415,9 @@ bool AOTConstantPoolResolver::check_lambda_metafactory_methodhandle_arg(Constant } Symbol* sig = cp->method_handle_signature_ref_at(mh_index); - if (log_is_enabled(Debug, cds, resolve)) { + if (log_is_enabled(Debug, aot, resolve)) { ResourceMark rm; - log_debug(cds, resolve)("Checking MethodType of MethodHandle for LambdaMetafactory BSM arg %d: %s", arg_i, sig->as_C_string()); + log_debug(aot, resolve)("Checking MethodType of MethodHandle for LambdaMetafactory BSM arg %d: %s", arg_i, sig->as_C_string()); } return check_methodtype_signature(cp, sig); } @@ -452,9 +452,9 @@ bool AOTConstantPoolResolver::is_indy_resolution_deterministic(ConstantPool* cp, "[Ljava/lang/Object;" ")Ljava/lang/invoke/CallSite;")) { Symbol* factory_type_sig = cp->uncached_signature_ref_at(cp_index); - if (log_is_enabled(Debug, cds, resolve)) { + if (log_is_enabled(Debug, aot, resolve)) { ResourceMark rm; - log_debug(cds, resolve)("Checking StringConcatFactory callsite signature [%d]: %s", cp_index, factory_type_sig->as_C_string()); + log_debug(aot, resolve)("Checking StringConcatFactory callsite signature [%d]: %s", cp_index, factory_type_sig->as_C_string()); } Klass* k; @@ -504,9 +504,9 @@ bool AOTConstantPoolResolver::is_indy_resolution_deterministic(ConstantPool* cp, * {@code interfaceMethodType}. */ Symbol* factory_type_sig = cp->uncached_signature_ref_at(cp_index); - if (log_is_enabled(Debug, cds, resolve)) { + if (log_is_enabled(Debug, aot, resolve)) { ResourceMark rm; - log_debug(cds, resolve)("Checking lambda callsite signature [%d]: %s", cp_index, factory_type_sig->as_C_string()); + log_debug(aot, resolve)("Checking lambda callsite signature [%d]: %s", cp_index, factory_type_sig->as_C_string()); } if (!check_lambda_metafactory_signature(cp, factory_type_sig)) { diff --git a/src/hotspot/share/cds/aotLinkedClassBulkLoader.cpp b/src/hotspot/share/cds/aotLinkedClassBulkLoader.cpp index 0c4e07d3328..77a93ab264b 100644 --- a/src/hotspot/share/cds/aotLinkedClassBulkLoader.cpp +++ b/src/hotspot/share/cds/aotLinkedClassBulkLoader.cpp @@ -87,10 +87,10 @@ void AOTLinkedClassBulkLoader::exit_on_exception(JavaThread* current) { assert(current->has_pending_exception(), "precondition"); ResourceMark rm(current); if (current->pending_exception()->is_a(vmClasses::OutOfMemoryError_klass())) { - log_error(cds)("Out of memory. Please run with a larger Java heap, current MaxHeapSize = " + log_error(aot)("Out of memory. Please run with a larger Java heap, current MaxHeapSize = " "%zuM", MaxHeapSize/M); } else { - log_error(cds)("%s: %s", current->pending_exception()->klass()->external_name(), + log_error(aot)("%s: %s", current->pending_exception()->klass()->external_name(), java_lang_String::as_utf8_string(java_lang_Throwable::message(current->pending_exception()))); } vm_exit_during_initialization("Unexpected exception when loading aot-linked classes."); @@ -199,9 +199,9 @@ void AOTLinkedClassBulkLoader::load_classes_impl(AOTLinkedClassCategory class_ca if (actual != ik) { ResourceMark rm(THREAD); - log_error(cds)("Unable to resolve %s class from CDS archive: %s", category_name, ik->external_name()); - log_error(cds)("Expected: " INTPTR_FORMAT ", actual: " INTPTR_FORMAT, p2i(ik), p2i(actual)); - log_error(cds)("JVMTI class retransformation is not supported when archive was generated with -XX:+AOTClassLinking."); + log_error(aot)("Unable to resolve %s class from %s: %s", category_name, CDSConfig::type_of_archive_being_loaded(), ik->external_name()); + log_error(aot)("Expected: " INTPTR_FORMAT ", actual: " INTPTR_FORMAT, p2i(ik), p2i(actual)); + log_error(aot)("JVMTI class retransformation is not supported when archive was generated with -XX:+AOTClassLinking."); MetaspaceShared::unrecoverable_loading_error(); } assert(actual->is_loaded(), "must be"); diff --git a/src/hotspot/share/cds/archiveBuilder.cpp b/src/hotspot/share/cds/archiveBuilder.cpp index aaebf8bef88..5a9ae8f55bc 100644 --- a/src/hotspot/share/cds/archiveBuilder.cpp +++ b/src/hotspot/share/cds/archiveBuilder.cpp @@ -1155,12 +1155,12 @@ class ArchiveBuilder::CDSMapLogger : AllStatic { static void log_klass(Klass* k, address runtime_dest, const char* type_name, int bytes, Thread* current) { ResourceMark rm(current); - log_debug(cds, map)(_LOG_PREFIX " %s", + log_debug(aot, map)(_LOG_PREFIX " %s", p2i(runtime_dest), type_name, bytes, k->external_name()); } static void log_method(Method* m, address runtime_dest, const char* type_name, int bytes, Thread* current) { ResourceMark rm(current); - log_debug(cds, map)(_LOG_PREFIX " %s", + log_debug(aot, map)(_LOG_PREFIX " %s", p2i(runtime_dest), type_name, bytes, m->external_name()); } @@ -1203,12 +1203,12 @@ class ArchiveBuilder::CDSMapLogger : AllStatic { { ResourceMark rm(current); Symbol* s = (Symbol*)src; - log_debug(cds, map)(_LOG_PREFIX " %s", p2i(runtime_dest), type_name, bytes, + log_debug(aot, map)(_LOG_PREFIX " %s", p2i(runtime_dest), type_name, bytes, s->as_quoted_ascii()); } break; default: - log_debug(cds, map)(_LOG_PREFIX, p2i(runtime_dest), type_name, bytes); + log_debug(aot, map)(_LOG_PREFIX, p2i(runtime_dest), type_name, bytes); break; } @@ -1218,7 +1218,7 @@ class ArchiveBuilder::CDSMapLogger : AllStatic { log_as_hex(last_obj_base, last_obj_end, last_obj_base + buffer_to_runtime_delta()); if (last_obj_end < region_end) { - log_debug(cds, map)(PTR_FORMAT ": @@ Misc data %zu bytes", + log_debug(aot, map)(PTR_FORMAT ": @@ Misc data %zu bytes", p2i(last_obj_end + buffer_to_runtime_delta()), size_t(region_end - last_obj_end)); log_as_hex(last_obj_end, region_end, last_obj_end + buffer_to_runtime_delta()); @@ -1242,7 +1242,7 @@ class ArchiveBuilder::CDSMapLogger : AllStatic { } else { top = requested_base + size; } - log_info(cds, map)("[%-18s " PTR_FORMAT " - " PTR_FORMAT " %9zu bytes]", + log_info(aot, map)("[%-18s " PTR_FORMAT " - " PTR_FORMAT " %9zu bytes]", name, p2i(base), p2i(top), size); } @@ -1253,7 +1253,7 @@ class ArchiveBuilder::CDSMapLogger : AllStatic { address end = address(r.end()); log_region("heap", start, end, ArchiveHeapWriter::buffered_addr_to_requested_addr(start)); - LogStreamHandle(Info, cds, map) st; + LogStreamHandle(Info, aot, map) st; HeapRootSegments segments = heap_info->heap_root_segments(); assert(segments.base_offset() == 0, "Sanity"); @@ -1362,7 +1362,7 @@ class ArchiveBuilder::CDSMapLogger : AllStatic { // Print the fields of instanceOops, or the elements of arrayOops static void log_oop_details(ArchiveHeapInfo* heap_info, oop source_oop, address buffered_addr) { - LogStreamHandle(Trace, cds, map, oops) st; + LogStreamHandle(Trace, aot, map, oops) st; if (st.is_enabled()) { Klass* source_klass = source_oop->klass(); ArchiveBuilder* builder = ArchiveBuilder::current(); @@ -1430,7 +1430,7 @@ class ArchiveBuilder::CDSMapLogger : AllStatic { } static void log_heap_roots() { - LogStreamHandle(Trace, cds, map, oops) st; + LogStreamHandle(Trace, aot, map, oops) st; if (st.is_enabled()) { for (int i = 0; i < HeapShared::pending_roots()->length(); i++) { st.print("roots[%4d]: ", i); @@ -1491,7 +1491,7 @@ class ArchiveBuilder::CDSMapLogger : AllStatic { static void log_as_hex(address base, address top, address requested_base, bool is_heap = false) { assert(top >= base, "must be"); - LogStreamHandle(Trace, cds, map) lsh; + LogStreamHandle(Trace, aot, map) lsh; if (lsh.is_enabled()) { int unitsize = sizeof(address); if (is_heap && UseCompressedOops) { @@ -1504,7 +1504,7 @@ class ArchiveBuilder::CDSMapLogger : AllStatic { } static void log_header(FileMapInfo* mapinfo) { - LogStreamHandle(Info, cds, map) lsh; + LogStreamHandle(Info, aot, map) lsh; if (lsh.is_enabled()) { mapinfo->print(&lsh); } @@ -1514,7 +1514,7 @@ public: static void log(ArchiveBuilder* builder, FileMapInfo* mapinfo, ArchiveHeapInfo* heap_info, char* bitmap, size_t bitmap_size_in_bytes) { - log_info(cds, map)("%s CDS archive map for %s", CDSConfig::is_dumping_static_archive() ? "Static" : "Dynamic", mapinfo->full_path()); + log_info(aot, map)("%s CDS archive map for %s", CDSConfig::is_dumping_static_archive() ? "Static" : "Dynamic", mapinfo->full_path()); address header = address(mapinfo->header()); address header_end = header + mapinfo->header()->header_size(); @@ -1538,7 +1538,7 @@ public: } #endif - log_info(cds, map)("[End of CDS archive map]"); + log_info(aot, map)("[End of CDS archive map]"); } }; // end ArchiveBuilder::CDSMapLogger @@ -1580,7 +1580,7 @@ void ArchiveBuilder::write_archive(FileMapInfo* mapinfo, ArchiveHeapInfo* heap_i print_stats(); } - if (log_is_enabled(Info, cds, map)) { + if (log_is_enabled(Info, aot, map)) { CDSMapLogger::log(this, mapinfo, heap_info, bitmap, bitmap_size_in_bytes); } diff --git a/src/hotspot/share/cds/archiveHeapLoader.cpp b/src/hotspot/share/cds/archiveHeapLoader.cpp index f604dadf980..181fa6b2bb4 100644 --- a/src/hotspot/share/cds/archiveHeapLoader.cpp +++ b/src/hotspot/share/cds/archiveHeapLoader.cpp @@ -167,7 +167,7 @@ void ArchiveHeapLoader::patch_compressed_embedded_pointers(BitMapView bm, MemRegion region) { narrowOop dt_encoded_bottom = info->encoded_heap_region_dumptime_address(); narrowOop rt_encoded_bottom = CompressedOops::encode_not_null(cast_to_oop(region.start())); - log_info(cds)("patching heap embedded pointers: narrowOop 0x%8x -> 0x%8x", + log_info(aot)("patching heap embedded pointers: narrowOop 0x%8x -> 0x%8x", (uint)dt_encoded_bottom, (uint)rt_encoded_bottom); // Optimization: if dumptime shift is the same as runtime shift, we can perform a @@ -175,15 +175,15 @@ void ArchiveHeapLoader::patch_compressed_embedded_pointers(BitMapView bm, narrowOop* patching_start = (narrowOop*)region.start() + FileMapInfo::current_info()->heap_oopmap_start_pos(); if (_narrow_oop_shift == CompressedOops::shift()) { uint32_t quick_delta = (uint32_t)rt_encoded_bottom - (uint32_t)dt_encoded_bottom; - log_info(cds)("CDS heap data relocation quick delta = 0x%x", quick_delta); + log_info(aot)("heap data relocation quick delta = 0x%x", quick_delta); if (quick_delta == 0) { - log_info(cds)("CDS heap data relocation unnecessary, quick_delta = 0"); + log_info(aot)("heap data relocation unnecessary, quick_delta = 0"); } else { PatchCompressedEmbeddedPointersQuick patcher(patching_start, quick_delta); bm.iterate(&patcher); } } else { - log_info(cds)("CDS heap data quick relocation not possible"); + log_info(aot)("heap data quick relocation not possible"); PatchCompressedEmbeddedPointers patcher(patching_start); bm.iterate(&patcher); } @@ -301,12 +301,12 @@ bool ArchiveHeapLoader::load_heap_region_impl(FileMapInfo* mapinfo, LoadedArchiv if (!mapinfo->read_region(loaded_region->_region_index, (char*)load_address, r->used(), /* do_commit = */ false)) { // There's no easy way to free the buffer, so we will fill it with zero later // in fill_failed_loaded_heap(), and it will eventually be GC'ed. - log_warning(cds)("Loading of heap region %d has failed. Archived objects are disabled", loaded_region->_region_index); + log_warning(aot)("Loading of heap region %d has failed. Archived objects are disabled", loaded_region->_region_index); _loading_failed = true; return false; } assert(r->mapped_base() == (char*)load_address, "sanity"); - log_info(cds)("Loaded heap region #%d at base " INTPTR_FORMAT " top " INTPTR_FORMAT + log_info(aot)("Loaded heap region #%d at base " INTPTR_FORMAT " top " INTPTR_FORMAT " size %6zu delta %zd", loaded_region->_region_index, load_address, load_address + loaded_region->_region_size, loaded_region->_region_size, loaded_region->_runtime_offset); diff --git a/src/hotspot/share/cds/archiveHeapWriter.cpp b/src/hotspot/share/cds/archiveHeapWriter.cpp index 1a6b8b1e488..ee1e334e84b 100644 --- a/src/hotspot/share/cds/archiveHeapWriter.cpp +++ b/src/hotspot/share/cds/archiveHeapWriter.cpp @@ -293,7 +293,7 @@ int ArchiveHeapWriter::compare_objs_by_oop_fields(HeapObjOrder* a, HeapObjOrder* } void ArchiveHeapWriter::sort_source_objs() { - log_info(cds)("sorting heap objects"); + log_info(aot)("sorting heap objects"); int len = _source_objs->length(); _source_objs_order = new GrowableArrayCHeap(len); @@ -303,9 +303,9 @@ void ArchiveHeapWriter::sort_source_objs() { HeapObjOrder os = {i, rank}; _source_objs_order->append(os); } - log_info(cds)("computed ranks"); + log_info(aot)("computed ranks"); _source_objs_order->sort(compare_objs_by_oop_fields); - log_info(cds)("sorting heap objects done"); + log_info(aot)("sorting heap objects done"); } void ArchiveHeapWriter::copy_source_objs_to_buffer(GrowableArrayCHeap* roots) { @@ -330,7 +330,7 @@ void ArchiveHeapWriter::copy_source_objs_to_buffer(GrowableArrayCHeaplength() + 1, roots->length(), _num_native_ptrs); } @@ -636,7 +636,7 @@ static void log_bitmap_usage(const char* which, BitMap* bitmap, size_t total_bit // The whole heap is covered by total_bits, but there are only non-zero bits within [start ... end). size_t start = bitmap->find_first_set_bit(0); size_t end = bitmap->size(); - log_info(cds)("%s = %7zu ... %7zu (%3zu%% ... %3zu%% = %3zu%%)", which, + log_info(aot)("%s = %7zu ... %7zu (%3zu%% ... %3zu%% = %3zu%%)", which, start, end, start * 100 / total_bits, end * 100 / total_bits, diff --git a/src/hotspot/share/cds/archiveUtils.cpp b/src/hotspot/share/cds/archiveUtils.cpp index 0b01494574c..9a92c6a8648 100644 --- a/src/hotspot/share/cds/archiveUtils.cpp +++ b/src/hotspot/share/cds/archiveUtils.cpp @@ -22,6 +22,7 @@ * */ +#include "cds/aotLogging.hpp" #include "cds/archiveBuilder.hpp" #include "cds/archiveHeapLoader.inline.hpp" #include "cds/archiveUtils.hpp" @@ -168,7 +169,7 @@ public: } } else { _ptrmap->clear_bit(offset); - DEBUG_ONLY(log_trace(cds, reloc)("Clearing pointer [" PTR_FORMAT "] -> null @ %9zu", p2i(ptr_loc), offset)); + DEBUG_ONLY(log_trace(aot, reloc)("Clearing pointer [" PTR_FORMAT "] -> null @ %9zu", p2i(ptr_loc), offset)); } return true; @@ -207,7 +208,7 @@ char* DumpRegion::expand_top_to(char* newtop) { // This is just a sanity check and should not appear in any real world usage. This // happens only if you allocate more than 2GB of shared objects and would require // millions of shared classes. - log_error(cds)("Out of memory in the CDS archive: Please reduce the number of shared classes."); + aot_log_error(aot)("Out of memory in the CDS archive: Please reduce the number of shared classes."); MetaspaceShared::unrecoverable_writing_error(); } } @@ -233,7 +234,7 @@ void DumpRegion::commit_to(char* newtop) { assert(commit <= uncommitted, "sanity"); if (!_vs->expand_by(commit, false)) { - log_error(cds)("Failed to expand shared space to %zu bytes", + aot_log_error(aot)("Failed to expand shared space to %zu bytes", need_committed_size); MetaspaceShared::unrecoverable_writing_error(); } @@ -244,7 +245,7 @@ void DumpRegion::commit_to(char* newtop) { } else { which = "shared"; } - log_debug(cds)("Expanding %s spaces by %7zu bytes [total %9zu bytes ending at %p]", + log_debug(aot)("Expanding %s spaces by %7zu bytes [total %9zu bytes ending at %p]", which, commit, _vs->actual_committed_size(), _vs->high()); } @@ -271,16 +272,16 @@ void DumpRegion::append_intptr_t(intptr_t n, bool need_to_mark) { void DumpRegion::print(size_t total_bytes) const { char* base = used() > 0 ? ArchiveBuilder::current()->to_requested(_base) : nullptr; - log_debug(cds)("%s space: %9zu [ %4.1f%% of total] out of %9zu bytes [%5.1f%% used] at " INTPTR_FORMAT, + log_debug(aot)("%s space: %9zu [ %4.1f%% of total] out of %9zu bytes [%5.1f%% used] at " INTPTR_FORMAT, _name, used(), percent_of(used(), total_bytes), reserved(), percent_of(used(), reserved()), p2i(base)); } void DumpRegion::print_out_of_space_msg(const char* failing_region, size_t needed_bytes) { - log_error(cds)("[%-8s] " PTR_FORMAT " - " PTR_FORMAT " capacity =%9d, allocated =%9d", + aot_log_error(aot)("[%-8s] " PTR_FORMAT " - " PTR_FORMAT " capacity =%9d, allocated =%9d", _name, p2i(_base), p2i(_top), int(_end - _base), int(_top - _base)); if (strcmp(_name, failing_region) == 0) { - log_error(cds)(" required = %d", int(needed_bytes)); + aot_log_error(aot)(" required = %d", int(needed_bytes)); } } diff --git a/src/hotspot/share/cds/archiveUtils.hpp b/src/hotspot/share/cds/archiveUtils.hpp index 836ec93f641..93e84694c35 100644 --- a/src/hotspot/share/cds/archiveUtils.hpp +++ b/src/hotspot/share/cds/archiveUtils.hpp @@ -136,12 +136,12 @@ class SharedDataRelocator: public BitMapClosure { _valid_old_base(valid_old_base), _valid_old_end(valid_old_end), _valid_new_base(valid_new_base), _valid_new_end(valid_new_end), _delta(delta) { - log_debug(cds, reloc)("SharedDataRelocator::_patch_base = " PTR_FORMAT, p2i(_patch_base)); - log_debug(cds, reloc)("SharedDataRelocator::_patch_end = " PTR_FORMAT, p2i(_patch_end)); - log_debug(cds, reloc)("SharedDataRelocator::_valid_old_base = " PTR_FORMAT, p2i(_valid_old_base)); - log_debug(cds, reloc)("SharedDataRelocator::_valid_old_end = " PTR_FORMAT, p2i(_valid_old_end)); - log_debug(cds, reloc)("SharedDataRelocator::_valid_new_base = " PTR_FORMAT, p2i(_valid_new_base)); - log_debug(cds, reloc)("SharedDataRelocator::_valid_new_end = " PTR_FORMAT, p2i(_valid_new_end)); + log_debug(aot, reloc)("SharedDataRelocator::_patch_base = " PTR_FORMAT, p2i(_patch_base)); + log_debug(aot, reloc)("SharedDataRelocator::_patch_end = " PTR_FORMAT, p2i(_patch_end)); + log_debug(aot, reloc)("SharedDataRelocator::_valid_old_base = " PTR_FORMAT, p2i(_valid_old_base)); + log_debug(aot, reloc)("SharedDataRelocator::_valid_old_end = " PTR_FORMAT, p2i(_valid_old_end)); + log_debug(aot, reloc)("SharedDataRelocator::_valid_new_base = " PTR_FORMAT, p2i(_valid_new_base)); + log_debug(aot, reloc)("SharedDataRelocator::_valid_new_end = " PTR_FORMAT, p2i(_valid_new_end)); } bool do_bit(size_t offset); diff --git a/src/hotspot/share/cds/archiveUtils.inline.hpp b/src/hotspot/share/cds/archiveUtils.inline.hpp index 72de48743f3..12c9a0bc705 100644 --- a/src/hotspot/share/cds/archiveUtils.inline.hpp +++ b/src/hotspot/share/cds/archiveUtils.inline.hpp @@ -27,6 +27,7 @@ #include "cds/archiveUtils.hpp" +#include "cds/aotLogging.hpp" #include "cds/archiveBuilder.hpp" #include "cds/cdsConfig.hpp" #include "cds/metaspaceShared.hpp" @@ -46,7 +47,7 @@ inline bool SharedDataRelocator::do_bit(size_t offset) { assert(new_ptr != nullptr, "don't point to the bottom of the archive"); // See ArchivePtrMarker::mark_pointer(). assert(_valid_new_base <= new_ptr && new_ptr < _valid_new_end, "must be"); - DEBUG_ONLY(log_trace(cds, reloc)("Patch2: @%8d [" PTR_FORMAT "] " PTR_FORMAT " -> " PTR_FORMAT, + DEBUG_ONLY(aot_log_trace(aot, reloc)("Patch2: @%8d [" PTR_FORMAT "] " PTR_FORMAT " -> " PTR_FORMAT, (int)offset, p2i(p), p2i(old_ptr), p2i(new_ptr))); *p = new_ptr; return true; // keep iterating diff --git a/src/hotspot/share/cds/cdsConfig.cpp b/src/hotspot/share/cds/cdsConfig.cpp index 52db54e7049..dada74c9ec2 100644 --- a/src/hotspot/share/cds/cdsConfig.cpp +++ b/src/hotspot/share/cds/cdsConfig.cpp @@ -22,6 +22,7 @@ * */ +#include "cds/aotLogging.hpp" #include "cds/archiveHeapLoader.hpp" #include "cds/cdsConfig.hpp" #include "cds/classListWriter.hpp" @@ -234,7 +235,7 @@ void CDSConfig::ergo_init_classic_archive_paths() { warning("-XX:+AutoCreateSharedArchive is unsupported when base CDS archive is not loaded. Run with -Xlog:cds for more info."); AutoCreateSharedArchive = false; } - log_error(cds)("Not a valid archive (%s)", SharedArchiveFile); + aot_log_error(aot)("Not a valid %s (%s)", type_of_archive_being_loaded(), SharedArchiveFile); Arguments::no_shared_spaces("invalid archive"); } } else if (base_archive_path == nullptr) { @@ -278,7 +279,7 @@ void CDSConfig::ergo_init_classic_archive_paths() { void CDSConfig::check_internal_module_property(const char* key, const char* value) { if (Arguments::is_incompatible_cds_internal_module_property(key)) { stop_using_optimized_module_handling(); - log_info(cds)("optimized module handling: disabled due to incompatible property: %s=%s", key, value); + aot_log_info(aot)("optimized module handling: disabled due to incompatible property: %s=%s", key, value); } } @@ -293,7 +294,7 @@ void CDSConfig::check_incompatible_property(const char* key, const char* value) if (strcmp(key, property) == 0) { stop_dumping_full_module_graph(); stop_using_full_module_graph(); - log_info(cds)("full module graph: disabled due to incompatible property: %s=%s", key, value); + aot_log_info(aot)("full module graph: disabled due to incompatible property: %s=%s", key, value); break; } } @@ -359,9 +360,9 @@ bool CDSConfig::has_unsupported_runtime_module_options() { warning("CDS is disabled when the %s option is specified.", option); } else { if (new_aot_flags_used()) { - log_warning(cds)("AOT cache is disabled when the %s option is specified.", option); + aot_log_warning(aot)("AOT cache is disabled when the %s option is specified.", option); } else { - log_info(cds)("CDS is disabled when the %s option is specified.", option); + aot_log_info(aot)("CDS is disabled when the %s option is specified.", option); } } return true; @@ -549,7 +550,7 @@ bool CDSConfig::check_vm_args_consistency(bool patch_mod_javabase, bool mode_fla } else if (Arguments::mode() == Arguments::_comp) { // -Xcomp may use excessive CPU for the test tiers. Also, -Xshare:dump runs a small and fixed set of // Java code, so there's not much benefit in running -Xcomp. - log_info(cds)("reduced -Xcomp to -Xmixed for static dumping"); + aot_log_info(aot)("reduced -Xcomp to -Xmixed for static dumping"); Arguments::set_mode_flags(Arguments::_mixed); } @@ -574,11 +575,11 @@ bool CDSConfig::check_vm_args_consistency(bool patch_mod_javabase, bool mode_fla if (AutoCreateSharedArchive) { if (SharedArchiveFile == nullptr) { - log_warning(cds)("-XX:+AutoCreateSharedArchive requires -XX:SharedArchiveFile"); + aot_log_warning(aot)("-XX:+AutoCreateSharedArchive requires -XX:SharedArchiveFile"); return false; } if (ArchiveClassesAtExit != nullptr) { - log_warning(cds)("-XX:+AutoCreateSharedArchive does not work with ArchiveClassesAtExit"); + aot_log_warning(aot)("-XX:+AutoCreateSharedArchive does not work with ArchiveClassesAtExit"); return false; } } @@ -594,7 +595,7 @@ bool CDSConfig::check_vm_args_consistency(bool patch_mod_javabase, bool mode_fla // Always verify non-system classes during CDS dump if (!BytecodeVerificationRemote) { BytecodeVerificationRemote = true; - log_info(cds)("All non-system classes will be verified (-Xverify:remote) during CDS dump time."); + aot_log_info(aot)("All non-system classes will be verified (-Xverify:remote) during CDS dump time."); } } @@ -615,11 +616,11 @@ void CDSConfig::prepare_for_dumping() { #define __THEMSG " is unsupported when base CDS archive is not loaded. Run with -Xlog:cds for more info." if (RecordDynamicDumpInfo) { - log_error(cds)("-XX:+RecordDynamicDumpInfo%s", __THEMSG); + aot_log_error(aot)("-XX:+RecordDynamicDumpInfo%s", __THEMSG); MetaspaceShared::unrecoverable_loading_error(); } else { assert(ArchiveClassesAtExit != nullptr, "sanity"); - log_warning(cds)("-XX:ArchiveClassesAtExit" __THEMSG); + aot_log_warning(aot)("-XX:ArchiveClassesAtExit" __THEMSG); } #undef __THEMSG disable_dumping_dynamic_archive(); @@ -766,7 +767,7 @@ void CDSConfig::log_reasons_for_not_dumping_heap() { } assert(reason != nullptr, "sanity"); - log_info(cds)("Archived java heap is not supported: %s", reason); + aot_log_info(aot)("Archived java heap is not supported: %s", reason); } // This is *Legacy* optimization for lambdas before JEP 483. May be removed in the future. @@ -816,7 +817,7 @@ void CDSConfig::stop_dumping_full_module_graph(const char* reason) { if (_is_dumping_full_module_graph) { _is_dumping_full_module_graph = false; if (reason != nullptr) { - log_info(cds)("full module graph cannot be dumped: %s", reason); + aot_log_info(aot)("full module graph cannot be dumped: %s", reason); } } } @@ -826,7 +827,7 @@ void CDSConfig::stop_using_full_module_graph(const char* reason) { if (_is_using_full_module_graph) { _is_using_full_module_graph = false; if (reason != nullptr) { - log_info(cds)("full module graph cannot be loaded: %s", reason); + aot_log_info(aot)("full module graph cannot be loaded: %s", reason); } } } diff --git a/src/hotspot/share/cds/classListParser.cpp b/src/hotspot/share/cds/classListParser.cpp index c97357c2614..43aa0a76d2e 100644 --- a/src/hotspot/share/cds/classListParser.cpp +++ b/src/hotspot/share/cds/classListParser.cpp @@ -23,6 +23,7 @@ */ #include "cds/aotConstantPoolResolver.hpp" +#include "cds/aotLogging.hpp" #include "cds/archiveUtils.hpp" #include "cds/classListParser.hpp" #include "cds/lambdaFormInvokers.hpp" @@ -68,7 +69,7 @@ ClassListParser::ClassListParser(const char* file, ParseMode parse_mode) : _file_input(do_open(file), /* need_close=*/true), _input_stream(&_file_input), _parse_mode(parse_mode) { - log_info(cds)("Parsing %s%s", file, + aot_log_info(aot)("Parsing %s%s", file, parse_lambda_forms_invokers_only() ? " (lambda form invokers only)" : ""); if (!_file_input.is_open()) { char reason[JVM_MAXPATHLEN]; @@ -163,18 +164,18 @@ void ClassListParser::parse_class_name_and_attributes(TRAPS) { if (message != nullptr) { ex_msg = java_lang_String::as_utf8_string(message); } - log_warning(cds)("%s: %s", PENDING_EXCEPTION->klass()->external_name(), ex_msg); + aot_log_warning(aot)("%s: %s", PENDING_EXCEPTION->klass()->external_name(), ex_msg); // We might have an invalid class name or an bad class. Warn about it // and keep going to the next line. CLEAR_PENDING_EXCEPTION; - log_warning(cds)("Preload Warning: Cannot find %s", _class_name); + aot_log_warning(aot)("Preload Warning: Cannot find %s", _class_name); return; } assert(klass != nullptr, "sanity"); - if (log_is_enabled(Trace, cds)) { + if (aot_log_is_enabled(Trace, aot)) { ResourceMark rm(THREAD); - log_trace(cds)("Shared spaces preloaded: %s", klass->external_name()); + log_trace(aot)("Shared spaces preloaded: %s", klass->external_name()); } if (klass->is_instance_klass()) { @@ -498,7 +499,7 @@ void ClassListParser::check_class_name(const char* class_name) { void ClassListParser::constant_pool_resolution_warning(const char* msg, ...) { va_list ap; va_start(ap, msg); - LogTarget(Warning, cds, resolve) lt; + LogTarget(Warning, aot, resolve) lt; LogStream ls(lt); print_diagnostic_info(&ls, msg, ap); ls.print("Your classlist may be out of sync with the JDK or the application."); @@ -542,7 +543,7 @@ InstanceKlass* ClassListParser::load_class_from_source(Symbol* class_name, TRAPS error("If source location is specified, id must be also specified"); } if (strncmp(_class_name, "java/", 5) == 0) { - log_info(cds)("Prohibited package for non-bootstrap classes: %s.class from %s", + aot_log_info(aot)("Prohibited package for non-bootstrap classes: %s.class from %s", _class_name, _source); THROW_NULL(vmSymbols::java_lang_ClassNotFoundException()); } @@ -648,7 +649,7 @@ void ClassListParser::resolve_indy(JavaThread* current, Symbol* class_name_symbo if (message != nullptr) { ex_msg = java_lang_String::as_utf8_string(message); } - log_warning(cds)("resolve_indy for class %s has encountered exception: %s %s", + aot_log_warning(aot)("resolve_indy for class %s has encountered exception: %s %s", class_name_symbol->as_C_string(), PENDING_EXCEPTION->klass()->external_name(), ex_msg); @@ -688,7 +689,7 @@ void ClassListParser::resolve_indy_impl(Symbol* class_name_symbol, TRAPS) { BootstrapInfo bootstrap_specifier(pool, pool_index, indy_index); Handle bsm = bootstrap_specifier.resolve_bsm(CHECK); if (!LambdaProxyClassDictionary::is_supported_invokedynamic(&bootstrap_specifier)) { - log_debug(cds, lambda)("is_supported_invokedynamic check failed for cp_index %d", pool_index); + log_debug(aot, lambda)("is_supported_invokedynamic check failed for cp_index %d", pool_index); continue; } bool matched = is_matching_cp_entry(pool, pool_index, CHECK); @@ -711,7 +712,7 @@ void ClassListParser::resolve_indy_impl(Symbol* class_name_symbol, TRAPS) { } if (!found) { ResourceMark rm(THREAD); - log_warning(cds)("No invoke dynamic constant pool entry can be found for class %s. The classlist is probably out-of-date.", + aot_log_warning(aot)("No invoke dynamic constant pool entry can be found for class %s. The classlist is probably out-of-date.", class_name_symbol->as_C_string()); } } @@ -773,7 +774,7 @@ Klass* ClassListParser::load_current_class(Symbol* class_name_symbol, TRAPS) { error("Duplicated ID %d for class %s", id, _class_name); } if (id2klass_table()->maybe_grow()) { - log_info(cds, hashtables)("Expanded id2klass_table() to %d", id2klass_table()->table_size()); + log_info(aot, hashtables)("Expanded id2klass_table() to %d", id2klass_table()->table_size()); } } @@ -877,9 +878,9 @@ void ClassListParser::parse_constant_pool_tag() { } if (SystemDictionaryShared::should_be_excluded(ik)) { - if (log_is_enabled(Warning, cds, resolve)) { + if (log_is_enabled(Warning, aot, resolve)) { ResourceMark rm; - log_warning(cds, resolve)("Cannot aot-resolve constants for %s because it is excluded", ik->external_name()); + log_warning(aot, resolve)("Cannot aot-resolve constants for %s because it is excluded", ik->external_name()); } return; } diff --git a/src/hotspot/share/cds/classListWriter.cpp b/src/hotspot/share/cds/classListWriter.cpp index 2a3513c45f5..c1ac1b47b11 100644 --- a/src/hotspot/share/cds/classListWriter.cpp +++ b/src/hotspot/share/cds/classListWriter.cpp @@ -57,7 +57,7 @@ void ClassListWriter::write(const InstanceKlass* k, const ClassFileStream* cfs) assert(is_enabled(), "must be"); if (!ClassLoader::has_jrt_entry()) { - log_warning(cds)("DumpLoadedClassList and CDS are not supported in exploded build"); + log_warning(aot)("DumpLoadedClassList and CDS are not supported in exploded build"); DumpLoadedClassList = nullptr; return; } diff --git a/src/hotspot/share/cds/cppVtables.cpp b/src/hotspot/share/cds/cppVtables.cpp index 7d484c8d327..46dbfd45d46 100644 --- a/src/hotspot/share/cds/cppVtables.cpp +++ b/src/hotspot/share/cds/cppVtables.cpp @@ -116,7 +116,7 @@ void CppVtableCloner::initialize(const char* name, CppVtableInfo* info) { // We already checked (and, if necessary, adjusted n) when the vtables were allocated, so we are // safe to do memcpy. - log_debug(cds, vtables)("Copying %3d vtable entries for %s", n, name); + log_debug(aot, vtables)("Copying %3d vtable entries for %s", n, name); memcpy(dstvtable, srcvtable, sizeof(intptr_t) * n); } @@ -166,7 +166,7 @@ int CppVtableCloner::get_vtable_length(const char* name) { break; } } - log_debug(cds, vtables)("Found %3d vtable entries for %s", vtable_len, name); + log_debug(aot, vtables)("Found %3d vtable entries for %s", vtable_len, name); return vtable_len; } diff --git a/src/hotspot/share/cds/dumpTimeClassInfo.cpp b/src/hotspot/share/cds/dumpTimeClassInfo.cpp index 94a0f14ff1f..6a06344fb0d 100644 --- a/src/hotspot/share/cds/dumpTimeClassInfo.cpp +++ b/src/hotspot/share/cds/dumpTimeClassInfo.cpp @@ -71,9 +71,9 @@ void DumpTimeClassInfo::add_verification_constraint(InstanceKlass* k, Symbol* na c |= from_is_object ? RunTimeClassInfo::FROM_IS_OBJECT : 0; vcflags_array->append(c); - if (log_is_enabled(Trace, cds, verification)) { + if (log_is_enabled(Trace, aot, verification)) { ResourceMark rm; - log_trace(cds, verification)("add_verification_constraint: %s: %s must be subclass of %s [0x%x] array len %d flags len %d", + log_trace(aot, verification)("add_verification_constraint: %s: %s must be subclass of %s [0x%x] array len %d flags len %d", k->external_name(), from_name->as_klass_external_name(), name->as_klass_external_name(), c, vc_array->length(), vcflags_array->length()); } diff --git a/src/hotspot/share/cds/dynamicArchive.cpp b/src/hotspot/share/cds/dynamicArchive.cpp index bf4257253e8..b1072dbce9b 100644 --- a/src/hotspot/share/cds/dynamicArchive.cpp +++ b/src/hotspot/share/cds/dynamicArchive.cpp @@ -25,6 +25,7 @@ #include "cds/aotArtifactFinder.hpp" #include "cds/aotClassLinker.hpp" #include "cds/aotClassLocation.hpp" +#include "cds/aotLogging.hpp" #include "cds/archiveBuilder.hpp" #include "cds/archiveHeapWriter.hpp" #include "cds/archiveUtils.inline.hpp" @@ -101,7 +102,7 @@ public: // is caused by dynamic dumping. void verify_universe(const char* info) { if (VerifyBeforeExit) { - log_info(cds)("Verify %s", info); + log_info(aot)("Verify %s", info); // Among other things, this ensures that Eden top is correct. Universe::heap()->prepare_for_verify(); Universe::verify(info); @@ -120,8 +121,8 @@ public: return; } - log_info(cds,dynamic)("CDS dynamic dump: clinit = " JLONG_FORMAT "ms)", - ClassLoader::class_init_time_ms()); + log_info(cds, dynamic)("CDS dynamic dump: clinit = " JLONG_FORMAT "ms)", + ClassLoader::class_init_time_ms()); init_header(); gather_source_objs(); @@ -136,7 +137,7 @@ public: sort_methods(); - log_info(cds)("Make classes shareable"); + log_info(aot)("Make classes shareable"); make_klasses_shareable(); char* serialized_data; @@ -161,7 +162,7 @@ public: } if (CDSConfig::is_dumping_lambdas_in_legacy_mode()) { - log_info(cds)("Adjust lambda proxy class dictionary"); + log_info(aot)("Adjust lambda proxy class dictionary"); LambdaProxyClassDictionary::adjust_dumptime_table(); } @@ -378,7 +379,7 @@ void DynamicArchiveBuilder::gather_array_klasses() { } } } - log_debug(cds)("Total array klasses gathered for dynamic archive: %d", DynamicArchive::num_array_klasses()); + log_debug(aot)("Total array klasses gathered for dynamic archive: %d", DynamicArchive::num_array_klasses()); } class VM_PopulateDynamicDumpSharedSpace: public VM_GC_Sync_Operation { @@ -390,7 +391,7 @@ public: void doit() { ResourceMark rm; if (AllowArchivingWithJavaAgent) { - log_warning(cds)("This %s was created with AllowArchivingWithJavaAgent. It should be used " + aot_log_warning(aot)("This %s was created with AllowArchivingWithJavaAgent. It should be used " "for testing purposes only and should not be used in a production environment", CDSConfig::type_of_archive_being_loaded()); } @@ -445,7 +446,7 @@ void DynamicArchive::setup_array_klasses() { ArrayKlass::cast(elm)->set_higher_dimension(oak); } } - log_debug(cds)("Total array klasses read from dynamic archive: %d", _dynamic_archive_array_klasses->length()); + log_debug(aot)("Total array klasses read from dynamic archive: %d", _dynamic_archive_array_klasses->length()); } } @@ -501,8 +502,8 @@ void DynamicArchive::dump_at_exit(JavaThread* current) { if (HAS_PENDING_EXCEPTION) { // One of the prepatory steps failed oop ex = current->pending_exception(); - log_error(cds)("Dynamic dump has failed"); - log_error(cds)("%s: %s", ex->klass()->external_name(), + aot_log_error(aot)("Dynamic dump has failed"); + aot_log_error(aot)("%s: %s", ex->klass()->external_name(), java_lang_String::as_utf8_string(java_lang_Throwable::message(ex))); CLEAR_PENDING_EXCEPTION; CDSConfig::disable_dumping_dynamic_archive(); // Just for good measure @@ -526,14 +527,14 @@ bool DynamicArchive::validate(FileMapInfo* dynamic_info) { // Check the header crc if (dynamic_header->base_header_crc() != base_info->crc()) { - log_warning(cds)("Dynamic archive cannot be used: static archive header checksum verification failed."); + aot_log_warning(aot)("Dynamic archive cannot be used: static archive header checksum verification failed."); return false; } // Check each space's crc for (int i = 0; i < MetaspaceShared::n_regions; i++) { if (dynamic_header->base_region_crc(i) != base_info->region_crc(i)) { - log_warning(cds)("Dynamic archive cannot be used: static archive region #%d checksum verification failed.", i); + aot_log_warning(aot)("Dynamic archive cannot be used: static archive region #%d checksum verification failed.", i); return false; } } diff --git a/src/hotspot/share/cds/filemap.cpp b/src/hotspot/share/cds/filemap.cpp index 1458aee412f..006a0cda59a 100644 --- a/src/hotspot/share/cds/filemap.cpp +++ b/src/hotspot/share/cds/filemap.cpp @@ -738,7 +738,7 @@ void FileMapInfo::open_as_output() { log_info(aot)("Writing binary AOTConfiguration file: %s", _full_path); } } else { - log_info(cds)("Dumping shared data to file: %s", _full_path); + aot_log_info(aot)("Dumping shared data to file: %s", _full_path); } #ifdef _WINDOWS // On Windows, need WRITE permission to remove the file. @@ -1541,11 +1541,20 @@ bool FileMapInfo::can_use_heap_region() { default: ShouldNotReachHere(); }; - LogTarget(Info, cds) lt; - if (lt.is_enabled()) { - LogStream ls(lt); - ls.print_raw(ss.base()); - header()->print(&ls); + if (CDSConfig::new_aot_flags_used()) { + LogTarget(Info, aot) lt; + if (lt.is_enabled()) { + LogStream ls(lt); + ls.print_raw(ss.base()); + header()->print(&ls); + } + } else { + LogTarget(Info, cds) lt; + if (lt.is_enabled()) { + LogStream ls(lt); + ls.print_raw(ss.base()); + header()->print(&ls); + } } assert(false, "%s", ss.base()); } diff --git a/src/hotspot/share/cds/finalImageRecipes.cpp b/src/hotspot/share/cds/finalImageRecipes.cpp index a19adda87fa..4605b287a16 100644 --- a/src/hotspot/share/cds/finalImageRecipes.cpp +++ b/src/hotspot/share/cds/finalImageRecipes.cpp @@ -208,7 +208,7 @@ void FinalImageRecipes::apply_recipes(TRAPS) { log_error(aot)("%s: %s", PENDING_EXCEPTION->klass()->external_name(), java_lang_String::as_utf8_string(java_lang_Throwable::message(PENDING_EXCEPTION))); log_error(aot)("Please check if your VM command-line is the same as in the training run"); - MetaspaceShared::unrecoverable_writing_error("Unexpected exception, use -Xlog:cds,exceptions=trace for detail"); + MetaspaceShared::unrecoverable_writing_error("Unexpected exception, use -Xlog:aot,exceptions=trace for detail"); } } diff --git a/src/hotspot/share/cds/lambdaFormInvokers.cpp b/src/hotspot/share/cds/lambdaFormInvokers.cpp index 3ed0daf2c4c..d6a51c87513 100644 --- a/src/hotspot/share/cds/lambdaFormInvokers.cpp +++ b/src/hotspot/share/cds/lambdaFormInvokers.cpp @@ -150,7 +150,7 @@ void LambdaFormInvokers::regenerate_holder_classes(TRAPS) { if (HAS_PENDING_EXCEPTION) { if (!PENDING_EXCEPTION->is_a(vmClasses::OutOfMemoryError_klass())) { - log_error(cds)("%s: %s", PENDING_EXCEPTION->klass()->external_name(), + log_error(aot)("%s: %s", PENDING_EXCEPTION->klass()->external_name(), java_lang_String::as_utf8_string(java_lang_Throwable::message(PENDING_EXCEPTION))); if (CDSConfig::is_dumping_static_archive()) { log_error(aot)("Failed to generate LambdaForm holder classes. Is your classlist out of date?"); diff --git a/src/hotspot/share/cds/lambdaProxyClassDictionary.cpp b/src/hotspot/share/cds/lambdaProxyClassDictionary.cpp index 6b2e432d559..3c2f410f7f1 100644 --- a/src/hotspot/share/cds/lambdaProxyClassDictionary.cpp +++ b/src/hotspot/share/cds/lambdaProxyClassDictionary.cpp @@ -99,7 +99,7 @@ void LambdaProxyClassDictionary::dumptime_init() { } bool LambdaProxyClassDictionary::is_supported_invokedynamic(BootstrapInfo* bsi) { - LogTarget(Debug, cds, lambda) log; + LogTarget(Debug, aot, lambda) log; if (bsi->arg_values() == nullptr || !bsi->arg_values()->is_objArray()) { if (log.is_enabled()) { LogStream log_stream(log); @@ -268,9 +268,9 @@ InstanceKlass* LambdaProxyClassDictionary::find_lambda_proxy_class(InstanceKlass const RunTimeLambdaProxyClassInfo* info = _runtime_static_table.lookup(&key, hash, 0); InstanceKlass* proxy_klass = find_lambda_proxy_class(info); if (proxy_klass == nullptr) { - if (info != nullptr && log_is_enabled(Debug, cds)) { + if (info != nullptr && log_is_enabled(Debug, aot)) { ResourceMark rm; - log_debug(cds)("Used all static archived lambda proxy classes for: %s %s%s", + log_debug(aot)("Used all static archived lambda proxy classes for: %s %s%s", caller_ik->external_name(), invoked_name->as_C_string(), invoked_type->as_C_string()); } } else { @@ -281,9 +281,9 @@ InstanceKlass* LambdaProxyClassDictionary::find_lambda_proxy_class(InstanceKlass info = _runtime_dynamic_table.lookup(&key, hash, 0); proxy_klass = find_lambda_proxy_class(info); if (proxy_klass == nullptr) { - if (info != nullptr && log_is_enabled(Debug, cds)) { + if (info != nullptr && log_is_enabled(Debug, aot)) { ResourceMark rm; - log_debug(cds)("Used all dynamic archived lambda proxy classes for: %s %s%s", + log_debug(aot)("Used all dynamic archived lambda proxy classes for: %s %s%s", caller_ik->external_name(), invoked_name->as_C_string(), invoked_type->as_C_string()); } } @@ -306,9 +306,9 @@ InstanceKlass* LambdaProxyClassDictionary::find_lambda_proxy_class(const RunTime prev_klass->set_next_link(nullptr); proxy_klass = curr_klass; proxy_klass->clear_lambda_proxy_is_available(); - if (log_is_enabled(Debug, cds)) { + if (log_is_enabled(Debug, aot)) { ResourceMark rm; - log_debug(cds)("Loaded lambda proxy: %s ", proxy_klass->external_name()); + log_debug(aot)("Loaded lambda proxy: %s ", proxy_klass->external_name()); } } } @@ -413,7 +413,7 @@ public: // In static dump, info._proxy_klasses->at(0) is already relocated to point to the archived class // (not the original class). ResourceMark rm; - log_info(cds,dynamic)("Archiving hidden %s", info._proxy_klasses->at(0)->external_name()); + log_info(cds, dynamic)("Archiving hidden %s", info._proxy_klasses->at(0)->external_name()); size_t byte_size = sizeof(RunTimeLambdaProxyClassInfo); RunTimeLambdaProxyClassInfo* runtime_info = (RunTimeLambdaProxyClassInfo*)ArchiveBuilder::ro_region_alloc(byte_size); diff --git a/src/hotspot/share/cds/metaspaceShared.cpp b/src/hotspot/share/cds/metaspaceShared.cpp index 53d75a3d7ec..83c5f254a17 100644 --- a/src/hotspot/share/cds/metaspaceShared.cpp +++ b/src/hotspot/share/cds/metaspaceShared.cpp @@ -801,7 +801,8 @@ void MetaspaceShared::preload_and_dump(TRAPS) { } else { aot_log_error(aot)("%s: %s", PENDING_EXCEPTION->klass()->external_name(), java_lang_String::as_utf8_string(java_lang_Throwable::message(PENDING_EXCEPTION))); - MetaspaceShared::writing_error("Unexpected exception, use -Xlog:cds,exceptions=trace for detail"); + MetaspaceShared::writing_error(err_msg("Unexpected exception, use -Xlog:aot%s,exceptions=trace for detail", + CDSConfig::new_aot_flags_used() ? "" : ",cds")); } } diff --git a/src/hotspot/share/cds/regeneratedClasses.cpp b/src/hotspot/share/cds/regeneratedClasses.cpp index 37d5e89598a..38bf1a11952 100644 --- a/src/hotspot/share/cds/regeneratedClasses.cpp +++ b/src/hotspot/share/cds/regeneratedClasses.cpp @@ -57,7 +57,7 @@ void RegeneratedClasses::add_class(InstanceKlass* orig_klass, InstanceKlass* reg Method* regen_m = regen_klass->find_method(orig_m->name(), orig_m->signature()); if (regen_m == nullptr) { ResourceMark rm; - log_warning(cds)("Method in original class is missing from regenerated class: " INTPTR_FORMAT " %s", + log_warning(aot)("Method in original class is missing from regenerated class: " INTPTR_FORMAT " %s", p2i(orig_m), orig_m->external_name()); } else { _renegerated_objs->put((address)orig_m, (address)regen_m); diff --git a/src/hotspot/share/classfile/classLoaderDataShared.cpp b/src/hotspot/share/classfile/classLoaderDataShared.cpp index 5cfe2df61b1..94ded38f5da 100644 --- a/src/hotspot/share/classfile/classLoaderDataShared.cpp +++ b/src/hotspot/share/classfile/classLoaderDataShared.cpp @@ -22,6 +22,7 @@ * */ +#include "cds/aotLogging.hpp" #include "cds/cdsConfig.hpp" #include "cds/serializeClosure.hpp" #include "classfile/classLoaderData.inline.hpp" @@ -192,7 +193,7 @@ void ClassLoaderDataShared::serialize(SerializeClosure* f) { // Must be done before ClassLoader::create_javabase() _archived_boot_loader_data.restore(null_class_loader_data(), true, false); ModuleEntryTable::set_javabase_moduleEntry(_archived_javabase_moduleEntry); - log_info(cds)("use_full_module_graph = true; java.base = " INTPTR_FORMAT, + aot_log_info(aot)("use_full_module_graph = true; java.base = " INTPTR_FORMAT, p2i(_archived_javabase_moduleEntry)); } } diff --git a/src/hotspot/share/classfile/classLoaderExt.cpp b/src/hotspot/share/classfile/classLoaderExt.cpp index f3f27d7768e..cb20ebb2512 100644 --- a/src/hotspot/share/classfile/classLoaderExt.cpp +++ b/src/hotspot/share/classfile/classLoaderExt.cpp @@ -105,7 +105,7 @@ void ClassLoaderExt::record_result_for_builtin_loader(s2 classpath_index, Instan // which requires all the boot classes to be from known locations. This is an // uncommon scenario (even in test cases). Let's simply disable heap object archiving. ResourceMark rm; - log_warning(cds)("CDS heap objects cannot be written because class %s maybe modified by ClassFileLoadHook.", + log_warning(aot)("heap objects cannot be written because class %s maybe modified by ClassFileLoadHook.", result->external_name()); CDSConfig::disable_heap_dumping(); } diff --git a/src/hotspot/share/classfile/compactHashtable.cpp b/src/hotspot/share/classfile/compactHashtable.cpp index 15ae5ba8013..9f7ec6bd118 100644 --- a/src/hotspot/share/classfile/compactHashtable.cpp +++ b/src/hotspot/share/classfile/compactHashtable.cpp @@ -155,7 +155,7 @@ void CompactHashtableWriter::dump(SimpleCompactHashtable *cht, const char* table cht->init(base_address, _num_entries_written, _num_buckets, _compact_buckets->data(), _compact_entries->data()); - LogMessage(cds, hashtables) msg; + LogMessage(aot, hashtables) msg; if (msg.is_info()) { double avg_cost = 0.0; if (_num_entries_written > 0) { diff --git a/src/hotspot/share/classfile/moduleEntry.cpp b/src/hotspot/share/classfile/moduleEntry.cpp index 18f2abfd5f4..208c4efe035 100644 --- a/src/hotspot/share/classfile/moduleEntry.cpp +++ b/src/hotspot/share/classfile/moduleEntry.cpp @@ -427,9 +427,9 @@ ModuleEntry* ModuleEntry::allocate_archived_entry() const { // For verify_archived_module_entries() DEBUG_ONLY(_num_inited_module_entries++); - if (log_is_enabled(Info, cds, module)) { + if (log_is_enabled(Info, aot, module)) { ResourceMark rm; - LogStream ls(Log(cds, module)::info()); + LogStream ls(Log(aot, module)::info()); ls.print("Stored in archive: "); archived_entry->print(&ls); } @@ -535,9 +535,9 @@ void ModuleEntry::restore_archived_oops(ClassLoaderData* loader_data) { assert(java_lang_Module::loader(module_handle()) == loader_data->class_loader(), "must be set in dump time"); - if (log_is_enabled(Info, cds, module)) { + if (log_is_enabled(Info, aot, module)) { ResourceMark rm; - LogStream ls(Log(cds, module)::info()); + LogStream ls(Log(aot, module)::info()); ls.print("Restored from archive: "); print(&ls); } diff --git a/src/hotspot/share/classfile/modules.cpp b/src/hotspot/share/classfile/modules.cpp index a75c4abd9c5..874dc013217 100644 --- a/src/hotspot/share/classfile/modules.cpp +++ b/src/hotspot/share/classfile/modules.cpp @@ -22,6 +22,7 @@ * */ +#include "cds/aotLogging.hpp" #include "cds/archiveBuilder.hpp" #include "cds/cdsConfig.hpp" #include "cds/metaspaceShared.hpp" @@ -489,13 +490,13 @@ void Modules::check_archived_module_oop(oop orig_module_obj) { // java.lang.Module::ALL_UNNAMED_MODULE // java.lang.Module::EVERYONE_MODULE // jdk.internal.loader.ClassLoaders$BootClassLoader::unnamedModule - log_info(cds, module)("Archived java.lang.Module oop " PTR_FORMAT " with no ModuleEntry*", p2i(orig_module_obj)); + log_info(aot, module)("Archived java.lang.Module oop " PTR_FORMAT " with no ModuleEntry*", p2i(orig_module_obj)); assert(java_lang_Module::name(orig_module_obj) == nullptr, "must be unnamed"); } else { // This java.lang.Module oop has an ModuleEntry*. Check if the latter is archived. - if (log_is_enabled(Info, cds, module)) { + if (log_is_enabled(Info, aot, module)) { ResourceMark rm; - LogStream ls(Log(cds, module)::info()); + LogStream ls(Log(aot, module)::info()); ls.print("Archived java.lang.Module oop " PTR_FORMAT " for ", p2i(orig_module_obj)); orig_module_ent->print(&ls); } @@ -599,7 +600,7 @@ Modules::ArchivedProperty& Modules::archived_prop(size_t i) { void Modules::ArchivedProperty::runtime_check() const { ResourceMark rm; const char* runtime_value = get_flattened_value(); - log_info(cds)("archived module property %s: %s", _prop, + aot_log_info(aot)("archived module property %s: %s", _prop, _archived_value != nullptr ? _archived_value : "(null)"); bool disable = false; @@ -693,8 +694,8 @@ void Modules::serialize_archived_module_info(SerializeClosure* soc) { archived_prop(i).serialize(soc); } if (soc->reading()) { - log_info(cds)("optimized module handling: %s", CDSConfig::is_using_optimized_module_handling() ? "enabled" : "disabled"); - log_info(cds)("full module graph: %s", CDSConfig::is_using_full_module_graph() ? "enabled" : "disabled"); + aot_log_info(aot)("optimized module handling: %s", CDSConfig::is_using_optimized_module_handling() ? "enabled" : "disabled"); + aot_log_info(aot)("full module graph: %s", CDSConfig::is_using_full_module_graph() ? "enabled" : "disabled"); } } diff --git a/src/hotspot/share/classfile/stringTable.cpp b/src/hotspot/share/classfile/stringTable.cpp index b048c531d13..a9d05996ebf 100644 --- a/src/hotspot/share/classfile/stringTable.cpp +++ b/src/hotspot/share/classfile/stringTable.cpp @@ -955,13 +955,13 @@ void StringTable::allocate_shared_strings_array(TRAPS) { int total = (int)_items_count; size_t single_array_size = objArrayOopDesc::object_size(total); - log_info(cds)("allocated string table for %d strings", total); + log_info(aot)("allocated string table for %d strings", total); if (!ArchiveHeapWriter::is_too_large_to_archive(single_array_size)) { // The entire table can fit in a single array objArrayOop array = oopFactory::new_objArray(vmClasses::Object_klass(), total, CHECK); _shared_strings_array = OopHandle(Universe::vm_global(), array); - log_info(cds)("string table array (single level) length = %d", total); + log_info(aot)("string table array (single level) length = %d", total); } else { // Split the table in two levels of arrays. int primary_array_length = (total + _secondary_array_max_length - 1) / _secondary_array_max_length; @@ -972,7 +972,7 @@ void StringTable::allocate_shared_strings_array(TRAPS) { // This can only happen if you have an extremely large number of classes that // refer to more than 16384 * 16384 = 26M interned strings! Not a practical concern // but bail out for safety. - log_error(cds)("Too many strings to be archived: %zu", _items_count); + log_error(aot)("Too many strings to be archived: %zu", _items_count); MetaspaceShared::unrecoverable_writing_error(); } @@ -980,7 +980,7 @@ void StringTable::allocate_shared_strings_array(TRAPS) { objArrayHandle primaryHandle(THREAD, primary); _shared_strings_array = OopHandle(Universe::vm_global(), primary); - log_info(cds)("string table array (primary) length = %d", primary_array_length); + log_info(aot)("string table array (primary) length = %d", primary_array_length); for (int i = 0; i < primary_array_length; i++) { int len; if (total > _secondary_array_max_length) { @@ -993,7 +993,7 @@ void StringTable::allocate_shared_strings_array(TRAPS) { objArrayOop secondary = oopFactory::new_objArray(vmClasses::Object_klass(), len, CHECK); primaryHandle()->obj_at_put(i, secondary); - log_info(cds)("string table array (secondary)[%d] length = %d", i, len); + log_info(aot)("string table array (secondary)[%d] length = %d", i, len); assert(!ArchiveHeapWriter::is_too_large_to_archive(secondary), "sanity"); } @@ -1064,7 +1064,7 @@ oop StringTable::init_shared_strings_array() { }; _local_table->do_safepoint_scan(copy_into_array); - log_info(cds)("Archived %d interned strings", index); + log_info(aot)("Archived %d interned strings", index); return array; }; diff --git a/src/hotspot/share/classfile/systemDictionaryShared.cpp b/src/hotspot/share/classfile/systemDictionaryShared.cpp index cb0fac4c90d..2ac52c4b697 100644 --- a/src/hotspot/share/classfile/systemDictionaryShared.cpp +++ b/src/hotspot/share/classfile/systemDictionaryShared.cpp @@ -24,6 +24,7 @@ #include "cds/aotClassFilter.hpp" #include "cds/aotClassLocation.hpp" +#include "cds/aotLogging.hpp" #include "cds/archiveBuilder.hpp" #include "cds/archiveUtils.hpp" #include "cds/cdsConfig.hpp" @@ -229,7 +230,7 @@ bool SystemDictionaryShared::check_for_exclusion(InstanceKlass* k, DumpTimeClass // Returns true so the caller can do: return warn_excluded("....."); bool SystemDictionaryShared::warn_excluded(InstanceKlass* k, const char* reason) { ResourceMark rm; - log_warning(cds)("Skipping %s: %s", k->name()->as_C_string(), reason); + aot_log_warning(aot)("Skipping %s: %s", k->name()->as_C_string(), reason); return true; } @@ -273,7 +274,7 @@ bool SystemDictionaryShared::check_for_exclusion_impl(InstanceKlass* k) { k->set_shared_classpath_index(0); } else { ResourceMark rm; - log_info(cds)("Skipping %s because it is dynamically generated", k->name()->as_C_string()); + aot_log_info(aot)("Skipping %s because it is dynamically generated", k->name()->as_C_string()); return true; // exclude without warning } } else { @@ -325,14 +326,14 @@ bool SystemDictionaryShared::check_for_exclusion_impl(InstanceKlass* k) { if (UnregisteredClasses::check_for_exclusion(k)) { ResourceMark rm; - log_info(cds)("Skipping %s: used only when dumping CDS archive", k->name()->as_C_string()); + aot_log_info(aot)("Skipping %s: used only when dumping CDS archive", k->name()->as_C_string()); return true; } InstanceKlass* super = k->java_super(); if (super != nullptr && check_for_exclusion(super, nullptr)) { ResourceMark rm; - log_warning(cds)("Skipping %s: super class %s is excluded", k->name()->as_C_string(), super->name()->as_C_string()); + aot_log_warning(aot)("Skipping %s: super class %s is excluded", k->name()->as_C_string(), super->name()->as_C_string()); return true; } @@ -342,7 +343,7 @@ bool SystemDictionaryShared::check_for_exclusion_impl(InstanceKlass* k) { InstanceKlass* intf = interfaces->at(i); if (check_for_exclusion(intf, nullptr)) { ResourceMark rm; - log_warning(cds)("Skipping %s: interface %s is excluded", k->name()->as_C_string(), intf->name()->as_C_string()); + aot_log_warning(aot)("Skipping %s: interface %s is excluded", k->name()->as_C_string(), intf->name()->as_C_string()); return true; } } @@ -824,9 +825,9 @@ void SystemDictionaryShared::check_verification_constraints(InstanceKlass* klass Symbol* name = vc->name(); Symbol* from_name = vc->from_name(); - if (log_is_enabled(Trace, cds, verification)) { + if (log_is_enabled(Trace, aot, verification)) { ResourceMark rm(THREAD); - log_trace(cds, verification)("check_verification_constraint: %s: %s must be subclass of %s [0x%x]", + log_trace(aot, verification)("check_verification_constraint: %s: %s must be subclass of %s [0x%x]", klass->external_name(), from_name->as_klass_external_name(), name->as_klass_external_name(), record->verifier_constraint_flag(i)); } @@ -1042,9 +1043,9 @@ public: } else { _writer->add(hash, delta); } - if (log_is_enabled(Trace, cds, hashtables)) { + if (log_is_enabled(Trace, aot, hashtables)) { ResourceMark rm; - log_trace(cds,hashtables)("%s dictionary: %s", (_is_builtin ? "builtin" : "unregistered"), info._klass->external_name()); + log_trace(aot, hashtables)("%s dictionary: %s", (_is_builtin ? "builtin" : "unregistered"), info._klass->external_name()); } // Save this for quick runtime lookup of InstanceKlass* -> RunTimeClassInfo* diff --git a/src/hotspot/share/interpreter/interpreterRuntime.cpp b/src/hotspot/share/interpreter/interpreterRuntime.cpp index 195bf57e055..f0b85d9f5d4 100644 --- a/src/hotspot/share/interpreter/interpreterRuntime.cpp +++ b/src/hotspot/share/interpreter/interpreterRuntime.cpp @@ -917,7 +917,7 @@ void InterpreterRuntime::cds_resolve_invoke(Bytecodes::Code bytecode, int method // Can't link it here since there are no guarantees it'll be prelinked on the next run. ResourceMark rm; InstanceKlass* resolved_iklass = InstanceKlass::cast(link_info.resolved_klass()); - log_info(cds, resolve)("Not resolved: class not linked: %s %s %s", + log_info(aot, resolve)("Not resolved: class not linked: %s %s %s", resolved_iklass->is_shared() ? "is_shared" : "", resolved_iklass->init_state_name(), resolved_iklass->external_name()); diff --git a/src/hotspot/share/memory/metaspaceClosure.cpp b/src/hotspot/share/memory/metaspaceClosure.cpp index 46e80ec3a1f..f3c6e350034 100644 --- a/src/hotspot/share/memory/metaspaceClosure.cpp +++ b/src/hotspot/share/memory/metaspaceClosure.cpp @@ -91,7 +91,7 @@ bool UniqueMetaspaceClosure::do_ref(MetaspaceClosure::Ref* ref, bool read_only) return false; // Already visited: no need to iterate embedded pointers. } else { if (_has_been_visited.maybe_grow()) { - log_info(cds, hashtables)("Expanded _has_been_visited table to %d", _has_been_visited.table_size()); + log_info(aot, hashtables)("Expanded _has_been_visited table to %d", _has_been_visited.table_size()); } return do_unique_ref(ref, read_only); } diff --git a/src/hotspot/share/memory/metaspaceClosure.hpp b/src/hotspot/share/memory/metaspaceClosure.hpp index 22f8899e2c7..3bec05324e7 100644 --- a/src/hotspot/share/memory/metaspaceClosure.hpp +++ b/src/hotspot/share/memory/metaspaceClosure.hpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2023, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2017, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -200,11 +200,11 @@ private: virtual void metaspace_pointers_do(MetaspaceClosure *it) const { Array* array = ArrayRef::dereference(); - log_trace(cds)("Iter(OtherArray): %p [%d]", array, array->length()); + log_trace(aot)("Iter(OtherArray): %p [%d]", array, array->length()); } virtual void metaspace_pointers_do_at(MetaspaceClosure *it, address new_loc) const { Array* array = (Array*)new_loc; - log_trace(cds)("Iter(OtherArray): %p [%d]", array, array->length()); + log_trace(aot)("Iter(OtherArray): %p [%d]", array, array->length()); } }; @@ -222,7 +222,7 @@ private: } private: void metaspace_pointers_do_at_impl(MetaspaceClosure *it, Array* array) const { - log_trace(cds)("Iter(MSOArray): %p [%d]", array, array->length()); + log_trace(aot)("Iter(MSOArray): %p [%d]", array, array->length()); for (int i = 0; i < array->length(); i++) { T* elm = array->adr_at(i); elm->metaspace_pointers_do(it); @@ -244,7 +244,7 @@ private: } private: void metaspace_pointers_do_at_impl(MetaspaceClosure *it, Array* array) const { - log_trace(cds)("Iter(MSOPointerArray): %p [%d]", array, array->length()); + log_trace(aot)("Iter(MSOPointerArray): %p [%d]", array, array->length()); for (int i = 0; i < array->length(); i++) { T** mpp = array->adr_at(i); it->push(mpp); diff --git a/src/hotspot/share/oops/annotations.cpp b/src/hotspot/share/oops/annotations.cpp index 606c18b350d..c4e49d52383 100644 --- a/src/hotspot/share/oops/annotations.cpp +++ b/src/hotspot/share/oops/annotations.cpp @@ -76,7 +76,7 @@ typeArrayOop Annotations::make_java_array(AnnotationArray* annotations, TRAPS) { } void Annotations::metaspace_pointers_do(MetaspaceClosure* it) { - log_trace(cds)("Iter(Annotations): %p", this); + log_trace(aot)("Iter(Annotations): %p", this); it->push(&_class_annotations); it->push(&_fields_annotations); it->push(&_class_type_annotations); diff --git a/src/hotspot/share/oops/arrayKlass.cpp b/src/hotspot/share/oops/arrayKlass.cpp index 8b6a97fd62d..5f6f6ac674d 100644 --- a/src/hotspot/share/oops/arrayKlass.cpp +++ b/src/hotspot/share/oops/arrayKlass.cpp @@ -207,7 +207,7 @@ void ArrayKlass::metaspace_pointers_do(MetaspaceClosure* it) { Klass::metaspace_pointers_do(it); ResourceMark rm; - log_trace(cds)("Iter(ArrayKlass): %p (%s)", this, external_name()); + log_trace(aot)("Iter(ArrayKlass): %p (%s)", this, external_name()); // need to cast away volatile it->push((Klass**)&_higher_dimension); diff --git a/src/hotspot/share/oops/constMethod.cpp b/src/hotspot/share/oops/constMethod.cpp index 1fed47f7ff2..4048fc82d21 100644 --- a/src/hotspot/share/oops/constMethod.cpp +++ b/src/hotspot/share/oops/constMethod.cpp @@ -417,7 +417,7 @@ void ConstMethod::copy_annotations_from(ClassLoaderData* loader_data, ConstMetho } void ConstMethod::metaspace_pointers_do(MetaspaceClosure* it) { - log_trace(cds)("Iter(ConstMethod): %p", this); + log_trace(aot)("Iter(ConstMethod): %p", this); if (!method()->method_holder()->is_rewritten()) { it->push(&_constants, MetaspaceClosure::_writable); diff --git a/src/hotspot/share/oops/constantPool.cpp b/src/hotspot/share/oops/constantPool.cpp index c02fdaf2dc6..636fbd84487 100644 --- a/src/hotspot/share/oops/constantPool.cpp +++ b/src/hotspot/share/oops/constantPool.cpp @@ -149,7 +149,7 @@ void ConstantPool::release_C_heap_structures() { } void ConstantPool::metaspace_pointers_do(MetaspaceClosure* it) { - log_trace(cds)("Iter(ConstantPool): %p", this); + log_trace(aot)("Iter(ConstantPool): %p", this); it->push(&_tags, MetaspaceClosure::_writable); it->push(&_cache); @@ -501,7 +501,7 @@ static const char* get_type(Klass* k) { void ConstantPool::remove_unshareable_entries() { ResourceMark rm; - log_info(cds, resolve)("Archiving CP entries for %s", pool_holder()->name()->as_C_string()); + log_info(aot, resolve)("Archiving CP entries for %s", pool_holder()->name()->as_C_string()); for (int cp_index = 1; cp_index < length(); cp_index++) { // cp_index 0 is unused int cp_tag = tag_at(cp_index).value(); switch (cp_tag) { @@ -560,7 +560,7 @@ void ConstantPool::remove_resolved_klass_if_non_deterministic(int cp_index) { resolved_klasses()->at_put(resolved_klass_index, nullptr); } - LogStreamHandle(Trace, cds, resolve) log; + LogStreamHandle(Trace, aot, resolve) log; if (log.is_enabled()) { ResourceMark rm; log.print("%s klass CP entry [%3d]: %s %s", diff --git a/src/hotspot/share/oops/cpCache.cpp b/src/hotspot/share/oops/cpCache.cpp index a354e0b07a6..b7c1d445a98 100644 --- a/src/hotspot/share/oops/cpCache.cpp +++ b/src/hotspot/share/oops/cpCache.cpp @@ -437,7 +437,7 @@ void ConstantPoolCache::remove_resolved_field_entries_if_non_deterministic() { rfi->remove_unshareable_info(); } if (resolved) { - LogStreamHandle(Trace, cds, resolve) log; + LogStreamHandle(Trace, aot, resolve) log; if (log.is_enabled()) { ResourceMark rm; int klass_cp_index = cp->uncached_klass_ref_index_at(cp_index); @@ -477,7 +477,7 @@ void ConstantPoolCache::remove_resolved_method_entries_if_non_deterministic() { rme->remove_unshareable_info(); } if (resolved) { - LogStreamHandle(Trace, cds, resolve) log; + LogStreamHandle(Trace, aot, resolve) log; if (log.is_enabled()) { ResourceMark rm; int klass_cp_index = cp->uncached_klass_ref_index_at(cp_index); @@ -517,7 +517,7 @@ void ConstantPoolCache::remove_resolved_indy_entries_if_non_deterministic() { rei->remove_unshareable_info(); } if (resolved) { - LogStreamHandle(Trace, cds, resolve) log; + LogStreamHandle(Trace, aot, resolve) log; if (log.is_enabled()) { ResourceMark rm; int bsm = cp->bootstrap_method_ref_index_at(cp_index); @@ -705,7 +705,7 @@ void ConstantPoolCache::dump_cache() { #endif // INCLUDE_JVMTI void ConstantPoolCache::metaspace_pointers_do(MetaspaceClosure* it) { - log_trace(cds)("Iter(ConstantPoolCache): %p", this); + log_trace(aot)("Iter(ConstantPoolCache): %p", this); it->push(&_constant_pool); it->push(&_reference_map); if (_resolved_indy_entries != nullptr) { diff --git a/src/hotspot/share/oops/instanceKlass.cpp b/src/hotspot/share/oops/instanceKlass.cpp index 5bde777c47e..b6f35d889ab 100644 --- a/src/hotspot/share/oops/instanceKlass.cpp +++ b/src/hotspot/share/oops/instanceKlass.cpp @@ -866,9 +866,9 @@ void InstanceKlass::initialize_with_aot_initialized_mirror(TRAPS) { initialize(CHECK); return; } - if (log_is_enabled(Info, cds, init)) { + if (log_is_enabled(Info, aot, init)) { ResourceMark rm; - log_info(cds, init)("%s (aot-inited)", external_name()); + log_info(aot, init)("%s (aot-inited)", external_name()); } link_class(CHECK); @@ -2567,9 +2567,9 @@ void InstanceKlass::clean_method_data() { void InstanceKlass::metaspace_pointers_do(MetaspaceClosure* it) { Klass::metaspace_pointers_do(it); - if (log_is_enabled(Trace, cds)) { + if (log_is_enabled(Trace, aot)) { ResourceMark rm; - log_trace(cds)("Iter(InstanceKlass): %p (%s)", this, external_name()); + log_trace(aot)("Iter(InstanceKlass): %p (%s)", this, external_name()); } it->push(&_annotations); diff --git a/src/hotspot/share/oops/klass.cpp b/src/hotspot/share/oops/klass.cpp index 71f31cef580..a41f3540f39 100644 --- a/src/hotspot/share/oops/klass.cpp +++ b/src/hotspot/share/oops/klass.cpp @@ -761,9 +761,9 @@ void Klass::clean_weak_klass_links(bool unloading_occurred, bool clean_alive_kla } void Klass::metaspace_pointers_do(MetaspaceClosure* it) { - if (log_is_enabled(Trace, cds)) { + if (log_is_enabled(Trace, aot)) { ResourceMark rm; - log_trace(cds)("Iter(Klass): %p (%s)", this, external_name()); + log_trace(aot)("Iter(Klass): %p (%s)", this, external_name()); } it->push(&_name); diff --git a/src/hotspot/share/oops/method.cpp b/src/hotspot/share/oops/method.cpp index 7496fe7c4e6..84c594b99d9 100644 --- a/src/hotspot/share/oops/method.cpp +++ b/src/hotspot/share/oops/method.cpp @@ -386,7 +386,7 @@ Symbol* Method::klass_name() const { } void Method::metaspace_pointers_do(MetaspaceClosure* it) { - log_trace(cds)("Iter(Method): %p", this); + log_trace(aot)("Iter(Method): %p", this); if (!method_holder()->is_rewritten()) { it->push(&_constMethod, MetaspaceClosure::_writable); diff --git a/src/hotspot/share/oops/methodData.cpp b/src/hotspot/share/oops/methodData.cpp index 280a69df583..a903340f12e 100644 --- a/src/hotspot/share/oops/methodData.cpp +++ b/src/hotspot/share/oops/methodData.cpp @@ -1725,7 +1725,7 @@ bool MethodData::profile_parameters_for_method(const methodHandle& m) { } void MethodData::metaspace_pointers_do(MetaspaceClosure* it) { - log_trace(cds)("Iter(MethodData): %p", this); + log_trace(aot)("Iter(MethodData): %p", this); it->push(&_method); } diff --git a/src/hotspot/share/oops/recordComponent.cpp b/src/hotspot/share/oops/recordComponent.cpp index 176e83820e4..4e33e71e6ef 100644 --- a/src/hotspot/share/oops/recordComponent.cpp +++ b/src/hotspot/share/oops/recordComponent.cpp @@ -50,7 +50,7 @@ void RecordComponent::deallocate_contents(ClassLoaderData* loader_data) { } void RecordComponent::metaspace_pointers_do(MetaspaceClosure* it) { - log_trace(cds)("Iter(RecordComponent): %p", this); + log_trace(aot)("Iter(RecordComponent): %p", this); it->push(&_annotations); it->push(&_type_annotations); } diff --git a/src/hotspot/share/oops/symbol.cpp b/src/hotspot/share/oops/symbol.cpp index 4fc120ff19f..0f2cd8e6e6b 100644 --- a/src/hotspot/share/oops/symbol.cpp +++ b/src/hotspot/share/oops/symbol.cpp @@ -367,8 +367,8 @@ void Symbol::make_permanent() { } void Symbol::metaspace_pointers_do(MetaspaceClosure* it) { - if (log_is_enabled(Trace, cds)) { - LogStream trace_stream(Log(cds)::trace()); + if (log_is_enabled(Trace, aot)) { + LogStream trace_stream(Log(aot)::trace()); trace_stream.print("Iter(Symbol): %p ", this); print_value_on(&trace_stream); trace_stream.cr(); diff --git a/src/hotspot/share/prims/jvm.cpp b/src/hotspot/share/prims/jvm.cpp index 874473ac9a1..e50318c90b6 100644 --- a/src/hotspot/share/prims/jvm.cpp +++ b/src/hotspot/share/prims/jvm.cpp @@ -2767,10 +2767,10 @@ JVM_ENTRY(void, JVM_StartThread(JNIEnv* env, jobject jthread)) // creates the module graph, etc. It's safe to not start the other // threads which are launched by class static initializers // (ReferenceHandler, FinalizerThread and CleanerImpl). - if (log_is_enabled(Info, cds)) { + if (log_is_enabled(Info, aot)) { ResourceMark rm; oop t = JNIHandles::resolve_non_null(jthread); - log_info(cds)("JVM_StartThread() ignored: %s", t->klass()->external_name()); + log_info(aot)("JVM_StartThread() ignored: %s", t->klass()->external_name()); } return; } @@ -3463,7 +3463,7 @@ JVM_ENTRY_NO_ENV(jlong, JVM_GetRandomSeedForDumping()) if (seed == 0) { // don't let this ever be zero. seed = 0x87654321; } - log_debug(cds)("JVM_GetRandomSeedForDumping() = " JLONG_FORMAT, seed); + log_debug(aot)("JVM_GetRandomSeedForDumping() = " JLONG_FORMAT, seed); return seed; } else { return 0; @@ -3526,7 +3526,7 @@ JVM_ENTRY(jboolean, JVM_NeedsClassInitBarrierForCDS(JNIEnv* env, jclass cls)) // If we cannot cache the class in AOT-initialized state, java.lang.invoke handles // must emit barriers to ensure class initialization during production run. ResourceMark rm(THREAD); - log_debug(cds)("NeedsClassInitBarrierForCDS: %s", k->external_name()); + log_debug(aot)("NeedsClassInitBarrierForCDS: %s", k->external_name()); return true; } } diff --git a/src/hotspot/share/runtime/arguments.cpp b/src/hotspot/share/runtime/arguments.cpp index 2fa519c5ea5..e1fde4803c4 100644 --- a/src/hotspot/share/runtime/arguments.cpp +++ b/src/hotspot/share/runtime/arguments.cpp @@ -1374,7 +1374,7 @@ void Arguments::no_shared_spaces(const char* message) { if (CDSConfig::new_aot_flags_used()) { log_warning(aot)("Unable to use AOT cache: %s", message); } else { - log_info(cds)("Unable to use shared archive: %s", message); + aot_log_info(aot)("Unable to use shared archive: %s", message); } UseSharedSpaces = false; } @@ -3616,10 +3616,11 @@ jint Arguments::parse(const JavaVMInitArgs* initial_cmd_args) { return JNI_ERR; } if ((CDSConfig::is_using_archive() && xshare_auto_cmd_line) || - log_is_enabled(Info, cds)) { + log_is_enabled(Info, cds) || log_is_enabled(Info, aot)) { warning("Shared spaces are not supported in this VM"); UseSharedSpaces = false; LogConfiguration::configure_stdout(LogLevel::Off, true, LOG_TAGS(cds)); + LogConfiguration::configure_stdout(LogLevel::Off, true, LOG_TAGS(aot)); } no_shared_spaces("CDS Disabled"); #endif // INCLUDE_CDS diff --git a/src/hotspot/share/runtime/sharedRuntime.cpp b/src/hotspot/share/runtime/sharedRuntime.cpp index 7bfb9c62909..a4f5761ae48 100644 --- a/src/hotspot/share/runtime/sharedRuntime.cpp +++ b/src/hotspot/share/runtime/sharedRuntime.cpp @@ -2898,7 +2898,7 @@ public: {} bool do_entry(AdapterFingerPrint* fp, AdapterHandlerEntry* entry) { - LogStreamHandle(Trace, cds) lsh; + LogStreamHandle(Trace, aot) lsh; if (ArchiveBuilder::current()->has_been_archived((address)entry)) { assert(ArchiveBuilder::current()->has_been_archived((address)fp), "must be"); AdapterFingerPrint* buffered_fp = ArchiveBuilder::current()->get_buffered_addr(fp); @@ -2912,11 +2912,11 @@ public: if (lsh.is_enabled()) { address fp_runtime_addr = (address)buffered_fp + ArchiveBuilder::current()->buffer_to_requested_delta(); address entry_runtime_addr = (address)buffered_entry + ArchiveBuilder::current()->buffer_to_requested_delta(); - log_trace(cds)("Added fp=%p (%s), entry=%p to the archived adater table", buffered_fp, buffered_fp->as_basic_args_string(), buffered_entry); + log_trace(aot)("Added fp=%p (%s), entry=%p to the archived adater table", buffered_fp, buffered_fp->as_basic_args_string(), buffered_entry); } } else { if (lsh.is_enabled()) { - log_trace(cds)("Skipping adapter handler %p (fp=%s) as it is not archived", entry, fp->as_basic_args_string()); + log_trace(aot)("Skipping adapter handler %p (fp=%s) as it is not archived", entry, fp->as_basic_args_string()); } } return true; @@ -2964,7 +2964,7 @@ void AdapterHandlerEntry::link() { if (AOTCodeCache::is_using_adapter()) { adapter_blob = AdapterHandlerLibrary::link_aot_adapter_handler(this); if (adapter_blob == nullptr) { - log_warning(cds)("Failed to link AdapterHandlerEntry (fp=%s) to its code in the AOT code cache", _fingerprint->as_basic_args_string()); + log_warning(aot)("Failed to link AdapterHandlerEntry (fp=%s) to its code in the AOT code cache", _fingerprint->as_basic_args_string()); generate_code = true; } } else { @@ -3052,7 +3052,7 @@ void AdapterHandlerEntry::relocate(address new_base) { } void AdapterHandlerEntry::metaspace_pointers_do(MetaspaceClosure* it) { - LogStreamHandle(Trace, cds) lsh; + LogStreamHandle(Trace, aot) lsh; if (lsh.is_enabled()) { lsh.print("Iter(AdapterHandlerEntry): %p(%s)", this, _fingerprint->as_basic_args_string()); lsh.cr(); diff --git a/test/hotspot/jtreg/runtime/cds/CDSMapReader.java b/test/hotspot/jtreg/runtime/cds/CDSMapReader.java index f9fc4c222cb..f25455b2f03 100644 --- a/test/hotspot/jtreg/runtime/cds/CDSMapReader.java +++ b/test/hotspot/jtreg/runtime/cds/CDSMapReader.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023, 2024, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2023, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -33,7 +33,7 @@ import java.util.regex.Pattern; This is a simple parser for parsing the output of - java -Xshare:dump -Xlog:cds+map=debug,cds+map+oops=trace:file=cds.map:none:filesize=0 + java -Xshare:dump -Xlog:aot+map=debug,aot+map+oops=trace:file=cds.map:none:filesize=0 The map file contains patterns like this for the heap objects: diff --git a/test/hotspot/jtreg/runtime/cds/CDSMapTest.java b/test/hotspot/jtreg/runtime/cds/CDSMapTest.java index fbc98fef1d6..5a5978a8633 100644 --- a/test/hotspot/jtreg/runtime/cds/CDSMapTest.java +++ b/test/hotspot/jtreg/runtime/cds/CDSMapTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2023, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -24,7 +24,7 @@ /** * @test * @bug 8308903 - * @summary Test the contents of -Xlog:cds+map + * @summary Test the contents of -Xlog:aot+map * @requires vm.cds * @library /test/lib * @run driver CDSMapTest @@ -67,7 +67,7 @@ public class CDSMapTest { String mapName = logName + ".map"; CDSOptions opts = (new CDSOptions()) .addPrefix("-Xlog:cds=debug") - .addPrefix("-Xlog:cds+map=debug,cds+map+oops=trace:file=" + mapName + ":none:filesize=0") + .addPrefix("-Xlog:aot+map=debug,aot+map+oops=trace:file=" + mapName + ":none:filesize=0") .setArchiveName(archiveName) .addSuffix(args) .addSuffix(more); diff --git a/test/hotspot/jtreg/runtime/cds/DeterministicDump.java b/test/hotspot/jtreg/runtime/cds/DeterministicDump.java index 92643d648b7..202262a8117 100644 --- a/test/hotspot/jtreg/runtime/cds/DeterministicDump.java +++ b/test/hotspot/jtreg/runtime/cds/DeterministicDump.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020, 2024, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2020, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -100,7 +100,7 @@ public class DeterministicDump { CDSOptions opts = (new CDSOptions()) .addPrefix("-Xint") // Override any -Xmixed/-Xcomp flags from jtreg -vmoptions .addPrefix("-Xlog:cds=debug,gc=debug") - .addPrefix("-Xlog:cds+map*=trace:file=" + mapName + ":none:filesize=0") + .addPrefix("-Xlog:aot+map*=trace:file=" + mapName + ":none:filesize=0") .setArchiveName(archiveName) .addSuffix(args) .addSuffix(more); diff --git a/test/hotspot/jtreg/runtime/cds/SharedStrings.java b/test/hotspot/jtreg/runtime/cds/SharedStrings.java index 33a041bb298..d6741790ff3 100644 --- a/test/hotspot/jtreg/runtime/cds/SharedStrings.java +++ b/test/hotspot/jtreg/runtime/cds/SharedStrings.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2023, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -47,7 +47,7 @@ public class SharedStrings { ProcessBuilder pb = ProcessTools.createLimitedTestJavaProcessBuilder( "-XX:+UnlockDiagnosticVMOptions", "-XX:SharedArchiveFile=./SharedStrings.jsa", - "-Xlog:cds,cds+hashtables", + "-Xlog:cds,aot+hashtables", // Needed for bootclasspath match, for CDS to work with WhiteBox API "-Xbootclasspath/a:" + ClassFileInstaller.getJarPath("whitebox.jar"), "-Xshare:dump"); diff --git a/test/hotspot/jtreg/runtime/cds/SpaceUtilizationCheck.java b/test/hotspot/jtreg/runtime/cds/SpaceUtilizationCheck.java index 66cbfbc8d91..8184f272af7 100644 --- a/test/hotspot/jtreg/runtime/cds/SpaceUtilizationCheck.java +++ b/test/hotspot/jtreg/runtime/cds/SpaceUtilizationCheck.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014, 2023, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -49,7 +49,7 @@ public class SpaceUtilizationCheck { // [2] There must be no gap between two consecutive regions. public static void main(String[] args) throws Exception { - test("-Xlog:cds=debug"); + test("-Xlog:aot=debug,cds=debug"); } static void test(String... extra_options) throws Exception { diff --git a/test/hotspot/jtreg/runtime/cds/appcds/AOTFlags.java b/test/hotspot/jtreg/runtime/cds/appcds/AOTFlags.java index 71f72d6b4e8..b760b288808 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/AOTFlags.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/AOTFlags.java @@ -283,7 +283,7 @@ public class AOTFlags { "-cp", appJar, helloClass); out = CDSTestUtils.executeAndLog(pb, "neg"); - out.shouldContain("Not a valid archive (hello.aotconfig)"); + out.shouldContain("Not a valid shared archive file (hello.aotconfig)"); out.shouldNotHaveExitValue(0); //---------------------------------------------------------------------- diff --git a/test/hotspot/jtreg/runtime/cds/appcds/ExtraSymbols.java b/test/hotspot/jtreg/runtime/cds/appcds/ExtraSymbols.java index 0f3caa4c36a..f316e6e3fca 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/ExtraSymbols.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/ExtraSymbols.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014, 2021, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2014, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -36,7 +36,7 @@ import jdk.test.lib.process.OutputAnalyzer; import jdk.test.lib.cds.CDSTestUtils; public class ExtraSymbols { - static final String CDS_LOGGING = "-Xlog:cds,cds+hashtables"; + static final String CDS_LOGGING = "-Xlog:cds,aot+hashtables"; public static void main(String[] args) throws Exception { String appJar = JarBuilder.getOrCreateHelloJar(); @@ -75,8 +75,8 @@ public class ExtraSymbols { static int numOfEntries(OutputAnalyzer output) { // Look for this pattern: - // [4.661s][info][cds,hashtables] Shared symbol table stats -------- base: 0x0000000800000000 - // [4.661s][info][cds,hashtables] Number of entries : 50078 + // [4.661s][info][aot,hashtables] Shared symbol table stats -------- base: 0x0000000800000000 + // [4.661s][info][aot,hashtables] Number of entries : 50078 String s = output.firstMatch("Shared symbol table stats[^\n]*\n[^\n]*Number of entries : .*"); String subs[] = s.split("[:]"); int numEntries = Integer.parseInt(subs[2].trim()); diff --git a/test/hotspot/jtreg/runtime/cds/appcds/LambdaEagerInit.java b/test/hotspot/jtreg/runtime/cds/appcds/LambdaEagerInit.java index 7ead18910ee..c481da44ede 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/LambdaEagerInit.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/LambdaEagerInit.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020, 2023, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2020, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -65,7 +65,7 @@ public class LambdaEagerInit { ".class.load. java.util.stream.Collectors[$][$]Lambda.*/0x.*source:.*java.*util.*stream.*Collectors"; private static final String lambdaLoadedFromArchive = ".class.load. java.util.stream.Collectors[$][$]Lambda.*/0x.*source:.*shared.*objects.*file"; - private static final String cdsLoadedLambdaProxy = ".cds.*Loaded.*lambda.*proxy"; + private static final String cdsLoadedLambdaProxy = ".aot.*Loaded.*lambda.*proxy"; private static final String archiveName = mainClass + ".jsa"; private static String appJar; @@ -75,7 +75,7 @@ public class LambdaEagerInit { // create base archive with the -Djdk.internal.lambda.disableEagerInitialization=true property CDSOptions opts = (new CDSOptions()) .addPrefix(testProperty, - "-Xlog:class+load,cds") + "-Xlog:class+load,aot,cds") .setArchiveName(archiveName); CDSTestUtils.createArchiveAndCheck(opts); } @@ -96,7 +96,7 @@ public class LambdaEagerInit { static void testWithEagerInitializationDisabled() throws Exception { // run with custom base archive without the -Djdk.internal.lambda.disableEagerInitialization=true property CDSOptions runOpts = (new CDSOptions()) - .addPrefix("-cp", appJar, "-Xlog:class+load,cds=debug") + .addPrefix("-cp", appJar, "-Xlog:class+load,aot=debug,cds=debug") .setArchiveName(archiveName) .setUseVersion(false) .addSuffix(mainClass); @@ -110,7 +110,7 @@ public class LambdaEagerInit { // run with default CDS archive with the -Djdk.internal.lambda.disableEagerInitialization=true property CDSOptions runOpts = (new CDSOptions()) .setXShareMode("auto") - .addPrefix("-cp", appJar, testProperty, "-Xlog:class+load,cds=debug") + .addPrefix("-cp", appJar, testProperty, "-Xlog:class+load,aot=debug,cds=debug") .setUseSystemArchive(true) .setUseVersion(false) .addSuffix(mainClass); @@ -124,7 +124,7 @@ public class LambdaEagerInit { // run with default CDS archive without the -Djdk.internal.lambda.disableEagerInitialization=true property CDSOptions runOpts = (new CDSOptions()) .setXShareMode("auto") - .addPrefix("-cp", appJar, "-Xlog:class+load,cds=debug") + .addPrefix("-cp", appJar, "-Xlog:class+load,aot=debug,cds=debug") .setUseSystemArchive(true) .setUseVersion(false) .addSuffix("-showversion", mainClass); diff --git a/test/hotspot/jtreg/runtime/cds/appcds/LambdaWithJavaAgent.java b/test/hotspot/jtreg/runtime/cds/appcds/LambdaWithJavaAgent.java index f92acda4397..accb74025ce 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/LambdaWithJavaAgent.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/LambdaWithJavaAgent.java @@ -72,16 +72,16 @@ public class LambdaWithJavaAgent { "-XX:+UnlockDiagnosticVMOptions", "-XX:+AllowArchivingWithJavaAgent", useJavaAgent, - "-Xlog:class+load,cds+class=debug,cds") + "-Xlog:class+load,cds+class=debug,aot,cds") .setArchiveName(archiveName); OutputAnalyzer output = CDSTestUtils.createArchiveAndCheck(opts); - output.shouldContain("CDS heap objects cannot be written because class jdk.internal.math.FDBigInteger maybe modified by ClassFileLoadHook") + output.shouldContain("heap objects cannot be written because class jdk.internal.math.FDBigInteger maybe modified by ClassFileLoadHook") .shouldContain("Skipping jdk/internal/math/FDBigInteger: Unsupported location") .shouldMatch(".class.load.*jdk.internal.math.FDBigInteger.*source.*modules"); // run with archive CDSOptions runOpts = (new CDSOptions()) - .addPrefix("-cp", appJar, "-Xlog:class+load=debug,cds=debug,class+path=debug", + .addPrefix("-cp", appJar, "-Xlog:class+load=debug,aot=debug,cds=debug,class+path=debug", "-XX:+UnlockDiagnosticVMOptions", "-XX:+AllowArchivingWithJavaAgent", useJavaAgent) diff --git a/test/hotspot/jtreg/runtime/cds/appcds/VerifierTest.java b/test/hotspot/jtreg/runtime/cds/appcds/VerifierTest.java index c3c50a106e0..3ff5da98b42 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/VerifierTest.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/VerifierTest.java @@ -48,7 +48,7 @@ public class VerifierTest implements Opcodes { static final String PASS_RESULT = "Hi, how are you?"; static final String VFY_INFO_MESSAGE = "All non-system classes will be verified (-Xverify:remote) during CDS dump time."; - static final String CDS_LOGGING = "-Xlog:cds,cds+hashtables"; + static final String CDS_LOGGING = "-Xlog:cds,aot+hashtables"; enum Testset1Part { A, B diff --git a/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/AddExports.java b/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/AddExports.java index fa784162851..2a63a4837c2 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/AddExports.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/AddExports.java @@ -99,21 +99,21 @@ public class AddExports { test("FMG should be enabled with '--add-exports java.base/jdk.internal.misc=ALL-UNNAMED'", SimpleCDSAppTester.of("nonModuleNeedsJdkAddExport") .classpath(nonModuleNeedsJdkAddExportJar) - .addVmArgs("--add-exports", "java.base/jdk.internal.misc=ALL-UNNAMED", "-Xlog:cds") + .addVmArgs("--add-exports", "java.base/jdk.internal.misc=ALL-UNNAMED", "-Xlog:aot,cds") .appCommandLine("com.nomodule.needsjdkaddexport.Main")); test("FMG should be enabled with '--add-exports java.base/jdk.internal.misc=com.needsjdkaddexport'", SimpleCDSAppTester.of("moduleNeedsJdkAddExport") .modulepath(modulePath) .addVmArgs("--add-modules", "com.needsjdkaddexport", - "--add-exports", "java.base/jdk.internal.misc=com.needsjdkaddexport", "-Xlog:cds") + "--add-exports", "java.base/jdk.internal.misc=com.needsjdkaddexport", "-Xlog:aot,cds") .appCommandLine("-m", "com.needsjdkaddexport/com.needsjdkaddexport.Main")); test("FMG should be enabled with '--add-exports com.foos/com.foos.internal=com.needsfoosaddexport'", SimpleCDSAppTester.of("moduleNeedsFoosAddExport") .modulepath(modulePath) .addVmArgs("--add-modules", "com.needsfoosaddexport", - "--add-exports", "com.foos/com.foos.internal=com.needsfoosaddexport", "-Xlog:cds") + "--add-exports", "com.foos/com.foos.internal=com.needsfoosaddexport", "-Xlog:aot,cds") .appCommandLine("-m", "com.needsfoosaddexport/com.needsfoosaddexport.Main")); test("FMG should be enabled with multiple --add-exports", @@ -124,7 +124,7 @@ public class AddExports { "--add-exports", "com.foos/com.foos.internal=ALL-UNNAMED", "--add-exports", "java.base/jdk.internal.misc=ALL-UNNAMED", "--add-exports", "java.base/jdk.internal.misc=com.foos", - "-Xlog:cds") + "-Xlog:aot,cds") .appCommandLine("-m", "com.needsfoosaddexport/com.needsfoosaddexport.Main")); } } diff --git a/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/AddReads.java b/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/AddReads.java index 75e9da19464..c1dbc602755 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/AddReads.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/AddReads.java @@ -133,13 +133,13 @@ public class AddReads { return new String[] { "--add-modules", SUB_MODULE, "--add-reads", "com.norequires=" + SUB_MODULE, - "-Xlog:class+load,cds,class+path=info", + "-Xlog:class+load,aot,cds,class+path=info", }; } else { return new String[] { "--add-modules", SUB_MODULE, "--add-reads", "com.norequires=ALL-UNNAMED", - "-Xlog:class+load,cds,class+path=info", + "-Xlog:class+load,aot,cds,class+path=info", }; } } @@ -184,7 +184,7 @@ public class AddReads { .modulepath(moduleDir.toString()) .addVmArgs("--add-modules", SUB_MODULE, "--add-reads", "com.norequires=" + SUB_MODULE, - "-Xlog:class+load,cds,class+path=info") + "-Xlog:class+load,aot,cds,class+path=info") .appCommandLine("-m", MAIN_MODULE)); test("FMG should be enabled with '--add-reads com.norequires=org.astro'", @@ -193,7 +193,7 @@ public class AddReads { .modulepath(moduleDir.toString()) .addVmArgs("--add-modules", SUB_MODULE, "--add-reads", "com.norequires=" + SUB_MODULE, - "-Xlog:class+load,cds,class+path=info") + "-Xlog:class+load,aot,cds,class+path=info") .appCommandLine("-m", MAIN_MODULE)); printComment("FMG should be enabled with '--add-reads com.norequires=ALL-UNNAMED"); diff --git a/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/MethodHandleTest.java b/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/MethodHandleTest.java index bc07991eeb2..6bef9e12e95 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/MethodHandleTest.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/MethodHandleTest.java @@ -75,7 +75,6 @@ public class MethodHandleTest { return new String[] { "-Xlog:gc,cds+class=debug", "-XX:AOTInitTestClass=MethodHandleTestApp", - "-Xlog:cds+map,cds+map+oops=trace:file=cds.oops.txt:none:filesize=0", }; } else { return new String[] {}; diff --git a/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/WeakReferenceTest.java b/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/WeakReferenceTest.java index ac6d1188672..e7360a6877c 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/WeakReferenceTest.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/aotClassLinking/WeakReferenceTest.java @@ -89,7 +89,6 @@ public class WeakReferenceTest { return new String[] { "-Xlog:gc,cds+class=debug", "-XX:AOTInitTestClass=" + mainClass, - "-Xlog:cds+map,cds+map+oops=trace:file=cds.oops.txt:none:filesize=0", }; } else { return new String[] { diff --git a/test/hotspot/jtreg/runtime/cds/appcds/dynamicArchive/LambdasInTwoArchives.java b/test/hotspot/jtreg/runtime/cds/appcds/dynamicArchive/LambdasInTwoArchives.java index 0c9c2514e40..685fb4bf597 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/dynamicArchive/LambdasInTwoArchives.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/dynamicArchive/LambdasInTwoArchives.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2023, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -90,14 +90,15 @@ public class LambdasInTwoArchives extends DynamicArchiveTestBase { String[] launchArgs = { "-Xshare:off", "-XX:DumpLoadedClassList=" + classListFileName, + "-Xlog:aot", + "-Xlog:aot+lambda", "-Xlog:cds", - "-Xlog:cds+lambda", "-cp", appJar, mainClass}; ProcessBuilder pb = ProcessTools.createLimitedTestJavaProcessBuilder(launchArgs); OutputAnalyzer oa = TestCommon.executeAndLog(pb, "lambda-classes"); oa.shouldHaveExitValue(0); - String logOptions = "-Xlog:cds=debug,class+load,cds+class=debug"; + String logOptions = "-Xlog:aot=debug,cds=debug,class+load,cds+class=debug"; String baseArchiveName = CDSTestUtils.getOutputFileName("lambda-base.jsa"); // Static dump based on the class list. dumpBaseArchive(baseArchiveName, diff --git a/test/hotspot/jtreg/runtime/cds/appcds/dynamicArchive/UsedAllArchivedLambdas.java b/test/hotspot/jtreg/runtime/cds/appcds/dynamicArchive/UsedAllArchivedLambdas.java index 46efaf4893d..737a79348e6 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/dynamicArchive/UsedAllArchivedLambdas.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/dynamicArchive/UsedAllArchivedLambdas.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020, 2023, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2020, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -63,6 +63,7 @@ public class UsedAllArchivedLambdas extends DynamicArchiveTestBase { "-XX:+UnlockDiagnosticVMOptions", "-XX:+WhiteBoxAPI", use_whitebox_jar, + "-Xlog:aot=debug", "-Xlog:cds=debug", "-cp", appJar, mainClass, "run") .assertNormalExit(output -> { diff --git a/test/hotspot/jtreg/runtime/cds/appcds/javaldr/ExceptionDuringDumpAtObjectsInitPhase.java b/test/hotspot/jtreg/runtime/cds/appcds/javaldr/ExceptionDuringDumpAtObjectsInitPhase.java index b0a2551f29e..5d9ef9ef760 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/javaldr/ExceptionDuringDumpAtObjectsInitPhase.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/javaldr/ExceptionDuringDumpAtObjectsInitPhase.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020, 2024, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2020, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -69,7 +69,7 @@ public class ExceptionDuringDumpAtObjectsInitPhase { "-Dtest.with.exception=true", gcLog).shouldNotHaveExitValue(0) .shouldContain("Preload Warning: Cannot find jdk/internal/math/FDBigInteger") - .shouldContain("Unexpected exception, use -Xlog:cds,exceptions=trace for detail"); + .shouldContain("Unexpected exception, use -Xlog:aot,cds,exceptions=trace for detail"); // 2. Test with OOM System.out.println("2. OOM during dump"); diff --git a/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/CheckUnsupportedDumpingOptions.java b/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/CheckUnsupportedDumpingOptions.java index 489b47a1d93..426bc1f53fe 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/CheckUnsupportedDumpingOptions.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/CheckUnsupportedDumpingOptions.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, 2021, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2016, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -63,7 +63,7 @@ public class CheckUnsupportedDumpingOptions { String appClasses[] = {"Hello"}; for (int i = 0; i < jigsawOptions.length; i++) { OutputAnalyzer output; - output = TestCommon.dump(appJar, appClasses, "-Xlog:cds,cds+hashtables", + output = TestCommon.dump(appJar, appClasses, "-Xlog:cds,aot+hashtables", jigsawOptions[i], optionValues[i]); output.shouldContain("Cannot use the following option " + "when dumping the shared archive: " + jigsawOptions[i]) diff --git a/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/addmods/AddmodsOption.java b/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/addmods/AddmodsOption.java index d1022fc7956..10e17f2072f 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/addmods/AddmodsOption.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/addmods/AddmodsOption.java @@ -45,7 +45,7 @@ public class AddmodsOption { final String multiModules = ",,jdk.jconsole,jdk.compiler,,"; final String allSystem = "ALL-SYSTEM"; final String allModulePath = "ALL-MODULE-PATH"; - final String loggingOption = "-Xlog:aot=debug,cds+module=debug,aot+heap=info,cds=debug,module=trace"; + final String loggingOption = "-Xlog:aot=debug,aot+module=debug,aot+heap=info,cds=debug,module=trace"; final String versionPattern = "java.[0-9][0-9].*"; final String subgraphCannotBeUsed = "subgraph jdk.internal.module.ArchivedBootLayer cannot be used because full module graph is disabled"; final String warningIncubator = "WARNING: Using incubator modules: jdk.incubator.vector"; @@ -70,8 +70,8 @@ public class AddmodsOption { oa.shouldHaveExitValue(0) // version of the jdk.httpserver module, e.g. java 22-ea .shouldMatch(versionPattern) - .shouldMatch("cds,module.*Restored from archive: entry.0x.*name jdk.jconsole") - .shouldMatch("cds,module.*Restored from archive: entry.0x.*name jdk.httpserver"); + .shouldMatch("aot,module.*Restored from archive: entry.0x.*name jdk.jconsole") + .shouldMatch("aot,module.*Restored from archive: entry.0x.*name jdk.httpserver"); // different --add-modules specified during runtime oa = TestCommon.execCommon( @@ -161,7 +161,7 @@ public class AddmodsOption { "-version"); try { oa.shouldHaveExitValue(0) - .shouldMatch("cds,module.*Restored from archive: entry.0x.*name jdk.internal.vm.ci"); + .shouldMatch("aot,module.*Restored from archive: entry.0x.*name jdk.internal.vm.ci"); } catch (RuntimeException re) { // JVMCI compile may not be available oa.shouldHaveExitValue(1) @@ -188,8 +188,8 @@ public class AddmodsOption { "-m", moduleOption, "-version"); oa.shouldHaveExitValue(0) - .shouldMatch("cds,module.*Restored from archive: entry.0x.*name jdk.compiler") - .shouldMatch("cds,module.*Restored from archive: entry.0x.*name jdk.jconsole"); + .shouldMatch("aot,module.*Restored from archive: entry.0x.*name jdk.compiler") + .shouldMatch("aot,module.*Restored from archive: entry.0x.*name jdk.jconsole"); // dump an archive with ALL-SYSTEM in -add-modules archiveName = TestCommon.getNewArchiveName("muti-modules"); @@ -232,6 +232,6 @@ public class AddmodsOption { "-m", moduleOption, "-version"); oa.shouldHaveExitValue(0) - .shouldMatch("cds,module.*Restored from archive: entry.0x.*name jdk.httpserver"); + .shouldMatch("aot,module.*Restored from archive: entry.0x.*name jdk.httpserver"); } } diff --git a/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/addopens/AddopensOption.java b/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/addopens/AddopensOption.java index ec41c4ed28b..636169ef3cb 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/addopens/AddopensOption.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/addopens/AddopensOption.java @@ -41,7 +41,7 @@ public class AddopensOption { final String moduleOption = "jdk.httpserver/sun.net.httpserver.simpleserver.Main"; final String addOpensNio = "java.base/java.nio=ALL-UNNAMED"; final String addOpensTimeFormat = "java.base/java.time.format=ALL-UNNAMED"; - final String loggingOption = "-Xlog:aot=debug,cds+module=debug,aot+heap=info,cds=debug,module=trace"; + final String loggingOption = "-Xlog:aot=debug,aot+module=debug,aot+heap=info,cds=debug,module=trace"; final String versionPattern = "java.[0-9][0-9].*"; final String subgraphCannotBeUsed = "subgraph jdk.internal.module.ArchivedBootLayer cannot be used because full module graph is disabled"; final String warningIncubator = "WARNING: Using incubator modules: jdk.incubator.vector"; @@ -66,7 +66,7 @@ public class AddopensOption { oa.shouldHaveExitValue(0) // version of the jdk.httpserver module, e.g. java 22-ea .shouldMatch(versionPattern) - .shouldMatch("cds,module.*Restored from archive: entry.0x.*name jdk.httpserver"); + .shouldMatch("aot,module.*Restored from archive: entry.0x.*name jdk.httpserver"); // different --add-opens specified during runtime oa = TestCommon.execCommon( @@ -151,6 +151,6 @@ public class AddopensOption { "-m", moduleOption, "-version"); oa.shouldHaveExitValue(0) - .shouldMatch("cds,module.*Restored from archive: entry.0x.*name jdk.httpserver"); + .shouldMatch("aot,module.*Restored from archive: entry.0x.*name jdk.httpserver"); } } diff --git a/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/module/ModuleOption.java b/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/module/ModuleOption.java index 861efbf5690..3001b8dd2ca 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/module/ModuleOption.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/jigsaw/module/ModuleOption.java @@ -37,7 +37,7 @@ public class ModuleOption { public static void main(String[] args) throws Exception { final String moduleOption = "jdk.httpserver/sun.net.httpserver.simpleserver.Main"; final String incubatorModule = "jdk.incubator.vector"; - final String loggingOption = "-Xlog:aot=debug,cds+module=debug,aot+heap=info,cds=debug,module=trace"; + final String loggingOption = "-Xlog:aot=debug,aot+module=debug,aot+heap=info,cds=debug,module=trace"; // Pattern of a module version string. // e.g. JDK 22: "java 22" // JDK 22.0.1: "java 22.0.1" @@ -62,7 +62,7 @@ public class ModuleOption { oa.shouldHaveExitValue(0) // version of the jdk.httpserver module, e.g. java 22-ea .shouldMatch(versionPattern) - .shouldMatch("cds,module.*Restored from archive: entry.0x.*name jdk.httpserver"); + .shouldMatch("aot,module.*Restored from archive: entry.0x.*name jdk.httpserver"); // different module specified during runtime oa = TestCommon.execCommon( diff --git a/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/AOTLinkedLambdas.java b/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/AOTLinkedLambdas.java index d015498ed04..e187f408fb4 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/AOTLinkedLambdas.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/AOTLinkedLambdas.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2024, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -62,7 +62,8 @@ public class AOTLinkedLambdas { CDSOptions opts = (new CDSOptions()) .addPrefix("-XX:ExtraSharedClassListFile=" + classList, "-XX:+AOTClassLinking", - "-Xlog:cds+resolve=trace", + "-Xlog:aot+resolve=trace", + "-Xlog:aot+class=debug", "-Xlog:cds+class=debug", "-cp", appJar); diff --git a/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/AOTLinkedVarHandles.java b/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/AOTLinkedVarHandles.java index 886e0424c9a..e262c55beea 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/AOTLinkedVarHandles.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/AOTLinkedVarHandles.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2024, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -58,7 +58,7 @@ public class AOTLinkedVarHandles { CDSOptions opts = (new CDSOptions()) .addPrefix("-XX:ExtraSharedClassListFile=" + classList, "-XX:+AOTClassLinking", - "-Xlog:cds+resolve=trace", + "-Xlog:aot+resolve=trace", "-Xlog:cds+class=debug", "-cp", appJar); diff --git a/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/ResolvedConstants.java b/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/ResolvedConstants.java index 8fa86c3f56e..2610dac16c0 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/ResolvedConstants.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/ResolvedConstants.java @@ -81,7 +81,8 @@ public class ResolvedConstants { SimpleCDSAppTester.of("ResolvedConstantsApp" + (aotClassLinking ? "1" : "0")) .addVmArgs(aotClassLinking ? "-XX:+AOTClassLinking" : "-XX:-AOTClassLinking", - "-Xlog:cds+resolve=trace", + "-Xlog:aot+resolve=trace", + "-Xlog:aot+class=debug", "-Xlog:cds+class=debug") .classpath(appJar) .appCommandLine(mainClass) @@ -183,14 +184,14 @@ public class ResolvedConstants { } static String ALWAYS(String s) { - return "cds,resolve.*archived " + s; + return ",resolve.*archived " + s; } static String AOTLINK_ONLY(String s) { if (aotClassLinking) { return ALWAYS(s); } else { - return "cds,resolve.*reverted " + s; + return ",resolve.*reverted " + s; } } diff --git a/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/ResolvedPutField.java b/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/ResolvedPutField.java index 250ff7d7d6f..f39e64a828f 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/ResolvedPutField.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/resolvedConstants/ResolvedPutField.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2024, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -52,9 +52,9 @@ public class ResolvedPutField { CDSOptions opts = (new CDSOptions()) .addPrefix("-XX:ExtraSharedClassListFile=" + classList, "-cp", appJar, - "-Xlog:cds+resolve=trace"); + "-Xlog:aot+resolve=trace"); CDSTestUtils.createArchiveAndCheck(opts) - .shouldMatch("cds,resolve.*Failed to resolve putfield .*ResolvedPutFieldHelper -> ResolvedPutFieldHelper.x:I"); + .shouldMatch(",resolve.*Failed to resolve putfield .*ResolvedPutFieldHelper -> ResolvedPutFieldHelper.x:I"); } } diff --git a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/ExerciseGC.java b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/ExerciseGC.java index 045f42edf5e..0668ebfa300 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/ExerciseGC.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/ExerciseGC.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2022, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -40,7 +40,7 @@ public class ExerciseGC { SharedStringsUtils.buildJarAndWhiteBox("HelloStringGC"); SharedStringsUtils.dumpWithWhiteBox(TestCommon.list("HelloStringGC"), - "SharedStringsBasic.txt", "-Xlog:cds,cds+hashtables"); + "SharedStringsBasic.txt", "-Xlog:cds,aot+hashtables"); SharedStringsUtils.runWithArchiveAndWhiteBox("HelloStringGC", "-XX:+UnlockDiagnosticVMOptions", "-XX:+VerifyBeforeGC"); diff --git a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/FlagCombo.java b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/FlagCombo.java index e04abbfcd41..18bcf6da79c 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/FlagCombo.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/FlagCombo.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2021, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -51,7 +51,7 @@ public class FlagCombo { SharedStringsUtils.buildJar("HelloString"); SharedStringsUtils.dump(TestCommon.list("HelloString"), - "SharedStringsBasic.txt", "-Xlog:cds,cds+hashtables"); + "SharedStringsBasic.txt", "-Xlog:cds,aot+hashtables"); SharedStringsUtils.runWithArchive("HelloString", "-XX:+UseG1GC"); diff --git a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/IncompatibleOptions.java b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/IncompatibleOptions.java index 546520c042f..527c0043a6f 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/IncompatibleOptions.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/IncompatibleOptions.java @@ -157,7 +157,7 @@ public class IncompatibleOptions { "-XX:+UseCompressedOops", collectorOption, "-XX:SharedArchiveConfigFile=" + TestCommon.getSourceFile("SharedStringsBasic.txt"), - "-Xlog:cds,cds+hashtables", + "-Xlog:cds,aot+hashtables", extraOption)); if (expectedWarning != null) { diff --git a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/InternSharedString.java b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/InternSharedString.java index 6c12e1c4d71..615aa1c7e7c 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/InternSharedString.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/InternSharedString.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2023, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -45,7 +45,7 @@ public class InternSharedString { SharedStringsUtils.buildJarAndWhiteBox("InternStringTest"); SharedStringsUtils.dumpWithWhiteBox(TestCommon.list("InternStringTest"), - "ExtraSharedInput.txt", "-Xlog:cds,cds+hashtables"); + "ExtraSharedInput.txt", "-Xlog:cds,aot+hashtables"); String[] extraMatches = new String[] { InternStringTest.passed_output1, diff --git a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/LargePages.java b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/LargePages.java index 8e72e585195..f431dd6e807 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/LargePages.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/LargePages.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2021, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -32,7 +32,7 @@ * @run driver LargePages */ public class LargePages { - static final String CDS_LOGGING = "-Xlog:cds,cds+hashtables"; + static final String CDS_LOGGING = "-Xlog:cds,aot+hashtables"; public static void main(String[] args) throws Exception { SharedStringsUtils.run(args, LargePages::test); diff --git a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsBasic.java b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsBasic.java index 294b01c4c91..f746e2c0e73 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsBasic.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsBasic.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2021, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -54,7 +54,7 @@ public class SharedStringsBasic { .addPrefix(vmOptionsPrefix, "-cp", appJar, "-XX:SharedArchiveConfigFile=" + sharedArchiveConfigFile, - "-Xlog:cds,cds+hashtables") + "-Xlog:cds,aot+hashtables") .setArchiveName("./SharedStringsBasic.jsa"); CDSTestUtils.createArchiveAndCheck(opts) .shouldContain("Shared string table stats"); diff --git a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsBasicPlus.java b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsBasicPlus.java index ae4c137a876..dacf74ebe3a 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsBasicPlus.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsBasicPlus.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2022, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -42,7 +42,7 @@ public class SharedStringsBasicPlus { SharedStringsUtils.buildJarAndWhiteBox("HelloStringPlus"); SharedStringsUtils.dumpWithWhiteBox( TestCommon.list("HelloStringPlus"), - "SharedStringsBasic.txt", "-Xlog:cds,cds+hashtables"); + "SharedStringsBasic.txt", "-Xlog:cds,aot+hashtables"); SharedStringsUtils.runWithArchiveAndWhiteBox("HelloStringPlus"); } diff --git a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsStress.java b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsStress.java index f941cf3af07..5871305139e 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsStress.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsStress.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2024, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2017, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -71,6 +71,7 @@ public class SharedStringsStress { OutputAnalyzer dumpOutput = TestCommon.dump(appJar, TestCommon.list("HelloString"), TestCommon.concat(vmOptionsPrefix, "-XX:SharedArchiveConfigFile=" + sharedArchiveConfigFile, + "-Xlog:aot", "-Xlog:gc+region+cds", "-Xlog:gc+region=trace")); TestCommon.checkDump(dumpOutput); @@ -78,7 +79,7 @@ public class SharedStringsStress { dumpOutput.shouldContain("string table array (secondary)"); OutputAnalyzer execOutput = TestCommon.exec(appJar, - TestCommon.concat(vmOptionsPrefix, "-Xlog:cds", "HelloString")); + TestCommon.concat(vmOptionsPrefix, "-Xlog:aot,cds", "HelloString")); TestCommon.checkExec(execOutput); } } diff --git a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsWbTest.java b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsWbTest.java index f2a3cb45e78..95ea1cf9bb0 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsWbTest.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SharedStringsWbTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, 2022, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2016, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -45,7 +45,7 @@ public class SharedStringsWbTest { SharedStringsUtils.buildJarAndWhiteBox("SharedStringsWb"); SharedStringsUtils.dumpWithWhiteBox(TestCommon.list("SharedStringsWb"), - "SharedStringsBasic.txt", "-Xlog:cds,cds+hashtables"); + "SharedStringsBasic.txt", "-Xlog:cds,aot+hashtables"); SharedStringsUtils.runWithArchiveAndWhiteBox("SharedStringsWb"); } diff --git a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SysDictCrash.java b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SysDictCrash.java index 5688d8145b3..219943d28de 100644 --- a/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SysDictCrash.java +++ b/test/hotspot/jtreg/runtime/cds/appcds/sharedStrings/SysDictCrash.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2021, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -52,7 +52,7 @@ public class SysDictCrash { "-XX:+UseG1GC", "-XX:MaxRAMPercentage=12.5", "-cp", ".", "-XX:SharedBaseAddress=0", - "-showversion", "-Xlog:cds,cds+hashtables") + "-showversion", "-Xlog:cds,aot+hashtables") .setArchiveName("./SysDictCrash.jsa"); OutputAnalyzer output = CDSTestUtils.createArchive(opts); try { diff --git a/test/lib/jdk/test/lib/cds/CDSTestUtils.java b/test/lib/jdk/test/lib/cds/CDSTestUtils.java index a913f2f9fa2..1cc89737633 100644 --- a/test/lib/jdk/test/lib/cds/CDSTestUtils.java +++ b/test/lib/jdk/test/lib/cds/CDSTestUtils.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017, 2024, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2017, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -255,7 +255,7 @@ public class CDSTestUtils { for (String p : opts.prefix) cmd.add(p); cmd.add("-Xshare:dump"); - cmd.add("-Xlog:cds,cds+hashtables"); + cmd.add("-Xlog:cds,aot+hashtables"); if (opts.archiveName == null) opts.archiveName = getDefaultArchiveName(); cmd.add("-XX:SharedArchiveFile=" + opts.archiveName);