8259776: Remove ParallelGC non-CAS oldgen allocation

Reviewed-by: tschatzl, sjohanss
This commit is contained in:
Kim Barrett 2021-01-23 22:47:31 +00:00
parent 6c4c96fadf
commit 06348dfcae
10 changed files with 31 additions and 137 deletions

View file

@ -1,5 +1,5 @@
/*
* Copyright (c) 2001, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2001, 2021, 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
@ -43,7 +43,6 @@
#include "utilities/growableArray.hpp"
#include "utilities/ostream.hpp"
class AdjoiningGenerations;
class GCHeapSummary;
class HeapBlockClaimer;
class MemoryManager;
@ -80,6 +79,9 @@ class ParallelScavengeHeap : public CollectedHeap {
void trace_actual_reserved_page_size(const size_t reserved_heap_size, const ReservedSpace rs);
void trace_heap(GCWhen::Type when, const GCTracer* tracer);
// Allocate in oldgen and record the allocation with the size_policy.
HeapWord* allocate_old_gen_and_record(size_t word_size);
protected:
static inline size_t total_invocations();
HeapWord* allocate_new_tlab(size_t min_size, size_t requested_size, size_t* actual_size);