source: rtems/c/src/ada-tests/tmtests/tmoverhd/tmtest.adb @ 8ed37e3c

4.104.114.84.95
Last change on this file since 8ed37e3c was 8ed37e3c, checked in by Joel Sherrill <joel.sherrill@…>, on 06/03/97 at 22:47:47

corrected to compile with the new binding.

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