annotate packages/infra/current/include/cyg_trac.h @ 64:c38311975d4f ecos-sw-2000-01-28

Merge from eCos master repository on 2000-01-28-04:28:11-GMT
author jlarmour
date Fri, 28 Jan 2000 04:59:39 +0000
parents 443894e2e912
children bf00f99aec69
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1 #ifndef CYGONCE_INFRA_CYG_TRAC_H
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
2 #define CYGONCE_INFRA_CYG_TRAC_H
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
3
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
4 //==========================================================================
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
5 //
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
6 // cyg_trac.h
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
7 //
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
8 // Macros and prototypes for the tracing system
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
9 //
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
10 //==========================================================================
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
11 //####COPYRIGHTBEGIN####
64
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
12 //
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
13 // -------------------------------------------
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
14 // The contents of this file are subject to the Red Hat eCos Public License
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
15 // Version 1.0 (the "License"); you may not use this file except in
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
16 // compliance with the License. You may obtain a copy of the License at
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
17 // http://sourceware.cygnus.com/ecos
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
18 //
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
19 // Software distributed under the License is distributed on an
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
20 // basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
21 // License for the specific language governing rights and limitations under
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
22 // the License.
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
23 //
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
24 // The Original Code is eCos - Embedded Configurable Operating System,
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
25 // released September 30, 1998.
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
26 //
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
27 // The Initial Developer of the Original Code is Red Hat.
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
28 // Portions created by Red Hat are
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
29 // Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
30 // All Rights Reserved.
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
31 // -------------------------------------------
c38311975d4f Merge from eCos master repository on 2000-01-28-04:28:11-GMT
jlarmour
parents: 2
diff changeset
32 //
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
33 //####COPYRIGHTEND####
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
34 //==========================================================================
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
35 //#####DESCRIPTIONBEGIN####
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
36 //
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
37 // Author(s): nickg from an original by hmt
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
38 // Contributors: nickg
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
39 // Date: 1998-04-23
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
40 // Purpose: Use traces to log procedure entry, and "print" stuff
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
41 // Description: Runtime logging messages that compile to nothing in
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
42 // release versions of the code, to allow
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
43 // as-you-go tracing of alternate builds.
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
44 // Usage: #include <cyg/infra/cyg_trac.h>
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
45 // ...
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
46 // CYG_TRACE2( PIPE_TRACE, "pipe %x, data %d", ppipe, oword );
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
47 //
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
48 // which can result, for example, in a message of the form:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
49 // "TRACE: pipemgr.cxx:1340, write_pipe(): pipe 0x8004c, data 17"
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
50 //
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
51 //####DESCRIPTIONEND####
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
52 //
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
53
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
54 /****************************************************************************
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
55
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
56 Explicit tracing
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
57 ================
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
58
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
59 CYG_TRACE0( bool, msg );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
60 CYG_TRACE1( bool, msg, arg1 );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
61 CYG_TRACE2( bool, msg, arg1, arg2 );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
62 ....
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
63 CYG_TRACE8( bool, msg, .... [with 8 args] );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
64
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
65 In general, the bool controls whether or not the tracing occurs for a
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
66 particular invocation of the macro. The msg is a printf-style string,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
67 though exactly which formats are supported depends on the underlying
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
68 implementation. Typically, at least %d, %x, %08x, %c and %s will be
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
69 supported. Of course a most compact implementation might print
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
70
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
71 TRACE:z1dbuff.c[92]get_nextdata(): data pointer %x offset %d: 42BD8 1C
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
72
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
73 or some such, leaving you to work it out for yourself.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
74
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
75 It is expected that the boolean would rarely actually be a complex
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
76 expression; it is more likely that it would either be "1", tracing being
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
77 controlled for the whole compilation unit or subsystem by means of the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
78 CYGDBG_USE_TRACING symbol, or a local symbol for tracing over the whole
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
79 file, defined to 0 or to 1. For runtime control of tracing in a debugging
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
80 session, it is typical to use symbols defined to expressions such as:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
81
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
82 static int xxx_trace = 0;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
83 #define TL1 (0 < xxx_trace)
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
84 #define TL2 (1 < xxx_trace)
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
85
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
86 so you set xxx_trace to 1 to enable those messages conditioned by TL1
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
87 (trace level 1) and so on.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
88
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
89 CYG_TRACE1( TL1, "Major argument is %d", zz );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
90 CYG_TRACE4( TL2, "...minor details %d %d %d %d", m1, m2, m3 ,m4 );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
91
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
92 To assist with the case where the same symbol or expression is used
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
93 throughout a compilation unit, the programmer can define the symbol
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
94 CYG_TRACE_USER_BOOL as they choose and then use convenience macros with the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
95 suffix 'B' in the obvious manner:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
96
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
97 #define CYG_TRACE_USER_BOOL (xxx_trace > 0)
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
98 CYG_TRACE2B( "Counters are %d, %d", countlo, counthi );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
99
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
100 For the case where you just want to print a load of numbers in hex, or
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
101 decimal, convenience suffices X, D and Y are provided. X uses %08x, D %d
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
102 and Y an unadorned %x for each argument.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
103
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
104 CYG_TRACE3D( TL2, m1, m2, d );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
105
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
106 If you want to do something similar but with a little more comment, the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
107 names (strictly spellings) of the variables you are printing can be used by
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
108 appending a V to the X, D or Y.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
109
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
110 CYG_TRACE3DV( TL2, m1, m2, d );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
111
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
112 might output:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
113
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
114 TRACE:z1dbuff.c[92]get_nextdata(): m1=23 m2=-4 d=55
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
115
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
116 These conveniences can be combined, and they apply equally to tracing with
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
117 up to 8 variables; the B for Bool goes last:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
118
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
119 CYG_TRACE4DVB( i, i*i, i*i*i, i*i*i*i );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
120
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
121 might output:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
122
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
123 TRACE:table.c[12]main(): i=3 i*i=9 i*i*i=27 i*i*i*i=81
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
124
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
125
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
126 Function Tracing
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
127 ================
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
128
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
129 There are also facities for easily reporting function entry and exit,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
130 printing the function arguments, and detecting returns without logging (or
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
131 without a value!).
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
132
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
133 The basic facility is
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
134
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
135 CYG_REPORT_FUNCTION();
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
136
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
137 In C, place this between the local variable declarations and the first
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
138 statement or errors will ensue. C++ is more flexible; place the macro as
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
139 the first line of all functions you wish to trace. The following
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
140 variations are also provided:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
141
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
142 CYG_REPORT_FUNCTYPE( exitmsg ) provide a printf string for the type
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
143 of the returned value
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
144 CYG_REPORT_FUNCNAME( name ) supply a function name explicitly, for
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
145 if __FUNCTION__ is not supported
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
146 CYG_REPORT_FUNCNAMETYPE( name, exitmsg ) both of the above extensions
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
147
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
148 These are unconditional; the assumption is that if function reporting is
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
149 used at all it will be used for all functions within a compilation unit.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
150 However, it is useful to be able to control function reporting at finer
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
151 grain without editing the source files concerned, at compile time or at
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
152 runtime. To support this, conditioned versions (with suffix 'C') are
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
153 provided for the above four macros, which only procduce trace output if the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
154 macro CYG_REPORT_USER_BOOL evaluates true.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
155
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
156 CYG_REPORT_FUNCTIONC()
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
157 CYG_REPORT_FUNCNAMEC( name )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
158 CYG_REPORT_FUNCTYPEC( exitmsg )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
159 CYG_REPORT_FUNCNAMETYPEC( name, exitmsg )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
160
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
161 You can define CYG_REPORT_USER_BOOL to anything you like before invoking
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
162 these macros; using a simple -DCYG_REPORT_USER_BOOL=0 or ...=1 on the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
163 compiler command line would do the trick, but there is more flexibility to
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
164 be gained by something like:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
165
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
166 #define CYG_REPORT_USER_BOOL (reporting_bool_FOO)
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
167 #ifdef TRACE_FOO
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
168 int reporting_bool_FOO = 1;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
169 #else
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
170 int reporting_bool_FOO = 0;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
171 #endif
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
172
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
173 where FOO relates to the module name. Thus an external symbol sets the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
174 default, but it can be overridden in a debugging session by setting the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
175 variable reporting_bool_FOO.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
176
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
177 Note that the condition applied to the initial CYG_REPORT_FUNC...() macro
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
178 controls all function-related reporting (not tracing) from that function;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
179 the underlying mechanisms still operate even if no output is created. Thus
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
180 no conditioned variants of CYG_REPORT_FUNCARG[s] nor of CYG_REPORT_RETURN
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
181 are needed.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
182
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
183 Examples:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
184 int myfunction()
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
185 {
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
186 CYG_REPORT_FUNCTYPE( "recode is %d" );
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
187
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
188 A function return is traced using
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
189
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
190 CYG_REPORT_RETURN() a void return
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
191 CYG_REPORT_RETVAL( value ) returning a value
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
192
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
193 With the CYG_REPORT_FUNCTYPE example, the latter might produce a message
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
194 like:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
195
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
196 TRACE:myprog.c[40]fact(): enter
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
197 TRACE:myprog.c[53]fact(): retcode is 24
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
198
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
199 It is also useful to trace the values of the arguments to a function:
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
200 CYG_REPORT_FUNCARGVOID confirms that the function is void
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
201 CYG_REPORT_FUNCARG1( format, arg ) printf-style
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
202 to
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
203 CYG_REPORT_FUNCARG8( format, arg1...arg8 ) printf-style
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
204
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
205 The CYG_REPORT_FUNCARG[1-8] macros are also offered with the convenience
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
206 extensions: D, X, or Y, and V like the explicit tracing macros. For
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
207 example:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
208
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
209 int fact( int number )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
210 {
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
211 CYG_REPORT_FUNCTYPE( "recode is %d" );
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
212 CYG_REPORT_FUNCARG1DV( number );
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
213 int result = number;
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
214 while ( --number > 1 ) result *= number
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
215 CYG_REPORT_RETVAL( result );
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
216 return result;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
217 }
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
218
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
219 might produce:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
220
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
221 TRACE:myprog.c[40]fact(): enter
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
222 TRACE:myprog.c[40]fact(): number=4
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
223 TRACE:myprog.c[53]fact(): retcode is 24
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
224
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
225 If no exit message is provided, a default of %08x is used.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
226
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
227
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
228 General Configury
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
229 =================
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
230
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
231 If CYGDBG_INFRA_DEBUG_FUNCTION_PSEUDOMACRO is *not* defined, it is assumed
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
232 that __PRETTY_FUNCTION__ or equivalents do not exist, so no function name
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
233 tracing is possible; only file and line number.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
234
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
235 If CYGDBG_INFRA_DEBUG_TRACE_MESSAGE is *not* defined, the message and
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
236 arguments to all tracing macros are not used; only "execution was here"
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
237 type information, by file, function and line number, is available. This
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
238 can greatly reduce the size of an image with tracing disabled, which may be
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
239 crucial in debugging on actual shipped hardware with limited memory.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
240
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
241 C/C++: in C++ the function reporting is implemented using a class object
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
242 with a destructor; this allows reporting of a return which has not been
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
243 explicitly reported, and detection of accidental multiple return reports.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
244 This helps you write the function reporting correctly. In C it is not
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
245 possible to be so sophisticated, so the implementation is not so helpful in
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
246 detecting errors in the use of the tracing system.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
247
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
248 Note that for all of the above variations, the internal API to the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
249 functions which are called in consequence of tracing remains the same, so
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
250 these variations can be mixed in the same executable, by configuring the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
251 tracing macros differently in different compilation units or subsystems.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
252
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
253
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
254 Summary
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
255 =======
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
256
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
257 Explicit tracing
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
258 ----------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
259
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
260 CYG_TRACE0( bool, msg ) if bool, print msg
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
261 CYG_TRACE1( bool, msg, arg ) if bool, printf-style
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
262 to
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
263 CYG_TRACE8( bool, msg, arg1...arg8 ) if bool, printf-style
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
264
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
265 CYG_TRACE0B( msg, args... ) to CYG_TRACE8B() use CYG_TRACE_USER_BOOL
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
266
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
267 CYG_TRACE1X( bool, args... ) to CYG_TRACE8X() print args using %08x
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
268 CYG_TRACE1Y( bool, args... ) to CYG_TRACE8Y() print args using %x
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
269 CYG_TRACE1D( bool, args... ) to CYG_TRACE8D() print args using %d
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
270
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
271 CYG_TRACE1XV( bool, args... ) to CYG_TRACE8XV() print args using "arg=%08x"
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
272 CYG_TRACE1YV( bool, args... ) to CYG_TRACE8YV() print args using "arg=%x"
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
273 CYG_TRACE1DV( bool, args... ) to CYG_TRACE8DV() print args using "arg=%d"
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
274
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
275 CYG_TRACE1XB( args... ) to CYG_TRACE8XB() print using %08x, no bool
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
276 CYG_TRACE1YB( args... ) to CYG_TRACE8YB() print using %x, no bool
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
277 CYG_TRACE1DB( args... ) to CYG_TRACE8DB() print using %d, no bool
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
278
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
279 CYG_TRACE1XVB( args... ) to CYG_TRACE8XVB() use "arg=%08x", no bool
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
280 CYG_TRACE1YVB( args... ) to CYG_TRACE8YVB() use "arg=%x", no bool
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
281 CYG_TRACE1DVB( args... ) to CYG_TRACE8DVB() use "arg=%d", no bool
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
282
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
283 Function tracing
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
284 ----------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
285
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
286 CYG_REPORT_FUNCTION() default function entry
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
287 CYG_REPORT_FUNCNAME( name ) name the function
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
288 CYG_REPORT_FUNCTYPE( exitmsg ) printf for retval
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
289 CYG_REPORT_FUNCNAMETYPE( name, exitmsg ) both
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
290
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
291 CYG_REPORT_FUNCTIONC() as above, but conditional
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
292 CYG_REPORT_FUNCNAMEC( name ) on CYG_REPORT_USER_BOOL
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
293 CYG_REPORT_FUNCTYPEC( exitmsg ) however it is defined
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
294 CYG_REPORT_FUNCNAMETYPEC( name, exitmsg ) ...
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
295
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
296 CYG_REPORT_RETURN() void function exit
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
297 CYG_REPORT_RETVAL( value ) returning value
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
298
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
299 CYG_REPORT_FUNCARGVOID() void function entry
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
300 CYG_REPORT_FUNCARG1( format, arg ) printf-style
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
301 to
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
302 CYG_REPORT_FUNCARG8( format, arg1...arg8 ) printf-style
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
303
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
304 CYG_REPORT_FUNCARG1X( arg )
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
305 to
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
306 CYG_REPORT_FUNCARG8X( arg1...arg8 ) use %08x
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
307 CYG_REPORT_FUNCARG1Y... use %x
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
308 CYG_REPORT_FUNCARG1D... use %d
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
309
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
310 CYG_REPORT_FUNCARG1XV... use "arg=%08x"
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
311 CYG_REPORT_FUNCARG1YV... use "arg=%x"
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
312 CYG_REPORT_FUNCARG1DV... use "arg=%d"
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
313
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
314
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
315 ---------------------------------------------------------------------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
316
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
317 Internal Documentation
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
318 ======================
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
319
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
320 The required functions which are used by the tracing macros are
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
321
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
322 externC void
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
323 cyg_tracenomsg( char *psz_func, char *psz_file, cyg_uint32 linenum );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
324
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
325 externC void
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
326 cyg_tracemsg( cyg_uint32 what,
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
327 char *psz_func, char *psz_file, cyg_uint32 linenum,
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
328 char *psz_msg );
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
329
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
330 externC void
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
331 cyg_tracemsg2( cyg_uint32 what,
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
332 char *psz_func, char *psz_file, cyg_uint32 linenum,
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
333 char *psz_msg,
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
334 CYG_ADDRWORD arg0, CYG_ADDRWORD arg1 );
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
335 // extended in the obvious way for 4,6,8 arguments
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
336
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
337 These functions should expect psz_func and psz_file to possibly be NULL in
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
338 case those facilities are not available in the compilation environment, and
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
339 do something safe in such cases. A NULL message should really be dealt
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
340 with safely also, just logging "execution here" info like cyg_tracenomsg().
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
341
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
342 Discussion of possible underlying implementations
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
343 -------------------------------------------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
344
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
345 It is intended that the functions that get called can simply print the info
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
346 they are given in as fancy a format as you like, or they could do the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
347 printf-type formatting and log the resulting text in a buffer. They get
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
348 told the type of event (function-entry, function-arguments, function-exit
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
349 or plain tracing info) and so can perform fancy indenting, for example, to
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
350 make call stack inspection more obvious to humans. It is also intended
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
351 that a more compact logging arrangement be possible, for example one which
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
352 records, in 32-bit words (CYG_ADDRWORDs), the addresses of the file,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
353 function and msg strings, the line number and the arguments. This has the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
354 implication that the msg string should not be constructed dynamically but
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
355 be static ie. a plain quoted C string. The number of arguments also must
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
356 be recorded, and if it is chosen to save string arguments in the buffer
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
357 rather than just their addresses (which could be invalid by the time the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
358 logged information is processed) some flagging of which arguments are
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
359 strings must be provided. The system could also be extended to deal with
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
360 floats of whichever size fir in a CYG_ADDRWORD; these would probably
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
361 require special treatment also. With these considerations in mind, the
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
362 maximum number of parameters in a single trace message has been set to 8,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
363 so that a byte bitset could be used to indicate which arguments are
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
364 strings, another for those which are floats, and the count of arguments
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
365 also fits in a byte as number or a bitset.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
366
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
367
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
368 ****************************************************************************/
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
369
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
370 #include <pkgconf/infra.h>
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
371
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
372 #include <cyg/infra/cyg_ass.h>
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
373
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
374 // -------------------------------------------------------------------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
375 // CYGDBG_INFRA_DEBUG_FUNCTION_PSEUDOMACRO is dealt with in cyg_ass.h.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
376 // -------------------------------------------------------------------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
377
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
378 #ifdef CYGDBG_USE_TRACING
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
379
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
380 // -------------------------------------------------------------------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
381 // We define macros and appropriate prototypes for the trace/fail
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
382 // system. These are:
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
383 // CYG_TRACE0..8 - trace if boolean
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
384 // CYG_TRACEPROC - default no comment proc entry
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
385 // CYG_TRACEPROCOUT - default no comment proc exit
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
386
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
387 // these are executed to deal with tracing - breakpoint?
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
388
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
389 externC void
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
390 cyg_tracenomsg( char *psz_func, char *psz_file, cyg_uint32 linenum );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
391
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
392 // provide every other one of these as a space/caller bloat compromise.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
393
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
394 # ifdef CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
395
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
396 enum cyg_trace_what{
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
397 cyg_trace_trace = 0,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
398 cyg_trace_enter,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
399 cyg_trace_args,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
400 cyg_trace_return,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
401 // cyg_trace_,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
402 // cyg_trace_,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
403 };
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
404
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
405 externC void
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
406 cyg_tracemsg( cyg_uint32 what,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
407 char *psz_func, char *psz_file, cyg_uint32 linenum,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
408 char *psz_msg );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
409
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
410 externC void
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
411 cyg_tracemsg2( cyg_uint32 what,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
412 char *psz_func, char *psz_file, cyg_uint32 linenum,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
413 char *psz_msg,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
414 CYG_ADDRWORD arg0, CYG_ADDRWORD arg1 );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
415 externC void
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
416 cyg_tracemsg4( cyg_uint32 what,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
417 char *psz_func, char *psz_file, cyg_uint32 linenum,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
418 char *psz_msg,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
419 CYG_ADDRWORD arg0, CYG_ADDRWORD arg1,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
420 CYG_ADDRWORD arg2, CYG_ADDRWORD arg3 );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
421 externC void
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
422 cyg_tracemsg6( cyg_uint32 what,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
423 char *psz_func, char *psz_file, cyg_uint32 linenum,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
424 char *psz_msg,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
425 CYG_ADDRWORD arg0, CYG_ADDRWORD arg1,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
426 CYG_ADDRWORD arg2, CYG_ADDRWORD arg3,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
427 CYG_ADDRWORD arg4, CYG_ADDRWORD arg5 );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
428 externC void
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
429 cyg_tracemsg8( cyg_uint32 what,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
430 char *psz_func, char *psz_file, cyg_uint32 linenum,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
431 char *psz_msg,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
432 CYG_ADDRWORD arg0, CYG_ADDRWORD arg1,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
433 CYG_ADDRWORD arg2, CYG_ADDRWORD arg3,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
434 CYG_ADDRWORD arg4, CYG_ADDRWORD arg5,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
435 CYG_ADDRWORD arg6, CYG_ADDRWORD arg7 );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
436
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
437 #endif // CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
438
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
439 // -------------------------------------------------------------------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
440
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
441 # ifdef CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
442
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
443 # define CYG_TRACE_docall0( _msg_ ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
444 cyg_tracemsg( cyg_trace_trace, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
445 __PRETTY_FUNCTION__, __FILE__, __LINE__, _msg_ );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
446
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
447 # define CYG_TRACE_docall2( _msg_, _arg0_, _arg1_ ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
448 cyg_tracemsg2( cyg_trace_trace, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
449 __PRETTY_FUNCTION__, __FILE__, __LINE__, _msg_, \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
450 (CYG_ADDRWORD)_arg0_, (CYG_ADDRWORD)_arg1_ );
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
451
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
452 # define CYG_TRACE_docall4( _msg_, _arg0_, _arg1_ , _arg2_, _arg3_ ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
453 cyg_tracemsg4( cyg_trace_trace, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
454 __PRETTY_FUNCTION__, __FILE__, __LINE__, _msg_, \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
455 (CYG_ADDRWORD)_arg0_, (CYG_ADDRWORD)_arg1_, \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
456 (CYG_ADDRWORD)_arg2_, (CYG_ADDRWORD)_arg3_ );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
457
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
458 # define CYG_TRACE_docall6( _msg_, _arg0_, _arg1_ , _arg2_, _arg3_, \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
459 _arg4_, _arg5_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
460 cyg_tracemsg6( cyg_trace_trace, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
461 __PRETTY_FUNCTION__, __FILE__, __LINE__, _msg_, \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
462 (CYG_ADDRWORD)_arg0_, (CYG_ADDRWORD)_arg1_, \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
463 (CYG_ADDRWORD)_arg2_, (CYG_ADDRWORD)_arg3_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
464 (CYG_ADDRWORD)_arg4_, (CYG_ADDRWORD)_arg5_ );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
465
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
466 # define CYG_TRACE_docall8( _msg_, _arg0_, _arg1_ , _arg2_, _arg3_, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
467 _arg4_, _arg5_, _arg6_, _arg7_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
468 cyg_tracemsg8( cyg_trace_trace, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
469 __PRETTY_FUNCTION__, __FILE__, __LINE__, _msg_, \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
470 (CYG_ADDRWORD)_arg0_, (CYG_ADDRWORD)_arg1_, \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
471 (CYG_ADDRWORD)_arg2_, (CYG_ADDRWORD)_arg3_, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
472 (CYG_ADDRWORD)_arg4_, (CYG_ADDRWORD)_arg5_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
473 (CYG_ADDRWORD)_arg6_, (CYG_ADDRWORD)_arg7_ );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
474
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
475 # else // do not CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
476
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
477 # define CYG_TRACE_docall0( _msg_ ) \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
478 cyg_tracenomsg( __PRETTY_FUNCTION__, __FILE__, __LINE__ );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
479
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
480 # define CYG_TRACE_docall2( _msg_, _arg0_, _arg1_ ) \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
481 cyg_tracenomsg( __PRETTY_FUNCTION__, __FILE__, __LINE__ );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
482
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
483 # define CYG_TRACE_docall4( _msg_, _arg0_, _arg1_ , _arg2_, _arg3_ ) \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
484 cyg_tracenomsg( __PRETTY_FUNCTION__, __FILE__, __LINE__ );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
485
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
486 # define CYG_TRACE_docall6( _msg_, _arg0_, _arg1_ , _arg2_, _arg3_, \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
487 _arg4_, _arg5_ ) \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
488 cyg_tracenomsg( __PRETTY_FUNCTION__, __FILE__, __LINE__ );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
489
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
490 # define CYG_TRACE_docall8( _msg_, _arg0_, _arg1_, _arg2_, _arg3_, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
491 _arg4_, _arg5_, _arg6_, _arg7_ ) \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
492 cyg_tracenomsg( __PRETTY_FUNCTION__, __FILE__, __LINE__ );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
493
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
494 #endif
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
495
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
496 // -------------------------------------------------------------------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
497 // Conditioned trace; if the condition is false, fail.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
498
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
499 #define CYG_TRACE0( _bool_, _msg_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
500 CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
501 if ( ( _bool_ ) ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
502 CYG_TRACE_docall0( _msg_ ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
503 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
504
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
505 #define CYG_TRACE1( _bool_, _msg_, a ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
506 CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
507 if ( ( _bool_ ) ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
508 CYG_TRACE_docall2( _msg_, a, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
509 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
510
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
511 #define CYG_TRACE2( _bool_, _msg_, a, b ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
512 CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
513 if ( ( _bool_ ) ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
514 CYG_TRACE_docall2( _msg_, a, b ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
515 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
516
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
517 #define CYG_TRACE3( _bool_, _msg_, a, b, c ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
518 CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
519 if ( ( _bool_ ) ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
520 CYG_TRACE_docall4( _msg_, a, b, c, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
521 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
522
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
523 #define CYG_TRACE4( _bool_, _msg_, a, b, c, d ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
524 CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
525 if ( ( _bool_ ) ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
526 CYG_TRACE_docall4( _msg_, a, b, c, d ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
527 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
528
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
529 #define CYG_TRACE5( _bool_, _msg_, a, b, c, d, e ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
530 CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
531 if ( ( _bool_ ) ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
532 CYG_TRACE_docall6( _msg_, a, b, c, d, e, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
533 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
534
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
535 #define CYG_TRACE6( _bool_, _msg_, a, b, c, d, e, f ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
536 CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
537 if ( ( _bool_ ) ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
538 CYG_TRACE_docall6( _msg_, a, b, c, d, e, f ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
539 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
540
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
541 #define CYG_TRACE7( _bool_, _msg_, a, b, c, d, e, f, g ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
542 CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
543 if ( ( _bool_ ) ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
544 CYG_TRACE_docall8( _msg_, a, b, c, d, e, f, g, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
545 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
546
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
547 #define CYG_TRACE8( _bool_, _msg_, a, b, c, d, e, f, g, h ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
548 CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
549 if ( ( _bool_ ) ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
550 CYG_TRACE_docall8( _msg_, a, b, c, d, e, f, g, h ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
551 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
552
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
553 // -------------------------------------------------------------------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
554 // Report function entry and exit.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
555 // In C++ the macro CYG_REPORT_FUNCTION should appear as the first line of
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
556 // any function. It will generate a message whenever the function is entered
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
557 // and when it is exited.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
558 // In C the macro should appear as the first statement after any local variable
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
559 // definitions. No exit message will be generated unless CYG_REPORT_RETURN is
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
560 // placed just before each return.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
561 // Where a piece of code is to be compiled with both C and C++, the above
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
562 // rules for C should be followed.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
563
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
564 #ifdef CYGDBG_INFRA_DEBUG_FUNCTION_REPORTS
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
565
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
566 #ifdef __cplusplus
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
567
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
568 class Cyg_TraceFunction_Report_
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
569 {
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
570 public:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
571 int cond;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
572 char *func;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
573 char *file;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
574 cyg_uint32 lnum;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
575 #ifdef CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
576 char *exitmsg;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
577 CYG_ADDRWORD exitvalue;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
578 enum { UNSET = 0, SET, VOID } exitset;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
579 #endif
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
580
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
581 Cyg_TraceFunction_Report_(
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
582 int condition, char *psz_func, char *psz_file,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
583 cyg_uint32 linenum)
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
584 {
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
585 cond = condition;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
586 func = psz_func;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
587 file = psz_file;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
588 lnum = linenum;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
589
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
590 #ifdef CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
591 exitmsg = NULL;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
592 exitset = UNSET;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
593 if ( cond )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
594 cyg_tracemsg( cyg_trace_enter, func, file, lnum, "enter");
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
595 #else
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
596 if ( cond )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
597 cyg_tracenomsg( func, file, lnum );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
598 #endif
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
599 };
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
600
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
601 Cyg_TraceFunction_Report_(
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
602 int condition, char *psz_func, char *psz_file,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
603 cyg_uint32 linenum, char *psz_exitmsg )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
604 {
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
605 cond = condition;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
606 func = psz_func;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
607 file = psz_file;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
608 lnum = linenum;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
609 #ifdef CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
610 exitmsg = psz_exitmsg;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
611 exitset = UNSET;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
612 if ( cond )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
613 cyg_tracemsg( cyg_trace_enter, func, file, lnum, "enter");
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
614 #else
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
615 CYG_UNUSED_PARAM( char *, psz_exitmsg );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
616 if ( cond )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
617 cyg_tracenomsg( func, file, lnum );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
618 #endif
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
619 };
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
620
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
621 inline void set_exitvoid( cyg_uint32 linenum )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
622 {
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
623 lnum = linenum;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
624 #ifdef CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
625 CYG_ASSERT( NULL == exitmsg, "exitvoid used in typed function" );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
626 CYG_ASSERT( UNSET == exitset, "exitvoid used when arg already set" );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
627 exitset = VOID;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
628 #endif
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
629 }
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
630
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
631 inline void set_exitvalue( cyg_uint32 linenum, CYG_ADDRWORD retcode )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
632 {
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
633 lnum = linenum;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
634 #ifdef CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
635 CYG_ASSERT( UNSET == exitset, "exitvalue used when arg already set" );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
636 exitvalue = retcode;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
637 exitset = SET;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
638 #else
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
639 CYG_UNUSED_PARAM( CYG_ADDRWORD, retcode );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
640 #endif
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
641 }
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
642
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
643 ~Cyg_TraceFunction_Report_()
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
644 {
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
645 if ( cond ) {
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
646 #ifdef CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
647 if ( VOID == exitset )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
648 cyg_tracemsg( cyg_trace_return, func, file, lnum,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
649 "return void");
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
650 else if ( UNSET == exitset )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
651 cyg_tracemsg( cyg_trace_return, func, file, lnum,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
652 "RETURNING UNSET!");
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
653 else if ( NULL == exitmsg )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
654 cyg_tracemsg2( cyg_trace_return, func, file, lnum,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
655 "return %08x", exitvalue, 0 );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
656 else
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
657 cyg_tracemsg2( cyg_trace_return, func, file, lnum,
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
658 exitmsg, exitvalue, 0 );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
659 #else
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
660 cyg_tracenomsg( func, file, lnum );
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
661 #endif
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
662 }
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
663 }
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
664 };
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
665
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
666 // These have no CYG_MACRO_START,END around because it is required
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
667 // that the scope of the object be the whole function body. Get it?
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
668
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
669 // These are the unconditional versions:
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
670 #define CYG_REPORT_FUNCTION() \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
671 Cyg_TraceFunction_Report_ cyg_tracefunction_report_( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
672 1, __PRETTY_FUNCTION__, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
673 __FILE__, __LINE__ )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
674
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
675 #define CYG_REPORT_FUNCTYPE( _exitmsg_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
676 Cyg_TraceFunction_Report_ cyg_tracefunction_report_( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
677 1, __PRETTY_FUNCTION__, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
678 __FILE__, __LINE__, _exitmsg_ )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
679
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
680 #define CYG_REPORT_FUNCNAME( _name_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
681 Cyg_TraceFunction_Report_ cyg_tracefunction_report_( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
682 1, _name_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
683 __FILE__, __LINE__ )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
684
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
685 #define CYG_REPORT_FUNCNAMETYPE( _name_, _exitmsg_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
686 Cyg_TraceFunction_Report_ cyg_tracefunction_report_( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
687 1, _name_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
688 __FILE__, __LINE__, _exitmsg_ )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
689
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
690 // These are conditioned on macro CYG_REPORT_USER_BOOL
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
691 // (which you better have defined)
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
692 #define CYG_REPORT_FUNCTIONC() \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
693 Cyg_TraceFunction_Report_ cyg_tracefunction_report_( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
694 CYG_REPORT_USER_BOOL, __PRETTY_FUNCTION__, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
695 __FILE__, __LINE__ )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
696
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
697 #define CYG_REPORT_FUNCTYPEC( _exitmsg_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
698 Cyg_TraceFunction_Report_ cyg_tracefunction_report_( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
699 CYG_REPORT_USER_BOOL, __PRETTY_FUNCTION__, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
700 __FILE__, __LINE__, _exitmsg_ )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
701
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
702 #define CYG_REPORT_FUNCNAMEC( _name_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
703 Cyg_TraceFunction_Report_ cyg_tracefunction_report_( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
704 CYG_REPORT_USER_BOOL, _name_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
705 __FILE__, __LINE__ )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
706
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
707 #define CYG_REPORT_FUNCNAMETYPEC( _name_, _exitmsg_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
708 Cyg_TraceFunction_Report_ cyg_tracefunction_report_( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
709 CYG_REPORT_USER_BOOL, _name_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
710 __FILE__, __LINE__, _exitmsg_ )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
711
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
712
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
713 #define CYG_REPORT_RETURN() CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
714 cyg_tracefunction_report_.set_exitvoid( __LINE__ ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
715 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
716
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
717 #define CYG_REPORT_RETVAL( _value_) CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
718 cyg_tracefunction_report_.set_exitvalue( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
719 __LINE__, (CYG_ADDRWORD)(_value_) ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
720 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
721
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
722
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
723 #else // not __cplusplus
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
724
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
725
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
726 struct Cyg_TraceFunction_Report_
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
727 {
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
728 int cond;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
729 char *func;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
730 char *file; /* not strictly needed in plain 'C' */
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
731 cyg_uint32 lnum; /* nor this */
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
732 #ifdef CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
733 char *exitmsg;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
734 CYG_ADDRWORD exitvalue;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
735 int exitset;
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
736 #endif
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
737
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
738 };
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
739
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
740 #ifdef CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
741
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
742 #define CYG_REPORT_FUNCTION_ENTER_INTERNAL() CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
743 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
744 cyg_tracemsg( cyg_trace_enter, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
745 cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
746 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
747 cyg_tracefunction_report_.lnum, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
748 "enter" ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
749 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
750
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
751 #define CYG_REPORT_FUNCTION_CONSTRUCT( _c_, _fn_,_fl_,_l_,_xm_,_xv_,_xs_ ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
752 { _c_, _fn_, _fl_, _l_, _xm_, _xv_, _xs_ }
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
753
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
754 #else // do not CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
755
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
756 #define CYG_REPORT_FUNCTION_ENTER_INTERNAL() CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
757 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
758 cyg_tracenomsg( cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
759 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
760 cyg_tracefunction_report_.lnum ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
761 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
762
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
763 #define CYG_REPORT_FUNCTION_CONSTRUCT( _c_, _fn_,_fl_,_l_,_xm_,_xv_,_xs_ ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
764 { _c_, _fn_, _fl_, _l_ }
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
765
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
766 #endif // not CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
767
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
768 // These have no CYG_MACRO_START,END around because it is required
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
769 // that the scope of the object be the whole function body. Get it?
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
770
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
771 // These are the unconditional versions:
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
772 #define CYG_REPORT_FUNCTION() \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
773 struct Cyg_TraceFunction_Report_ cyg_tracefunction_report_ = \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
774 CYG_REPORT_FUNCTION_CONSTRUCT( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
775 1, __PRETTY_FUNCTION__, __FILE__, __LINE__, NULL, 0, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
776 CYG_REPORT_FUNCTION_ENTER_INTERNAL()
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
777
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
778 #define CYG_REPORT_FUNCTYPE( _exitmsg_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
779 struct Cyg_TraceFunction_Report_ cyg_tracefunction_report_ = \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
780 CYG_REPORT_FUNCTION_CONSTRUCT( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
781 1, __PRETTY_FUNCTION__, __FILE__, __LINE__, _exitmsg_, 0, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
782 CYG_REPORT_FUNCTION_ENTER_INTERNAL()
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
783
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
784 #define CYG_REPORT_FUNCNAME( _name_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
785 struct Cyg_TraceFunction_Report_ cyg_tracefunction_report_ = \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
786 CYG_REPORT_FUNCTION_CONSTRUCT( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
787 1, _name_, __FILE__, __LINE__, NULL, 0, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
788 CYG_REPORT_FUNCTION_ENTER_INTERNAL()
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
789
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
790 #define CYG_REPORT_FUNCNAMETYPE( _name_, _exitmsg_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
791 struct Cyg_TraceFunction_Report_ cyg_tracefunction_report_ = \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
792 CYG_REPORT_FUNCTION_CONSTRUCT( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
793 1, _name_, __FILE__, __LINE__, _exitmsg_, 0, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
794 CYG_REPORT_FUNCTION_ENTER_INTERNAL()
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
795
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
796 // These are conditioned on macro CYG_REPORT_USER_BOOL
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
797 // (which you better have defined)
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
798 #define CYG_REPORT_FUNCTIONC() \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
799 struct Cyg_TraceFunction_Report_ cyg_tracefunction_report_ = \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
800 CYG_REPORT_FUNCTION_CONSTRUCT( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
801 CYG_REPORT_USER_BOOL, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
802 __PRETTY_FUNCTION__, __FILE__, __LINE__, NULL, 0, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
803 CYG_REPORT_FUNCTION_ENTER_INTERNAL()
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
804
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
805 #define CYG_REPORT_FUNCTYPEC( _exitmsg_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
806 struct Cyg_TraceFunction_Report_ cyg_tracefunction_report_ = \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
807 CYG_REPORT_FUNCTION_CONSTRUCT( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
808 CYG_REPORT_USER_BOOL, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
809 __PRETTY_FUNCTION__, __FILE__, __LINE__, _exitmsg_, 0, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
810 CYG_REPORT_FUNCTION_ENTER_INTERNAL()
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
811
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
812 #define CYG_REPORT_FUNCNAMEC( _name_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
813 struct Cyg_TraceFunction_Report_ cyg_tracefunction_report_ = \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
814 CYG_REPORT_FUNCTION_CONSTRUCT( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
815 CYG_REPORT_USER_BOOL, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
816 _name_, __FILE__, __LINE__, NULL, 0, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
817 CYG_REPORT_FUNCTION_ENTER_INTERNAL()
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
818
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
819 #define CYG_REPORT_FUNCNAMETYPEC( _name_, _exitmsg_ ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
820 struct Cyg_TraceFunction_Report_ cyg_tracefunction_report_ = \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
821 CYG_REPORT_FUNCTION_CONSTRUCT( \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
822 CYG_REPORT_USER_BOOL, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
823 _name_, __FILE__, __LINE__, _exitmsg_, 0, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
824 CYG_REPORT_FUNCTION_ENTER_INTERNAL()
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
825
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
826 #ifdef CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
827
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
828 #define CYG_REPORT_RETURN() CYG_MACRO_START \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
829 CYG_ASSERT( NULL == cyg_tracefunction_report_.exitmsg, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
830 "exitvoid used in typed function" ); \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
831 CYG_ASSERT( 0 == cyg_tracefunction_report_.exitset, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
832 "exitvoid used when arg already set" ); \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
833 cyg_tracefunction_report_.lnum = __LINE__; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
834 cyg_tracefunction_report_.exitset = 2; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
835 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
836 cyg_tracemsg( cyg_trace_return, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
837 cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
838 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
839 cyg_tracefunction_report_.lnum, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
840 "return void" ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
841 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
842
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
843 #define CYG_REPORT_RETVAL( _value_ ) CYG_MACRO_START \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
844 CYG_ASSERT( 0 == cyg_tracefunction_report_.exitset, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
845 "exitvalue used when arg already set" ); \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
846 cyg_tracefunction_report_.lnum = __LINE__; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
847 cyg_tracefunction_report_.exitvalue = (CYG_ADDRWORD)(_value_); \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
848 cyg_tracefunction_report_.exitset = 1; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
849 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
850 cyg_tracemsg2( cyg_trace_return, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
851 cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
852 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
853 cyg_tracefunction_report_.lnum, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
854 cyg_tracefunction_report_.exitmsg ? \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
855 cyg_tracefunction_report_.exitmsg : \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
856 "return %08x", \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
857 cyg_tracefunction_report_.exitvalue, 0 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
858 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
859
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
860 #else // do not CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
861
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
862 #define CYG_REPORT_RETURN() CYG_MACRO_START \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
863 cyg_tracefunction_report_.lnum = __LINE__; \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
864 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
865 cyg_tracenomsg( cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
866 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
867 cyg_tracefunction_report_.lnum ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
868 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
869
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
870 #define CYG_REPORT_RETVAL( _value_ ) CYG_MACRO_START \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
871 CYG_REPORT_RETURN(); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
872 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
873
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
874 #endif // not CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
875
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
876 #endif // not __cplusplus
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
877
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
878 #ifdef CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
879
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
880 #define CYG_REPORT_FUNCARGVOID() CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
881 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
882 cyg_tracemsg( cyg_trace_args, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
883 cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
884 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
885 cyg_tracefunction_report_.lnum, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
886 "(void)" \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
887 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
888 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
889
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
890 #define CYG_REPORT_FUNCARG1( _format_, a ) CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
891 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
892 cyg_tracemsg2( cyg_trace_args, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
893 cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
894 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
895 cyg_tracefunction_report_.lnum, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
896 (_format_), \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
897 (CYG_ADDRWORD)a , 0 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
898 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
899 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
900
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
901 #define CYG_REPORT_FUNCARG2( _format_, a,b ) CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
902 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
903 cyg_tracemsg2( cyg_trace_args, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
904 cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
905 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
906 cyg_tracefunction_report_.lnum, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
907 (_format_), \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
908 (CYG_ADDRWORD)a, (CYG_ADDRWORD)b \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
909 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
910 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
911
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
912 #define CYG_REPORT_FUNCARG3( _format_, a,b,c ) CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
913 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
914 cyg_tracemsg4( cyg_trace_args, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
915 cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
916 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
917 cyg_tracefunction_report_.lnum, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
918 (_format_), \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
919 (CYG_ADDRWORD)a, (CYG_ADDRWORD)b, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
920 (CYG_ADDRWORD)c , 0 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
921 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
922 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
923
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
924 #define CYG_REPORT_FUNCARG4( _format_, a,b,c,d ) CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
925 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
926 cyg_tracemsg4( cyg_trace_args, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
927 cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
928 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
929 cyg_tracefunction_report_.lnum, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
930 (_format_), \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
931 (CYG_ADDRWORD)a, (CYG_ADDRWORD)b, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
932 (CYG_ADDRWORD)c, (CYG_ADDRWORD)d \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
933 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
934 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
935
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
936 #define CYG_REPORT_FUNCARG5( _format_, a,b,c,d,e ) CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
937 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
938 cyg_tracemsg6( cyg_trace_args, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
939 cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
940 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
941 cyg_tracefunction_report_.lnum, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
942 (_format_), \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
943 (CYG_ADDRWORD)a, (CYG_ADDRWORD)b, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
944 (CYG_ADDRWORD)c, (CYG_ADDRWORD)d, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
945 (CYG_ADDRWORD)e , 0 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
946 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
947 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
948
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
949 #define CYG_REPORT_FUNCARG6( _format_, a,b,c,d,e,f ) CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
950 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
951 cyg_tracemsg6( cyg_trace_args, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
952 cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
953 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
954 cyg_tracefunction_report_.lnum, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
955 (_format_), \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
956 (CYG_ADDRWORD)a, (CYG_ADDRWORD)b, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
957 (CYG_ADDRWORD)c, (CYG_ADDRWORD)d, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
958 (CYG_ADDRWORD)e, (CYG_ADDRWORD)f \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
959 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
960 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
961
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
962 #define CYG_REPORT_FUNCARG7( _format_, a,b,c,d,e,f,g ) CYG_MACRO_START \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
963 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
964 cyg_tracemsg8( cyg_trace_args, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
965 cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
966 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
967 cyg_tracefunction_report_.lnum, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
968 (_format_), \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
969 (CYG_ADDRWORD)a, (CYG_ADDRWORD)b, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
970 (CYG_ADDRWORD)c, (CYG_ADDRWORD)d, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
971 (CYG_ADDRWORD)e, (CYG_ADDRWORD)f, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
972 (CYG_ADDRWORD)g , 0 \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
973 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
974 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
975
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
976 #define CYG_REPORT_FUNCARG8( _format_, a,b,c,d,e,f,g,h ) CYG_MACRO_START\
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
977 if ( cyg_tracefunction_report_.cond ) \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
978 cyg_tracemsg8( cyg_trace_args, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
979 cyg_tracefunction_report_.func, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
980 cyg_tracefunction_report_.file, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
981 cyg_tracefunction_report_.lnum, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
982 (_format_), \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
983 (CYG_ADDRWORD)a, (CYG_ADDRWORD)b, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
984 (CYG_ADDRWORD)c, (CYG_ADDRWORD)d, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
985 (CYG_ADDRWORD)e, (CYG_ADDRWORD)f, \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
986 (CYG_ADDRWORD)g, (CYG_ADDRWORD)h \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
987 ); \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
988 CYG_MACRO_END
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
989
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
990
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
991 #else // do not CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
992
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
993 #define CYG_REPORT_FUNCARGVOID() CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
994 #define CYG_REPORT_FUNCARG1( _format_, a ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
995 #define CYG_REPORT_FUNCARG2( _format_, a,b ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
996 #define CYG_REPORT_FUNCARG3( _format_, a,b,c ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
997 #define CYG_REPORT_FUNCARG4( _format_, a,b,c,d ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
998 #define CYG_REPORT_FUNCARG5( _format_, a,b,c,d,e ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
999 #define CYG_REPORT_FUNCARG6( _format_, a,b,c,d,e,f ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1000 #define CYG_REPORT_FUNCARG7( _format_, a,b,c,d,e,f,g ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1001 #define CYG_REPORT_FUNCARG8( _format_, a,b,c,d,e,f,g,h ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1002
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1003 #endif // not CYGDBG_INFRA_DEBUG_TRACE_MESSAGE
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1004
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1005 #else // no CYGDBG_INFRA_DEBUG_FUNCTION_REPORTS
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1006
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1007 #define CYG_REPORT_FUNCTION() CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1008 #define CYG_REPORT_FUNCTYPE( _exitmsg_ ) CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1009 #define CYG_REPORT_FUNCNAME( _name_ ) CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1010 #define CYG_REPORT_FUNCNAMETYPE( _name_, _exitmsg_ ) CYG_EMPTY_STATEMENT
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1011
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1012 #define CYG_REPORT_FUNCTIONC() CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1013 #define CYG_REPORT_FUNCTYPEC( _exitmsg_ ) CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1014 #define CYG_REPORT_FUNCNAMEC( _name_ ) CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1015 #define CYG_REPORT_FUNCNAMETYPEC( _name_, _exitmsg_ ) CYG_EMPTY_STATEMENT
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1016
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1017 #define CYG_REPORT_FUNCARGVOID() CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1018 #define CYG_REPORT_FUNCARG1( _format_, a ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1019 #define CYG_REPORT_FUNCARG2( _format_, a,b ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1020 #define CYG_REPORT_FUNCARG3( _format_, a,b,c ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1021 #define CYG_REPORT_FUNCARG4( _format_, a,b,c,d ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1022 #define CYG_REPORT_FUNCARG5( _format_, a,b,c,d,e ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1023 #define CYG_REPORT_FUNCARG6( _format_, a,b,c,d,e,f ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1024 #define CYG_REPORT_FUNCARG7( _format_, a,b,c,d,e,f,g ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1025 #define CYG_REPORT_FUNCARG8( _format_, a,b,c,d,e,f,g,h ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1026
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1027 #define CYG_REPORT_RETURN() CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1028 #define CYG_REPORT_RETVAL( _value_ ) CYG_EMPTY_STATEMENT
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1029
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1030 #endif // CYGDBG_INFRA_DEBUG_FUNCTION_REPORTS
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1031
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1032 #else // ! CYGDBG_USE_TRACING
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1033
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1034 // -------------------------------------------------------------------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1035 // No traces: we define empty statements for trace macros.
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1036
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1037 #define CYG_TRACE0( _bool_, _msg_ ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1038 #define CYG_TRACE1( _bool_, _msg_, a ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1039 #define CYG_TRACE2( _bool_, _msg_, a,b ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1040 #define CYG_TRACE3( _bool_, _msg_, a,b,c ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1041 #define CYG_TRACE4( _bool_, _msg_, a,b,c,d ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1042 #define CYG_TRACE5( _bool_, _msg_, a,b,c,d,e ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1043 #define CYG_TRACE6( _bool_, _msg_, a,b,c,d,e,f ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1044 #define CYG_TRACE7( _bool_, _msg_, a,b,c,d,e,f,g ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1045 #define CYG_TRACE8( _bool_, _msg_, a,b,c,d,e,f,g,h ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1046
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1047 #define CYG_REPORT_FUNCTION() CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1048 #define CYG_REPORT_FUNCTYPE( _exitmsg_ ) CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1049 #define CYG_REPORT_FUNCNAME( _name_ ) CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1050 #define CYG_REPORT_FUNCNAMETYPE( _name_, _exitmsg_ ) CYG_EMPTY_STATEMENT
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1051
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1052 #define CYG_REPORT_FUNCTIONC() CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1053 #define CYG_REPORT_FUNCTYPEC( _exitmsg_ ) CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1054 #define CYG_REPORT_FUNCNAMEC( _name_ ) CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1055 #define CYG_REPORT_FUNCNAMETYPEC( _name_, _exitmsg_ ) CYG_EMPTY_STATEMENT
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1056
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1057 #define CYG_REPORT_FUNCARGVOID() CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1058 #define CYG_REPORT_FUNCARG1( _format_, a ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1059 #define CYG_REPORT_FUNCARG2( _format_, a,b ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1060 #define CYG_REPORT_FUNCARG3( _format_, a,b,c ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1061 #define CYG_REPORT_FUNCARG4( _format_, a,b,c,d ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1062 #define CYG_REPORT_FUNCARG5( _format_, a,b,c,d,e ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1063 #define CYG_REPORT_FUNCARG6( _format_, a,b,c,d,e,f ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1064 #define CYG_REPORT_FUNCARG7( _format_, a,b,c,d,e,f,g ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1065 #define CYG_REPORT_FUNCARG8( _format_, a,b,c,d,e,f,g,h ) CYG_EMPTY_STATEMENT
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1066
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1067 #define CYG_REPORT_RETURN() CYG_EMPTY_STATEMENT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1068 #define CYG_REPORT_RETVAL( _value_ ) CYG_EMPTY_STATEMENT
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1069
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1070 #endif // ! CYGDBG_USE_TRACING
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1071
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1072 // -------------------------------------------------------------------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1073 //
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1074 // CYG_TRACEn{[XDY]{V}}{B}
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1075 //
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1076 // Convenience macros: these fall into a few dimensions, with suffix letters:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1077 // First option:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1078 // X: user need not supply a format string, %08x is used
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1079 // D: ditto but signed decimal, %d
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1080 // Y: ditto but just plain %x
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1081 // Second option, only meaningful with one of XDY:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1082 // V: "<var> = %..." is used, by stringifying the argument
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1083 // Third option:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1084 // B: user need not supply a bool; the symbol CYG_TRACE_USER_BOOL is
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1085 // used (which we do not define, user must do this)
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1086
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1087 #define CYG_TRACE0B( _msg_ ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1088 CYG_TRACE0( CYG_TRACE_USER_BOOL, _msg_ )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1089 #define CYG_TRACE1B( _msg_, a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1090 CYG_TRACE1( CYG_TRACE_USER_BOOL, _msg_, a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1091 #define CYG_TRACE2B( _msg_, a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1092 CYG_TRACE2( CYG_TRACE_USER_BOOL, _msg_, a,b )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1093 #define CYG_TRACE3B( _msg_, a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1094 CYG_TRACE3( CYG_TRACE_USER_BOOL, _msg_, a,b,c )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1095 #define CYG_TRACE4B( _msg_, a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1096 CYG_TRACE4( CYG_TRACE_USER_BOOL, _msg_, a,b,c,d )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1097 #define CYG_TRACE5B( _msg_, a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1098 CYG_TRACE5( CYG_TRACE_USER_BOOL, _msg_, a,b,c,d,e )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1099 #define CYG_TRACE6B( _msg_, a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1100 CYG_TRACE6( CYG_TRACE_USER_BOOL, _msg_, a,b,c,d,e,f )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1101 #define CYG_TRACE7B( _msg_, a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1102 CYG_TRACE7( CYG_TRACE_USER_BOOL, _msg_, a,b,c,d,e,f,g )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1103 #define CYG_TRACE8B( _msg_, a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1104 CYG_TRACE8( CYG_TRACE_USER_BOOL, _msg_, a,b,c,d,e,f,g,h )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1105
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1106 // long hex versions
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1107
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1108 #define CYG_TRACE1X( _bool_, a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1109 CYG_TRACE1( _bool_, "%08x", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1110 #define CYG_TRACE2X( _bool_, a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1111 CYG_TRACE2( _bool_, "%08x %08x", a,b )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1112 #define CYG_TRACE3X( _bool_, a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1113 CYG_TRACE3( _bool_, "%08x %08x %08x", a,b,c )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1114 #define CYG_TRACE4X( _bool_, a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1115 CYG_TRACE4( _bool_, "%08x %08x %08x %08x", a,b,c,d )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1116 #define CYG_TRACE5X( _bool_, a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1117 CYG_TRACE5( _bool_, "%08x %08x %08x %08x %08x", a,b,c,d,e )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1118 #define CYG_TRACE6X( _bool_, a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1119 CYG_TRACE6( _bool_, "%08x %08x %08x %08x %08x %08x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1120 a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1121 #define CYG_TRACE7X( _bool_, a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1122 CYG_TRACE7( _bool_, "%08x %08x %08x %08x %08x %08x %08x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1123 a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1124 #define CYG_TRACE8X( _bool_, a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1125 CYG_TRACE8( _bool_, "%08x %08x %08x %08x %08x %08x %08x %08x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1126 a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1127
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1128 #define CYG_TRACE1XV( _bool_, a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1129 CYG_TRACE1( _bool_, # a "=%08x ", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1130 #define CYG_TRACE2XV( _bool_, a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1131 CYG_TRACE2( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1132 # a "=%08x " # b "=%08x " , a,b )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1133 #define CYG_TRACE3XV( _bool_, a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1134 CYG_TRACE3( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1135 # a "=%08x " # b "=%08x " # c "=%08x " , a,b,c )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1136 #define CYG_TRACE4XV( _bool_, a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1137 CYG_TRACE4( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1138 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1139 , a,b,c,d )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1140 #define CYG_TRACE5XV( _bool_, a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1141 CYG_TRACE5( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1142 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1143 # e "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1144 , a,b,c,d,e )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1145 #define CYG_TRACE6XV( _bool_, a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1146 CYG_TRACE6( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1147 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1148 # e "=%08x " # f "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1149 , a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1150 #define CYG_TRACE7XV( _bool_, a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1151 CYG_TRACE7( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1152 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1153 # e "=%08x " # f "=%08x " # g "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1154 , a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1155 #define CYG_TRACE8XV( _bool_, a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1156 CYG_TRACE8( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1157 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1158 # e "=%08x " # f "=%08x " # g "=%08x " # h "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1159 , a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1160
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1161 #define CYG_TRACE1XB( a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1162 CYG_TRACE1( CYG_TRACE_USER_BOOL, "%08x", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1163 #define CYG_TRACE2XB( a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1164 CYG_TRACE2( CYG_TRACE_USER_BOOL, "%08x %08x", a,b )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1165 #define CYG_TRACE3XB( a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1166 CYG_TRACE3( CYG_TRACE_USER_BOOL, "%08x %08x %08x", a,b,c )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1167 #define CYG_TRACE4XB( a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1168 CYG_TRACE4( CYG_TRACE_USER_BOOL, "%08x %08x %08x %08x", a,b,c,d )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1169 #define CYG_TRACE5XB( a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1170 CYG_TRACE5( CYG_TRACE_USER_BOOL, "%08x %08x %08x %08x %08x", a,b,c,d,e )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1171 #define CYG_TRACE6XB( a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1172 CYG_TRACE6( CYG_TRACE_USER_BOOL, "%08x %08x %08x %08x %08x %08x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1173 a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1174 #define CYG_TRACE7XB( a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1175 CYG_TRACE7( CYG_TRACE_USER_BOOL, "%08x %08x %08x %08x %08x %08x %08x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1176 a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1177 #define CYG_TRACE8XB( a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1178 CYG_TRACE8( CYG_TRACE_USER_BOOL, "%08x %08x %08x %08x %08x %08x %08x %08x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1179 a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1180
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1181 #define CYG_TRACE1XVB( a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1182 CYG_TRACE1( CYG_TRACE_USER_BOOL, # a "=%08x ", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1183 #define CYG_TRACE2XVB( a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1184 CYG_TRACE2( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1185 # a "=%08x " # b "=%08x " , a,b )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1186 #define CYG_TRACE3XVB( a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1187 CYG_TRACE3( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1188 # a "=%08x " # b "=%08x " # c "=%08x " , a,b,c )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1189 #define CYG_TRACE4XVB( a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1190 CYG_TRACE4( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1191 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1192 , a,b,c,d )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1193 #define CYG_TRACE5XVB( a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1194 CYG_TRACE5( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1195 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1196 # e "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1197 , a,b,c,d,e )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1198 #define CYG_TRACE6XVB( a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1199 CYG_TRACE6( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1200 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1201 # e "=%08x " # f "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1202 , a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1203 #define CYG_TRACE7XVB( a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1204 CYG_TRACE7( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1205 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1206 # e "=%08x " # f "=%08x " # g "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1207 , a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1208 #define CYG_TRACE8XVB( a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1209 CYG_TRACE8( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1210 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1211 # e "=%08x " # f "=%08x " # g "=%08x " # h "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1212 , a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1213
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1214 // decimal versions
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1215
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1216 #define CYG_TRACE1D( _bool_, a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1217 CYG_TRACE1( _bool_, "%d", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1218 #define CYG_TRACE2D( _bool_, a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1219 CYG_TRACE2( _bool_, "%d %d", a,b )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1220 #define CYG_TRACE3D( _bool_, a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1221 CYG_TRACE3( _bool_, "%d %d %d", a,b,c )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1222 #define CYG_TRACE4D( _bool_, a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1223 CYG_TRACE4( _bool_, "%d %d %d %d", a,b,c,d )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1224 #define CYG_TRACE5D( _bool_, a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1225 CYG_TRACE5( _bool_, "%d %d %d %d %d", a,b,c,d,e )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1226 #define CYG_TRACE6D( _bool_, a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1227 CYG_TRACE6( _bool_, "%d %d %d %d %d %d", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1228 a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1229 #define CYG_TRACE7D( _bool_, a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1230 CYG_TRACE7( _bool_, "%d %d %d %d %d %d %d", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1231 a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1232 #define CYG_TRACE8D( _bool_, a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1233 CYG_TRACE8( _bool_, "%d %d %d %d %d %d %d %d", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1234 a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1235
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1236 #define CYG_TRACE1DV( _bool_, a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1237 CYG_TRACE1( _bool_, # a "=%d ", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1238 #define CYG_TRACE2DV( _bool_, a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1239 CYG_TRACE2( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1240 # a "=%d " # b "=%d " , a,b )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1241 #define CYG_TRACE3DV( _bool_, a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1242 CYG_TRACE3( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1243 # a "=%d " # b "=%d " # c "=%d " , a,b,c )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1244 #define CYG_TRACE4DV( _bool_, a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1245 CYG_TRACE4( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1246 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1247 , a,b,c,d )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1248 #define CYG_TRACE5DV( _bool_, a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1249 CYG_TRACE5( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1250 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1251 # e "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1252 , a,b,c,d,e )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1253 #define CYG_TRACE6DV( _bool_, a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1254 CYG_TRACE6( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1255 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1256 # e "=%d " # f "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1257 , a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1258 #define CYG_TRACE7DV( _bool_, a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1259 CYG_TRACE7( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1260 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1261 # e "=%d " # f "=%d " # g "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1262 , a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1263 #define CYG_TRACE8DV( _bool_, a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1264 CYG_TRACE8( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1265 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1266 # e "=%d " # f "=%d " # g "=%d " # h "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1267 , a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1268
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1269 #define CYG_TRACE1DB( a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1270 CYG_TRACE1( CYG_TRACE_USER_BOOL, "%d", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1271 #define CYG_TRACE2DB( a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1272 CYG_TRACE2( CYG_TRACE_USER_BOOL, "%d %d", a,b )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1273 #define CYG_TRACE3DB( a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1274 CYG_TRACE3( CYG_TRACE_USER_BOOL, "%d %d %d", a,b,c )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1275 #define CYG_TRACE4DB( a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1276 CYG_TRACE4( CYG_TRACE_USER_BOOL, "%d %d %d %d", a,b,c,d )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1277 #define CYG_TRACE5DB( a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1278 CYG_TRACE5( CYG_TRACE_USER_BOOL, "%d %d %d %d %d", a,b,c,d,e )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1279 #define CYG_TRACE6DB( a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1280 CYG_TRACE6( CYG_TRACE_USER_BOOL, "%d %d %d %d %d %d", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1281 a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1282 #define CYG_TRACE7DB( a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1283 CYG_TRACE7( CYG_TRACE_USER_BOOL, "%d %d %d %d %d %d %d", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1284 a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1285 #define CYG_TRACE8DB( a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1286 CYG_TRACE8( CYG_TRACE_USER_BOOL, "%d %d %d %d %d %d %d %d", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1287 a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1288
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1289 #define CYG_TRACE1DVB( a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1290 CYG_TRACE1( CYG_TRACE_USER_BOOL, # a "=%d ", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1291 #define CYG_TRACE2DVB( a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1292 CYG_TRACE2( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1293 # a "=%d " # b "=%d " , a,b )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1294 #define CYG_TRACE3DVB( a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1295 CYG_TRACE3( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1296 # a "=%d " # b "=%d " # c "=%d " , a,b,c )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1297 #define CYG_TRACE4DVB( a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1298 CYG_TRACE4( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1299 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1300 , a,b,c,d )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1301 #define CYG_TRACE5DVB( a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1302 CYG_TRACE5( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1303 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1304 # e "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1305 , a,b,c,d,e )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1306 #define CYG_TRACE6DVB( a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1307 CYG_TRACE6( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1308 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1309 # e "=%d " # f "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1310 , a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1311 #define CYG_TRACE7DVB( a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1312 CYG_TRACE7( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1313 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1314 # e "=%d " # f "=%d " # g "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1315 , a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1316 #define CYG_TRACE8DVB( a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1317 CYG_TRACE8( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1318 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1319 # e "=%d " # f "=%d " # g "=%d " # h "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1320 , a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1321
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1322 // short hex versions
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1323
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1324 #define CYG_TRACE1Y( _bool_, a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1325 CYG_TRACE1( _bool_, "%x", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1326 #define CYG_TRACE2Y( _bool_, a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1327 CYG_TRACE2( _bool_, "%x %x", a,b )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1328 #define CYG_TRACE3Y( _bool_, a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1329 CYG_TRACE3( _bool_, "%x %x %x", a,b,c )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1330 #define CYG_TRACE4Y( _bool_, a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1331 CYG_TRACE4( _bool_, "%x %x %x %x", a,b,c,d )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1332 #define CYG_TRACE5Y( _bool_, a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1333 CYG_TRACE5( _bool_, "%x %x %x %x %x", a,b,c,d,e )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1334 #define CYG_TRACE6Y( _bool_, a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1335 CYG_TRACE6( _bool_, "%x %x %x %x %x %x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1336 a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1337 #define CYG_TRACE7Y( _bool_, a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1338 CYG_TRACE7( _bool_, "%x %x %x %x %x %x %x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1339 a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1340 #define CYG_TRACE8Y( _bool_, a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1341 CYG_TRACE8( _bool_, "%x %x %x %x %x %x %x %x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1342 a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1343
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1344 #define CYG_TRACE1YV( _bool_, a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1345 CYG_TRACE1( _bool_, # a "=%x ", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1346 #define CYG_TRACE2YV( _bool_, a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1347 CYG_TRACE2( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1348 # a "=%x " # b "=%x " , a,b )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1349 #define CYG_TRACE3YV( _bool_, a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1350 CYG_TRACE3( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1351 # a "=%x " # b "=%x " # c "=%x " , a,b,c )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1352 #define CYG_TRACE4YV( _bool_, a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1353 CYG_TRACE4( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1354 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1355 , a,b,c,d )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1356 #define CYG_TRACE5YV( _bool_, a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1357 CYG_TRACE5( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1358 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1359 # e "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1360 , a,b,c,d,e )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1361 #define CYG_TRACE6YV( _bool_, a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1362 CYG_TRACE6( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1363 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1364 # e "=%x " # f "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1365 , a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1366 #define CYG_TRACE7YV( _bool_, a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1367 CYG_TRACE7( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1368 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1369 # e "=%x " # f "=%x " # g "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1370 , a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1371 #define CYG_TRACE8YV( _bool_, a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1372 CYG_TRACE8( _bool_, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1373 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1374 # e "=%x " # f "=%x " # g "=%x " # h "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1375 , a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1376
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1377 #define CYG_TRACE1YB( a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1378 CYG_TRACE1( CYG_TRACE_USER_BOOL, "%x", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1379 #define CYG_TRACE2YB( a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1380 CYG_TRACE2( CYG_TRACE_USER_BOOL, "%x %x", a,b )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1381 #define CYG_TRACE3YB( a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1382 CYG_TRACE3( CYG_TRACE_USER_BOOL, "%x %x %x", a,b,c )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1383 #define CYG_TRACE4YB( a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1384 CYG_TRACE4( CYG_TRACE_USER_BOOL, "%x %x %x %x", a,b,c,d )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1385 #define CYG_TRACE5YB( a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1386 CYG_TRACE5( CYG_TRACE_USER_BOOL, "%x %x %x %x %x", a,b,c,d,e )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1387 #define CYG_TRACE6YB( a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1388 CYG_TRACE6( CYG_TRACE_USER_BOOL, "%x %x %x %x %x %x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1389 a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1390 #define CYG_TRACE7YB( a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1391 CYG_TRACE7( CYG_TRACE_USER_BOOL, "%x %x %x %x %x %x %x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1392 a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1393 #define CYG_TRACE8YB( a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1394 CYG_TRACE8( CYG_TRACE_USER_BOOL, "%x %x %x %x %x %x %x %x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1395 a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1396
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1397 #define CYG_TRACE1YVB( a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1398 CYG_TRACE1( CYG_TRACE_USER_BOOL, # a "=%x ", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1399 #define CYG_TRACE2YVB( a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1400 CYG_TRACE2( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1401 # a "=%x " # b "=%x " , a,b )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1402 #define CYG_TRACE3YVB( a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1403 CYG_TRACE3( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1404 # a "=%x " # b "=%x " # c "=%x " , a,b,c )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1405 #define CYG_TRACE4YVB( a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1406 CYG_TRACE4( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1407 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1408 , a,b,c,d )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1409 #define CYG_TRACE5YVB( a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1410 CYG_TRACE5( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1411 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1412 # e "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1413 , a,b,c,d,e )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1414 #define CYG_TRACE6YVB( a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1415 CYG_TRACE6( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1416 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1417 # e "=%x " # f "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1418 , a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1419 #define CYG_TRACE7YVB( a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1420 CYG_TRACE7( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1421 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1422 # e "=%x " # f "=%x " # g "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1423 , a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1424 #define CYG_TRACE8YVB( a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1425 CYG_TRACE8( CYG_TRACE_USER_BOOL, \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1426 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1427 # e "=%x " # f "=%x " # g "=%x " # h "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1428 , a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1429
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1430 // -------------------------------------------------------------------------
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1431 //
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1432 // CYG_REPORT_FUNCARGn{[XDY]{V}}
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1433 //
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1434 // Convenience macros two: these fall into a few dimensions, with suffix letters:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1435 // First option:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1436 // X: user need not supply a format string, %08x is used
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1437 // D: ditto but signed decimal, %d
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1438 // Y: ditto but just plain %x
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1439 // Second option, only meaningful with one of XDY:
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1440 // V: "<var> = %..." is used, by stringifying the argument
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1441
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1442 // long hex versions
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1443
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1444 #define CYG_REPORT_FUNCARG1X( a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1445 CYG_REPORT_FUNCARG1( "%08x", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1446 #define CYG_REPORT_FUNCARG2X( a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1447 CYG_REPORT_FUNCARG2( "%08x %08x", a,b )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1448 #define CYG_REPORT_FUNCARG3X( a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1449 CYG_REPORT_FUNCARG3( "%08x %08x %08x", a,b,c )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1450 #define CYG_REPORT_FUNCARG4X( a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1451 CYG_REPORT_FUNCARG4( "%08x %08x %08x %08x", a,b,c,d )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1452 #define CYG_REPORT_FUNCARG5X( a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1453 CYG_REPORT_FUNCARG5( "%08x %08x %08x %08x %08x", a,b,c,d,e )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1454 #define CYG_REPORT_FUNCARG6X( a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1455 CYG_REPORT_FUNCARG6( "%08x %08x %08x %08x %08x %08x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1456 a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1457 #define CYG_REPORT_FUNCARG7X( a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1458 CYG_REPORT_FUNCARG7( "%08x %08x %08x %08x %08x %08x %08x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1459 a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1460 #define CYG_REPORT_FUNCARG8X( a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1461 CYG_REPORT_FUNCARG8( "%08x %08x %08x %08x %08x %08x %08x %08x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1462 a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1463
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1464 #define CYG_REPORT_FUNCARG1XV( a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1465 CYG_REPORT_FUNCARG1( # a "=%08x ", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1466 #define CYG_REPORT_FUNCARG2XV( a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1467 CYG_REPORT_FUNCARG2( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1468 # a "=%08x " # b "=%08x " , a,b )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1469 #define CYG_REPORT_FUNCARG3XV( a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1470 CYG_REPORT_FUNCARG3( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1471 # a "=%08x " # b "=%08x " # c "=%08x " , a,b,c )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1472 #define CYG_REPORT_FUNCARG4XV( a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1473 CYG_REPORT_FUNCARG4( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1474 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1475 , a,b,c,d )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1476 #define CYG_REPORT_FUNCARG5XV( a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1477 CYG_REPORT_FUNCARG5( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1478 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1479 # e "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1480 , a,b,c,d,e )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1481 #define CYG_REPORT_FUNCARG6XV( a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1482 CYG_REPORT_FUNCARG6( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1483 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1484 # e "=%08x " # f "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1485 , a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1486 #define CYG_REPORT_FUNCARG7XV( a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1487 CYG_REPORT_FUNCARG7( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1488 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1489 # e "=%08x " # f "=%08x " # g "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1490 , a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1491 #define CYG_REPORT_FUNCARG8XV( a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1492 CYG_REPORT_FUNCARG8( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1493 # a "=%08x " # b "=%08x " # c "=%08x " # d "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1494 # e "=%08x " # f "=%08x " # g "=%08x " # h "=%08x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1495 , a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1496
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1497 // decimal versions
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1498
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1499
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1500 #define CYG_REPORT_FUNCARG1D( a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1501 CYG_REPORT_FUNCARG1( "%d", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1502 #define CYG_REPORT_FUNCARG2D( a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1503 CYG_REPORT_FUNCARG2( "%d %d", a,b )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1504 #define CYG_REPORT_FUNCARG3D( a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1505 CYG_REPORT_FUNCARG3( "%d %d %d", a,b,c )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1506 #define CYG_REPORT_FUNCARG4D( a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1507 CYG_REPORT_FUNCARG4( "%d %d %d %d", a,b,c,d )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1508 #define CYG_REPORT_FUNCARG5D( a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1509 CYG_REPORT_FUNCARG5( "%d %d %d %d %d", a,b,c,d,e )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1510 #define CYG_REPORT_FUNCARG6D( a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1511 CYG_REPORT_FUNCARG6( "%d %d %d %d %d %d", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1512 a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1513 #define CYG_REPORT_FUNCARG7D( a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1514 CYG_REPORT_FUNCARG7( "%d %d %d %d %d %d %d", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1515 a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1516 #define CYG_REPORT_FUNCARG8D( a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1517 CYG_REPORT_FUNCARG8( "%d %d %d %d %d %d %d %d", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1518 a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1519
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1520 #define CYG_REPORT_FUNCARG1DV( a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1521 CYG_REPORT_FUNCARG1( # a "=%d ", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1522 #define CYG_REPORT_FUNCARG2DV( a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1523 CYG_REPORT_FUNCARG2( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1524 # a "=%d " # b "=%d " , a,b )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1525 #define CYG_REPORT_FUNCARG3DV( a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1526 CYG_REPORT_FUNCARG3( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1527 # a "=%d " # b "=%d " # c "=%d " , a,b,c )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1528 #define CYG_REPORT_FUNCARG4DV( a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1529 CYG_REPORT_FUNCARG4( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1530 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1531 , a,b,c,d )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1532 #define CYG_REPORT_FUNCARG5DV( a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1533 CYG_REPORT_FUNCARG5( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1534 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1535 # e "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1536 , a,b,c,d,e )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1537 #define CYG_REPORT_FUNCARG6DV( a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1538 CYG_REPORT_FUNCARG6( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1539 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1540 # e "=%d " # f "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1541 , a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1542 #define CYG_REPORT_FUNCARG7DV( a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1543 CYG_REPORT_FUNCARG7( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1544 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1545 # e "=%d " # f "=%d " # g "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1546 , a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1547 #define CYG_REPORT_FUNCARG8DV( a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1548 CYG_REPORT_FUNCARG8( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1549 # a "=%d " # b "=%d " # c "=%d " # d "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1550 # e "=%d " # f "=%d " # g "=%d " # h "=%d " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1551 , a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1552
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1553 // short hex versions
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1554
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1555 #define CYG_REPORT_FUNCARG1Y( a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1556 CYG_REPORT_FUNCARG1( "%x", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1557 #define CYG_REPORT_FUNCARG2Y( a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1558 CYG_REPORT_FUNCARG2( "%x %x", a,b )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1559 #define CYG_REPORT_FUNCARG3Y( a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1560 CYG_REPORT_FUNCARG3( "%x %x %x", a,b,c )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1561 #define CYG_REPORT_FUNCARG4Y( a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1562 CYG_REPORT_FUNCARG4( "%x %x %x %x", a,b,c,d )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1563 #define CYG_REPORT_FUNCARG5Y( a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1564 CYG_REPORT_FUNCARG5( "%x %x %x %x %x", a,b,c,d,e )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1565 #define CYG_REPORT_FUNCARG6Y( a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1566 CYG_REPORT_FUNCARG6( "%x %x %x %x %x %x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1567 a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1568 #define CYG_REPORT_FUNCARG7Y( a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1569 CYG_REPORT_FUNCARG7( "%x %x %x %x %x %x %x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1570 a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1571 #define CYG_REPORT_FUNCARG8Y( a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1572 CYG_REPORT_FUNCARG8( "%x %x %x %x %x %x %x %x", \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1573 a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1574
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1575 #define CYG_REPORT_FUNCARG1YV( a ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1576 CYG_REPORT_FUNCARG1( # a "=%x ", a )
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1577 #define CYG_REPORT_FUNCARG2YV( a,b ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1578 CYG_REPORT_FUNCARG2( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1579 # a "=%x " # b "=%x " , a,b )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1580 #define CYG_REPORT_FUNCARG3YV( a,b,c ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1581 CYG_REPORT_FUNCARG3( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1582 # a "=%x " # b "=%x " # c "=%x " , a,b,c )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1583 #define CYG_REPORT_FUNCARG4YV( a,b,c,d ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1584 CYG_REPORT_FUNCARG4( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1585 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1586 , a,b,c,d )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1587 #define CYG_REPORT_FUNCARG5YV( a,b,c,d,e ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1588 CYG_REPORT_FUNCARG5( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1589 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1590 # e "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1591 , a,b,c,d,e )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1592 #define CYG_REPORT_FUNCARG6YV( a,b,c,d,e,f ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1593 CYG_REPORT_FUNCARG6( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1594 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1595 # e "=%x " # f "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1596 , a,b,c,d,e,f )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1597 #define CYG_REPORT_FUNCARG7YV( a,b,c,d,e,f,g ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1598 CYG_REPORT_FUNCARG7( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1599 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1600 # e "=%x " # f "=%x " # g "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1601 , a,b,c,d,e,f,g )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1602 #define CYG_REPORT_FUNCARG8YV( a,b,c,d,e,f,g,h ) \
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents: 0
diff changeset
1603 CYG_REPORT_FUNCARG8( \
0
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1604 # a "=%x " # b "=%x " # c "=%x " # d "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1605 # e "=%x " # f "=%x " # g "=%x " # h "=%x " \
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1606 , a,b,c,d,e,f,g,h )
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1607
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1608
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1609 #endif // CYGONCE_INFRA_CYG_TRAC_H multiple inclusion protection
3111d98ba7b3 Initial commit of eCos version 1.1
jlarmour
parents:
diff changeset
1610 // EOF cyg_trac.h