Mercurial > hg > graal-jvmci-8
diff src/share/vm/graal/graalRuntime.cpp @ 8499:96a337d307bd
-More progress in G1 WBs
author | Christos Kotselidis <christos.kotselidis@oracle.com> |
---|---|
date | Mon, 04 Mar 2013 16:46:37 +0100 |
parents | b089cde44076 |
children | 992f62c457b0 |
line wrap: on
line diff
--- a/src/share/vm/graal/graalRuntime.cpp Thu Feb 28 17:39:48 2013 +0100 +++ b/src/share/vm/graal/graalRuntime.cpp Mon Mar 04 16:46:37 2013 +0100 @@ -29,7 +29,7 @@ #include "prims/jvm.h" #include "runtime/biasedLocking.hpp" #include "runtime/interfaceSupport.hpp" - +#include "utilities/debug.hpp" // Implementation of GraalStubAssembler GraalStubAssembler::GraalStubAssembler(CodeBuffer* code, const char * name, int stub_id) : MacroAssembler(code) { @@ -483,14 +483,32 @@ } JRT_END +static const bool TRACE_WB=true; + JRT_LEAF(void, GraalRuntime::graal_wb_pre_call(JavaThread* thread, oopDesc* obj)) - tty->print_cr("HELLO PRE WRITE BARRIER"); +if(TRACE_WB) tty->print_cr("HELLO PRE WRITE BARRIER"); SharedRuntime::g1_wb_pre(obj, thread); JRT_END JRT_LEAF(void, GraalRuntime::graal_wb_post_call(JavaThread* thread, oopDesc* obj, void* card_addr)) - tty->print_cr("HELLO POST WRITE BARRIER Card address 0x%016lx", card_addr); + if(TRACE_WB) tty->print_cr("HELLO POST WRITE BARRIER Card address 0x%016lx", card_addr); thread->dirty_card_queue().enqueue(card_addr); +//if(!((CardTableModRefBS*)(Universe::heap()->barrier_set()))->is_valid_card_address(obj,(signed char*)card_addr)) { +// tty->print_cr("Invalid worker start card"); +//} + + +JRT_END + +JRT_LEAF(void, GraalRuntime::graal_ver_oop(JavaThread* thread, oopDesc* obj)) +if(!TRACE_WB) return; +if(obj==NULL) tty->print_cr("ERROR NULL in verifyoop G1 in method obj " INTPTR_FORMAT, obj); +if (obj!=NULL &&!obj->is_oop()) { + tty->print_cr("ERROR in verifyoop G1 in method obj " INTPTR_FORMAT, obj); + +}else { + tty->print_cr("PASS in verifyoop G1 in method obj " INTPTR_FORMAT, obj); +} JRT_END JRT_LEAF(void, GraalRuntime::graal_monitorexit(JavaThread* thread, oopDesc* obj, BasicLock* lock)) @@ -526,6 +544,14 @@ JRT_END JRT_ENTRY(void, GraalRuntime::graal_log_object(JavaThread* thread, oop obj, jint flags)) +if (!obj->is_oop()) { + tty->print_cr("ERROR in verifyoop G1 in method obj " INTPTR_FORMAT, obj); + +}else { + tty->print_cr("WIN in verifyoop G1 in method obj " INTPTR_FORMAT, obj); +} + +if(obj==NULL) return; bool string = mask_bits_are_true(flags, LOG_OBJECT_STRING); bool address = mask_bits_are_true(flags, LOG_OBJECT_ADDRESS); bool newline = mask_bits_are_true(flags, LOG_OBJECT_NEWLINE);