source: rtems/c/src/lib/libbsp/sh/gensh1/include/coverhd.h @ 46dde0fc

4.11
Last change on this file since 46dde0fc was c499856, checked in by Chris Johns <chrisj@…>, on Mar 20, 2014 at 9:10:47 PM

Change all references of rtems.com to rtems.org.

  • Property mode set to 100644
File size: 5.4 KB
Line 
1/**
2 * @file
3 * @ingroup sh_gensh1
4 * @brief C Overhead definitions
5 */
6
7/* 
8 *
9 *  This include file has defines to represent the overhead associated
10 *  with calling a particular directive from C.  These are used in the
11 *  Timing Test Suite to ignore the overhead required to pass arguments
12 *  to directives.  On some CPUs and/or target boards, this overhead
13 *  is significant and makes it difficult to distinguish internal
14 *  RTEMS execution time from that used to call the directive.
15 *  This file should be updated after running the C overhead timing
16 *  test.  Once this update has been performed, the RTEMS Time Test
17 *  Suite should be rebuilt to account for these overhead times in the
18 *  timing results.
19 *
20 *  NOTE:  If these are all zero, then the times reported include all
21 *         all calling overhead including passing of arguments.
22 *
23 *
24 * These are the figures tmoverhd.exe reported with egcs-980205 -O3
25 * on a Diesner OktagonSH/Amos-2.1 board with SH7032/20MHz
26 *
27 * These results are assumed to be applicable to most SH7032/20MHz boards
28 *
29 *  Author: Ralf Corsepius (corsepiu@faw.uni-ulm.de)
30 *
31 *  COPYRIGHT (c) 1997-1998, FAW Ulm, Germany
32 *
33 *  This program is distributed in the hope that it will be useful,
34 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
35 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
36 *
37 *
38 *  COPYRIGHT (c) 1998.
39 *  On-Line Applications Research Corporation (OAR).
40 *
41 *  The license and distribution terms for this file may be
42 *  found in the file LICENSE in this distribution or at
43 *  http://www.rtems.org/license/LICENSE.
44 */
45
46#ifndef __COVERHD_h
47#define __COVERHD_h
48
49#ifdef __cplusplus
50extern "C" {
51#endif
52
53#define CALLING_OVERHEAD_INITIALIZE_EXECUTIVE      4
54#define CALLING_OVERHEAD_SHUTDOWN_EXECUTIVE        4
55#define CALLING_OVERHEAD_TASK_CREATE               9
56#define CALLING_OVERHEAD_TASK_IDENT                6
57#define CALLING_OVERHEAD_TASK_START                5
58#define CALLING_OVERHEAD_TASK_RESTART              5
59#define CALLING_OVERHEAD_TASK_DELETE               4
60#define CALLING_OVERHEAD_TASK_SUSPEND              4
61#define CALLING_OVERHEAD_TASK_RESUME               4
62#define CALLING_OVERHEAD_TASK_SET_PRIORITY         5
63#define CALLING_OVERHEAD_TASK_MODE                 5
64#define CALLING_OVERHEAD_TASK_GET_NOTE             5
65#define CALLING_OVERHEAD_TASK_SET_NOTE             5
66#define CALLING_OVERHEAD_TASK_WAKE_WHEN            14
67#define CALLING_OVERHEAD_TASK_WAKE_AFTER           4
68#define CALLING_OVERHEAD_INTERRUPT_CATCH           5
69#define CALLING_OVERHEAD_CLOCK_GET                 16
70#define CALLING_OVERHEAD_CLOCK_SET                 14
71#define CALLING_OVERHEAD_CLOCK_TICK                3
72
73#define CALLING_OVERHEAD_TIMER_CREATE              4
74#define CALLING_OVERHEAD_TIMER_IDENT               4
75#define CALLING_OVERHEAD_TIMER_DELETE              4
76#define CALLING_OVERHEAD_TIMER_FIRE_AFTER          6
77#define CALLING_OVERHEAD_TIMER_FIRE_WHEN           20
78#define CALLING_OVERHEAD_TIMER_RESET               4
79#define CALLING_OVERHEAD_TIMER_CANCEL              4
80#define CALLING_OVERHEAD_SEMAPHORE_CREATE          7
81#define CALLING_OVERHEAD_SEMAPHORE_IDENT           5
82#define CALLING_OVERHEAD_SEMAPHORE_DELETE          4
83#define CALLING_OVERHEAD_SEMAPHORE_OBTAIN          5
84#define CALLING_OVERHEAD_SEMAPHORE_RELEASE         4
85#define CALLING_OVERHEAD_MESSAGE_QUEUE_CREATE      5
86#define CALLING_OVERHEAD_MESSAGE_QUEUE_IDENT       5
87#define CALLING_OVERHEAD_MESSAGE_QUEUE_DELETE      4
88#define CALLING_OVERHEAD_MESSAGE_QUEUE_SEND        5
89#define CALLING_OVERHEAD_MESSAGE_QUEUE_URGENT      5
90#define CALLING_OVERHEAD_MESSAGE_QUEUE_BROADCAST   5
91#define CALLING_OVERHEAD_MESSAGE_QUEUE_RECEIVE     6
92#define CALLING_OVERHEAD_MESSAGE_QUEUE_FLUSH       5
93
94#define CALLING_OVERHEAD_EVENT_SEND                6
95#define CALLING_OVERHEAD_EVENT_RECEIVE             5
96#define CALLING_OVERHEAD_SIGNAL_CATCH              4
97#define CALLING_OVERHEAD_SIGNAL_SEND               4
98#define CALLING_OVERHEAD_PARTITION_CREATE          9
99#define CALLING_OVERHEAD_PARTITION_IDENT           5
100#define CALLING_OVERHEAD_PARTITION_DELETE          4
101#define CALLING_OVERHEAD_PARTITION_GET_BUFFER      6
102#define CALLING_OVERHEAD_PARTITION_RETURN_BUFFER   6
103#define CALLING_OVERHEAD_REGION_CREATE             9
104#define CALLING_OVERHEAD_REGION_IDENT              5
105#define CALLING_OVERHEAD_REGION_DELETE             4
106#define CALLING_OVERHEAD_REGION_GET_SEGMENT        9
107#define CALLING_OVERHEAD_REGION_RETURN_SEGMENT     5
108#define CALLING_OVERHEAD_PORT_CREATE               9
109#define CALLING_OVERHEAD_PORT_IDENT                4
110#define CALLING_OVERHEAD_PORT_DELETE               4
111#define CALLING_OVERHEAD_PORT_EXTERNAL_TO_INTERNAL 7
112#define CALLING_OVERHEAD_PORT_INTERNAL_TO_EXTERNAL 8
113
114#define CALLING_OVERHEAD_IO_INITIALIZE             5
115#define CALLING_OVERHEAD_IO_OPEN                   5
116#define CALLING_OVERHEAD_IO_CLOSE                  5
117#define CALLING_OVERHEAD_IO_READ                   5
118#define CALLING_OVERHEAD_IO_WRITE                  5
119#define CALLING_OVERHEAD_IO_CONTROL                5
120#define CALLING_OVERHEAD_FATAL_ERROR_OCCURRED      4
121#define CALLING_OVERHEAD_RATE_MONOTONIC_CREATE     4
122#define CALLING_OVERHEAD_RATE_MONOTONIC_IDENT      4
123#define CALLING_OVERHEAD_RATE_MONOTONIC_DELETE     4
124#define CALLING_OVERHEAD_RATE_MONOTONIC_CANCEL     4
125#define CALLING_OVERHEAD_RATE_MONOTONIC_PERIOD     4
126#define CALLING_OVERHEAD_MULTIPROCESSING_ANNOUNCE  3
127
128#ifdef __cplusplus
129}
130#endif
131
132#endif
Note: See TracBrowser for help on using the repository browser.