comparison src/share/vm/utilities/events.hpp @ 10271:f9be75d21404

8012902: remove use of global operator new - take 2 Summary: The fix of 8010992, disable use of global operator new and new[] which caused failure on some tests. This takes two of the bugs also add ALLOW_OPERATOR_NEW_USAGE to prevent crash for third party code calling operator new of jvm on certain platforms. Reviewed-by: coleenp, dholmes, zgu Contributed-by: yumin.qi@oracle.com
author minqi
date Tue, 14 May 2013 09:41:12 -0700
parents 5a9fa2ba85f0
children 78bbf4d43a14
comparison
equal deleted inserted replaced
10269:a9270d9ecb13 10271:f9be75d21404
1 /* 1 /*
2 * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 1997, 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.
67 // functionality. Most event loggers should subclass this, possibly 67 // functionality. Most event loggers should subclass this, possibly
68 // providing a more featureful log function if the existing copy 68 // providing a more featureful log function if the existing copy
69 // semantics aren't appropriate. The name is used as the label of the 69 // semantics aren't appropriate. The name is used as the label of the
70 // log when it is dumped during a crash. 70 // log when it is dumped during a crash.
71 template <class T> class EventLogBase : public EventLog { 71 template <class T> class EventLogBase : public EventLog {
72 template <class X> class EventRecord { 72 template <class X> class EventRecord : public CHeapObj<mtInternal> {
73 public: 73 public:
74 double timestamp; 74 double timestamp;
75 Thread* thread; 75 Thread* thread;
76 X data; 76 X data;
77 }; 77 };