< prev index next >
src/share/vm/gc/parallel/psParallelCompact.hpp
Print this page
rev 13430 : imported patch fix_calls
rev 13432 : imported patch fix_claim
*** 1,7 ****
/*
! * Copyright (c) 2005, 2016, 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.
--- 1,7 ----
/*
! * Copyright (c) 2005, 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.
*** 591,603 ****
#endif // #ifdef ASSERT
}
inline bool ParallelCompactData::RegionData::claim()
{
! const int los = (int) live_obj_size();
! const int old = Atomic::cmpxchg(dc_claimed | los,
! (volatile int*) &_dc_and_los, los);
return old == los;
}
inline ParallelCompactData::RegionData*
ParallelCompactData::region(size_t region_idx) const
--- 591,602 ----
#endif // #ifdef ASSERT
}
inline bool ParallelCompactData::RegionData::claim()
{
! const region_sz_t los = static_cast<region_sz_t>(live_obj_size());
! const region_sz_t old = Atomic::cmpxchg(dc_claimed | los, &_dc_and_los, los);
return old == los;
}
inline ParallelCompactData::RegionData*
ParallelCompactData::region(size_t region_idx) const
< prev index next >