src/hotspot/share/trace/traceMacros.hpp
author egahlin
Sun, 05 Nov 2017 06:11:10 +0100
changeset 47779 24022215d092
parent 47216 71c04702a3d5
permissions -rw-r--r--
8189440: Event tracing macros for allocation and weak oops processing Reviewed-by: dholmes, mgronlun
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11480
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
     1
/*
46643
cb5f289ba033 8183545: Event tracing, transition hooks
rehn
parents: 43453
diff changeset
     2
 * Copyright (c) 2012, 2017, Oracle and/or its affiliates. All rights reserved.
11480
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
     4
 *
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
     7
 * published by the Free Software Foundation.
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
     8
 *
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
     9
 * This code is distributed in the hope that it will be useful, but WITHOUT
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    10
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    11
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    12
 * version 2 for more details (a copy is included in the LICENSE file that
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    13
 * accompanied this code).
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    14
 *
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    15
 * You should have received a copy of the GNU General Public License version
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    16
 * 2 along with this work; if not, write to the Free Software Foundation,
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    17
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    18
 *
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    19
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    20
 * or visit www.oracle.com if you need additional information or have any
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    21
 * questions.
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    22
 *
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    23
 */
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    24
27673
df559a888b9f 8065361: Fixup headers and definitions for INCLUDE_TRACE
mgronlun
parents: 19958
diff changeset
    25
#ifndef SHARE_VM_TRACE_TRACEMACROS_HPP
df559a888b9f 8065361: Fixup headers and definitions for INCLUDE_TRACE
mgronlun
parents: 19958
diff changeset
    26
#define SHARE_VM_TRACE_TRACEMACROS_HPP
11480
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    27
36384
b0b41336a9a8 8143226: Minor updates to Event Based tracing
mgronlun
parents: 27673
diff changeset
    28
typedef u8 traceid;
b0b41336a9a8 8143226: Minor updates to Event Based tracing
mgronlun
parents: 27673
diff changeset
    29
11480
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    30
#define EVENT_THREAD_EXIT(thread)
19958
bfb37d724b0c 8021353: Event based tracing is missing thread exit
mgronlun
parents: 18025
diff changeset
    31
#define EVENT_THREAD_DESTRUCT(thread)
36386
d7f5e6df26df 8147442: Event-based tracing to allow for tracing Klass creation
mgronlun
parents: 36384
diff changeset
    32
#define TRACE_KLASS_CREATION(k, p, t)
11480
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    33
42639
762117d57d05 8170672: Event-based tracing to support classloader instances
mgronlun
parents: 42037
diff changeset
    34
#define TRACE_INIT_ID(k)
762117d57d05 8170672: Event-based tracing to support classloader instances
mgronlun
parents: 42037
diff changeset
    35
#define TRACE_REMOVE_ID(k)
762117d57d05 8170672: Event-based tracing to support classloader instances
mgronlun
parents: 42037
diff changeset
    36
#define TRACE_RESTORE_ID(k)
18025
b7bcf7497f93 8005849: JEP 167: Event-Based JVM Tracing
sla
parents: 12377
diff changeset
    37
#define TRACE_DATA TraceThreadData
11480
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    38
36384
b0b41336a9a8 8143226: Minor updates to Event Based tracing
mgronlun
parents: 27673
diff changeset
    39
#define THREAD_TRACE_ID(thread) ((traceid)thread->osthread()->thread_id())
36508
5f9eee6b383b 8142968: Module System implementation
alanb
parents: 36386
diff changeset
    40
extern "C" void JNICALL trace_register_natives(JNIEnv*, jclass);
5f9eee6b383b 8142968: Module System implementation
alanb
parents: 36386
diff changeset
    41
#define TRACE_REGISTER_NATIVES ((void*)((address_word)(&trace_register_natives)))
18025
b7bcf7497f93 8005849: JEP 167: Event-Based JVM Tracing
sla
parents: 12377
diff changeset
    42
#define TRACE_START() JNI_OK
b7bcf7497f93 8005849: JEP 167: Event-Based JVM Tracing
sla
parents: 12377
diff changeset
    43
#define TRACE_INITIALIZE() JNI_OK
47779
24022215d092 8189440: Event tracing macros for allocation and weak oops processing
egahlin
parents: 47216
diff changeset
    44
#define TRACE_ALLOCATION(obj, size, thread)
24022215d092 8189440: Event tracing macros for allocation and weak oops processing
egahlin
parents: 47216
diff changeset
    45
#define TRACE_WEAK_OOPS_DO(is_alive, f)
39274
940f0e8e9ec2 8158033: Notify_tracing() misplaced for intended purpose
mgronlun
parents: 37179
diff changeset
    46
