equal
deleted
inserted
replaced
481 __ bind(_entry); |
481 __ bind(_entry); |
482 assert(pre_val()->is_register(), "Precondition."); |
482 assert(pre_val()->is_register(), "Precondition."); |
483 |
483 |
484 Register pre_val_reg = pre_val()->as_register(); |
484 Register pre_val_reg = pre_val()->as_register(); |
485 |
485 |
486 ce->mem2reg(addr(), pre_val(), T_OBJECT, patch_code(), info(), false); |
486 ce->mem2reg(addr(), pre_val(), T_OBJECT, patch_code(), info(), false /*wide*/, false /*unaligned*/); |
487 |
487 |
488 __ cmpptr(pre_val_reg, (int32_t) NULL_WORD); |
488 __ cmpptr(pre_val_reg, (int32_t) NULL_WORD); |
489 __ jcc(Assembler::equal, _continuation); |
489 __ jcc(Assembler::equal, _continuation); |
490 ce->store_parameter(pre_val()->as_register(), 0); |
490 ce->store_parameter(pre_val()->as_register(), 0); |
491 __ call(RuntimeAddress(Runtime1::entry_for(Runtime1::g1_pre_barrier_slow_id))); |
491 __ call(RuntimeAddress(Runtime1::entry_for(Runtime1::g1_pre_barrier_slow_id))); |