Mercurial > hg > graal-jvmci-8
changeset 9582:7df076e74e8e
fixed bug in updating of VerifyOops counter
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Mon, 06 May 2013 22:12:28 +0200 |
parents | d84ea522800e |
children | c382fa74b1ee 5f9c41cd3b1e |
files | graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/Stub.java src/share/vm/graal/graalCompilerToVM.cpp |
diffstat | 2 files changed, 3 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/Stub.java Mon May 06 22:07:48 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/Stub.java Mon May 06 22:12:28 2013 +0200 @@ -367,9 +367,8 @@ */ public static Object verifyObject(Object object) { if (verifyOops()) { - // TODO (ds) The counter read is ok but the write causes a segv - find out why - // Word verifyOopCounter = Word.unsigned(verifyOopCounterAddress()); - // verifyOopCounter.writeInt(0, verifyOopCounter.readInt(0) + 1); + Word verifyOopCounter = Word.unsigned(verifyOopCounterAddress()); + verifyOopCounter.writeInt(0, verifyOopCounter.readInt(0) + 1); Pointer oop = Word.fromObject(object); if (object != null) {
--- a/src/share/vm/graal/graalCompilerToVM.cpp Mon May 06 22:07:48 2013 +0200 +++ b/src/share/vm/graal/graalCompilerToVM.cpp Mon May 06 22:12:28 2013 +0200 @@ -741,7 +741,7 @@ set_boolean("tlabStats", TLABStats); set_boolean("inlineContiguousAllocationSupported", !CMSIncrementalMode && Universe::heap()->supports_inline_contig_alloc()); - set_long("verifyOopCounterAddress", (jlong)(address) StubRoutines::verify_oop_count_addr); + set_long("verifyOopCounterAddress", (jlong)(address) StubRoutines::verify_oop_count_addr()); set_long("verifyOopMask", Universe::verify_oop_mask()); set_long("verifyOopBits", Universe::verify_oop_bits());