Path: blob/master/test/hotspot/gtest/gc/parallel/test_psParallelCompact.cpp
41149 views
/*1* Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.2* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.3*4* This code is free software; you can redistribute it and/or modify it5* under the terms of the GNU General Public License version 2 only, as6* published by the Free Software Foundation.7*8* This code is distributed in the hope that it will be useful, but WITHOUT9* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or10* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License11* version 2 for more details (a copy is included in the LICENSE file that12* accompanied this code).13*14* You should have received a copy of the GNU General Public License version15* 2 along with this work; if not, write to the Free Software Foundation,16* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.17*18* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA19* or visit www.oracle.com if you need additional information or have any20* questions.21*/2223#include "precompiled.hpp"24#include "gc/parallel/parMarkBitMap.inline.hpp"25#include "gc/parallel/psParallelCompact.hpp"26#include "gc/parallel/psCompactionManager.inline.hpp"27#include "unittest.hpp"2829#ifndef PRODUCT3031class PSParallelCompactTest : public ::testing::Test {32public:33static void print_generic_summary_data(ParallelCompactData& summary_data,34HeapWord* const beg_addr,35HeapWord* const end_addr) {36PSParallelCompact::print_generic_summary_data(summary_data,37beg_addr, end_addr);38}39};4041// @requires UseParallelGC42TEST_VM(PSParallelCompact, print_generic_summary_data) {43if (!UseParallelGC) {44return;45}46// Check that print_generic_summary_data() does not print the47// end region by placing a bad value in the destination of the48// end region. The end region should not be printed because it49// corresponds to the space after the end of the heap.50ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();51HeapWord* begin_heap =52(HeapWord*) heap->old_gen()->virtual_space()->low_boundary();53HeapWord* end_heap =54(HeapWord*) heap->young_gen()->virtual_space()->high_boundary();5556PSParallelCompactTest::print_generic_summary_data(PSParallelCompact::summary_data(),57begin_heap, end_heap);58}5960#endif616263