#define TRACE_VM_EXIT()
940f0e8e9ec2 8158033: Notify_tracing() misplaced for intended purpose
mgronlun
parents: 37179
diff changeset
    47
#define TRACE_VM_ERROR()
46643
cb5f289ba033 8183545: Event tracing, transition hooks
rehn
parents: 43453
diff changeset
    48
#define TRACE_SUSPEND_THREAD(t)
11480
1bf714e8adb4 7115199: Add event tracing hooks and Java Flight Recorder infrastructure
phh
parents:
diff changeset
    49
36384
b0b41336a9a8 8143226: Minor updates to Event Based tracing
mgronlun
parents: 27673
diff changeset
    50
#define TRACE_DEFINE_TRACE_ID_METHODS typedef int ___IGNORED_hs_trace_type1
b0b41336a9a8 8143226: Minor updates to Event Based tracing
mgronlun
parents: 27673
diff changeset
    51
#define TRACE_DEFINE_TRACE_ID_FIELD typedef int ___IGNORED_hs_trace_type2
b0b41336a9a8 8143226: Minor updates to Event Based tracing
mgronlun
parents: 27673
diff changeset
    52
#define TRACE_DEFINE_KLASS_TRACE_ID_OFFSET typedef int ___IGNORED_hs_trace_type3
b0b41336a9a8 8143226: Minor updates to Event Based tracing
mgronlun
parents: 27673
diff changeset
    53
#define TRACE_KLASS_TRACE_ID_OFFSET in_ByteSize(0); ShouldNotReachHere()
b0b41336a9a8 8143226: Minor updates to Event Based tracing
mgronlun
parents: 27673
diff changeset
    54
#define TRACE_DEFINE_THREAD_TRACE_DATA_OFFSET typedef int ___IGNORED_hs_trace_type4
b0b41336a9a8 8143226: Minor updates to Event Based tracing
mgronlun
parents: 27673
diff changeset
    55
#define TRACE_THREAD_TRACE_DATA_OFFSET in_ByteSize(0); ShouldNotReachHere()
b0b41336a9a8 8143226: Minor updates to Event Based tracing
mgronlun
parents: 27673
diff changeset
    56
#define TRACE_DEFINE_THREAD_TRACE_ID_OFFSET typedef int ___IGNORED_hs_trace_type5
b0b41336a9a8 8143226: Minor updates to Event Based tracing
mgronlun
parents: 27673
diff changeset
    57
#define TRACE_THREAD_TRACE_ID_OFFSET in_ByteSize(0); ShouldNotReachHere()
b0b41336a9a8 8143226: Minor updates to Event Based tracing
mgronlun
parents: 27673
diff changeset
    58
#define TRACE_DEFINE_THREAD_ID_SIZE typedef int ___IGNORED_hs_trace_type6
42037
6269c5b5b651 8166806: Add intrinsic support for writer used in event based tracing
mgronlun
parents: 40664
diff changeset
    59
#define TRACE_DEFINE_THREAD_DATA_WRITER_OFFSET typedef int ___IGNORED_hs_trace_type7
6269c5b5b651 8166806: Add intrinsic support for writer used in event based tracing
mgronlun
parents: 40664
diff changeset
    60
#define TRACE_THREAD_DATA_WRITER_OFFSET in_ByteSize(0); ShouldNotReachHere()
43453
a2097d148d0e 8171960: Event-based tracing needs separate flag representation for Method
mgronlun
parents: 42639
diff changeset
    61
#define TRACE_DEFINE_FLAG typedef int ___IGNORED_hs_trace_type8
a2097d148d0e 8171960: Event-based tracing needs separate flag representation for Method
mgronlun
parents: 42639
diff changeset
    62
#define TRACE_DEFINE_FLAG_ACCESSOR typedef int ___IGNORED_hs_trace_type9
12377
ae6def2813e0 7160570: Intrinsification support for tracing framework
rbackman
parents: 11624
diff changeset
    63
#define TRACE_TEMPLATES(template)
ae6def2813e0 7160570: Intrinsification support for tracing framework
rbackman
parents: 11624
diff changeset
    64
#define TRACE_INTRINSICS(do_intrinsic, do_class, do_name, do_signature, do_alias)
11624
79398437f7eb 7130476: Remove use of #ifdef TRACE_DEFINE_KLASS_TRACE_ID from klass.hpp
rbackman
parents: 11480
diff changeset
    65
27673
df559a888b9f 8065361: Fixup headers and definitions for INCLUDE_TRACE
mgronlun
parents: 19958
diff changeset
    66
#endif // SHARE_VM_TRACE_TRACEMACROS_HPP