aboutsummaryrefslogtreecommitdiff
path: root/src/share/vm/utilities
diff options
context:
space:
mode:
authorstefank <none@none>2013-04-10 14:26:49 +0200
committerstefank <none@none>2013-04-10 14:26:49 +0200
commit200eafec2aa5f64093d4dc46f0b0fdef15e4d02d (patch)
tree161a852093ac1482116f05b0271d678696e96d51 /src/share/vm/utilities
parent42b2224d005b0795d70bae74e5b555e36ee1ef12 (diff)
8011872: Include Bit Map addresses in the hs_err files
Reviewed-by: brutisso, jmasa
Diffstat (limited to 'src/share/vm/utilities')
-rw-r--r--src/share/vm/utilities/bitMap.cpp4
-rw-r--r--src/share/vm/utilities/bitMap.hpp1
-rw-r--r--src/share/vm/utilities/vmError.cpp8
3 files changed, 6 insertions, 7 deletions
diff --git a/src/share/vm/utilities/bitMap.cpp b/src/share/vm/utilities/bitMap.cpp
index 0b12b1180..152b40d39 100644
--- a/src/share/vm/utilities/bitMap.cpp
+++ b/src/share/vm/utilities/bitMap.cpp
@@ -516,6 +516,10 @@ BitMap::idx_t BitMap::count_one_bits() const {
return sum;
}
+void BitMap::print_on_error(outputStream* st, const char* prefix) const {
+ st->print_cr("%s[" PTR_FORMAT ", " PTR_FORMAT ")",
+ prefix, map(), (char*)map() + (size() >> LogBitsPerByte));
+}
#ifndef PRODUCT
diff --git a/src/share/vm/utilities/bitMap.hpp b/src/share/vm/utilities/bitMap.hpp
index 2c0975f67..2486533ab 100644
--- a/src/share/vm/utilities/bitMap.hpp
+++ b/src/share/vm/utilities/bitMap.hpp
@@ -262,6 +262,7 @@ class BitMap VALUE_OBJ_CLASS_SPEC {
bool is_full() const;
bool is_empty() const;
+ void print_on_error(outputStream* st, const char* prefix) const;
#ifndef PRODUCT
public:
diff --git a/src/share/vm/utilities/vmError.cpp b/src/share/vm/utilities/vmError.cpp
index d8fe93b64..e1608cae9 100644
--- a/src/share/vm/utilities/vmError.cpp
+++ b/src/share/vm/utilities/vmError.cpp
@@ -685,13 +685,7 @@ void VMError::report(outputStream* st) {
STEP(190, "(printing heap information)" )
if (_verbose && Universe::is_fully_initialized()) {
- // Print heap information before vm abort. As we'd like as much
- // information as possible in the report we ask for the
- // extended (i.e., more detailed) version.
- Universe::print_on(st, true /* extended */);
- st->cr();
-
- Universe::heap()->barrier_set()->print_on(st);
+ Universe::heap()->print_on_error(st);
st->cr();
st->print_cr("Polling page: " INTPTR_FORMAT, os::get_polling_page());