1 |
30 |
unneback |
/* coverhd.h
|
2 |
|
|
*
|
3 |
|
|
* This include file has defines to represent the overhead associated
|
4 |
|
|
* with calling a particular directive from C. These are used in the
|
5 |
|
|
* Timing Test Suite to ignore the overhead required to pass arguments
|
6 |
|
|
* to directives. On some CPUs and/or target boards, this overhead
|
7 |
|
|
* is significant and makes it difficult to distinguish internal
|
8 |
|
|
* RTEMS execution time from that used to call the directive.
|
9 |
|
|
* This file should be updated after running the C overhead timing
|
10 |
|
|
* test. Once this update has been performed, the RTEMS Time Test
|
11 |
|
|
* Suite should be rebuilt to account for these overhead times in the
|
12 |
|
|
* timing results.
|
13 |
|
|
*
|
14 |
|
|
* NOTE: If these are all zero, then the times reported include
|
15 |
|
|
* all calling overhead including passing of arguments.
|
16 |
|
|
*
|
17 |
|
|
* COPYRIGHT (c) 1989-1999.
|
18 |
|
|
* On-Line Applications Research Corporation (OAR).
|
19 |
|
|
*
|
20 |
|
|
* The license and distribution terms for this file may be
|
21 |
|
|
* found in the file LICENSE in this distribution or at
|
22 |
|
|
* http://www.OARcorp.com/rtems/license.html.
|
23 |
|
|
*
|
24 |
|
|
* $Id: coverhd.h,v 1.2 2001-09-27 12:00:36 chris Exp $
|
25 |
|
|
*/
|
26 |
|
|
|
27 |
|
|
/*
|
28 |
|
|
* Updated for a 25MHz Papyrus by Andrew Bray <andy@i-cubed.co.uk>
|
29 |
|
|
*
|
30 |
|
|
* Units are 100ns.
|
31 |
|
|
*
|
32 |
|
|
* These numbers are of questionable use, as they are developed by calling
|
33 |
|
|
* the routine many times, thus getting its entry veneer into the (small)
|
34 |
|
|
* cache on the 403GA. This in general is not true of the RTEMS timing
|
35 |
|
|
* tests, which usually call a routine only once, thus having no cache loaded
|
36 |
|
|
* advantage.
|
37 |
|
|
*
|
38 |
|
|
* Whether the directive times are useful after deducting the function call
|
39 |
|
|
* overhead is also questionable. The user is more interested generally
|
40 |
|
|
* in the total cost of a directive, not the cost if the procedure call
|
41 |
|
|
* is inlined! (In general this is not true).
|
42 |
|
|
*
|
43 |
|
|
* Andrew Bray 18/08/1995
|
44 |
|
|
*
|
45 |
|
|
*/
|
46 |
|
|
|
47 |
|
|
#ifndef __COVERHD_h
|
48 |
|
|
#define __COVERHD_h
|
49 |
|
|
|
50 |
|
|
#ifdef __cplusplus
|
51 |
|
|
extern "C" {
|
52 |
|
|
#endif
|
53 |
|
|
|
54 |
|
|
#define CALLING_OVERHEAD_INITIALIZE_EXECUTIVE 1
|
55 |
|
|
#define CALLING_OVERHEAD_SHUTDOWN_EXECUTIVE 1
|
56 |
|
|
#define CALLING_OVERHEAD_TASK_CREATE 3
|
57 |
|
|
#define CALLING_OVERHEAD_TASK_IDENT 1
|
58 |
|
|
#define CALLING_OVERHEAD_TASK_START 1
|
59 |
|
|
#define CALLING_OVERHEAD_TASK_RESTART 1
|
60 |
|
|
#define CALLING_OVERHEAD_TASK_DELETE 1
|
61 |
|
|
#define CALLING_OVERHEAD_TASK_SUSPEND 1
|
62 |
|
|
#define CALLING_OVERHEAD_TASK_RESUME 1
|
63 |
|
|
#define CALLING_OVERHEAD_TASK_SET_PRIORITY 1
|
64 |
|
|
#define CALLING_OVERHEAD_TASK_MODE 1
|
65 |
|
|
#define CALLING_OVERHEAD_TASK_GET_NOTE 1
|
66 |
|
|
#define CALLING_OVERHEAD_TASK_SET_NOTE 1
|
67 |
|
|
#define CALLING_OVERHEAD_TASK_WAKE_WHEN 4
|
68 |
|
|
#define CALLING_OVERHEAD_TASK_WAKE_AFTER 1
|
69 |
|
|
#define CALLING_OVERHEAD_INTERRUPT_CATCH 1
|
70 |
|
|
#define CALLING_OVERHEAD_CLOCK_GET 4
|
71 |
|
|
#define CALLING_OVERHEAD_CLOCK_SET 3
|
72 |
|
|
#define CALLING_OVERHEAD_CLOCK_TICK 1
|
73 |
|
|
|
74 |
|
|
#define CALLING_OVERHEAD_TIMER_CREATE 1
|
75 |
|
|
#define CALLING_OVERHEAD_TIMER_IDENT 1
|
76 |
|
|
#define CALLING_OVERHEAD_TIMER_DELETE 1
|
77 |
|
|
#define CALLING_OVERHEAD_TIMER_FIRE_AFTER 2
|
78 |
|
|
#define CALLING_OVERHEAD_TIMER_FIRE_WHEN 5
|
79 |
|
|
#define CALLING_OVERHEAD_TIMER_RESET 1
|
80 |
|
|
#define CALLING_OVERHEAD_TIMER_CANCEL 1
|
81 |
|
|
#define CALLING_OVERHEAD_SEMAPHORE_CREATE 2
|
82 |
|
|
#define CALLING_OVERHEAD_SEMAPHORE_IDENT 1
|
83 |
|
|
#define CALLING_OVERHEAD_SEMAPHORE_DELETE 1
|
84 |
|
|
#define CALLING_OVERHEAD_SEMAPHORE_OBTAIN 1
|
85 |
|
|
#define CALLING_OVERHEAD_SEMAPHORE_RELEASE 1
|
86 |
|
|
#define CALLING_OVERHEAD_MESSAGE_QUEUE_CREATE 2
|
87 |
|
|
#define CALLING_OVERHEAD_MESSAGE_QUEUE_IDENT 1
|
88 |
|
|
#define CALLING_OVERHEAD_MESSAGE_QUEUE_DELETE 1
|
89 |
|
|
#define CALLING_OVERHEAD_MESSAGE_QUEUE_SEND 1
|
90 |
|
|
#define CALLING_OVERHEAD_MESSAGE_QUEUE_URGENT 1
|
91 |
|
|
#define CALLING_OVERHEAD_MESSAGE_QUEUE_BROADCAST 1
|
92 |
|
|
#define CALLING_OVERHEAD_MESSAGE_QUEUE_RECEIVE 2
|
93 |
|
|
#define CALLING_OVERHEAD_MESSAGE_QUEUE_FLUSH 1
|
94 |
|
|
|
95 |
|
|
#define CALLING_OVERHEAD_EVENT_SEND 1
|
96 |
|
|
#define CALLING_OVERHEAD_EVENT_RECEIVE 2
|
97 |
|
|
#define CALLING_OVERHEAD_SIGNAL_CATCH 1
|
98 |
|
|
#define CALLING_OVERHEAD_SIGNAL_SEND 1
|
99 |
|
|
#define CALLING_OVERHEAD_PARTITION_CREATE 3
|
100 |
|
|
#define CALLING_OVERHEAD_PARTITION_IDENT 1
|
101 |
|
|
#define CALLING_OVERHEAD_PARTITION_DELETE 1
|
102 |
|
|
#define CALLING_OVERHEAD_PARTITION_GET_BUFFER 1
|
103 |
|
|
#define CALLING_OVERHEAD_PARTITION_RETURN_BUFFER 1
|
104 |
|
|
#define CALLING_OVERHEAD_REGION_CREATE 3
|
105 |
|
|
#define CALLING_OVERHEAD_REGION_IDENT 1
|
106 |
|
|
#define CALLING_OVERHEAD_REGION_DELETE 1
|
107 |
|
|
#define CALLING_OVERHEAD_REGION_GET_SEGMENT 2
|
108 |
|
|
#define CALLING_OVERHEAD_REGION_RETURN_SEGMENT 1
|
109 |
|
|
#define CALLING_OVERHEAD_PORT_CREATE 2
|
110 |
|
|
#define CALLING_OVERHEAD_PORT_IDENT 1
|
111 |
|
|
#define CALLING_OVERHEAD_PORT_DELETE 1
|
112 |
|
|
#define CALLING_OVERHEAD_PORT_EXTERNAL_TO_INTERNAL 1
|
113 |
|
|
#define CALLING_OVERHEAD_PORT_INTERNAL_TO_EXTERNAL 2
|
114 |
|
|
|
115 |
|
|
#define CALLING_OVERHEAD_IO_INITIALIZE 2
|
116 |
|
|
#define CALLING_OVERHEAD_IO_OPEN 2
|
117 |
|
|
#define CALLING_OVERHEAD_IO_CLOSE 2
|
118 |
|
|
#define CALLING_OVERHEAD_IO_READ 2
|
119 |
|
|
#define CALLING_OVERHEAD_IO_WRITE 2
|
120 |
|
|
#define CALLING_OVERHEAD_IO_CONTROL 2
|
121 |
|
|
#define CALLING_OVERHEAD_FATAL_ERROR_OCCURRED 1
|
122 |
|
|
#define CALLING_OVERHEAD_RATE_MONOTONIC_CREATE 1
|
123 |
|
|
#define CALLING_OVERHEAD_RATE_MONOTONIC_IDENT 1
|
124 |
|
|
#define CALLING_OVERHEAD_RATE_MONOTONIC_DELETE 1
|
125 |
|
|
#define CALLING_OVERHEAD_RATE_MONOTONIC_CANCEL 1
|
126 |
|
|
#define CALLING_OVERHEAD_RATE_MONOTONIC_PERIOD 1
|
127 |
|
|
#define CALLING_OVERHEAD_MULTIPROCESSING_ANNOUNCE 1
|
128 |
|
|
|
129 |
|
|
#ifdef __cplusplus
|
130 |
|
|
}
|
131 |
|
|
#endif
|
132 |
|
|
|
133 |
|
|
#endif
|
134 |
|
|
/* end of include file */
|