comparison packages/kernel/current/include/instrmnt.h @ 86:6512add4f5d6 ecos-sw-2000-05-05

Merge from eCos master repository on 2000-05-05-07:47:05-BST
author jlarmour
date Fri, 05 May 2000 17:31:08 +0000
parents bf00f99aec69
children 4c750ce71ae3
comparison
equal deleted inserted replaced
85:142b52c7e568 86:6512add4f5d6
32 // 32 //
33 //####COPYRIGHTEND#### 33 //####COPYRIGHTEND####
34 //========================================================================== 34 //==========================================================================
35 //#####DESCRIPTIONBEGIN#### 35 //#####DESCRIPTIONBEGIN####
36 // 36 //
37 // Author(s): nickg 37 // Author(s): nickg
38 // Contributors: nickg 38 // Contributors: nickg
39 // Date: 1997-10-24 39 // Date: 2000-05-04
40 // Purpose: Define kernel instrumentation 40 // Purpose: Define kernel instrumentation
41 // Description: A set of definitions and macros used to implement an 41 // Description: A set of definitions and macros used to implement an
42 // instrumentation interface for the kernel. 42 // instrumentation interface for the kernel.
43 // Usage: #include <cyg/kernel/instrmnt.hxx> 43 // NOTE: Don't use CYG_UNUSED_PARAM (or similar) here to
44 // silence warnings about unused variables when using the
45 // empty macro definitions. Otherwise this can cause problems
46 // with volatile arguments and cause other side-effects.
47 // Instead it is up to the caller to ensure that unused
48 // arguments don't cause warnings
49 // Usage: #include <cyg/kernel/instrmnt.hxx>
44 // 50 //
45 //####DESCRIPTIONEND#### 51 //####DESCRIPTIONEND####
46 // 52 //
47 //========================================================================== 53 //==========================================================================
48 54
76 82
77 #define CYG_INSTRUMENT(_type_,_arg1_,_arg2_) cyg_instrument(_type_, (CYG_ADDRWORD)(_arg1_), (CYG_ADDRWORD)(_arg2_)) 83 #define CYG_INSTRUMENT(_type_,_arg1_,_arg2_) cyg_instrument(_type_, (CYG_ADDRWORD)(_arg1_), (CYG_ADDRWORD)(_arg2_))
78 84
79 #else // ifdef CYGPKG_KERNEL_INSTRUMENT 85 #else // ifdef CYGPKG_KERNEL_INSTRUMENT
80 86
81 #define CYG_INSTRUMENT(_type_,_arg1_,_arg2_) \ 87 #define CYG_INSTRUMENT(_type_,_arg1_,_arg2_)
82 CYG_MACRO_START \
83 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg1_)); \
84 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg2_)); \
85 CYG_MACRO_END
86 88
87 #endif // ifdef CYGPKG_KERNEL_INSTRUMENT 89 #endif // ifdef CYGPKG_KERNEL_INSTRUMENT
88 90
89 // ------------------------------------------------------------------------- 91 // -------------------------------------------------------------------------
90 // Type codes. 92 // Type codes.
238 #define CYG_INSTRUMENT_SCHED(_event_,_arg1_,_arg2_) \ 240 #define CYG_INSTRUMENT_SCHED(_event_,_arg1_,_arg2_) \
239 CYG_INSTRUMENT(CYGINST_EVENT(SCHED,_event_),_arg1_,_arg2_) 241 CYG_INSTRUMENT(CYGINST_EVENT(SCHED,_event_),_arg1_,_arg2_)
240 242
241 #else 243 #else
242 244
243 #define CYG_INSTRUMENT_SCHED(_event_,_arg1_,_arg2_) \ 245 #define CYG_INSTRUMENT_SCHED(_event_,_arg1_,_arg2_)
244 CYG_MACRO_START \
245 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg1_)); \
246 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg2_)); \
247 CYG_MACRO_END
248 246
249 #endif 247 #endif
250 248
251 // ------------------------------------------------------------------------- 249 // -------------------------------------------------------------------------
252 // Thread instrumentation macros 250 // Thread instrumentation macros
256 #define CYG_INSTRUMENT_THREAD(_event_,_arg1_,_arg2_) \ 254 #define CYG_INSTRUMENT_THREAD(_event_,_arg1_,_arg2_) \
257 CYG_INSTRUMENT(CYGINST_EVENT(THREAD,_event_),_arg1_,_arg2_) 255 CYG_INSTRUMENT(CYGINST_EVENT(THREAD,_event_),_arg1_,_arg2_)
258 256
259 #else 257 #else
260 258
261 #define CYG_INSTRUMENT_THREAD(_event_,_arg1_,_arg2_) \ 259 #define CYG_INSTRUMENT_THREAD(_event_,_arg1_,_arg2_)
262 CYG_MACRO_START \
263 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg1_)); \
264 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg2_)); \
265 CYG_MACRO_END
266 260
267 #endif 261 #endif
268 262
269 // ------------------------------------------------------------------------- 263 // -------------------------------------------------------------------------
270 // Interrupt instrumentation macros 264 // Interrupt instrumentation macros
274 #define CYG_INSTRUMENT_INTR(_event_,_arg1_,_arg2_) \ 268 #define CYG_INSTRUMENT_INTR(_event_,_arg1_,_arg2_) \
275 CYG_INSTRUMENT(CYGINST_EVENT(INTR,_event_),_arg1_,_arg2_) 269 CYG_INSTRUMENT(CYGINST_EVENT(INTR,_event_),_arg1_,_arg2_)
276 270
277 #else 271 #else
278 272
279 #define CYG_INSTRUMENT_INTR(_event_,_arg1_,_arg2_) \ 273 #define CYG_INSTRUMENT_INTR(_event_,_arg1_,_arg2_)
280 CYG_MACRO_START \
281 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg1_)); \
282 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg2_)); \
283 CYG_MACRO_END
284 274
285 #endif 275 #endif
286 276
287 // ------------------------------------------------------------------------- 277 // -------------------------------------------------------------------------
288 // Mutex instrumentation macros 278 // Mutex instrumentation macros
292 #define CYG_INSTRUMENT_MUTEX(_event_,_arg1_,_arg2_) \ 282 #define CYG_INSTRUMENT_MUTEX(_event_,_arg1_,_arg2_) \
293 CYG_INSTRUMENT(CYGINST_EVENT(MUTEX,_event_),_arg1_,_arg2_) 283 CYG_INSTRUMENT(CYGINST_EVENT(MUTEX,_event_),_arg1_,_arg2_)
294 284
295 #else 285 #else
296 286
297 #define CYG_INSTRUMENT_MUTEX(_event_,_arg1_,_arg2_) \ 287 #define CYG_INSTRUMENT_MUTEX(_event_,_arg1_,_arg2_)
298 CYG_MACRO_START \
299 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg1_)); \
300 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg2_)); \
301 CYG_MACRO_END
302 288
303 #endif 289 #endif
304 290
305 // ------------------------------------------------------------------------- 291 // -------------------------------------------------------------------------
306 // Condition variable instrumentation macros 292 // Condition variable instrumentation macros
310 #define CYG_INSTRUMENT_CONDVAR(_event_,_arg1_,_arg2_) \ 296 #define CYG_INSTRUMENT_CONDVAR(_event_,_arg1_,_arg2_) \
311 CYG_INSTRUMENT(CYGINST_EVENT(CONDVAR,_event_),_arg1_,_arg2_) 297 CYG_INSTRUMENT(CYGINST_EVENT(CONDVAR,_event_),_arg1_,_arg2_)
312 298
313 #else 299 #else
314 300
315 #define CYG_INSTRUMENT_CONDVAR(_event_,_arg1_,_arg2_) \ 301 #define CYG_INSTRUMENT_CONDVAR(_event_,_arg1_,_arg2_)
316 CYG_MACRO_START \
317 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg1_)); \
318 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg2_)); \
319 CYG_MACRO_END
320 302
321 #endif 303 #endif
322 304
323 // ------------------------------------------------------------------------- 305 // -------------------------------------------------------------------------
324 // Binary semaphore instrumentation macros 306 // Binary semaphore instrumentation macros
328 #define CYG_INSTRUMENT_BINSEM(_event_,_arg1_,_arg2_) \ 310 #define CYG_INSTRUMENT_BINSEM(_event_,_arg1_,_arg2_) \
329 CYG_INSTRUMENT(CYGINST_EVENT(BINSEM,_event_),_arg1_,_arg2_) 311 CYG_INSTRUMENT(CYGINST_EVENT(BINSEM,_event_),_arg1_,_arg2_)
330 312
331 #else 313 #else
332 314
333 #define CYG_INSTRUMENT_BINSEM(_event_,_arg1_,_arg2_) \ 315 #define CYG_INSTRUMENT_BINSEM(_event_,_arg1_,_arg2_)
334 CYG_MACRO_START \
335 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg1_)); \
336 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg2_)); \
337 CYG_MACRO_END
338 316
339 #endif 317 #endif
340 318
341 // ------------------------------------------------------------------------- 319 // -------------------------------------------------------------------------
342 // Counting semaphore instrumentation macros 320 // Counting semaphore instrumentation macros
346 #define CYG_INSTRUMENT_CNTSEM(_event_,_arg1_,_arg2_) \ 324 #define CYG_INSTRUMENT_CNTSEM(_event_,_arg1_,_arg2_) \
347 CYG_INSTRUMENT(CYGINST_EVENT(CNTSEM,_event_),_arg1_,_arg2_) 325 CYG_INSTRUMENT(CYGINST_EVENT(CNTSEM,_event_),_arg1_,_arg2_)
348 326
349 #else 327 #else
350 328
351 #define CYG_INSTRUMENT_CNTSEM(_event_,_arg1_,_arg2_) \ 329 #define CYG_INSTRUMENT_CNTSEM(_event_,_arg1_,_arg2_)
352 CYG_MACRO_START \
353 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg1_)); \
354 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg2_)); \
355 CYG_MACRO_END
356 330
357 #endif 331 #endif
358 332
359 // ------------------------------------------------------------------------- 333 // -------------------------------------------------------------------------
360 // Clock instrumentation macros 334 // Clock instrumentation macros
364 #define CYG_INSTRUMENT_CLOCK(_event_,_arg1_,_arg2_) \ 338 #define CYG_INSTRUMENT_CLOCK(_event_,_arg1_,_arg2_) \
365 CYG_INSTRUMENT(CYGINST_EVENT(CLOCK,_event_),_arg1_,_arg2_) 339 CYG_INSTRUMENT(CYGINST_EVENT(CLOCK,_event_),_arg1_,_arg2_)
366 340
367 #else 341 #else
368 342
369 #define CYG_INSTRUMENT_CLOCK(_event_,_arg1_,_arg2_) \ 343 #define CYG_INSTRUMENT_CLOCK(_event_,_arg1_,_arg2_)
370 CYG_MACRO_START \
371 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg1_)); \
372 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg2_)); \
373 CYG_MACRO_END
374 344
375 #endif 345 #endif
376 346
377 // ------------------------------------------------------------------------- 347 // -------------------------------------------------------------------------
378 // Alarm instrumentation macros 348 // Alarm instrumentation macros
382 #define CYG_INSTRUMENT_ALARM(_event_,_arg1_,_arg2_) \ 352 #define CYG_INSTRUMENT_ALARM(_event_,_arg1_,_arg2_) \
383 CYG_INSTRUMENT(CYGINST_EVENT(ALARM,_event_),_arg1_,_arg2_) 353 CYG_INSTRUMENT(CYGINST_EVENT(ALARM,_event_),_arg1_,_arg2_)
384 354
385 #else 355 #else
386 356
387 #define CYG_INSTRUMENT_ALARM(_event_,_arg1_,_arg2_) \ 357 #define CYG_INSTRUMENT_ALARM(_event_,_arg1_,_arg2_)
388 CYG_MACRO_START \
389 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg1_)); \
390 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg2_)); \
391 CYG_MACRO_END
392 358
393 #endif 359 #endif
394 360
395 // ------------------------------------------------------------------------- 361 // -------------------------------------------------------------------------
396 // Mboxt instrumentation macros 362 // Mboxt instrumentation macros
400 #define CYG_INSTRUMENT_MBOXT(_event_,_arg1_,_arg2_) \ 366 #define CYG_INSTRUMENT_MBOXT(_event_,_arg1_,_arg2_) \
401 CYG_INSTRUMENT(CYGINST_EVENT(MBOXT,_event_),_arg1_,_arg2_) 367 CYG_INSTRUMENT(CYGINST_EVENT(MBOXT,_event_),_arg1_,_arg2_)
402 368
403 #else 369 #else
404 370
405 #define CYG_INSTRUMENT_MBOXT(_event_,_arg1_,_arg2_) \ 371 #define CYG_INSTRUMENT_MBOXT(_event_,_arg1_,_arg2_)
406 CYG_MACRO_START \
407 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg1_)); \
408 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg2_)); \
409 CYG_MACRO_END
410 372
411 #endif 373 #endif
412 374
413 // ------------------------------------------------------------------------- 375 // -------------------------------------------------------------------------
414 // User instrumentation 376 // User instrumentation
418 #define CYG_INSTRUMENT_USER(_event_,_arg1_,_arg2_) \ 380 #define CYG_INSTRUMENT_USER(_event_,_arg1_,_arg2_) \
419 CYG_INSTRUMENT(CYGINST_EVENT(USER,_event_),_arg1_,_arg2_) 381 CYG_INSTRUMENT(CYGINST_EVENT(USER,_event_),_arg1_,_arg2_)
420 382
421 #else 383 #else
422 384
423 #define CYG_INSTRUMENT_USER(_event_,_arg1_,_arg2_) \ 385 #define CYG_INSTRUMENT_USER(_event_,_arg1_,_arg2_)
424 CYG_MACRO_START \
425 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg1_)); \
426 CYG_UNUSED_PARAM(CYG_ADDRWORD, (CYG_ADDRWORD)(_arg2_)); \
427 CYG_MACRO_END
428 386
429 #endif 387 #endif
430 388
431 389
432 // ------------------------------------------------------------------------- 390 // -------------------------------------------------------------------------