source: rtems/c/src/ada-tests/tmtests/tmoverhd/tmtest.adb @ 4b81d847

4.104.114.84.95
Last change on this file since 4b81d847 was 4b81d847, checked in by Joel Sherrill <joel.sherrill@…>, on May 6, 2005 at 1:17:37 PM

2005-05-06 Joel Sherrill <joel@…>

  • tmtests/tmoverhd/tmtest.adb: Removed warnings.
  • Property mode set to 100644
File size: 37.3 KB
Line 
1--
2--  TMTEST / BODY
3--
4--  DESCRIPTION:
5--
6--  This package is the implementation of Calling Overhead Test of the RTEMS
7--  Timing Test Suite.
8--
9--  DEPENDENCIES:
10--
11-- 
12--
13--  COPYRIGHT (c) 1989-1997.
14--  On-Line Applications Research Corporation (OAR).
15--
16--  The license and distribution terms for this file may in
17--  the file LICENSE in this distribution or at
18--  http://www.rtems.com/license/LICENSE.
19--
20--  $Id$
21--
22
23with DUMMY_RTEMS;
24with INTERFACES; use INTERFACES;
25with RTEMS;
26with TEST_SUPPORT;
27with TEXT_IO;
28with TIME_TEST_SUPPORT;
29with UNSIGNED32_IO;
30
31package body TMTEST is
32
33--PAGE
34--
35--  INIT
36--
37
38   procedure INIT (
39      ARGUMENT : in     RTEMS.TASK_ARGUMENT
40   ) is
41      STATUS : RTEMS.STATUS_CODES;
42   begin
43
44      TEXT_IO.NEW_LINE( 2 );
45      TEXT_IO.PUT_LINE( "*** TIME TEST OVERHEAD ***" );
46
47      TIMER_DRIVER.SET_FIND_AVERAGE_OVERHEAD( TRUE );
48
49      TMTEST.TASK_NAME( 1 ) := RTEMS.BUILD_NAME(  'T', 'A', '1', ' ' );
50
51      RTEMS.TASK_CREATE( 
52         TMTEST.TASK_NAME( 1 ), 
53         254, 
54         2048, 
55         RTEMS.DEFAULT_MODES,
56         RTEMS.DEFAULT_ATTRIBUTES,
57         TMTEST.TASK_ID( 1 ),
58         STATUS
59      );
60      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA1" );
61
62      RTEMS.TASK_START(
63         TMTEST.TASK_ID( 1 ),
64         TMTEST.TASK_1'ACCESS,
65         0,
66         STATUS
67      );
68      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TA1" );
69
70      RTEMS.TASK_DELETE( RTEMS.SELF, STATUS );
71      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" );
72
73   end INIT;
74
75--PAGE
76--
77--  TIMER_HANDLER
78--
79
80   procedure TIMER_HANDLER (
81      IGNORED_ID      : in     RTEMS.ID;
82      IGNORED_ADDRESS : in     RTEMS.ADDRESS
83   ) is
84   begin
85
86      NULL;
87
88   end TIMER_HANDLER;
89
90--PAGE
91--
92--  ISR_HANDLER
93--
94
95   procedure ISR_HANDLER (
96      VECTOR : in     RTEMS.VECTOR_NUMBER
97   ) is
98   begin
99
100      NULL;
101
102   end ISR_HANDLER;
103
104--PAGE
105--
106--  ASR_HANDLER
107--
108
109   procedure ASR_HANDLER (
110      SIGNALS : in     RTEMS.SIGNAL_SET
111   ) is
112   begin
113
114      NULL;
115
116   end ASR_HANDLER;
117
118--PAGE
119--
120--  TASK_1
121--
122
123   CPU_TABLE      : aliased RTEMS.CPU_TABLE;
124
125   procedure TASK_1 (
126      ARGUMENT : in     RTEMS.TASK_ARGUMENT
127   ) is
128      NAME           : RTEMS.NAME;
129      OVERHEAD       : RTEMS.UNSIGNED32;
130      ID             : RTEMS.ID;
131      IN_PRIORITY    : RTEMS.TASK_PRIORITY;
132      OUT_PRIORITY   : RTEMS.TASK_PRIORITY;
133      IN_MODE        : RTEMS.MODE;
134      MASK           : RTEMS.MODE;
135      OUT_MODE       : RTEMS.MODE;
136      NOTE           : RTEMS.UNSIGNED32;
137      TIME           : RTEMS.TIME_OF_DAY;
138      TIMEOUT        : RTEMS.INTERVAL;
139      SIGNALS        : RTEMS.SIGNAL_SET;
140      ADDRESS_1      : RTEMS.ADDRESS;
141      EVENTS         : RTEMS.SIGNAL_SET;
142      BUFFER         : TMTEST.BUFFER;
143      BUFFER_POINTER : RTEMS.ADDRESS;
144      MESSAGE_SIZE   : RTEMS.UNSIGNED32;
145      COUNT          : RTEMS.UNSIGNED32;
146      MAJOR          : RTEMS.DEVICE_MAJOR_NUMBER;
147      MINOR          : RTEMS.DEVICE_MINOR_NUMBER;
148      ERROR          : RTEMS.UNSIGNED32;
149      STATUS         : RTEMS.STATUS_CODES;
150   begin
151
152      NAME := RTEMS.BUILD_NAME(  'N', 'A', 'M', 'E' );
153
154      BUFFER_POINTER := BUFFER'ADDRESS;
155      OVERHEAD := 0;
156      IN_PRIORITY := 0;
157      IN_MODE := 0;
158      MASK := 0;
159      SIGNALS := 0;
160      EVENTS := 0;
161      MAJOR := 0;
162      MINOR := 0;
163      ERROR := 0;
164     
165-- INITIALIZE_EXECUTIVE
166
167      TIMER_DRIVER.INITIALIZE;
168         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
169         loop
170            DUMMY_RTEMS.INITIALIZE_EXECUTIVE( 
171               RTEMS.CONFIGURATION,
172               CPU_TABLE'ACCESS
173            );
174         end loop;
175      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
176
177      TIME_TEST_SUPPORT.PUT_TIME( 
178         "INITIALIZE_EXECUTIVE",
179         TMTEST.END_TIME, 
180         TIME_TEST_SUPPORT.OPERATION_COUNT, 
181         OVERHEAD,
182         0
183      );
184
185-- SHUTDOWN_EXECUTIVE
186
187      TIMER_DRIVER.INITIALIZE;
188         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
189         loop
190            DUMMY_RTEMS.SHUTDOWN_EXECUTIVE( ERROR );
191         end loop;
192      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
193
194      TIME_TEST_SUPPORT.PUT_TIME( 
195         "SHUTDOWN_EXECUTIVE",
196         TMTEST.END_TIME, 
197         TIME_TEST_SUPPORT.OPERATION_COUNT, 
198         OVERHEAD,
199         0
200      );
201
202-- TASK_CREATE
203
204      TIMER_DRIVER.INITIALIZE;
205         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
206         loop
207            DUMMY_RTEMS.TASK_CREATE( 
208               NAME, 
209               IN_PRIORITY, 
210               2048, 
211               RTEMS.DEFAULT_MODES, 
212               RTEMS.DEFAULT_ATTRIBUTES, 
213               ID, 
214               STATUS
215            );
216         end loop;
217      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
218
219      TIME_TEST_SUPPORT.PUT_TIME( 
220         "TASK_CREATE",
221         TMTEST.END_TIME, 
222         TIME_TEST_SUPPORT.OPERATION_COUNT, 
223         OVERHEAD,
224         0
225      );
226
227-- TASK_IDENT
228
229      TIMER_DRIVER.INITIALIZE;
230         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
231         loop
232            DUMMY_RTEMS.TASK_IDENT(
233               NAME,
234               RTEMS.SEARCH_ALL_NODES,
235               ID,
236               STATUS
237            );
238         end loop;
239      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
240
241      TIME_TEST_SUPPORT.PUT_TIME( 
242         "TASK_IDENT",
243         TMTEST.END_TIME, 
244         TIME_TEST_SUPPORT.OPERATION_COUNT, 
245         OVERHEAD,
246         0
247      );
248
249-- TASK_START
250
251      TIMER_DRIVER.INITIALIZE;
252         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
253         loop
254            DUMMY_RTEMS.TASK_START( ID, TMTEST.TASK_1'ACCESS, 0, STATUS );
255         end loop;
256      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
257
258      TIME_TEST_SUPPORT.PUT_TIME( 
259         "TASK_START",
260         TMTEST.END_TIME, 
261         TIME_TEST_SUPPORT.OPERATION_COUNT, 
262         OVERHEAD,
263         0
264      );
265
266-- TASK_RESTART
267
268      TIMER_DRIVER.INITIALIZE;
269         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
270         loop
271            DUMMY_RTEMS.TASK_RESTART( ID, 0, STATUS );
272         end loop;
273      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
274
275      TIME_TEST_SUPPORT.PUT_TIME( 
276         "TASK_RESTART",
277         TMTEST.END_TIME, 
278         TIME_TEST_SUPPORT.OPERATION_COUNT, 
279         OVERHEAD,
280         0
281      );
282
283-- TASK_DELETE
284
285      TIMER_DRIVER.INITIALIZE;
286         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
287         loop
288            DUMMY_RTEMS.TASK_DELETE( ID, STATUS );
289         end loop;
290      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
291
292      TIME_TEST_SUPPORT.PUT_TIME( 
293         "TASK_DELETE",
294         TMTEST.END_TIME, 
295         TIME_TEST_SUPPORT.OPERATION_COUNT, 
296         OVERHEAD,
297         0
298      );
299
300-- TASK_SUSPEND
301
302      TIMER_DRIVER.INITIALIZE;
303         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
304         loop
305            DUMMY_RTEMS.TASK_SUSPEND( ID, STATUS );
306         end loop;
307      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
308
309      TIME_TEST_SUPPORT.PUT_TIME( 
310         "TASK_SUSPEND",
311         TMTEST.END_TIME, 
312         TIME_TEST_SUPPORT.OPERATION_COUNT, 
313         OVERHEAD,
314         0
315      );
316
317-- TASK_RESUME
318
319      TIMER_DRIVER.INITIALIZE;
320         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
321         loop
322            DUMMY_RTEMS.TASK_RESUME( ID, STATUS );
323         end loop;
324      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
325
326      TIME_TEST_SUPPORT.PUT_TIME( 
327         "TASK_RESUME",
328         TMTEST.END_TIME, 
329         TIME_TEST_SUPPORT.OPERATION_COUNT, 
330         OVERHEAD,
331         0
332      );
333
334-- TASK_SET_PRIORITY
335
336      TIMER_DRIVER.INITIALIZE;
337         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
338         loop
339            DUMMY_RTEMS.TASK_SET_PRIORITY( 
340               ID, 
341               IN_PRIORITY, 
342               OUT_PRIORITY, 
343               STATUS
344            );
345         end loop;
346      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
347
348      TIME_TEST_SUPPORT.PUT_TIME( 
349         "TASK_SET_PRIORITY",
350         TMTEST.END_TIME, 
351         TIME_TEST_SUPPORT.OPERATION_COUNT, 
352         OVERHEAD,
353         0
354      );
355
356-- TASK_MODE
357
358      TIMER_DRIVER.INITIALIZE;
359         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
360         loop
361            DUMMY_RTEMS.TASK_MODE( 
362               IN_MODE, 
363               MASK,
364               OUT_MODE, 
365               STATUS
366            );
367         end loop;
368      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
369
370      TIME_TEST_SUPPORT.PUT_TIME( 
371         "TASK_MODE",
372         TMTEST.END_TIME, 
373         TIME_TEST_SUPPORT.OPERATION_COUNT, 
374         OVERHEAD,
375         0
376      );
377
378-- TASK_GET_NOTE
379
380      TIMER_DRIVER.INITIALIZE;
381         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
382         loop
383            DUMMY_RTEMS.TASK_GET_NOTE( ID, 1, NOTE, STATUS );
384         end loop;
385      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
386
387      TIME_TEST_SUPPORT.PUT_TIME( 
388         "TASK_GET_NOTE",
389         TMTEST.END_TIME, 
390         TIME_TEST_SUPPORT.OPERATION_COUNT, 
391         OVERHEAD,
392         0
393      );
394
395-- TASK_SET_NOTE
396
397      TIMER_DRIVER.INITIALIZE;
398         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
399         loop
400            DUMMY_RTEMS.TASK_SET_NOTE( ID, 1, NOTE, STATUS );
401         end loop;
402      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
403
404      TIME_TEST_SUPPORT.PUT_TIME( 
405         "TASK_SET_NOTE",
406         TMTEST.END_TIME, 
407         TIME_TEST_SUPPORT.OPERATION_COUNT, 
408         OVERHEAD,
409         0
410      );
411
412-- TASK_WAKE_WHEN
413
414      TIME.YEAR    := 2000;
415      TIME.MONTH   := 12;
416      TIME.DAY     := 25;
417      TIME.HOUR    := 6;
418      TIME.MINUTE  := 1;
419      TIME.SECOND  := 2;
420      TIME.TICKS   := 0;
421     
422      TIMER_DRIVER.INITIALIZE;
423         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
424         loop
425            DUMMY_RTEMS.TASK_WAKE_WHEN( TIME, STATUS );
426         end loop;
427      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
428
429      TIME_TEST_SUPPORT.PUT_TIME( 
430         "TASK_WAKE_WHEN",
431         TMTEST.END_TIME, 
432         TIME_TEST_SUPPORT.OPERATION_COUNT, 
433         OVERHEAD,
434         0
435      );
436
437-- TASK_WAKE_AFTER
438
439      TIMEOUT := 1;
440
441      TIMER_DRIVER.INITIALIZE;
442         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
443         loop
444            DUMMY_RTEMS.TASK_WAKE_AFTER( TIMEOUT, STATUS );
445         end loop;
446      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
447
448      TIME_TEST_SUPPORT.PUT_TIME( 
449         "TASK_WAKE_AFTER",
450         TMTEST.END_TIME, 
451         TIME_TEST_SUPPORT.OPERATION_COUNT,
452         OVERHEAD,
453         0
454      );
455
456-- INTERRUPT_CATCH
457
458      TIMER_DRIVER.INITIALIZE;
459         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
460         loop
461            DUMMY_RTEMS.INTERRUPT_CATCH( 
462               TMTEST.ISR_HANDLER'ADDRESS, 
463               RTEMS.VECTOR_NUMBER'FIRST,
464               ADDRESS_1,
465               STATUS
466            );
467         end loop;
468      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
469
470      TIME_TEST_SUPPORT.PUT_TIME( 
471         "INTERRUPT_CATCH",
472         TMTEST.END_TIME, 
473         TIME_TEST_SUPPORT.OPERATION_COUNT, 
474         OVERHEAD,
475         0
476      );
477
478-- CLOCK_GET
479
480      TIMER_DRIVER.INITIALIZE;
481         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
482         loop
483            DUMMY_RTEMS.CLOCK_GET( RTEMS.CLOCK_GET_TOD, TIME'ADDRESS, STATUS );
484         end loop;
485      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
486
487      TIME_TEST_SUPPORT.PUT_TIME( 
488         "CLOCK_GET",
489         TMTEST.END_TIME, 
490         TIME_TEST_SUPPORT.OPERATION_COUNT, 
491         OVERHEAD,
492         0
493      );
494
495-- CLOCK_SET
496
497      TIMER_DRIVER.INITIALIZE;
498         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
499         loop
500            DUMMY_RTEMS.CLOCK_SET( TIME, STATUS );
501         end loop;
502      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
503
504      TIME_TEST_SUPPORT.PUT_TIME( 
505         "CLOCK_SET",
506         TMTEST.END_TIME, 
507         TIME_TEST_SUPPORT.OPERATION_COUNT, 
508         OVERHEAD,
509         0
510      );
511
512-- CLOCK_TICK
513
514      TIMER_DRIVER.INITIALIZE;
515         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
516         loop
517            DUMMY_RTEMS.CLOCK_TICK( STATUS );
518         end loop;
519      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
520
521      TIME_TEST_SUPPORT.PUT_TIME( 
522         "CLOCK_TICK",
523         TMTEST.END_TIME, 
524         TIME_TEST_SUPPORT.OPERATION_COUNT, 
525         OVERHEAD,
526         0
527      );
528
529TEST_SUPPORT.PAUSE;
530
531-- TIMER_CREATE
532
533      TIMER_DRIVER.INITIALIZE;
534         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
535         loop
536            DUMMY_RTEMS.TIMER_CREATE( NAME, ID, STATUS );
537         end loop;
538      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
539
540      TIME_TEST_SUPPORT.PUT_TIME( 
541         "TIMER_CREATE",
542         TMTEST.END_TIME, 
543         TIME_TEST_SUPPORT.OPERATION_COUNT, 
544         OVERHEAD,
545         0
546      );
547
548-- TIMER_DELETE
549
550      TIMER_DRIVER.INITIALIZE;
551         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
552         loop
553            DUMMY_RTEMS.TIMER_DELETE( ID, STATUS );
554         end loop;
555      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
556
557      TIME_TEST_SUPPORT.PUT_TIME( 
558         "TIMER_DELETE",
559         TMTEST.END_TIME, 
560         TIME_TEST_SUPPORT.OPERATION_COUNT, 
561         OVERHEAD,
562         0
563      );
564
565-- TIMER_IDENT
566
567      TIMER_DRIVER.INITIALIZE;
568         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
569         loop
570            DUMMY_RTEMS.TIMER_IDENT(
571               NAME,
572               ID,
573               STATUS
574            );
575         end loop;
576      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
577
578      TIME_TEST_SUPPORT.PUT_TIME( 
579         "TIMER_IDENT",
580         TMTEST.END_TIME, 
581         TIME_TEST_SUPPORT.OPERATION_COUNT, 
582         OVERHEAD,
583         0
584      );
585
586-- TIMER_FIRE_AFTER
587
588      TIMER_DRIVER.INITIALIZE;
589         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
590         loop
591            DUMMY_RTEMS.TIMER_FIRE_AFTER( 
592               ID, 
593               TIMEOUT, 
594               TMTEST.TIMER_HANDLER'ACCESS,
595               RTEMS.NULL_ADDRESS,
596               STATUS
597            );
598         end loop;
599      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
600
601      TIME_TEST_SUPPORT.PUT_TIME( 
602         "TIMER_FIRE_AFTER",
603         TMTEST.END_TIME, 
604         TIME_TEST_SUPPORT.OPERATION_COUNT, 
605         OVERHEAD,
606         0
607      );
608
609-- TIMER_FIRE_WHEN
610
611      TIMER_DRIVER.INITIALIZE;
612         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
613         loop
614            DUMMY_RTEMS.TIMER_FIRE_WHEN(
615               ID, 
616               TIME, 
617               TMTEST.TIMER_HANDLER'ACCESS,
618               RTEMS.NULL_ADDRESS,
619               STATUS
620            );
621         end loop;
622      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
623
624      TIME_TEST_SUPPORT.PUT_TIME( 
625         "TIMER_FIRE_WHEN",
626         TMTEST.END_TIME, 
627         TIME_TEST_SUPPORT.OPERATION_COUNT, 
628         OVERHEAD,
629         0
630      );
631
632-- TIMER_RESET
633
634      TIMER_DRIVER.INITIALIZE;
635         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
636         loop
637            DUMMY_RTEMS.TIMER_RESET( ID, STATUS );
638         end loop;
639      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
640
641      TIME_TEST_SUPPORT.PUT_TIME( 
642         "TIMER_RESET",
643         TMTEST.END_TIME, 
644         TIME_TEST_SUPPORT.OPERATION_COUNT, 
645         OVERHEAD,
646         0
647      );
648
649-- TIMER_CANCEL
650
651      TIMER_DRIVER.INITIALIZE;
652         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
653         loop
654            DUMMY_RTEMS.TIMER_CANCEL( ID, STATUS );
655         end loop;
656      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
657
658      TIME_TEST_SUPPORT.PUT_TIME( 
659         "TIMER_CANCEL",
660         TMTEST.END_TIME, 
661         TIME_TEST_SUPPORT.OPERATION_COUNT, 
662         OVERHEAD,
663         0
664      );
665
666-- SEMAPHORE_CREATE
667
668      TIMER_DRIVER.INITIALIZE;
669         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
670         loop
671            DUMMY_RTEMS.SEMAPHORE_CREATE( 
672               NAME, 
673               128,
674               RTEMS.DEFAULT_ATTRIBUTES,
675               RTEMS.NO_PRIORITY,
676               ID, 
677               STATUS
678            );
679         end loop;
680      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
681
682      TIME_TEST_SUPPORT.PUT_TIME( 
683         "SEMAPHORE_CREATE",
684         TMTEST.END_TIME, 
685         TIME_TEST_SUPPORT.OPERATION_COUNT, 
686         OVERHEAD,
687         0
688      );
689
690-- SEMAPHORE_DELETE
691
692      TIMER_DRIVER.INITIALIZE;
693         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
694         loop
695            DUMMY_RTEMS.SEMAPHORE_DELETE( ID, STATUS );
696         end loop;
697      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
698
699      TIME_TEST_SUPPORT.PUT_TIME( 
700         "SEMAPHORE_DELETE",
701         TMTEST.END_TIME, 
702         TIME_TEST_SUPPORT.OPERATION_COUNT, 
703         OVERHEAD,
704         0
705      );
706
707-- SEMAPHORE_IDENT
708
709      TIMER_DRIVER.INITIALIZE;
710         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
711         loop
712            DUMMY_RTEMS.SEMAPHORE_IDENT(
713               NAME,
714               RTEMS.SEARCH_ALL_NODES,
715               ID,
716               STATUS
717            );
718         end loop;
719      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
720
721      TIME_TEST_SUPPORT.PUT_TIME( 
722         "SEMAPHORE_IDENT",
723         TMTEST.END_TIME, 
724         TIME_TEST_SUPPORT.OPERATION_COUNT, 
725         OVERHEAD,
726         0
727      );
728
729-- SEMAPHORE_OBTAIN
730
731      TIMER_DRIVER.INITIALIZE;
732         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
733         loop
734            DUMMY_RTEMS.SEMAPHORE_OBTAIN( 
735               ID, 
736               RTEMS.DEFAULT_OPTIONS,
737               TIMEOUT,
738               STATUS
739            );
740         end loop;
741      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
742
743      TIME_TEST_SUPPORT.PUT_TIME( 
744         "SEMAPHORE_OBTAIN",
745         TMTEST.END_TIME, 
746         TIME_TEST_SUPPORT.OPERATION_COUNT, 
747         OVERHEAD,
748         0
749      );
750
751-- SEMAPHORE_RELEASE
752
753      TIMER_DRIVER.INITIALIZE;
754         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
755         loop
756            DUMMY_RTEMS.SEMAPHORE_RELEASE( ID, STATUS );
757         end loop;
758      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
759
760      TIME_TEST_SUPPORT.PUT_TIME( 
761         "SEMAPHORE_RELEASE",
762         TMTEST.END_TIME, 
763         TIME_TEST_SUPPORT.OPERATION_COUNT, 
764         OVERHEAD,
765         0
766      );
767
768-- MESSAGE_QUEUE_CREATE
769
770      TIMER_DRIVER.INITIALIZE;
771         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
772         loop
773            DUMMY_RTEMS.MESSAGE_QUEUE_CREATE( 
774               NAME, 
775               128,
776               16,
777               RTEMS.DEFAULT_ATTRIBUTES,
778               ID, 
779               STATUS
780            );
781         end loop;
782      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
783
784      TIME_TEST_SUPPORT.PUT_TIME( 
785         "MESSAGE_QUEUE_CREATE",
786         TMTEST.END_TIME, 
787         TIME_TEST_SUPPORT.OPERATION_COUNT, 
788         OVERHEAD,
789         0
790      );
791
792-- MESSAGE_QUEUE_IDENT
793
794      TIMER_DRIVER.INITIALIZE;
795         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
796         loop
797            DUMMY_RTEMS.MESSAGE_QUEUE_IDENT(
798               NAME,
799               RTEMS.SEARCH_ALL_NODES,
800               ID,
801               STATUS
802            );
803         end loop;
804      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
805
806      TIME_TEST_SUPPORT.PUT_TIME( 
807         "MESSAGE_QUEUE_IDENT",
808         TMTEST.END_TIME, 
809         TIME_TEST_SUPPORT.OPERATION_COUNT, 
810         OVERHEAD,
811         0
812      );
813
814-- MESSAGE_QUEUE_DELETE
815
816      TIMER_DRIVER.INITIALIZE;
817         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
818         loop
819            DUMMY_RTEMS.MESSAGE_QUEUE_DELETE( ID, STATUS );
820         end loop;
821      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
822
823      TIME_TEST_SUPPORT.PUT_TIME( 
824         "MESSAGE_QUEUE_DELETE",
825         TMTEST.END_TIME, 
826         TIME_TEST_SUPPORT.OPERATION_COUNT, 
827         OVERHEAD,
828         0
829      );
830
831-- MESSAGE_QUEUE_SEND
832
833      TIMER_DRIVER.INITIALIZE;
834         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
835         loop
836            DUMMY_RTEMS.MESSAGE_QUEUE_SEND( ID, BUFFER_POINTER, 16, STATUS );
837         end loop;
838      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
839
840      TIME_TEST_SUPPORT.PUT_TIME( 
841         "MESSAGE_QUEUE_SEND",
842         TMTEST.END_TIME, 
843         TIME_TEST_SUPPORT.OPERATION_COUNT, 
844         OVERHEAD,
845         0
846      );
847
848-- MESSAGE_QUEUE_URGENT
849
850      TIMER_DRIVER.INITIALIZE;
851         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
852         loop
853            DUMMY_RTEMS.MESSAGE_QUEUE_URGENT( ID, BUFFER_POINTER, 16, STATUS );
854         end loop;
855      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
856
857      TIME_TEST_SUPPORT.PUT_TIME( 
858         "MESSAGE_QUEUE_URGENT",
859         TMTEST.END_TIME, 
860         TIME_TEST_SUPPORT.OPERATION_COUNT, 
861         OVERHEAD,
862         0
863      );
864
865-- MESSAGE_QUEUE_BROADCAST
866
867      TIMER_DRIVER.INITIALIZE;
868         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
869         loop
870            DUMMY_RTEMS.MESSAGE_QUEUE_BROADCAST( 
871               ID, 
872               BUFFER_POINTER, 
873               16,
874               COUNT, 
875               STATUS
876            );
877         end loop;
878      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
879
880      TIME_TEST_SUPPORT.PUT_TIME( 
881         "MESSAGE_QUEUE_BROADCAST",
882         TMTEST.END_TIME, 
883         TIME_TEST_SUPPORT.OPERATION_COUNT, 
884         OVERHEAD,
885         0
886      );
887
888-- MESSAGE_QUEUE_RECEIVE
889
890      TIMER_DRIVER.INITIALIZE;
891         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
892         loop
893            DUMMY_RTEMS.MESSAGE_QUEUE_RECEIVE( 
894               ID, 
895               BUFFER_POINTER,
896               RTEMS.DEFAULT_OPTIONS,
897               TIMEOUT,
898               MESSAGE_SIZE,
899               STATUS
900            );
901         end loop;
902      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
903
904      TIME_TEST_SUPPORT.PUT_TIME( 
905         "MESSAGE_QUEUE_RECEIVE",
906         TMTEST.END_TIME, 
907         TIME_TEST_SUPPORT.OPERATION_COUNT, 
908         OVERHEAD,
909         0
910      );
911
912-- MESSAGE_QUEUE_FLUSH
913
914      TIMER_DRIVER.INITIALIZE;
915         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
916         loop
917            DUMMY_RTEMS.MESSAGE_QUEUE_FLUSH( ID, COUNT, STATUS );
918         end loop;
919      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
920
921      TIME_TEST_SUPPORT.PUT_TIME( 
922         "MESSAGE_QUEUE_FLUSH",
923         TMTEST.END_TIME, 
924         TIME_TEST_SUPPORT.OPERATION_COUNT, 
925         OVERHEAD,
926         0
927      );
928
929TEST_SUPPORT.PAUSE;
930
931-- EVENT_SEND
932
933      TIMER_DRIVER.INITIALIZE;
934         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
935         loop
936            DUMMY_RTEMS.EVENT_SEND( ID, EVENTS, STATUS );
937         end loop;
938      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
939
940      TIME_TEST_SUPPORT.PUT_TIME( 
941         "EVENT_SEND",
942         TMTEST.END_TIME, 
943         TIME_TEST_SUPPORT.OPERATION_COUNT, 
944         OVERHEAD,
945         0
946      );
947
948-- EVENT_RECEIVE
949
950      TIMER_DRIVER.INITIALIZE;
951         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
952         loop
953            DUMMY_RTEMS.EVENT_RECEIVE( 
954               RTEMS.EVENT_16, 
955               EVENTS, 
956               RTEMS.DEFAULT_OPTIONS,
957               TIMEOUT,
958               STATUS
959            );
960         end loop;
961      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
962
963      TIME_TEST_SUPPORT.PUT_TIME( 
964         "EVENT_RECEIVE",
965         TMTEST.END_TIME, 
966         TIME_TEST_SUPPORT.OPERATION_COUNT, 
967         OVERHEAD,
968         0
969      );
970
971-- SIGNAL_CATCH
972
973      TIMER_DRIVER.INITIALIZE;
974         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
975         loop
976            DUMMY_RTEMS.SIGNAL_CATCH( 
977               TMTEST.ASR_HANDLER'ACCESS, 
978               RTEMS.DEFAULT_MODES,
979               STATUS
980            );
981         end loop;
982      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
983
984      TIME_TEST_SUPPORT.PUT_TIME( 
985         "SIGNAL_CATCH",
986         TMTEST.END_TIME, 
987         TIME_TEST_SUPPORT.OPERATION_COUNT, 
988         OVERHEAD,
989         0
990      );
991
992-- SIGNAL_SEND
993
994      TIMER_DRIVER.INITIALIZE;
995         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
996         loop
997            DUMMY_RTEMS.SIGNAL_SEND( ID, SIGNALS, STATUS );
998         end loop;
999      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1000
1001      TIME_TEST_SUPPORT.PUT_TIME( 
1002         "SIGNAL_SEND",
1003         TMTEST.END_TIME, 
1004         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1005         OVERHEAD,
1006         0
1007      );
1008
1009-- PARTITION_CREATE
1010
1011      TIMER_DRIVER.INITIALIZE;
1012         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1013         loop
1014            DUMMY_RTEMS.PARTITION_CREATE( 
1015               NAME, 
1016               TMTEST.MEMORY_AREA'ADDRESS,
1017               2048,
1018               128,
1019               RTEMS.DEFAULT_ATTRIBUTES,
1020               ID, 
1021               STATUS
1022            );
1023         end loop;
1024      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1025
1026      TIME_TEST_SUPPORT.PUT_TIME( 
1027         "PARTITION_CREATE",
1028         TMTEST.END_TIME, 
1029         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1030         OVERHEAD,
1031         0
1032      );
1033
1034-- PARTITION_IDENT
1035
1036      TIMER_DRIVER.INITIALIZE;
1037         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1038         loop
1039            DUMMY_RTEMS.PARTITION_IDENT(
1040               NAME,
1041               RTEMS.SEARCH_ALL_NODES,
1042               ID,
1043               STATUS
1044            );
1045         end loop;
1046      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1047
1048      TIME_TEST_SUPPORT.PUT_TIME( 
1049         "PARTITION_IDENT",
1050         TMTEST.END_TIME, 
1051         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1052         OVERHEAD,
1053         0
1054      );
1055
1056-- PARTITION_DELETE
1057
1058      TIMER_DRIVER.INITIALIZE;
1059         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1060         loop
1061            DUMMY_RTEMS.PARTITION_DELETE( ID, STATUS );
1062         end loop;
1063      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1064
1065      TIME_TEST_SUPPORT.PUT_TIME( 
1066         "PARTITION_DELETE",
1067         TMTEST.END_TIME, 
1068         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1069         OVERHEAD,
1070         0
1071      );
1072
1073-- PARTITION_GET_BUFFER
1074
1075      TIMER_DRIVER.INITIALIZE;
1076         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1077         loop
1078            DUMMY_RTEMS.PARTITION_GET_BUFFER( ID, ADDRESS_1, STATUS );
1079         end loop;
1080      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1081
1082      TIME_TEST_SUPPORT.PUT_TIME( 
1083         "PARTITION_GET_BUFFER",
1084         TMTEST.END_TIME, 
1085         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1086         OVERHEAD,
1087         0
1088      );
1089
1090-- PARTITION_RETURN_BUFFER
1091
1092      TIMER_DRIVER.INITIALIZE;
1093         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1094         loop
1095            DUMMY_RTEMS.PARTITION_RETURN_BUFFER( ID, ADDRESS_1, STATUS );
1096         end loop;
1097      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1098
1099      TIME_TEST_SUPPORT.PUT_TIME( 
1100         "PARTITION_RETURN_BUFFER",
1101         TMTEST.END_TIME, 
1102         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1103         OVERHEAD,
1104         0
1105      );
1106
1107-- REGION_CREATE
1108
1109      TIMER_DRIVER.INITIALIZE;
1110         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1111         loop
1112            DUMMY_RTEMS.REGION_CREATE( 
1113               NAME, 
1114               TMTEST.MEMORY_AREA'ADDRESS,
1115               2048,
1116               128,
1117               RTEMS.DEFAULT_ATTRIBUTES,
1118               ID, 
1119               STATUS
1120            );
1121         end loop;
1122      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1123
1124      TIME_TEST_SUPPORT.PUT_TIME( 
1125         "REGION_CREATE",
1126         TMTEST.END_TIME, 
1127         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1128         OVERHEAD,
1129         0
1130      );
1131
1132-- REGION_IDENT
1133
1134      TIMER_DRIVER.INITIALIZE;
1135         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1136         loop
1137            DUMMY_RTEMS.REGION_IDENT(
1138               NAME,
1139               ID,
1140               STATUS
1141            );
1142         end loop;
1143      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1144
1145      TIME_TEST_SUPPORT.PUT_TIME( 
1146         "REGION_IDENT",
1147         TMTEST.END_TIME, 
1148         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1149         OVERHEAD,
1150         0
1151      );
1152
1153-- REGION_DELETE
1154
1155      TIMER_DRIVER.INITIALIZE;
1156         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1157         loop
1158            DUMMY_RTEMS.REGION_DELETE( ID, STATUS );
1159         end loop;
1160      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1161
1162      TIME_TEST_SUPPORT.PUT_TIME( 
1163         "REGION_DELETE",
1164         TMTEST.END_TIME, 
1165         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1166         OVERHEAD,
1167         0
1168      );
1169
1170-- REGION_GET_SEGMENT
1171
1172      TIMER_DRIVER.INITIALIZE;
1173         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1174         loop
1175            DUMMY_RTEMS.REGION_GET_SEGMENT( 
1176               ID, 
1177               243,
1178               RTEMS.DEFAULT_OPTIONS,
1179               TIMEOUT,
1180               ADDRESS_1,
1181               STATUS
1182            );
1183         end loop;
1184      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1185
1186      TIME_TEST_SUPPORT.PUT_TIME( 
1187         "REGION_GET_SEGMENT",
1188         TMTEST.END_TIME, 
1189         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1190         OVERHEAD,
1191         0
1192      );
1193
1194-- REGION_RETURN_SEGMENT
1195
1196      TIMER_DRIVER.INITIALIZE;
1197         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1198         loop
1199            DUMMY_RTEMS.REGION_RETURN_SEGMENT( ID, ADDRESS_1, STATUS );
1200         end loop;
1201      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1202
1203      TIME_TEST_SUPPORT.PUT_TIME( 
1204         "REGION_RETURN_SEGMENT",
1205         TMTEST.END_TIME, 
1206         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1207         OVERHEAD,
1208         0
1209      );
1210
1211-- PORT_CREATE
1212
1213      TIMER_DRIVER.INITIALIZE;
1214         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1215         loop
1216            DUMMY_RTEMS.PORT_CREATE( 
1217               NAME, 
1218               TMTEST.INTERNAL_PORT_AREA'ADDRESS,
1219               TMTEST.EXTERNAL_PORT_AREA'ADDRESS,
1220               TMTEST.INTERNAL_PORT_AREA'LENGTH,
1221               ID, 
1222               STATUS
1223            );
1224         end loop;
1225      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1226
1227      TIME_TEST_SUPPORT.PUT_TIME( 
1228         "PORT_CREATE",
1229         TMTEST.END_TIME, 
1230         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1231         OVERHEAD,
1232         0
1233      );
1234
1235-- PORT_IDENT
1236
1237      TIMER_DRIVER.INITIALIZE;
1238         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1239         loop
1240            DUMMY_RTEMS.PORT_IDENT( NAME, ID, STATUS );
1241         end loop;
1242      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1243
1244      TIME_TEST_SUPPORT.PUT_TIME( 
1245         "PORT_IDENT",
1246         TMTEST.END_TIME, 
1247         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1248         OVERHEAD,
1249         0
1250      );
1251
1252-- PORT_DELETE
1253
1254      TIMER_DRIVER.INITIALIZE;
1255         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1256         loop
1257            DUMMY_RTEMS.PORT_DELETE( ID, STATUS );
1258         end loop;
1259      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1260
1261      TIME_TEST_SUPPORT.PUT_TIME( 
1262         "PORT_DELETE",
1263         TMTEST.END_TIME, 
1264         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1265         OVERHEAD,
1266         0
1267      );
1268
1269-- PORT_EXTERNAL_TO_INTERNAL
1270
1271      TIMER_DRIVER.INITIALIZE;
1272         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1273         loop
1274            DUMMY_RTEMS.PORT_EXTERNAL_TO_INTERNAL( 
1275               ID, 
1276               TMTEST.EXTERNAL_PORT_AREA( 7 )'ADDRESS,
1277               ADDRESS_1,
1278               STATUS
1279            );
1280         end loop;
1281      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1282
1283      TIME_TEST_SUPPORT.PUT_TIME( 
1284         "PORT_EXTERNAL_TO_INTERNAL",
1285         TMTEST.END_TIME, 
1286         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1287         OVERHEAD,
1288         0
1289      );
1290
1291-- PORT_INTERNAL_TO_EXTERNAL
1292
1293      TIMER_DRIVER.INITIALIZE;
1294         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1295         loop
1296            DUMMY_RTEMS.PORT_INTERNAL_TO_EXTERNAL( 
1297               ID, 
1298               TMTEST.INTERNAL_PORT_AREA( 7 )'ADDRESS,
1299               ADDRESS_1,
1300               STATUS
1301            );
1302         end loop;
1303      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1304
1305      TIME_TEST_SUPPORT.PUT_TIME( 
1306         "PORT_INTERNAL_TO_EXTERNAL",
1307         TMTEST.END_TIME, 
1308         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1309         OVERHEAD,
1310         0
1311      );
1312
1313TEST_SUPPORT.PAUSE;
1314
1315-- IO_INITIALIZE
1316
1317      TIMER_DRIVER.INITIALIZE;
1318         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1319         loop
1320            DUMMY_RTEMS.IO_INITIALIZE( 
1321               MAJOR,
1322               MINOR,
1323               ADDRESS_1,
1324               STATUS
1325            );
1326         end loop;
1327      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1328
1329      TIME_TEST_SUPPORT.PUT_TIME( 
1330         "IO_INITIALIZE",
1331         TMTEST.END_TIME, 
1332         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1333         OVERHEAD,
1334         0
1335      );
1336
1337-- IO_OPEN
1338
1339      TIMER_DRIVER.INITIALIZE;
1340         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1341         loop
1342            DUMMY_RTEMS.IO_OPEN( 
1343               MAJOR,
1344               MINOR,
1345               ADDRESS_1,
1346               STATUS
1347            );
1348         end loop;
1349      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1350
1351      TIME_TEST_SUPPORT.PUT_TIME( 
1352         "IO_OPEN",
1353         TMTEST.END_TIME, 
1354         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1355         OVERHEAD,
1356         0
1357      );
1358
1359-- IO_CLOSE
1360
1361      TIMER_DRIVER.INITIALIZE;
1362         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1363         loop
1364            DUMMY_RTEMS.IO_CLOSE( 
1365               MAJOR,
1366               MINOR,
1367               ADDRESS_1,
1368               STATUS
1369            );
1370         end loop;
1371      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1372
1373      TIME_TEST_SUPPORT.PUT_TIME( 
1374         "IO_CLOSE",
1375         TMTEST.END_TIME, 
1376         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1377         OVERHEAD,
1378         0
1379      );
1380
1381-- IO_READ
1382
1383      TIMER_DRIVER.INITIALIZE;
1384         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1385         loop
1386            DUMMY_RTEMS.IO_READ( 
1387               MAJOR,
1388               MINOR,
1389               ADDRESS_1,
1390               STATUS
1391            );
1392         end loop;
1393      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1394
1395      TIME_TEST_SUPPORT.PUT_TIME( 
1396         "IO_READ",
1397         TMTEST.END_TIME, 
1398         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1399         OVERHEAD,
1400         0
1401      );
1402
1403-- IO_WRITE
1404
1405      TIMER_DRIVER.INITIALIZE;
1406         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1407         loop
1408            DUMMY_RTEMS.IO_WRITE( 
1409               MAJOR,
1410               MINOR,
1411               ADDRESS_1,
1412               STATUS
1413            );
1414         end loop;
1415      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1416
1417      TIME_TEST_SUPPORT.PUT_TIME( 
1418         "IO_WRITE",
1419         TMTEST.END_TIME, 
1420         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1421         OVERHEAD,
1422         0
1423      );
1424
1425-- IO_CONTROL
1426
1427      TIMER_DRIVER.INITIALIZE;
1428         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1429         loop
1430            DUMMY_RTEMS.IO_CONTROL( 
1431               MAJOR,
1432               MINOR,
1433               ADDRESS_1,
1434               STATUS
1435            );
1436         end loop;
1437      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1438
1439      TIME_TEST_SUPPORT.PUT_TIME( 
1440         "IO_CONTROL",
1441         TMTEST.END_TIME, 
1442         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1443         OVERHEAD,
1444         0
1445      );
1446
1447-- FATAL_ERROR_OCCURRED
1448
1449      TIMER_DRIVER.INITIALIZE;
1450         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1451         loop
1452            DUMMY_RTEMS.FATAL_ERROR_OCCURRED( ERROR );
1453         end loop;
1454      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1455
1456      TIME_TEST_SUPPORT.PUT_TIME( 
1457         "FATAL_ERROR_OCCURRED",
1458         TMTEST.END_TIME, 
1459         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1460         OVERHEAD,
1461         0
1462      );
1463
1464-- RATE_MONOTONIC_CREATE
1465
1466      TIMER_DRIVER.INITIALIZE;
1467         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1468         loop
1469            DUMMY_RTEMS.RATE_MONOTONIC_CREATE( NAME, ID, STATUS );
1470         end loop;
1471      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1472
1473      TIME_TEST_SUPPORT.PUT_TIME( 
1474         "RATE_MONOTONIC_CREATE",
1475         TMTEST.END_TIME, 
1476         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1477         OVERHEAD,
1478         0
1479      );
1480
1481-- RATE_MONOTONIC_IDENT
1482
1483      TIMER_DRIVER.INITIALIZE;
1484         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1485         loop
1486            DUMMY_RTEMS.RATE_MONOTONIC_IDENT(
1487               NAME,
1488               ID,
1489               STATUS
1490            );
1491         end loop;
1492      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1493
1494      TIME_TEST_SUPPORT.PUT_TIME( 
1495         "RATE_MONOTONIC_IDENT",
1496         TMTEST.END_TIME, 
1497         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1498         OVERHEAD,
1499         0
1500      );
1501
1502-- RATE_MONOTONIC_DELETE
1503
1504      TIMER_DRIVER.INITIALIZE;
1505         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1506         loop
1507            DUMMY_RTEMS.RATE_MONOTONIC_DELETE( ID, STATUS );
1508         end loop;
1509      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1510
1511      TIME_TEST_SUPPORT.PUT_TIME( 
1512         "RATE_MONOTONIC_DELETE",
1513         TMTEST.END_TIME, 
1514         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1515         OVERHEAD,
1516         0
1517      );
1518
1519-- RATE_MONOTONIC_CANCEL
1520
1521      TIMER_DRIVER.INITIALIZE;
1522         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1523         loop
1524            DUMMY_RTEMS.RATE_MONOTONIC_CANCEL( ID, STATUS );
1525         end loop;
1526      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1527
1528      TIME_TEST_SUPPORT.PUT_TIME( 
1529         "RATE_MONOTONIC_CANCEL",
1530         TMTEST.END_TIME, 
1531         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1532         OVERHEAD,
1533         0
1534      );
1535
1536-- RATE_MONOTONIC_PERIOD
1537
1538      TIMER_DRIVER.INITIALIZE;
1539         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1540         loop
1541            DUMMY_RTEMS.RATE_MONOTONIC_PERIOD( ID, TIMEOUT, STATUS );
1542         end loop;
1543      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1544
1545      TIME_TEST_SUPPORT.PUT_TIME( 
1546         "RATE_MONOTONIC_PERIOD",
1547         TMTEST.END_TIME, 
1548         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1549         OVERHEAD,
1550         0
1551      );
1552
1553-- MULTIPROCESSING_ANNOUNCE
1554
1555      TIMER_DRIVER.INITIALIZE;
1556         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1557         loop
1558            DUMMY_RTEMS.MULTIPROCESSING_ANNOUNCE;
1559         end loop;
1560      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1561
1562      TIME_TEST_SUPPORT.PUT_TIME( 
1563         "MULTIPROCESSING_ANNOUNCE",
1564         TMTEST.END_TIME, 
1565         TIME_TEST_SUPPORT.OPERATION_COUNT, 
1566         OVERHEAD,
1567         0
1568      );
1569
1570      RTEMS.SHUTDOWN_EXECUTIVE( 0 );
1571   
1572   end TASK_1;
1573
1574end TMTEST;
Note: See TracBrowser for help on using the repository browser.