src/share/vm/interpreter/bytecodeInterpreter.cpp

changeset 6502
3514ee402842
parent 6496
b4e19a1e459f
child 6503
a9becfeecd1b
equal deleted inserted replaced
6501:c668f307a4c0 6502:3514ee402842
2032 // Now store the result on the stack 2032 // Now store the result on the stack
2033 // 2033 //
2034 TosState tos_type = cache->flag_state(); 2034 TosState tos_type = cache->flag_state();
2035 int field_offset = cache->f2_as_index(); 2035 int field_offset = cache->f2_as_index();
2036 if (cache->is_volatile()) { 2036 if (cache->is_volatile()) {
2037 if (support_IRIW_for_not_multiple_copy_atomic_cpu) {
2038 OrderAccess::fence();
2039 }
2037 if (tos_type == atos) { 2040 if (tos_type == atos) {
2038 VERIFY_OOP(obj->obj_field_acquire(field_offset)); 2041 VERIFY_OOP(obj->obj_field_acquire(field_offset));
2039 SET_STACK_OBJECT(obj->obj_field_acquire(field_offset), -1); 2042 SET_STACK_OBJECT(obj->obj_field_acquire(field_offset), -1);
2040 } else if (tos_type == itos) { 2043 } else if (tos_type == itos) {
2041 SET_STACK_INT(obj->int_field_acquire(field_offset), -1); 2044 SET_STACK_INT(obj->int_field_acquire(field_offset), -1);

mercurial