< prev index next >

src/hotspot/cpu/s390/gc/g1/g1BarrierSetAssembler_s390.cpp

Print this page
rev 53582 : imported patch rename

*** 1,7 **** /* ! * Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2018, SAP SE. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as --- 1,7 ---- /* ! * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2018, SAP SE. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as
*** 28,37 **** --- 28,38 ---- #include "registerSaver_s390.hpp" #include "gc/g1/g1CardTable.hpp" #include "gc/g1/g1BarrierSet.hpp" #include "gc/g1/g1BarrierSetAssembler.hpp" #include "gc/g1/g1BarrierSetRuntime.hpp" + #include "gc/g1/g1DirtyCardQueue.hpp" #include "gc/g1/g1SATBMarkQueueSet.hpp" #include "gc/g1/g1ThreadLocalData.hpp" #include "gc/g1/heapRegion.hpp" #include "interpreter/interp_masm.hpp" #include "runtime/sharedRuntime.hpp"
*** 585,595 **** ByteSize dirty_card_q_index_byte_offset = G1ThreadLocalData::dirty_card_queue_index_offset(); ByteSize dirty_card_q_buf_byte_offset = G1ThreadLocalData::dirty_card_queue_buffer_offset(); __ bind(restart); ! // Get the index into the update buffer. DirtyCardQueue::_index is // a size_t so z_ltg is appropriate here. __ z_ltg(idx, Address(Z_thread, dirty_card_q_index_byte_offset)); // index == 0? __ z_brz(refill); --- 586,596 ---- ByteSize dirty_card_q_index_byte_offset = G1ThreadLocalData::dirty_card_queue_index_offset(); ByteSize dirty_card_q_buf_byte_offset = G1ThreadLocalData::dirty_card_queue_buffer_offset(); __ bind(restart); ! // Get the index into the update buffer. G1DirtyCardQueue::_index is // a size_t so z_ltg is appropriate here. __ z_ltg(idx, Address(Z_thread, dirty_card_q_index_byte_offset)); // index == 0? __ z_brz(refill);
*** 605,615 **** __ z_br(Z_R14); __ bind(refill); save_volatile_registers(sasm); __ z_lgr(idx, addr_card); // Save addr_card, tmp3 must be non-volatile. ! __ call_VM_leaf(CAST_FROM_FN_PTR(address, DirtyCardQueueSet::handle_zero_index_for_thread), Z_thread); __ z_lgr(addr_card, idx); restore_volatile_registers(sasm); // Restore addr_card. __ z_bru(restart); } --- 606,616 ---- __ z_br(Z_R14); __ bind(refill); save_volatile_registers(sasm); __ z_lgr(idx, addr_card); // Save addr_card, tmp3 must be non-volatile. ! __ call_VM_leaf(CAST_FROM_FN_PTR(address, G1DirtyCardQueueSet::handle_zero_index_for_thread), Z_thread); __ z_lgr(addr_card, idx); restore_volatile_registers(sasm); // Restore addr_card. __ z_bru(restart); }
< prev index next >