comparison src/share/vm/gc_implementation/g1/vm_operations_g1.hpp @ 22936:fb69749583e8

8072621: Clean up around VM_GC_Operations Reviewed-by: brutisso, jmasa
author mlarsson
date Thu, 09 Apr 2015 15:58:49 +0200
parents 1d6eb209432a
children af8f16ac392c
comparison
equal deleted inserted replaced
22935:bff23dedb306 22936:fb69749583e8
1 /* 1 /*
2 * Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 2001, 2015, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 4 *
5 * This code is free software; you can redistribute it and/or modify it 5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as 6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
42 HeapWord* _result; 42 HeapWord* _result;
43 bool _pause_succeeded; 43 bool _pause_succeeded;
44 AllocationContext_t _allocation_context; 44 AllocationContext_t _allocation_context;
45 45
46 public: 46 public:
47 VM_G1OperationWithAllocRequest(unsigned int gc_count_before, 47 VM_G1OperationWithAllocRequest(uint gc_count_before,
48 size_t word_size, 48 size_t word_size,
49 GCCause::Cause gc_cause) 49 GCCause::Cause gc_cause)
50 : VM_GC_Operation(gc_count_before, gc_cause), 50 : VM_GC_Operation(gc_count_before, gc_cause),
51 _word_size(word_size), _result(NULL), _pause_succeeded(false) { } 51 _word_size(word_size), _result(NULL), _pause_succeeded(false) { }
52 HeapWord* result() { return _result; } 52 HeapWord* result() { return _result; }
53 bool pause_succeeded() { return _pause_succeeded; } 53 bool pause_succeeded() { return _pause_succeeded; }
55 AllocationContext_t allocation_context() { return _allocation_context; } 55 AllocationContext_t allocation_context() { return _allocation_context; }
56 }; 56 };
57 57
58 class VM_G1CollectFull: public VM_GC_Operation { 58 class VM_G1CollectFull: public VM_GC_Operation {
59 public: 59 public:
60 VM_G1CollectFull(unsigned int gc_count_before, 60 VM_G1CollectFull(uint gc_count_before,
61 unsigned int full_gc_count_before, 61 uint full_gc_count_before,
62 GCCause::Cause cause) 62 GCCause::Cause cause)
63 : VM_GC_Operation(gc_count_before, cause, full_gc_count_before, true) { } 63 : VM_GC_Operation(gc_count_before, cause, full_gc_count_before, true) { }
64 virtual VMOp_Type type() const { return VMOp_G1CollectFull; } 64 virtual VMOp_Type type() const { return VMOp_G1CollectFull; }
65 virtual void doit(); 65 virtual void doit();
66 virtual const char* name() const { 66 virtual const char* name() const {
68 } 68 }
69 }; 69 };
70 70
71 class VM_G1CollectForAllocation: public VM_G1OperationWithAllocRequest { 71 class VM_G1CollectForAllocation: public VM_G1OperationWithAllocRequest {
72 public: 72 public:
73 VM_G1CollectForAllocation(unsigned int gc_count_before, 73 VM_G1CollectForAllocation(uint gc_count_before,
74 size_t word_size); 74 size_t word_size);
75 virtual VMOp_Type type() const { return VMOp_G1CollectForAllocation; } 75 virtual VMOp_Type type() const { return VMOp_G1CollectForAllocation; }
76 virtual void doit(); 76 virtual void doit();
77 virtual const char* name() const { 77 virtual const char* name() const {
78 return "garbage-first collection to satisfy allocation"; 78 return "garbage-first collection to satisfy allocation";
82 class VM_G1IncCollectionPause: public VM_G1OperationWithAllocRequest { 82 class VM_G1IncCollectionPause: public VM_G1OperationWithAllocRequest {
83 private: 83 private:
84 bool _should_initiate_conc_mark; 84 bool _should_initiate_conc_mark;
85 bool _should_retry_gc; 85 bool _should_retry_gc;
86 double _target_pause_time_ms; 86 double _target_pause_time_ms;
87 unsigned int _old_marking_cycles_completed_before; 87 uint _old_marking_cycles_completed_before;
88 public: 88 public:
89 VM_G1IncCollectionPause(unsigned int gc_count_before, 89 VM_G1IncCollectionPause(uint gc_count_before,
90 size_t word_size, 90 size_t word_size,
91 bool should_initiate_conc_mark, 91 bool should_initiate_conc_mark,
92 double target_pause_time_ms, 92 double target_pause_time_ms,
93 GCCause::Cause gc_cause); 93 GCCause::Cause gc_cause);
94 virtual VMOp_Type type() const { return VMOp_G1IncCollectionPause; } 94 virtual VMOp_Type type() const { return VMOp_G1IncCollectionPause; }