annotate src/share/vm/trace/traceEventClasses.xsl @ 20653:82d3e7b5277a

8065361: Fixup headers and definitions for INCLUDE_TRACE Reviewed-by: sla, stefank
author mgronlun
date Wed, 19 Nov 2014 18:14:01 +0100
parents 86e6d691f2e1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
1 <?xml version="1.0" encoding="utf-8"?>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
2 <!--
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
3 Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
4 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
5
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
6 This code is free software; you can redistribute it and/or modify it
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
7 under the terms of the GNU General Public License version 2 only, as
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
8 published by the Free Software Foundation.
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
9
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
10 This code is distributed in the hope that it will be useful, but WITHOUT
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
11 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
12 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
13 version 2 for more details (a copy is included in the LICENSE file that
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
14 accompanied this code).
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
15
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
16 You should have received a copy of the GNU General Public License version
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
17 2 along with this work; if not, write to the Free Software Foundation,
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
18 Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
19
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
20 Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
21 or visit www.oracle.com if you need additional information or have any
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
22 questions.
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
23 -->
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
24
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
25 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
12933
042cf42c72bd 8026703: Wrongly placed <xsl:import> element in Event-Based JVM Tracing .xsl files
simonis
parents: 10405
diff changeset
26 <xsl:import href="xsl_util.xsl"/>
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
27 <xsl:output method="text" indent="no" omit-xml-declaration="yes"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
28
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
29 <xsl:template match="/">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
30 <xsl:call-template name="file-header"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
31
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
32 #ifndef TRACEFILES_TRACEEVENTCLASSES_HPP
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
33 #define TRACEFILES_TRACEEVENTCLASSES_HPP
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
34
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
35 // On purpose outside the INCLUDE_TRACE
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
36 // Some parts of traceEvent.hpp are used outside of
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
37 // INCLUDE_TRACE
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
38
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
39 #include "memory/resourceArea.hpp"
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
40 #include "tracefiles/traceTypes.hpp"
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
41 #include "trace/traceEvent.hpp"
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
42 #include "utilities/macros.hpp"
13400
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
43 #include "utilities/ticks.hpp"
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
44 #if INCLUDE_TRACE
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
45 #include "trace/traceStream.hpp"
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
46 #include "utilities/ostream.hpp"
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
47
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
48 <xsl:apply-templates select="trace/events/struct" mode="trace"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
49 <xsl:apply-templates select="trace/events/event" mode="trace"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
50
20653
82d3e7b5277a 8065361: Fixup headers and definitions for INCLUDE_TRACE
mgronlun
parents: 13400
diff changeset
51 #else // !INCLUDE_TRACE
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
52
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
53 class TraceEvent {
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
54 public:
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
55 TraceEvent() {}
13400
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
56 void set_starttime(const Ticks&amp; time) {}
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
57 void set_endtime(const Ticks&amp; time) {}
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
58 bool should_commit() const { return false; }
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
59 void commit() const {}
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
60 };
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
61
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
62 <xsl:apply-templates select="trace/events/struct" mode="empty"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
63 <xsl:apply-templates select="trace/events/event" mode="empty"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
64
20653
82d3e7b5277a 8065361: Fixup headers and definitions for INCLUDE_TRACE
mgronlun
parents: 13400
diff changeset
65 #endif // INCLUDE_TRACE
82d3e7b5277a 8065361: Fixup headers and definitions for INCLUDE_TRACE
mgronlun
parents: 13400
diff changeset
66 #endif // TRACEFILES_TRACEEVENTCLASSES_HPP
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
67 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
68
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
69 <xsl:template match="struct" mode="trace">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
70 struct TraceStruct<xsl:value-of select="@id"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
71 {
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
72 private:
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
73 <xsl:apply-templates select="value" mode="write-fields"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
74 public:
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
75 <xsl:apply-templates select="value" mode="write-setters"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
76
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
77 void writeStruct(TraceStream&amp; ts) {
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
78 <xsl:apply-templates select="value" mode="write-data"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
79 }
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
80 };
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
81
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
82 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
83
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
84 <xsl:template match="struct" mode="empty">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
85 struct TraceStruct<xsl:value-of select="@id"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
86 {
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
87 public:
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
88 <xsl:apply-templates select="value" mode="write-empty-setters"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
89 };
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
90 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
91
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
92
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
93 <xsl:template match="event" mode="empty">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
94 <xsl:value-of select="concat('class Event', @id, ' : public TraceEvent')"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
95 {
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
96 public:
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
97 <xsl:value-of select="concat(' Event', @id, '(bool ignore=true) {}')"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
98 <xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
99 </xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
100
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
101 <xsl:apply-templates select="value|structvalue|transition_value|relation" mode="write-empty-setters"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
102 };
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
103
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
104 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
105
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
106
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
107 <xsl:template match="event" mode="trace">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
108 <xsl:value-of select="concat('class Event', @id, ' : public TraceEvent&lt;Event', @id, '&gt;')"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
109 {
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
110 public:
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
111 static const bool hasThread = <xsl:value-of select="@has_thread"/>;
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
112 static const bool hasStackTrace = <xsl:value-of select="@has_stacktrace"/>;
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
113 static const bool isInstant = <xsl:value-of select="@is_instant"/>;
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
114 static const bool isRequestable = <xsl:value-of select="@is_requestable"/>;
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
115 static const TraceEventId eventId = <xsl:value-of select="concat('Trace', @id, 'Event')"/>;
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
116
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
117 private:
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
118 <xsl:apply-templates select="value|structvalue|transition_value|relation" mode="write-fields"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
119
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
120 void writeEventContent(void) {
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
121 TraceStream ts(*tty);
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
122 ts.print("<xsl:value-of select="@label"/>: [");
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
123 <xsl:apply-templates select="value|structvalue" mode="write-data"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
124 ts.print("]\n");
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
125 }
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
126
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
127 public:
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
128 <xsl:apply-templates select="value|structvalue|transition_value|relation" mode="write-setters"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
129
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
130 bool should_write(void) {
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
131 return true;
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
132 }
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
133 <xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
134
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
135 </xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
136 <xsl:value-of select="concat(' Event', @id, '(EventStartTime timing=TIMED) : TraceEvent&lt;Event', @id, '&gt;(timing) {}', $newline)"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
137 void writeEvent(void) {
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
138 ResourceMark rm;
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
139 if (UseLockedTracing) {
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
140 ttyLocker lock;
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
141 writeEventContent();
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
142 } else {
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
143 writeEventContent();
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
144 }
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
145 }
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
146 };
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
147
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
148 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
149
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
150 <xsl:template match="value|transition_value|relation" mode="write-empty-setters">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
151 <xsl:param name="cls"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
152 <xsl:variable name="type" select="@type"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
153 <xsl:variable name="wt" select="//primary_type[@symbol=$type]/@type"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
154 <xsl:value-of select="concat(' void set_', @field, '(', $wt, ' value) { }')"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
155 <xsl:if test="position() != last()">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
156 <xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
157 </xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
158 </xsl:if>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
159 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
160
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
161 <xsl:template match="structvalue" mode="write-empty-setters">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
162 <xsl:param name="cls"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
163 <xsl:value-of select="concat(' void set_', @field, '(const TraceStruct', @type, '&amp; value) { }')"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
164 <xsl:if test="position() != last()">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
165 <xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
166 </xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
167 </xsl:if>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
168 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
169
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
170 <xsl:template match="value[@type='TICKS']" mode="write-setters">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
171 #if INCLUDE_TRACE
13400
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
172 <xsl:value-of select="concat(' void set_', @field, '(const Ticks&amp; time) { _', @field, ' = time; }')"/>
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
173 #else
13400
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
174 <xsl:value-of select="concat(' void set_', @field, '(const Ticks&amp; ignore) {}')"/>
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
175 #endif
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
176 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
177
13400
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
178 <xsl:template match="value[@type='TICKSPAN']" mode="write-setters">
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
179 #if INCLUDE_TRACE
13400
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
180 <xsl:value-of select="concat(' void set_', @field, '(const Tickspan&amp; time) { _', @field, ' = time; }')"/>
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
181 #else
13400
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
182 <xsl:value-of select="concat(' void set_', @field, '(const Tickspan&amp; ignore) {}')"/>
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
183 #endif
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
184 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
185
13400
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
186
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
187 <xsl:template match="value" mode="write-fields">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
188 <xsl:variable name="type" select="@type"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
189 <xsl:variable name="wt" select="//primary_type[@symbol=$type]/@type"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
190 <xsl:value-of select="concat(' ', $wt, ' _', @field, ';')"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
191 <xsl:if test="position() != last()">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
192 <xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
193 </xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
194 </xsl:if>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
195 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
196
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
197 <xsl:template match="structvalue" mode="write-fields">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
198 <xsl:value-of select="concat(' TraceStruct', @type, ' _', @field, ';')"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
199 <xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
200 </xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
201 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
202
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
203 <xsl:template match="value|transition_value|relation" mode="write-setters">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
204 <xsl:param name="cls"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
205 <xsl:variable name="type" select="@type"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
206 <xsl:variable name="wt" select="//primary_type[@symbol=$type]/@type"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
207 <xsl:value-of select="concat(' void set_', @field, '(', $wt, ' value) { this->_', @field, ' = value; }')"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
208 <xsl:if test="position() != last()">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
209 <xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
210 </xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
211 </xsl:if>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
212 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
213
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
214 <xsl:template match="structvalue" mode="write-setters">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
215 <xsl:param name="cls"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
216 <xsl:value-of select="concat(' void set_', @field, '(const TraceStruct', @type, '&amp; value) { this->_', @field, ' = value; }')"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
217 <xsl:if test="position() != last()">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
218 <xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
219 </xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
220 </xsl:if>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
221 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
222
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
223 <xsl:template match="value" mode="write-data">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
224 <xsl:variable name="type" select="@type"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
225 <xsl:variable name="wt" select="//primary_type[@symbol=$type]/@writetype"/>
13400
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
226 <xsl:choose>
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
227 <xsl:when test="@type='TICKSPAN'">
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
228 <xsl:value-of select="concat(' ts.print_val(&quot;', @label, '&quot;, _', @field, '.value());')"/>
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
229 </xsl:when>
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
230 <xsl:when test="@type='TICKS'">
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
231 <xsl:value-of select="concat(' ts.print_val(&quot;', @label, '&quot;, _', @field, '.value());')"/>
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
232 </xsl:when>
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
233 <xsl:otherwise>
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
234 <xsl:value-of select="concat(' ts.print_val(&quot;', @label, '&quot;, _', @field, ');')"/>
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
235 </xsl:otherwise>
86e6d691f2e1 8028128: Add a type safe alternative for working with counter based data
mgronlun
parents: 12933
diff changeset
236 </xsl:choose>
10405
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
237 <xsl:if test="position() != last()">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
238 <xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
239 ts.print(", ");
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
240 </xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
241 </xsl:if>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
242 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
243
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
244 <xsl:template match="structvalue" mode="write-data">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
245 <xsl:value-of select="concat(' _', @field, '.writeStruct(ts);')"/>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
246 <xsl:if test="position() != last()">
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
247 <xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
248 ts.print(", ");
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
249 </xsl:text>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
250 </xsl:if>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
251 </xsl:template>
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
252
f2110083203d 8005849: JEP 167: Event-Based JVM Tracing
sla
parents:
diff changeset
253 </xsl:stylesheet>