< prev index next >
src/hotspot/share/gc/shared/barrierSet.cpp
8198949_arraycopy
/*
! * Copyright (c) 1997, 2017, Oracle and/or its affiliates. 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
* published by the Free Software Foundation.
/*
! * Copyright (c) 1997, 2018, Oracle and/or its affiliates. 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
* published by the Free Software Foundation.
***************
* questions.
*
*/
#include "precompiled.hpp"
! #include "gc/shared/barrierSet.inline.hpp"
#include "gc/shared/collectedHeap.hpp"
#include "memory/universe.hpp"
BarrierSet* BarrierSet::_bs = NULL;
! // count is number of array elements being written
! void BarrierSet::static_write_ref_array_pre(HeapWord* start, size_t count) {
! assert(count <= (size_t)max_intx, "count too large");
! if (UseCompressedOops) {
! Universe::heap()->barrier_set()->write_ref_array_pre((narrowOop*)start, (int)count, false);
! } else {
! Universe::heap()->barrier_set()->write_ref_array_pre( (oop*)start, (int)count, false);
! }
! }
!
! // count is number of array elements being written
! void BarrierSet::static_write_ref_array_post(HeapWord* start, size_t count) {
! // simply delegate to instance method
! Universe::heap()->barrier_set()->write_ref_array(start, count);
}
* questions.
*
*/
#include "precompiled.hpp"
! #include "gc/shared/barrierSet.hpp"
#include "gc/shared/collectedHeap.hpp"
#include "memory/universe.hpp"
BarrierSet* BarrierSet::_bs = NULL;
! void BarrierSet::initialize() {
! _code_gen = make_code_gen();
}
< prev index next >