comparison src/share/vm/gc_implementation/shared/gcUtil.hpp @ 12146:9758d9f36299

8021954: VM SIGSEGV during classloading on MacOS; hs_err_pid file produced Summary: declare all user-defined operator new()s within Hotspot code with the empty throw() exception specification Reviewed-by: coleenp, twisti, dholmes, hseigel, dcubed, kvn, ccheung Contributed-by: lois.foltan@oracle.com
author coleenp
date Thu, 29 Aug 2013 18:56:29 -0400
parents b9a9ed0f8eeb
children 63a4eb8bcd23
comparison
equal deleted inserted replaced
12145:cef1e56a4d88 12146:9758d9f36299
1 /* 1 /*
2 * Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 2002, 2013, 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.
142 AdaptivePaddedAverage(unsigned weight, unsigned padding) : 142 AdaptivePaddedAverage(unsigned weight, unsigned padding) :
143 AdaptiveWeightedAverage(weight), 143 AdaptiveWeightedAverage(weight),
144 _padded_avg(0.0), _deviation(0.0), _padding(padding) {} 144 _padded_avg(0.0), _deviation(0.0), _padding(padding) {}
145 145
146 // Placement support 146 // Placement support
147 void* operator new(size_t ignored, void* p) { return p; } 147 void* operator new(size_t ignored, void* p) throw() { return p; }
148 // Allocator 148 // Allocator
149 void* operator new(size_t size) { return CHeapObj<mtGC>::operator new(size); } 149 void* operator new(size_t size) throw() { return CHeapObj<mtGC>::operator new(size); }
150 150
151 // Accessor 151 // Accessor
152 float padded_average() const { return _padded_avg; } 152 float padded_average() const { return _padded_avg; }
153 float deviation() const { return _deviation; } 153 float deviation() const { return _deviation; }
154 unsigned padding() const { return _padding; } 154 unsigned padding() const { return _padding; }