source: rtems/testsuites/ada/sptests/sp19/sptest.adb

Last change on this file was 3d8f2a55, checked in by Joel Sherrill <joel@…>, on 04/06/22 at 21:37:41

testsuites/ada/sptests/sp1*: Change license to BSD-2

Updates #3053.

  • Property mode set to 100644
File size: 90.9 KB
Line 
1-- SPDX-License-Identifier: BSD-2-Clause
2
3--
4--  SPTEST / BODY
5--
6--  DESCRIPTION:
7--
8--  This package is the implementation of Test 19 of the RTEMS
9--  Single Processor Test Suite.
10--
11--  DEPENDENCIES:
12--
13-- 
14--
15--  COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
16--  On-Line Applications Research Corporation (OAR).
17--
18
19with INTERFACES; use INTERFACES;
20with FLOAT_IO;
21with TEST_SUPPORT;
22with TEXT_IO;
23with UNSIGNED32_IO;
24with RTEMS.CLOCK;
25
26--
27--  fp.inc
28--
29--  Macros to produce a large number of LOCAL floating point variables.  This
30--  preprocessing is necessary to insure that the variables are
31--  scoped properly and to avoid duplicating hundreds of lines
32--  of code.
33--
34--
35-- DEFICIENCIES: 
36--
37-- 1.  This currently does not address whether or not the CPU
38--     actually has hardware floating point.  It just does the work.
39--
40--  COPYRIGHT (c) 1989-1997.
41--  On-Line Applications Research Corporation (OAR).
42--
43--  Redistribution and use in source and binary forms, with or without
44--  modification, are permitted provided that the following conditions
45--  are met:
46--  1. Redistributions of source code must retain the above copyright
47--     notice, this list of conditions and the following disclaimer.
48--  2. Redistributions in binary form must reproduce the above copyright
49--     notice, this list of conditions and the following disclaimer in the
50--     documentation and/or other materials provided with the distribution.
51--
52--  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
53--  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
54--  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
55--  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
56--  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
57--  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
58--  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
59--  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
60--  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
61--  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
62--  POSSIBILITY OF SUCH DAMAGE.
63
64--
65-- private definitions for macro use
66--
67
68-- macro usage EPSILON()
69
70
71-- macro usage FP_CHECK_ONE( value, base, factor )
72
73
74-- macro usage FP_DECLARE
75
76
77
78-- macro usage FP_LOAD( factor )
79
80
81-- macro usage FP_CHECK( factor )
82
83
84--
85--  integer.inc
86--
87--  Macros to produce a large number of LOCAL integer variables.  This
88--  preprocessing is necessary to insure that the variables are
89--  scoped properly and to avoid duplicating hundreds of lines
90--  of code.
91--
92--  COPYRIGHT (c) 1989-1997.
93--  On-Line Applications Research Corporation (OAR).
94--
95--  Redistribution and use in source and binary forms, with or without
96--  modification, are permitted provided that the following conditions
97--  are met:
98--  1. Redistributions of source code must retain the above copyright
99--     notice, this list of conditions and the following disclaimer.
100--  2. Redistributions in binary form must reproduce the above copyright
101--     notice, this list of conditions and the following disclaimer in the
102--     documentation and/or other materials provided with the distribution.
103--
104--  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
105--  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
106--  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
107--  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
108--  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
109--  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
110--  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
111--  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
112--  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
113--  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
114--  POSSIBILITY OF SUCH DAMAGE.
115
116--
117-- private definitions for macro use
118--
119
120-- macro usage INTEGER_CHECK_ONE( value, base, factor )
121
122
123-- macro usage INTEGER_DECLARE
124
125
126
127-- macro usage INTEGER_LOAD( factor )
128
129
130-- macro usage INTEGER_CHECK( factor )
131
132
133
134package body SPTEST is
135
136--
137--  INIT
138--
139
140   procedure INIT (
141      ARGUMENT : in     RTEMS.TASKS.ARGUMENT
142   ) is
143      pragma Unreferenced(ARGUMENT);
144      STATUS : RTEMS.STATUS_CODES;
145   begin
146
147      TEXT_IO.NEW_LINE( 2 );
148      TEST_SUPPORT.ADA_TEST_BEGIN;
149
150      SPTEST.TASK_NAME( 1 ) := RTEMS.BUILD_NAME(  'T', 'A', '1', ' ' );
151      SPTEST.TASK_NAME( 2 ) := RTEMS.BUILD_NAME(  'T', 'A', '2', ' ' );
152      SPTEST.TASK_NAME( 3 ) := RTEMS.BUILD_NAME(  'T', 'A', '3', ' ' );
153      SPTEST.TASK_NAME( 4 ) := RTEMS.BUILD_NAME(  'T', 'A', '4', ' ' );
154      SPTEST.TASK_NAME( 5 ) := RTEMS.BUILD_NAME(  'T', 'A', '5', ' ' );
155      SPTEST.TASK_NAME( 6 ) := RTEMS.BUILD_NAME(  'F', 'P', '1', ' ' );
156
157      RTEMS.TASKS.CREATE(
158         SPTEST.TASK_NAME( 1 ),
159         2,
160         2048,
161         RTEMS.DEFAULT_MODES,
162         RTEMS.FLOATING_POINT,
163         SPTEST.TASK_ID( 1 ),
164         STATUS
165      );
166      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA1" );
167
168      RTEMS.TASKS.CREATE(
169         SPTEST.TASK_NAME( 2 ),
170         2,
171         2048,
172         RTEMS.DEFAULT_MODES,
173         RTEMS.FLOATING_POINT,
174         SPTEST.TASK_ID( 2 ),
175         STATUS
176      );
177      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA2" );
178
179      RTEMS.TASKS.CREATE(
180         SPTEST.TASK_NAME( 3 ),
181         2,
182         2048,
183         RTEMS.DEFAULT_MODES,
184         RTEMS.FLOATING_POINT,
185         SPTEST.TASK_ID( 3 ),
186         STATUS
187      );
188      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA3" );
189
190      RTEMS.TASKS.CREATE(
191         SPTEST.TASK_NAME( 4 ),
192         2,
193         2048,
194         RTEMS.DEFAULT_MODES,
195         RTEMS.FLOATING_POINT,
196         SPTEST.TASK_ID( 4 ),
197         STATUS
198      );
199      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA4" );
200
201      RTEMS.TASKS.CREATE(
202         SPTEST.TASK_NAME( 5 ),
203         2,
204         2048,
205         RTEMS.DEFAULT_MODES,
206         RTEMS.FLOATING_POINT,
207         SPTEST.TASK_ID( 5 ),
208         STATUS
209      );
210      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA5" );
211
212      RTEMS.TASKS.CREATE(
213         SPTEST.TASK_NAME( 6 ),
214         1,
215         2048,
216         RTEMS.DEFAULT_MODES,
217         RTEMS.FLOATING_POINT,
218         SPTEST.TASK_ID( 6 ),
219         STATUS
220      );
221      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF FP1" );
222
223      RTEMS.TASKS.START(
224         SPTEST.TASK_ID( 6 ),
225         SPTEST.FIRST_FP_TASK'ACCESS,
226         0,
227         STATUS
228      );
229      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF FP1" );
230
231      RTEMS.TASKS.START(
232         SPTEST.TASK_ID( 1 ),
233         SPTEST.TASK_1'ACCESS,
234         0,
235         STATUS
236      );
237      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TA1" );
238
239      RTEMS.TASKS.START(
240         SPTEST.TASK_ID( 2 ),
241         SPTEST.TASK_1'ACCESS,
242         0,
243         STATUS
244      );
245      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TA2" );
246
247      RTEMS.TASKS.START(
248         SPTEST.TASK_ID( 3 ),
249         SPTEST.TASK_1'ACCESS,
250         0,
251         STATUS
252      );
253      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TA3" );
254
255      RTEMS.TASKS.START(
256         SPTEST.TASK_ID( 4 ),
257         SPTEST.FP_TASK'ACCESS,
258         0,
259         STATUS
260      );
261      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TA4" );
262
263      RTEMS.TASKS.START(
264         SPTEST.TASK_ID( 5 ),
265         SPTEST.FP_TASK'ACCESS,
266         0,
267         STATUS
268      );
269      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TA5" );
270
271      --
272      --  Load "task dependent factors" in the context areas
273      --
274
275      SPTEST.FP_FACTORS( 0 ) :=    0.0;
276      SPTEST.FP_FACTORS( 1 ) := 1000.1;
277      SPTEST.FP_FACTORS( 2 ) := 2000.2;
278      SPTEST.FP_FACTORS( 3 ) := 3000.3;
279      SPTEST.FP_FACTORS( 4 ) := 4000.4;
280      SPTEST.FP_FACTORS( 5 ) := 5000.5;
281      SPTEST.FP_FACTORS( 6 ) := 6000.6;
282      SPTEST.FP_FACTORS( 7 ) := 7000.7;
283      SPTEST.FP_FACTORS( 8 ) := 8000.8;
284      SPTEST.FP_FACTORS( 9 ) := 9000.9;
285
286      SPTEST.INTEGER_FACTORS( 0 ) := 16#0000#;
287      SPTEST.INTEGER_FACTORS( 1 ) := 16#1000#;
288      SPTEST.INTEGER_FACTORS( 2 ) := 16#2000#;
289      SPTEST.INTEGER_FACTORS( 3 ) := 16#3000#;
290      SPTEST.INTEGER_FACTORS( 4 ) := 16#4000#;
291      SPTEST.INTEGER_FACTORS( 5 ) := 16#5000#;
292      SPTEST.INTEGER_FACTORS( 6 ) := 16#6000#;
293      SPTEST.INTEGER_FACTORS( 7 ) := 16#7000#;
294      SPTEST.INTEGER_FACTORS( 8 ) := 16#8000#;
295      SPTEST.INTEGER_FACTORS( 9 ) := 16#9000#;
296
297      RTEMS.TASKS.DELETE( RTEMS.SELF, STATUS );
298      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" );
299
300   end INIT;
301
302--
303--  FIRST_FP_TASK
304--
305
306   procedure FIRST_FP_TASK (
307      ARGUMENT : in     RTEMS.TASKS.ARGUMENT
308   ) is
309      STATUS     : RTEMS.STATUS_CODES;
310      TID        : RTEMS.ID;
311      TIME       : RTEMS.TIME_OF_DAY;
312      TASK_INDEX : RTEMS.UNSIGNED32;
313     
314  INT01 : RTEMS.UNSIGNED32 :=  1;
315  INT02 : RTEMS.UNSIGNED32 :=  2;
316  INT03 : RTEMS.UNSIGNED32 :=  3;
317  INT04 : RTEMS.UNSIGNED32 :=  4;
318  INT05 : RTEMS.UNSIGNED32 :=  5;
319  INT06 : RTEMS.UNSIGNED32 :=  6;
320  INT07 : RTEMS.UNSIGNED32 :=  7;
321  INT08 : RTEMS.UNSIGNED32 :=  8;
322  INT09 : RTEMS.UNSIGNED32 :=  9;
323  INT10 : RTEMS.UNSIGNED32 := 10;
324  INT11 : RTEMS.UNSIGNED32 := 11;
325  INT12 : RTEMS.UNSIGNED32 := 12;
326  INT13 : RTEMS.UNSIGNED32 := 13;
327  INT14 : RTEMS.UNSIGNED32 := 14;
328  INT15 : RTEMS.UNSIGNED32 := 15;
329  INT16 : RTEMS.UNSIGNED32 := 16;
330  INT17 : RTEMS.UNSIGNED32 := 17;
331  INT18 : RTEMS.UNSIGNED32 := 18;
332  INT19 : RTEMS.UNSIGNED32 := 19;
333  INT20 : RTEMS.UNSIGNED32 := 20;
334  INT21 : RTEMS.UNSIGNED32 := 21;
335  INT22 : RTEMS.UNSIGNED32 := 22;
336  INT23 : RTEMS.UNSIGNED32 := 23;
337  INT24 : RTEMS.UNSIGNED32 := 24;
338  INT25 : RTEMS.UNSIGNED32 := 25;
339  INT26 : RTEMS.UNSIGNED32 := 26;
340  INT27 : RTEMS.UNSIGNED32 := 27;
341  INT28 : RTEMS.UNSIGNED32 := 28;
342  INT29 : RTEMS.UNSIGNED32 := 29;
343  INT30 : RTEMS.UNSIGNED32 := 30;
344  INT31 : RTEMS.UNSIGNED32 := 31;
345  INT32 : RTEMS.UNSIGNED32 := 32
346
347;
348     
349  FP01 : FLOAT :=  1.0;
350  FP02 : FLOAT :=  2.0;
351  FP03 : FLOAT :=  3.0;
352  FP04 : FLOAT :=  4.0;
353  FP05 : FLOAT :=  5.0;
354  FP06 : FLOAT :=  6.0;
355  FP07 : FLOAT :=  7.0;
356  FP08 : FLOAT :=  8.0;
357  FP09 : FLOAT :=  9.0;
358  FP10 : FLOAT := 10.0;
359  FP11 : FLOAT := 11.0;
360  FP12 : FLOAT := 12.0;
361  FP13 : FLOAT := 13.0;
362  FP14 : FLOAT := 14.0;
363  FP15 : FLOAT := 15.0;
364  FP16 : FLOAT := 16.0;
365  FP17 : FLOAT := 17.0;
366  FP18 : FLOAT := 18.0;
367  FP19 : FLOAT := 19.0;
368  FP20 : FLOAT := 20.0;
369  FP21 : FLOAT := 21.0;
370  FP22 : FLOAT := 22.0;
371  FP23 : FLOAT := 23.0;
372  FP24 : FLOAT := 24.0;
373  FP25 : FLOAT := 25.0;
374  FP26 : FLOAT := 26.0;
375  FP27 : FLOAT := 27.0;
376  FP28 : FLOAT := 28.0;
377  FP29 : FLOAT := 29.0;
378  FP30 : FLOAT := 30.0;
379  FP31 : FLOAT := 31.0;
380  FP32 : FLOAT := 32.0
381
382;
383   begin
384
385      RTEMS.TASKS.IDENT( RTEMS.SELF, RTEMS.SEARCH_ALL_NODES, TID, STATUS );
386      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_IDENT OF SELF" );
387
388      TASK_INDEX := TEST_SUPPORT.TASK_NUMBER( TID );
389   
390     
391  INT01 := INT01 + INTEGER_FACTORS( TASK_INDEX ) ;
392  INT02 := INT02 + INTEGER_FACTORS( TASK_INDEX ) ;
393  INT03 := INT03 + INTEGER_FACTORS( TASK_INDEX ) ;
394  INT04 := INT04 + INTEGER_FACTORS( TASK_INDEX ) ;
395  INT05 := INT05 + INTEGER_FACTORS( TASK_INDEX ) ;
396  INT06 := INT06 + INTEGER_FACTORS( TASK_INDEX ) ;
397  INT07 := INT07 + INTEGER_FACTORS( TASK_INDEX ) ;
398  INT08 := INT08 + INTEGER_FACTORS( TASK_INDEX ) ;
399  INT09 := INT09 + INTEGER_FACTORS( TASK_INDEX ) ;
400  INT10 := INT10 + INTEGER_FACTORS( TASK_INDEX ) ;
401  INT11 := INT11 + INTEGER_FACTORS( TASK_INDEX ) ;
402  INT12 := INT12 + INTEGER_FACTORS( TASK_INDEX ) ;
403  INT13 := INT13 + INTEGER_FACTORS( TASK_INDEX ) ;
404  INT14 := INT14 + INTEGER_FACTORS( TASK_INDEX ) ;
405  INT15 := INT15 + INTEGER_FACTORS( TASK_INDEX ) ;
406  INT16 := INT16 + INTEGER_FACTORS( TASK_INDEX ) ;
407  INT17 := INT17 + INTEGER_FACTORS( TASK_INDEX ) ;
408  INT18 := INT18 + INTEGER_FACTORS( TASK_INDEX ) ;
409  INT19 := INT19 + INTEGER_FACTORS( TASK_INDEX ) ;
410  INT20 := INT20 + INTEGER_FACTORS( TASK_INDEX ) ;
411  INT21 := INT21 + INTEGER_FACTORS( TASK_INDEX ) ;
412  INT22 := INT22 + INTEGER_FACTORS( TASK_INDEX ) ;
413  INT23 := INT23 + INTEGER_FACTORS( TASK_INDEX ) ;
414  INT24 := INT24 + INTEGER_FACTORS( TASK_INDEX ) ;
415  INT25 := INT25 + INTEGER_FACTORS( TASK_INDEX ) ;
416  INT26 := INT26 + INTEGER_FACTORS( TASK_INDEX ) ;
417  INT27 := INT27 + INTEGER_FACTORS( TASK_INDEX ) ;
418  INT28 := INT28 + INTEGER_FACTORS( TASK_INDEX ) ;
419  INT29 := INT29 + INTEGER_FACTORS( TASK_INDEX ) ;
420  INT30 := INT30 + INTEGER_FACTORS( TASK_INDEX ) ;
421  INT31 := INT31 + INTEGER_FACTORS( TASK_INDEX ) ;
422  INT32 := INT32 + INTEGER_FACTORS( TASK_INDEX )
423;
424     
425  FP01 := FP01 + FP_FACTORS( TASK_INDEX ) ;
426  FP02 := FP02 + FP_FACTORS( TASK_INDEX ) ;
427  FP03 := FP03 + FP_FACTORS( TASK_INDEX ) ;
428  FP04 := FP04 + FP_FACTORS( TASK_INDEX ) ;
429  FP05 := FP05 + FP_FACTORS( TASK_INDEX ) ;
430  FP06 := FP06 + FP_FACTORS( TASK_INDEX ) ;
431  FP07 := FP07 + FP_FACTORS( TASK_INDEX ) ;
432  FP08 := FP08 + FP_FACTORS( TASK_INDEX ) ;
433  FP09 := FP09 + FP_FACTORS( TASK_INDEX ) ;
434  FP10 := FP10 + FP_FACTORS( TASK_INDEX ) ;
435  FP11 := FP11 + FP_FACTORS( TASK_INDEX ) ;
436  FP12 := FP12 + FP_FACTORS( TASK_INDEX ) ;
437  FP13 := FP13 + FP_FACTORS( TASK_INDEX ) ;
438  FP14 := FP14 + FP_FACTORS( TASK_INDEX ) ;
439  FP15 := FP15 + FP_FACTORS( TASK_INDEX ) ;
440  FP16 := FP16 + FP_FACTORS( TASK_INDEX ) ;
441  FP17 := FP17 + FP_FACTORS( TASK_INDEX ) ;
442  FP18 := FP18 + FP_FACTORS( TASK_INDEX ) ;
443  FP19 := FP19 + FP_FACTORS( TASK_INDEX ) ;
444  FP20 := FP20 + FP_FACTORS( TASK_INDEX ) ;
445  FP21 := FP21 + FP_FACTORS( TASK_INDEX ) ;
446  FP22 := FP22 + FP_FACTORS( TASK_INDEX ) ;
447  FP23 := FP23 + FP_FACTORS( TASK_INDEX ) ;
448  FP24 := FP24 + FP_FACTORS( TASK_INDEX ) ;
449  FP25 := FP25 + FP_FACTORS( TASK_INDEX ) ;
450  FP26 := FP26 + FP_FACTORS( TASK_INDEX ) ;
451  FP27 := FP27 + FP_FACTORS( TASK_INDEX ) ;
452  FP28 := FP28 + FP_FACTORS( TASK_INDEX ) ;
453  FP29 := FP29 + FP_FACTORS( TASK_INDEX ) ;
454  FP30 := FP30 + FP_FACTORS( TASK_INDEX ) ;
455  FP31 := FP31 + FP_FACTORS( TASK_INDEX ) ;
456  FP32 := FP32 + FP_FACTORS( TASK_INDEX )
457;
458
459      TEST_SUPPORT.PUT_NAME( SPTEST.TASK_NAME( TASK_INDEX ), FALSE );
460      TEXT_IO.PUT( " - integer base = (" );
461      UNSIGNED32_IO.PUT( INTEGER_FACTORS( TASK_INDEX ), BASE => 16 );
462      TEXT_IO.PUT_LINE( ")" );
463
464      --
465      --  C implementation prints NA if no hardware FP support.
466      --
467
468      TEST_SUPPORT.PUT_NAME(
469         SPTEST.TASK_NAME( TEST_SUPPORT.TASK_NUMBER( TID ) ),
470         FALSE
471      );
472      TEXT_IO.PUT( " - float base = (" );
473      FLOAT_IO.PUT( FP_FACTORS( TASK_INDEX ) );
474      TEXT_IO.PUT_LINE( ")" );
475
476     
477 
478  if ( FP01 - ( 1.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP01 - ( 1.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
479     UNSIGNED32_IO.PUT( TASK_INDEX );
480     TEXT_IO.PUT( ": FP01 wrong -- (" );
481     FLOAT_IO.PUT( FP01 );
482     TEXT_IO.PUT( " not " );
483     FLOAT_IO.PUT( 1.0 + FP_FACTORS( TASK_INDEX )   );
484     TEXT_IO.PUT_LINE( ")" );
485  end if
486
487;
488 
489  if ( FP02 - ( 2.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP02 - ( 2.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
490     UNSIGNED32_IO.PUT( TASK_INDEX );
491     TEXT_IO.PUT( ": FP02 wrong -- (" );
492     FLOAT_IO.PUT( FP02 );
493     TEXT_IO.PUT( " not " );
494     FLOAT_IO.PUT( 2.0 + FP_FACTORS( TASK_INDEX )   );
495     TEXT_IO.PUT_LINE( ")" );
496  end if
497
498;
499 
500  if ( FP03 - ( 3.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP03 - ( 3.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
501     UNSIGNED32_IO.PUT( TASK_INDEX );
502     TEXT_IO.PUT( ": FP03 wrong -- (" );
503     FLOAT_IO.PUT( FP03 );
504     TEXT_IO.PUT( " not " );
505     FLOAT_IO.PUT( 3.0 + FP_FACTORS( TASK_INDEX )   );
506     TEXT_IO.PUT_LINE( ")" );
507  end if
508
509;
510 
511  if ( FP04 - ( 4.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP04 - ( 4.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
512     UNSIGNED32_IO.PUT( TASK_INDEX );
513     TEXT_IO.PUT( ": FP04 wrong -- (" );
514     FLOAT_IO.PUT( FP04 );
515     TEXT_IO.PUT( " not " );
516     FLOAT_IO.PUT( 4.0 + FP_FACTORS( TASK_INDEX )   );
517     TEXT_IO.PUT_LINE( ")" );
518  end if
519
520;
521 
522  if ( FP05 - ( 5.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP05 - ( 5.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
523     UNSIGNED32_IO.PUT( TASK_INDEX );
524     TEXT_IO.PUT( ": FP05 wrong -- (" );
525     FLOAT_IO.PUT( FP05 );
526     TEXT_IO.PUT( " not " );
527     FLOAT_IO.PUT( 5.0 + FP_FACTORS( TASK_INDEX )   );
528     TEXT_IO.PUT_LINE( ")" );
529  end if
530
531;
532 
533  if ( FP06 - ( 6.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP06 - ( 6.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
534     UNSIGNED32_IO.PUT( TASK_INDEX );
535     TEXT_IO.PUT( ": FP06 wrong -- (" );
536     FLOAT_IO.PUT( FP06 );
537     TEXT_IO.PUT( " not " );
538     FLOAT_IO.PUT( 6.0 + FP_FACTORS( TASK_INDEX )   );
539     TEXT_IO.PUT_LINE( ")" );
540  end if
541
542;
543 
544  if ( FP07 - ( 7.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP07 - ( 7.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
545     UNSIGNED32_IO.PUT( TASK_INDEX );
546     TEXT_IO.PUT( ": FP07 wrong -- (" );
547     FLOAT_IO.PUT( FP07 );
548     TEXT_IO.PUT( " not " );
549     FLOAT_IO.PUT( 7.0 + FP_FACTORS( TASK_INDEX )   );
550     TEXT_IO.PUT_LINE( ")" );
551  end if
552
553;
554 
555  if ( FP08 - ( 8.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP08 - ( 8.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
556     UNSIGNED32_IO.PUT( TASK_INDEX );
557     TEXT_IO.PUT( ": FP08 wrong -- (" );
558     FLOAT_IO.PUT( FP08 );
559     TEXT_IO.PUT( " not " );
560     FLOAT_IO.PUT( 8.0 + FP_FACTORS( TASK_INDEX )   );
561     TEXT_IO.PUT_LINE( ")" );
562  end if
563
564;
565 
566  if ( FP09 - ( 9.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP09 - ( 9.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
567     UNSIGNED32_IO.PUT( TASK_INDEX );
568     TEXT_IO.PUT( ": FP09 wrong -- (" );
569     FLOAT_IO.PUT( FP09 );
570     TEXT_IO.PUT( " not " );
571     FLOAT_IO.PUT( 9.0 + FP_FACTORS( TASK_INDEX )   );
572     TEXT_IO.PUT_LINE( ")" );
573  end if
574
575;
576 
577  if ( FP10 - ( 10.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP10 - ( 10.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
578     UNSIGNED32_IO.PUT( TASK_INDEX );
579     TEXT_IO.PUT( ": FP10 wrong -- (" );
580     FLOAT_IO.PUT( FP10 );
581     TEXT_IO.PUT( " not " );
582     FLOAT_IO.PUT( 10.0 + FP_FACTORS( TASK_INDEX )   );
583     TEXT_IO.PUT_LINE( ")" );
584  end if
585
586;
587 
588  if ( FP11 - ( 11.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP11 - ( 11.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
589     UNSIGNED32_IO.PUT( TASK_INDEX );
590     TEXT_IO.PUT( ": FP11 wrong -- (" );
591     FLOAT_IO.PUT( FP11 );
592     TEXT_IO.PUT( " not " );
593     FLOAT_IO.PUT( 11.0 + FP_FACTORS( TASK_INDEX )   );
594     TEXT_IO.PUT_LINE( ")" );
595  end if
596
597;
598 
599  if ( FP12 - ( 12.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP12 - ( 12.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
600     UNSIGNED32_IO.PUT( TASK_INDEX );
601     TEXT_IO.PUT( ": FP12 wrong -- (" );
602     FLOAT_IO.PUT( FP12 );
603     TEXT_IO.PUT( " not " );
604     FLOAT_IO.PUT( 12.0 + FP_FACTORS( TASK_INDEX )   );
605     TEXT_IO.PUT_LINE( ")" );
606  end if
607
608;
609 
610  if ( FP13 - ( 13.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP13 - ( 13.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
611     UNSIGNED32_IO.PUT( TASK_INDEX );
612     TEXT_IO.PUT( ": FP13 wrong -- (" );
613     FLOAT_IO.PUT( FP13 );
614     TEXT_IO.PUT( " not " );
615     FLOAT_IO.PUT( 13.0 + FP_FACTORS( TASK_INDEX )   );
616     TEXT_IO.PUT_LINE( ")" );
617  end if
618
619;
620 
621  if ( FP14 - ( 14.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP14 - ( 14.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
622     UNSIGNED32_IO.PUT( TASK_INDEX );
623     TEXT_IO.PUT( ": FP14 wrong -- (" );
624     FLOAT_IO.PUT( FP14 );
625     TEXT_IO.PUT( " not " );
626     FLOAT_IO.PUT( 14.0 + FP_FACTORS( TASK_INDEX )   );
627     TEXT_IO.PUT_LINE( ")" );
628  end if
629
630;
631 
632  if ( FP15 - ( 15.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP15 - ( 15.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
633     UNSIGNED32_IO.PUT( TASK_INDEX );
634     TEXT_IO.PUT( ": FP15 wrong -- (" );
635     FLOAT_IO.PUT( FP15 );
636     TEXT_IO.PUT( " not " );
637     FLOAT_IO.PUT( 15.0 + FP_FACTORS( TASK_INDEX )   );
638     TEXT_IO.PUT_LINE( ")" );
639  end if
640
641;
642 
643  if ( FP16 - ( 16.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP16 - ( 16.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
644     UNSIGNED32_IO.PUT( TASK_INDEX );
645     TEXT_IO.PUT( ": FP16 wrong -- (" );
646     FLOAT_IO.PUT( FP16 );
647     TEXT_IO.PUT( " not " );
648     FLOAT_IO.PUT( 16.0 + FP_FACTORS( TASK_INDEX )   );
649     TEXT_IO.PUT_LINE( ")" );
650  end if
651
652;
653 
654  if ( FP17 - ( 17.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP17 - ( 17.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
655     UNSIGNED32_IO.PUT( TASK_INDEX );
656     TEXT_IO.PUT( ": FP17 wrong -- (" );
657     FLOAT_IO.PUT( FP17 );
658     TEXT_IO.PUT( " not " );
659     FLOAT_IO.PUT( 17.0 + FP_FACTORS( TASK_INDEX )   );
660     TEXT_IO.PUT_LINE( ")" );
661  end if
662
663;
664 
665  if ( FP18 - ( 18.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP18 - ( 18.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
666     UNSIGNED32_IO.PUT( TASK_INDEX );
667     TEXT_IO.PUT( ": FP18 wrong -- (" );
668     FLOAT_IO.PUT( FP18 );
669     TEXT_IO.PUT( " not " );
670     FLOAT_IO.PUT( 18.0 + FP_FACTORS( TASK_INDEX )   );
671     TEXT_IO.PUT_LINE( ")" );
672  end if
673
674;
675 
676  if ( FP19 - ( 19.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP19 - ( 19.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
677     UNSIGNED32_IO.PUT( TASK_INDEX );
678     TEXT_IO.PUT( ": FP19 wrong -- (" );
679     FLOAT_IO.PUT( FP19 );
680     TEXT_IO.PUT( " not " );
681     FLOAT_IO.PUT( 19.0 + FP_FACTORS( TASK_INDEX )   );
682     TEXT_IO.PUT_LINE( ")" );
683  end if
684
685;
686 
687  if ( FP20 - ( 20.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP20 - ( 20.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
688     UNSIGNED32_IO.PUT( TASK_INDEX );
689     TEXT_IO.PUT( ": FP20 wrong -- (" );
690     FLOAT_IO.PUT( FP20 );
691     TEXT_IO.PUT( " not " );
692     FLOAT_IO.PUT( 20.0 + FP_FACTORS( TASK_INDEX )   );
693     TEXT_IO.PUT_LINE( ")" );
694  end if
695
696;
697 
698  if ( FP21 - ( 21.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP21 - ( 21.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
699     UNSIGNED32_IO.PUT( TASK_INDEX );
700     TEXT_IO.PUT( ": FP21 wrong -- (" );
701     FLOAT_IO.PUT( FP21 );
702     TEXT_IO.PUT( " not " );
703     FLOAT_IO.PUT( 21.0 + FP_FACTORS( TASK_INDEX )   );
704     TEXT_IO.PUT_LINE( ")" );
705  end if
706
707;
708 
709  if ( FP22 - ( 22.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP22 - ( 22.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
710     UNSIGNED32_IO.PUT( TASK_INDEX );
711     TEXT_IO.PUT( ": FP22 wrong -- (" );
712     FLOAT_IO.PUT( FP22 );
713     TEXT_IO.PUT( " not " );
714     FLOAT_IO.PUT( 22.0 + FP_FACTORS( TASK_INDEX )   );
715     TEXT_IO.PUT_LINE( ")" );
716  end if
717
718;
719 
720  if ( FP23 - ( 23.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP23 - ( 23.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
721     UNSIGNED32_IO.PUT( TASK_INDEX );
722     TEXT_IO.PUT( ": FP23 wrong -- (" );
723     FLOAT_IO.PUT( FP23 );
724     TEXT_IO.PUT( " not " );
725     FLOAT_IO.PUT( 23.0 + FP_FACTORS( TASK_INDEX )   );
726     TEXT_IO.PUT_LINE( ")" );
727  end if
728
729;
730 
731  if ( FP24 - ( 24.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP24 - ( 24.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
732     UNSIGNED32_IO.PUT( TASK_INDEX );
733     TEXT_IO.PUT( ": FP24 wrong -- (" );
734     FLOAT_IO.PUT( FP24 );
735     TEXT_IO.PUT( " not " );
736     FLOAT_IO.PUT( 24.0 + FP_FACTORS( TASK_INDEX )   );
737     TEXT_IO.PUT_LINE( ")" );
738  end if
739
740;
741 
742  if ( FP25 - ( 25.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP25 - ( 25.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
743     UNSIGNED32_IO.PUT( TASK_INDEX );
744     TEXT_IO.PUT( ": FP25 wrong -- (" );
745     FLOAT_IO.PUT( FP25 );
746     TEXT_IO.PUT( " not " );
747     FLOAT_IO.PUT( 25.0 + FP_FACTORS( TASK_INDEX )   );
748     TEXT_IO.PUT_LINE( ")" );
749  end if
750
751;
752 
753  if ( FP26 - ( 26.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP26 - ( 26.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
754     UNSIGNED32_IO.PUT( TASK_INDEX );
755     TEXT_IO.PUT( ": FP26 wrong -- (" );
756     FLOAT_IO.PUT( FP26 );
757     TEXT_IO.PUT( " not " );
758     FLOAT_IO.PUT( 26.0 + FP_FACTORS( TASK_INDEX )   );
759     TEXT_IO.PUT_LINE( ")" );
760  end if
761
762;
763 
764  if ( FP27 - ( 27.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP27 - ( 27.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
765     UNSIGNED32_IO.PUT( TASK_INDEX );
766     TEXT_IO.PUT( ": FP27 wrong -- (" );
767     FLOAT_IO.PUT( FP27 );
768     TEXT_IO.PUT( " not " );
769     FLOAT_IO.PUT( 27.0 + FP_FACTORS( TASK_INDEX )   );
770     TEXT_IO.PUT_LINE( ")" );
771  end if
772
773;
774 
775  if ( FP28 - ( 28.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP28 - ( 28.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
776     UNSIGNED32_IO.PUT( TASK_INDEX );
777     TEXT_IO.PUT( ": FP28 wrong -- (" );
778     FLOAT_IO.PUT( FP28 );
779     TEXT_IO.PUT( " not " );
780     FLOAT_IO.PUT( 28.0 + FP_FACTORS( TASK_INDEX )   );
781     TEXT_IO.PUT_LINE( ")" );
782  end if
783
784;
785 
786  if ( FP29 - ( 29.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP29 - ( 29.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
787     UNSIGNED32_IO.PUT( TASK_INDEX );
788     TEXT_IO.PUT( ": FP29 wrong -- (" );
789     FLOAT_IO.PUT( FP29 );
790     TEXT_IO.PUT( " not " );
791     FLOAT_IO.PUT( 29.0 + FP_FACTORS( TASK_INDEX )   );
792     TEXT_IO.PUT_LINE( ")" );
793  end if
794
795;
796 
797  if ( FP30 - ( 30.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP30 - ( 30.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
798     UNSIGNED32_IO.PUT( TASK_INDEX );
799     TEXT_IO.PUT( ": FP30 wrong -- (" );
800     FLOAT_IO.PUT( FP30 );
801     TEXT_IO.PUT( " not " );
802     FLOAT_IO.PUT( 30.0 + FP_FACTORS( TASK_INDEX )   );
803     TEXT_IO.PUT_LINE( ")" );
804  end if
805
806;
807 
808  if ( FP31 - ( 31.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP31 - ( 31.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
809     UNSIGNED32_IO.PUT( TASK_INDEX );
810     TEXT_IO.PUT( ": FP31 wrong -- (" );
811     FLOAT_IO.PUT( FP31 );
812     TEXT_IO.PUT( " not " );
813     FLOAT_IO.PUT( 31.0 + FP_FACTORS( TASK_INDEX )   );
814     TEXT_IO.PUT_LINE( ")" );
815  end if
816
817;
818 
819  if ( FP32 - ( 32.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP32 - ( 32.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
820     UNSIGNED32_IO.PUT( TASK_INDEX );
821     TEXT_IO.PUT( ": FP32 wrong -- (" );
822     FLOAT_IO.PUT( FP32 );
823     TEXT_IO.PUT( " not " );
824     FLOAT_IO.PUT( 32.0 + FP_FACTORS( TASK_INDEX )   );
825     TEXT_IO.PUT_LINE( ")" );
826  end if
827
828
829
830;
831     
832 
833  if INT01 /= (1 + INTEGER_FACTORS( TASK_INDEX )  ) then
834     UNSIGNED32_IO.PUT( TASK_INDEX );
835     TEXT_IO.PUT( ": INT01 wrong -- (" );
836     UNSIGNED32_IO.PUT( INT01, BASE => 16);
837     TEXT_IO.PUT( " not " );
838     UNSIGNED32_IO.PUT( 1, BASE => 16 );
839     TEXT_IO.PUT_LINE( ")" );
840  end if
841
842;
843 
844  if INT02 /= (2 + INTEGER_FACTORS( TASK_INDEX )  ) then
845     UNSIGNED32_IO.PUT( TASK_INDEX );
846     TEXT_IO.PUT( ": INT02 wrong -- (" );
847     UNSIGNED32_IO.PUT( INT02, BASE => 16);
848     TEXT_IO.PUT( " not " );
849     UNSIGNED32_IO.PUT( 2, BASE => 16 );
850     TEXT_IO.PUT_LINE( ")" );
851  end if
852
853;
854 
855  if INT03 /= (3 + INTEGER_FACTORS( TASK_INDEX )  ) then
856     UNSIGNED32_IO.PUT( TASK_INDEX );
857     TEXT_IO.PUT( ": INT03 wrong -- (" );
858     UNSIGNED32_IO.PUT( INT03, BASE => 16);
859     TEXT_IO.PUT( " not " );
860     UNSIGNED32_IO.PUT( 3, BASE => 16 );
861     TEXT_IO.PUT_LINE( ")" );
862  end if
863
864;
865 
866  if INT04 /= (4 + INTEGER_FACTORS( TASK_INDEX )  ) then
867     UNSIGNED32_IO.PUT( TASK_INDEX );
868     TEXT_IO.PUT( ": INT04 wrong -- (" );
869     UNSIGNED32_IO.PUT( INT04, BASE => 16);
870     TEXT_IO.PUT( " not " );
871     UNSIGNED32_IO.PUT( 4, BASE => 16 );
872     TEXT_IO.PUT_LINE( ")" );
873  end if
874
875;
876 
877  if INT05 /= (5 + INTEGER_FACTORS( TASK_INDEX )  ) then
878     UNSIGNED32_IO.PUT( TASK_INDEX );
879     TEXT_IO.PUT( ": INT05 wrong -- (" );
880     UNSIGNED32_IO.PUT( INT05, BASE => 16);
881     TEXT_IO.PUT( " not " );
882     UNSIGNED32_IO.PUT( 5, BASE => 16 );
883     TEXT_IO.PUT_LINE( ")" );
884  end if
885
886;
887 
888  if INT06 /= (6 + INTEGER_FACTORS( TASK_INDEX )  ) then
889     UNSIGNED32_IO.PUT( TASK_INDEX );
890     TEXT_IO.PUT( ": INT06 wrong -- (" );
891     UNSIGNED32_IO.PUT( INT06, BASE => 16);
892     TEXT_IO.PUT( " not " );
893     UNSIGNED32_IO.PUT( 6, BASE => 16 );
894     TEXT_IO.PUT_LINE( ")" );
895  end if
896
897;
898 
899  if INT07 /= (7 + INTEGER_FACTORS( TASK_INDEX )  ) then
900     UNSIGNED32_IO.PUT( TASK_INDEX );
901     TEXT_IO.PUT( ": INT07 wrong -- (" );
902     UNSIGNED32_IO.PUT( INT07, BASE => 16);
903     TEXT_IO.PUT( " not " );
904     UNSIGNED32_IO.PUT( 7, BASE => 16 );
905     TEXT_IO.PUT_LINE( ")" );
906  end if
907
908;
909 
910  if INT08 /= (8 + INTEGER_FACTORS( TASK_INDEX )  ) then
911     UNSIGNED32_IO.PUT( TASK_INDEX );
912     TEXT_IO.PUT( ": INT08 wrong -- (" );
913     UNSIGNED32_IO.PUT( INT08, BASE => 16);
914     TEXT_IO.PUT( " not " );
915     UNSIGNED32_IO.PUT( 8, BASE => 16 );
916     TEXT_IO.PUT_LINE( ")" );
917  end if
918
919;
920 
921  if INT09 /= (9 + INTEGER_FACTORS( TASK_INDEX )  ) then
922     UNSIGNED32_IO.PUT( TASK_INDEX );
923     TEXT_IO.PUT( ": INT09 wrong -- (" );
924     UNSIGNED32_IO.PUT( INT09, BASE => 16);
925     TEXT_IO.PUT( " not " );
926     UNSIGNED32_IO.PUT( 9, BASE => 16 );
927     TEXT_IO.PUT_LINE( ")" );
928  end if
929
930;
931 
932  if INT10 /= (10 + INTEGER_FACTORS( TASK_INDEX )  ) then
933     UNSIGNED32_IO.PUT( TASK_INDEX );
934     TEXT_IO.PUT( ": INT10 wrong -- (" );
935     UNSIGNED32_IO.PUT( INT10, BASE => 16);
936     TEXT_IO.PUT( " not " );
937     UNSIGNED32_IO.PUT( 10, BASE => 16 );
938     TEXT_IO.PUT_LINE( ")" );
939  end if
940
941;
942 
943  if INT11 /= (11 + INTEGER_FACTORS( TASK_INDEX )  ) then
944     UNSIGNED32_IO.PUT( TASK_INDEX );
945     TEXT_IO.PUT( ": INT11 wrong -- (" );
946     UNSIGNED32_IO.PUT( INT11, BASE => 16);
947     TEXT_IO.PUT( " not " );
948     UNSIGNED32_IO.PUT( 11, BASE => 16 );
949     TEXT_IO.PUT_LINE( ")" );
950  end if
951
952;
953 
954  if INT12 /= (12 + INTEGER_FACTORS( TASK_INDEX )  ) then
955     UNSIGNED32_IO.PUT( TASK_INDEX );
956     TEXT_IO.PUT( ": INT12 wrong -- (" );
957     UNSIGNED32_IO.PUT( INT12, BASE => 16);
958     TEXT_IO.PUT( " not " );
959     UNSIGNED32_IO.PUT( 12, BASE => 16 );
960     TEXT_IO.PUT_LINE( ")" );
961  end if
962
963;
964 
965  if INT13 /= (13 + INTEGER_FACTORS( TASK_INDEX )  ) then
966     UNSIGNED32_IO.PUT( TASK_INDEX );
967     TEXT_IO.PUT( ": INT13 wrong -- (" );
968     UNSIGNED32_IO.PUT( INT13, BASE => 16);
969     TEXT_IO.PUT( " not " );
970     UNSIGNED32_IO.PUT( 13, BASE => 16 );
971     TEXT_IO.PUT_LINE( ")" );
972  end if
973
974;
975 
976  if INT14 /= (14 + INTEGER_FACTORS( TASK_INDEX )  ) then
977     UNSIGNED32_IO.PUT( TASK_INDEX );
978     TEXT_IO.PUT( ": INT14 wrong -- (" );
979     UNSIGNED32_IO.PUT( INT14, BASE => 16);
980     TEXT_IO.PUT( " not " );
981     UNSIGNED32_IO.PUT( 14, BASE => 16 );
982     TEXT_IO.PUT_LINE( ")" );
983  end if
984
985;
986 
987  if INT15 /= (15 + INTEGER_FACTORS( TASK_INDEX )  ) then
988     UNSIGNED32_IO.PUT( TASK_INDEX );
989     TEXT_IO.PUT( ": INT15 wrong -- (" );
990     UNSIGNED32_IO.PUT( INT15, BASE => 16);
991     TEXT_IO.PUT( " not " );
992     UNSIGNED32_IO.PUT( 15, BASE => 16 );
993     TEXT_IO.PUT_LINE( ")" );
994  end if
995
996;
997 
998  if INT16 /= (16 + INTEGER_FACTORS( TASK_INDEX )  ) then
999     UNSIGNED32_IO.PUT( TASK_INDEX );
1000     TEXT_IO.PUT( ": INT16 wrong -- (" );
1001     UNSIGNED32_IO.PUT( INT16, BASE => 16);
1002     TEXT_IO.PUT( " not " );
1003     UNSIGNED32_IO.PUT( 16, BASE => 16 );
1004     TEXT_IO.PUT_LINE( ")" );
1005  end if
1006
1007;
1008 
1009  if INT17 /= (17 + INTEGER_FACTORS( TASK_INDEX )  ) then
1010     UNSIGNED32_IO.PUT( TASK_INDEX );
1011     TEXT_IO.PUT( ": INT17 wrong -- (" );
1012     UNSIGNED32_IO.PUT( INT17, BASE => 16);
1013     TEXT_IO.PUT( " not " );
1014     UNSIGNED32_IO.PUT( 17, BASE => 16 );
1015     TEXT_IO.PUT_LINE( ")" );
1016  end if
1017
1018;
1019 
1020  if INT18 /= (18 + INTEGER_FACTORS( TASK_INDEX )  ) then
1021     UNSIGNED32_IO.PUT( TASK_INDEX );
1022     TEXT_IO.PUT( ": INT18 wrong -- (" );
1023     UNSIGNED32_IO.PUT( INT18, BASE => 16);
1024     TEXT_IO.PUT( " not " );
1025     UNSIGNED32_IO.PUT( 18, BASE => 16 );
1026     TEXT_IO.PUT_LINE( ")" );
1027  end if
1028
1029;
1030 
1031  if INT19 /= (19 + INTEGER_FACTORS( TASK_INDEX )  ) then
1032     UNSIGNED32_IO.PUT( TASK_INDEX );
1033     TEXT_IO.PUT( ": INT19 wrong -- (" );
1034     UNSIGNED32_IO.PUT( INT19, BASE => 16);
1035     TEXT_IO.PUT( " not " );
1036     UNSIGNED32_IO.PUT( 19, BASE => 16 );
1037     TEXT_IO.PUT_LINE( ")" );
1038  end if
1039
1040;
1041 
1042  if INT20 /= (20 + INTEGER_FACTORS( TASK_INDEX )  ) then
1043     UNSIGNED32_IO.PUT( TASK_INDEX );
1044     TEXT_IO.PUT( ": INT20 wrong -- (" );
1045     UNSIGNED32_IO.PUT( INT20, BASE => 16);
1046     TEXT_IO.PUT( " not " );
1047     UNSIGNED32_IO.PUT( 20, BASE => 16 );
1048     TEXT_IO.PUT_LINE( ")" );
1049  end if
1050
1051;
1052 
1053  if INT21 /= (21 + INTEGER_FACTORS( TASK_INDEX )  ) then
1054     UNSIGNED32_IO.PUT( TASK_INDEX );
1055     TEXT_IO.PUT( ": INT21 wrong -- (" );
1056     UNSIGNED32_IO.PUT( INT21, BASE => 16);
1057     TEXT_IO.PUT( " not " );
1058     UNSIGNED32_IO.PUT( 21, BASE => 16 );
1059     TEXT_IO.PUT_LINE( ")" );
1060  end if
1061
1062;
1063 
1064  if INT22 /= (22 + INTEGER_FACTORS( TASK_INDEX )  ) then
1065     UNSIGNED32_IO.PUT( TASK_INDEX );
1066     TEXT_IO.PUT( ": INT22 wrong -- (" );
1067     UNSIGNED32_IO.PUT( INT22, BASE => 16);
1068     TEXT_IO.PUT( " not " );
1069     UNSIGNED32_IO.PUT( 22, BASE => 16 );
1070     TEXT_IO.PUT_LINE( ")" );
1071  end if
1072
1073;
1074 
1075  if INT23 /= (23 + INTEGER_FACTORS( TASK_INDEX )  ) then
1076     UNSIGNED32_IO.PUT( TASK_INDEX );
1077     TEXT_IO.PUT( ": INT23 wrong -- (" );
1078     UNSIGNED32_IO.PUT( INT23, BASE => 16);
1079     TEXT_IO.PUT( " not " );
1080     UNSIGNED32_IO.PUT( 23, BASE => 16 );
1081     TEXT_IO.PUT_LINE( ")" );
1082  end if
1083
1084;
1085 
1086  if INT24 /= (24 + INTEGER_FACTORS( TASK_INDEX )  ) then
1087     UNSIGNED32_IO.PUT( TASK_INDEX );
1088     TEXT_IO.PUT( ": INT24 wrong -- (" );
1089     UNSIGNED32_IO.PUT( INT24, BASE => 16);
1090     TEXT_IO.PUT( " not " );
1091     UNSIGNED32_IO.PUT( 24, BASE => 16 );
1092     TEXT_IO.PUT_LINE( ")" );
1093  end if
1094
1095;
1096 
1097  if INT25 /= (25 + INTEGER_FACTORS( TASK_INDEX )  ) then
1098     UNSIGNED32_IO.PUT( TASK_INDEX );
1099     TEXT_IO.PUT( ": INT25 wrong -- (" );
1100     UNSIGNED32_IO.PUT( INT25, BASE => 16);
1101     TEXT_IO.PUT( " not " );
1102     UNSIGNED32_IO.PUT( 25, BASE => 16 );
1103     TEXT_IO.PUT_LINE( ")" );
1104  end if
1105
1106;
1107 
1108  if INT26 /= (26 + INTEGER_FACTORS( TASK_INDEX )  ) then
1109     UNSIGNED32_IO.PUT( TASK_INDEX );
1110     TEXT_IO.PUT( ": INT26 wrong -- (" );
1111     UNSIGNED32_IO.PUT( INT26, BASE => 16);
1112     TEXT_IO.PUT( " not " );
1113     UNSIGNED32_IO.PUT( 26, BASE => 16 );
1114     TEXT_IO.PUT_LINE( ")" );
1115  end if
1116
1117;
1118 
1119  if INT27 /= (27 + INTEGER_FACTORS( TASK_INDEX )  ) then
1120     UNSIGNED32_IO.PUT( TASK_INDEX );
1121     TEXT_IO.PUT( ": INT27 wrong -- (" );
1122     UNSIGNED32_IO.PUT( INT27, BASE => 16);
1123     TEXT_IO.PUT( " not " );
1124     UNSIGNED32_IO.PUT( 27, BASE => 16 );
1125     TEXT_IO.PUT_LINE( ")" );
1126  end if
1127
1128;
1129 
1130  if INT28 /= (28 + INTEGER_FACTORS( TASK_INDEX )  ) then
1131     UNSIGNED32_IO.PUT( TASK_INDEX );
1132     TEXT_IO.PUT( ": INT28 wrong -- (" );
1133     UNSIGNED32_IO.PUT( INT28, BASE => 16);
1134     TEXT_IO.PUT( " not " );
1135     UNSIGNED32_IO.PUT( 28, BASE => 16 );
1136     TEXT_IO.PUT_LINE( ")" );
1137  end if
1138
1139;
1140 
1141  if INT29 /= (29 + INTEGER_FACTORS( TASK_INDEX )  ) then
1142     UNSIGNED32_IO.PUT( TASK_INDEX );
1143     TEXT_IO.PUT( ": INT29 wrong -- (" );
1144     UNSIGNED32_IO.PUT( INT29, BASE => 16);
1145     TEXT_IO.PUT( " not " );
1146     UNSIGNED32_IO.PUT( 29, BASE => 16 );
1147     TEXT_IO.PUT_LINE( ")" );
1148  end if
1149
1150;
1151 
1152  if INT30 /= (30 + INTEGER_FACTORS( TASK_INDEX )  ) then
1153     UNSIGNED32_IO.PUT( TASK_INDEX );
1154     TEXT_IO.PUT( ": INT30 wrong -- (" );
1155     UNSIGNED32_IO.PUT( INT30, BASE => 16);
1156     TEXT_IO.PUT( " not " );
1157     UNSIGNED32_IO.PUT( 30, BASE => 16 );
1158     TEXT_IO.PUT_LINE( ")" );
1159  end if
1160
1161;
1162 
1163  if INT31 /= (31 + INTEGER_FACTORS( TASK_INDEX )  ) then
1164     UNSIGNED32_IO.PUT( TASK_INDEX );
1165     TEXT_IO.PUT( ": INT31 wrong -- (" );
1166     UNSIGNED32_IO.PUT( INT31, BASE => 16);
1167     TEXT_IO.PUT( " not " );
1168     UNSIGNED32_IO.PUT( 31, BASE => 16 );
1169     TEXT_IO.PUT_LINE( ")" );
1170  end if
1171
1172;
1173 
1174  if INT32 /= (32 + INTEGER_FACTORS( TASK_INDEX )  ) then
1175     UNSIGNED32_IO.PUT( TASK_INDEX );
1176     TEXT_IO.PUT( ": INT32 wrong -- (" );
1177     UNSIGNED32_IO.PUT( INT32, BASE => 16);
1178     TEXT_IO.PUT( " not " );
1179     UNSIGNED32_IO.PUT( 32, BASE => 16 );
1180     TEXT_IO.PUT_LINE( ")" );
1181  end if
1182
1183
1184
1185;
1186      if ARGUMENT = 0 then
1187         RTEMS.TASKS.RESTART(
1188            RTEMS.SELF,
1189            1,
1190            STATUS
1191         );
1192         TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_RESTART OF SELF" );
1193      else
1194         TIME := ( 1988, 12, 31, 9, 0, 0, 0 );
1195         RTEMS.CLOCK.SET( TIME, STATUS );
1196         TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "CLOCK_SET" );
1197
1198         RTEMS.TASKS.DELETE( RTEMS.SELF, STATUS );
1199         TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" );
1200      end if;
1201
1202   end FIRST_FP_TASK;
1203
1204--
1205--  FP_TASK
1206--
1207
1208   procedure FP_TASK (
1209      ARGUMENT : in     RTEMS.TASKS.ARGUMENT
1210   ) is
1211      pragma Unreferenced(ARGUMENT);
1212      STATUS     : RTEMS.STATUS_CODES;
1213      TID        : RTEMS.ID;
1214      TIME       : RTEMS.TIME_OF_DAY;
1215      TASK_INDEX : RTEMS.UNSIGNED32;
1216     
1217  INT01 : RTEMS.UNSIGNED32 :=  1;
1218  INT02 : RTEMS.UNSIGNED32 :=  2;
1219  INT03 : RTEMS.UNSIGNED32 :=  3;
1220  INT04 : RTEMS.UNSIGNED32 :=  4;
1221  INT05 : RTEMS.UNSIGNED32 :=  5;
1222  INT06 : RTEMS.UNSIGNED32 :=  6;
1223  INT07 : RTEMS.UNSIGNED32 :=  7;
1224  INT08 : RTEMS.UNSIGNED32 :=  8;
1225  INT09 : RTEMS.UNSIGNED32 :=  9;
1226  INT10 : RTEMS.UNSIGNED32 := 10;
1227  INT11 : RTEMS.UNSIGNED32 := 11;
1228  INT12 : RTEMS.UNSIGNED32 := 12;
1229  INT13 : RTEMS.UNSIGNED32 := 13;
1230  INT14 : RTEMS.UNSIGNED32 := 14;
1231  INT15 : RTEMS.UNSIGNED32 := 15;
1232  INT16 : RTEMS.UNSIGNED32 := 16;
1233  INT17 : RTEMS.UNSIGNED32 := 17;
1234  INT18 : RTEMS.UNSIGNED32 := 18;
1235  INT19 : RTEMS.UNSIGNED32 := 19;
1236  INT20 : RTEMS.UNSIGNED32 := 20;
1237  INT21 : RTEMS.UNSIGNED32 := 21;
1238  INT22 : RTEMS.UNSIGNED32 := 22;
1239  INT23 : RTEMS.UNSIGNED32 := 23;
1240  INT24 : RTEMS.UNSIGNED32 := 24;
1241  INT25 : RTEMS.UNSIGNED32 := 25;
1242  INT26 : RTEMS.UNSIGNED32 := 26;
1243  INT27 : RTEMS.UNSIGNED32 := 27;
1244  INT28 : RTEMS.UNSIGNED32 := 28;
1245  INT29 : RTEMS.UNSIGNED32 := 29;
1246  INT30 : RTEMS.UNSIGNED32 := 30;
1247  INT31 : RTEMS.UNSIGNED32 := 31;
1248  INT32 : RTEMS.UNSIGNED32 := 32
1249
1250;
1251     
1252  FP01 : FLOAT :=  1.0;
1253  FP02 : FLOAT :=  2.0;
1254  FP03 : FLOAT :=  3.0;
1255  FP04 : FLOAT :=  4.0;
1256  FP05 : FLOAT :=  5.0;
1257  FP06 : FLOAT :=  6.0;
1258  FP07 : FLOAT :=  7.0;
1259  FP08 : FLOAT :=  8.0;
1260  FP09 : FLOAT :=  9.0;
1261  FP10 : FLOAT := 10.0;
1262  FP11 : FLOAT := 11.0;
1263  FP12 : FLOAT := 12.0;
1264  FP13 : FLOAT := 13.0;
1265  FP14 : FLOAT := 14.0;
1266  FP15 : FLOAT := 15.0;
1267  FP16 : FLOAT := 16.0;
1268  FP17 : FLOAT := 17.0;
1269  FP18 : FLOAT := 18.0;
1270  FP19 : FLOAT := 19.0;
1271  FP20 : FLOAT := 20.0;
1272  FP21 : FLOAT := 21.0;
1273  FP22 : FLOAT := 22.0;
1274  FP23 : FLOAT := 23.0;
1275  FP24 : FLOAT := 24.0;
1276  FP25 : FLOAT := 25.0;
1277  FP26 : FLOAT := 26.0;
1278  FP27 : FLOAT := 27.0;
1279  FP28 : FLOAT := 28.0;
1280  FP29 : FLOAT := 29.0;
1281  FP30 : FLOAT := 30.0;
1282  FP31 : FLOAT := 31.0;
1283  FP32 : FLOAT := 32.0
1284
1285;
1286   begin
1287
1288      RTEMS.TASKS.IDENT( RTEMS.SELF, RTEMS.SEARCH_ALL_NODES, TID, STATUS );
1289      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_IDENT OF SELF" );
1290   
1291      TASK_INDEX := TEST_SUPPORT.TASK_NUMBER( TID );
1292 
1293     
1294  INT01 := INT01 + INTEGER_FACTORS( TASK_INDEX ) ;
1295  INT02 := INT02 + INTEGER_FACTORS( TASK_INDEX ) ;
1296  INT03 := INT03 + INTEGER_FACTORS( TASK_INDEX ) ;
1297  INT04 := INT04 + INTEGER_FACTORS( TASK_INDEX ) ;
1298  INT05 := INT05 + INTEGER_FACTORS( TASK_INDEX ) ;
1299  INT06 := INT06 + INTEGER_FACTORS( TASK_INDEX ) ;
1300  INT07 := INT07 + INTEGER_FACTORS( TASK_INDEX ) ;
1301  INT08 := INT08 + INTEGER_FACTORS( TASK_INDEX ) ;
1302  INT09 := INT09 + INTEGER_FACTORS( TASK_INDEX ) ;
1303  INT10 := INT10 + INTEGER_FACTORS( TASK_INDEX ) ;
1304  INT11 := INT11 + INTEGER_FACTORS( TASK_INDEX ) ;
1305  INT12 := INT12 + INTEGER_FACTORS( TASK_INDEX ) ;
1306  INT13 := INT13 + INTEGER_FACTORS( TASK_INDEX ) ;
1307  INT14 := INT14 + INTEGER_FACTORS( TASK_INDEX ) ;
1308  INT15 := INT15 + INTEGER_FACTORS( TASK_INDEX ) ;
1309  INT16 := INT16 + INTEGER_FACTORS( TASK_INDEX ) ;
1310  INT17 := INT17 + INTEGER_FACTORS( TASK_INDEX ) ;
1311  INT18 := INT18 + INTEGER_FACTORS( TASK_INDEX ) ;
1312  INT19 := INT19 + INTEGER_FACTORS( TASK_INDEX ) ;
1313  INT20 := INT20 + INTEGER_FACTORS( TASK_INDEX ) ;
1314  INT21 := INT21 + INTEGER_FACTORS( TASK_INDEX ) ;
1315  INT22 := INT22 + INTEGER_FACTORS( TASK_INDEX ) ;
1316  INT23 := INT23 + INTEGER_FACTORS( TASK_INDEX ) ;
1317  INT24 := INT24 + INTEGER_FACTORS( TASK_INDEX ) ;
1318  INT25 := INT25 + INTEGER_FACTORS( TASK_INDEX ) ;
1319  INT26 := INT26 + INTEGER_FACTORS( TASK_INDEX ) ;
1320  INT27 := INT27 + INTEGER_FACTORS( TASK_INDEX ) ;
1321  INT28 := INT28 + INTEGER_FACTORS( TASK_INDEX ) ;
1322  INT29 := INT29 + INTEGER_FACTORS( TASK_INDEX ) ;
1323  INT30 := INT30 + INTEGER_FACTORS( TASK_INDEX ) ;
1324  INT31 := INT31 + INTEGER_FACTORS( TASK_INDEX ) ;
1325  INT32 := INT32 + INTEGER_FACTORS( TASK_INDEX )
1326;
1327     
1328  FP01 := FP01 + FP_FACTORS( TASK_INDEX ) ;
1329  FP02 := FP02 + FP_FACTORS( TASK_INDEX ) ;
1330  FP03 := FP03 + FP_FACTORS( TASK_INDEX ) ;
1331  FP04 := FP04 + FP_FACTORS( TASK_INDEX ) ;
1332  FP05 := FP05 + FP_FACTORS( TASK_INDEX ) ;
1333  FP06 := FP06 + FP_FACTORS( TASK_INDEX ) ;
1334  FP07 := FP07 + FP_FACTORS( TASK_INDEX ) ;
1335  FP08 := FP08 + FP_FACTORS( TASK_INDEX ) ;
1336  FP09 := FP09 + FP_FACTORS( TASK_INDEX ) ;
1337  FP10 := FP10 + FP_FACTORS( TASK_INDEX ) ;
1338  FP11 := FP11 + FP_FACTORS( TASK_INDEX ) ;
1339  FP12 := FP12 + FP_FACTORS( TASK_INDEX ) ;
1340  FP13 := FP13 + FP_FACTORS( TASK_INDEX ) ;
1341  FP14 := FP14 + FP_FACTORS( TASK_INDEX ) ;
1342  FP15 := FP15 + FP_FACTORS( TASK_INDEX ) ;
1343  FP16 := FP16 + FP_FACTORS( TASK_INDEX ) ;
1344  FP17 := FP17 + FP_FACTORS( TASK_INDEX ) ;
1345  FP18 := FP18 + FP_FACTORS( TASK_INDEX ) ;
1346  FP19 := FP19 + FP_FACTORS( TASK_INDEX ) ;
1347  FP20 := FP20 + FP_FACTORS( TASK_INDEX ) ;
1348  FP21 := FP21 + FP_FACTORS( TASK_INDEX ) ;
1349  FP22 := FP22 + FP_FACTORS( TASK_INDEX ) ;
1350  FP23 := FP23 + FP_FACTORS( TASK_INDEX ) ;
1351  FP24 := FP24 + FP_FACTORS( TASK_INDEX ) ;
1352  FP25 := FP25 + FP_FACTORS( TASK_INDEX ) ;
1353  FP26 := FP26 + FP_FACTORS( TASK_INDEX ) ;
1354  FP27 := FP27 + FP_FACTORS( TASK_INDEX ) ;
1355  FP28 := FP28 + FP_FACTORS( TASK_INDEX ) ;
1356  FP29 := FP29 + FP_FACTORS( TASK_INDEX ) ;
1357  FP30 := FP30 + FP_FACTORS( TASK_INDEX ) ;
1358  FP31 := FP31 + FP_FACTORS( TASK_INDEX ) ;
1359  FP32 := FP32 + FP_FACTORS( TASK_INDEX )
1360;
1361 
1362      TEST_SUPPORT.PUT_NAME(
1363         SPTEST.TASK_NAME( TEST_SUPPORT.TASK_NUMBER( TID ) ),
1364         FALSE
1365      );
1366      TEXT_IO.PUT( " - integer base = (" );
1367      UNSIGNED32_IO.PUT( INTEGER_FACTORS( TASK_INDEX ), BASE => 16 );
1368      TEXT_IO.PUT_LINE( ")" );
1369 
1370      --
1371      --  C implementation prints NA if no hardware FP support.
1372      --
1373 
1374      TEST_SUPPORT.PUT_NAME(
1375         SPTEST.TASK_NAME( TEST_SUPPORT.TASK_NUMBER( TID ) ),
1376         FALSE
1377      );
1378      TEXT_IO.PUT( " - float base = (" );
1379      FLOAT_IO.PUT( FP_FACTORS( TASK_INDEX ) );
1380      TEXT_IO.PUT_LINE( ")" );
1381
1382      loop
1383
1384         RTEMS.CLOCK.GET_TOD( TIME, STATUS );
1385         TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "CLOCK_GET_TOD" );
1386
1387         if TIME.SECOND >= 16 then
1388
1389            if TEST_SUPPORT.TASK_NUMBER( TID ) = 4 then
1390               TEXT_IO.PUT_LINE( "TA4 - task_delete - self" );
1391               RTEMS.TASKS.DELETE( RTEMS.SELF, STATUS );
1392               TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF TA4" );
1393            end if;
1394     
1395            TEXT_IO.PUT_LINE( "TA5 - task_delete - TA3" );
1396            RTEMS.TASKS.DELETE( SPTEST.TASK_ID( 3 ), STATUS );
1397            TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF TA3" );
1398 
1399            TEST_SUPPORT.ADA_TEST_END;
1400            RTEMS.SHUTDOWN_EXECUTIVE( 0 );
1401         end if;
1402
1403         TEST_SUPPORT.PUT_NAME(
1404            SPTEST.TASK_NAME( TEST_SUPPORT.TASK_NUMBER( TID ) ),
1405            FALSE
1406         );
1407
1408         TEST_SUPPORT.PRINT_TIME( " - clock_get - ", TIME, "" );
1409         TEXT_IO.NEW_LINE;
1410
1411         
1412 
1413  if INT01 /= (1 + INTEGER_FACTORS( TASK_INDEX )  ) then
1414     UNSIGNED32_IO.PUT( TASK_INDEX );
1415     TEXT_IO.PUT( ": INT01 wrong -- (" );
1416     UNSIGNED32_IO.PUT( INT01, BASE => 16);
1417     TEXT_IO.PUT( " not " );
1418     UNSIGNED32_IO.PUT( 1, BASE => 16 );
1419     TEXT_IO.PUT_LINE( ")" );
1420  end if
1421
1422;
1423 
1424  if INT02 /= (2 + INTEGER_FACTORS( TASK_INDEX )  ) then
1425     UNSIGNED32_IO.PUT( TASK_INDEX );
1426     TEXT_IO.PUT( ": INT02 wrong -- (" );
1427     UNSIGNED32_IO.PUT( INT02, BASE => 16);
1428     TEXT_IO.PUT( " not " );
1429     UNSIGNED32_IO.PUT( 2, BASE => 16 );
1430     TEXT_IO.PUT_LINE( ")" );
1431  end if
1432
1433;
1434 
1435  if INT03 /= (3 + INTEGER_FACTORS( TASK_INDEX )  ) then
1436     UNSIGNED32_IO.PUT( TASK_INDEX );
1437     TEXT_IO.PUT( ": INT03 wrong -- (" );
1438     UNSIGNED32_IO.PUT( INT03, BASE => 16);
1439     TEXT_IO.PUT( " not " );
1440     UNSIGNED32_IO.PUT( 3, BASE => 16 );
1441     TEXT_IO.PUT_LINE( ")" );
1442  end if
1443
1444;
1445 
1446  if INT04 /= (4 + INTEGER_FACTORS( TASK_INDEX )  ) then
1447     UNSIGNED32_IO.PUT( TASK_INDEX );
1448     TEXT_IO.PUT( ": INT04 wrong -- (" );
1449     UNSIGNED32_IO.PUT( INT04, BASE => 16);
1450     TEXT_IO.PUT( " not " );
1451     UNSIGNED32_IO.PUT( 4, BASE => 16 );
1452     TEXT_IO.PUT_LINE( ")" );
1453  end if
1454
1455;
1456 
1457  if INT05 /= (5 + INTEGER_FACTORS( TASK_INDEX )  ) then
1458     UNSIGNED32_IO.PUT( TASK_INDEX );
1459     TEXT_IO.PUT( ": INT05 wrong -- (" );
1460     UNSIGNED32_IO.PUT( INT05, BASE => 16);
1461     TEXT_IO.PUT( " not " );
1462     UNSIGNED32_IO.PUT( 5, BASE => 16 );
1463     TEXT_IO.PUT_LINE( ")" );
1464  end if
1465
1466;
1467 
1468  if INT06 /= (6 + INTEGER_FACTORS( TASK_INDEX )  ) then
1469     UNSIGNED32_IO.PUT( TASK_INDEX );
1470     TEXT_IO.PUT( ": INT06 wrong -- (" );
1471     UNSIGNED32_IO.PUT( INT06, BASE => 16);
1472     TEXT_IO.PUT( " not " );
1473     UNSIGNED32_IO.PUT( 6, BASE => 16 );
1474     TEXT_IO.PUT_LINE( ")" );
1475  end if
1476
1477;
1478 
1479  if INT07 /= (7 + INTEGER_FACTORS( TASK_INDEX )  ) then
1480     UNSIGNED32_IO.PUT( TASK_INDEX );
1481     TEXT_IO.PUT( ": INT07 wrong -- (" );
1482     UNSIGNED32_IO.PUT( INT07, BASE => 16);
1483     TEXT_IO.PUT( " not " );
1484     UNSIGNED32_IO.PUT( 7, BASE => 16 );
1485     TEXT_IO.PUT_LINE( ")" );
1486  end if
1487
1488;
1489 
1490  if INT08 /= (8 + INTEGER_FACTORS( TASK_INDEX )  ) then
1491     UNSIGNED32_IO.PUT( TASK_INDEX );
1492     TEXT_IO.PUT( ": INT08 wrong -- (" );
1493     UNSIGNED32_IO.PUT( INT08, BASE => 16);
1494     TEXT_IO.PUT( " not " );
1495     UNSIGNED32_IO.PUT( 8, BASE => 16 );
1496     TEXT_IO.PUT_LINE( ")" );
1497  end if
1498
1499;
1500 
1501  if INT09 /= (9 + INTEGER_FACTORS( TASK_INDEX )  ) then
1502     UNSIGNED32_IO.PUT( TASK_INDEX );
1503     TEXT_IO.PUT( ": INT09 wrong -- (" );
1504     UNSIGNED32_IO.PUT( INT09, BASE => 16);
1505     TEXT_IO.PUT( " not " );
1506     UNSIGNED32_IO.PUT( 9, BASE => 16 );
1507     TEXT_IO.PUT_LINE( ")" );
1508  end if
1509
1510;
1511 
1512  if INT10 /= (10 + INTEGER_FACTORS( TASK_INDEX )  ) then
1513     UNSIGNED32_IO.PUT( TASK_INDEX );
1514     TEXT_IO.PUT( ": INT10 wrong -- (" );
1515     UNSIGNED32_IO.PUT( INT10, BASE => 16);
1516     TEXT_IO.PUT( " not " );
1517     UNSIGNED32_IO.PUT( 10, BASE => 16 );
1518     TEXT_IO.PUT_LINE( ")" );
1519  end if
1520
1521;
1522 
1523  if INT11 /= (11 + INTEGER_FACTORS( TASK_INDEX )  ) then
1524     UNSIGNED32_IO.PUT( TASK_INDEX );
1525     TEXT_IO.PUT( ": INT11 wrong -- (" );
1526     UNSIGNED32_IO.PUT( INT11, BASE => 16);
1527     TEXT_IO.PUT( " not " );
1528     UNSIGNED32_IO.PUT( 11, BASE => 16 );
1529     TEXT_IO.PUT_LINE( ")" );
1530  end if
1531
1532;
1533 
1534  if INT12 /= (12 + INTEGER_FACTORS( TASK_INDEX )  ) then
1535     UNSIGNED32_IO.PUT( TASK_INDEX );
1536     TEXT_IO.PUT( ": INT12 wrong -- (" );
1537     UNSIGNED32_IO.PUT( INT12, BASE => 16);
1538     TEXT_IO.PUT( " not " );
1539     UNSIGNED32_IO.PUT( 12, BASE => 16 );
1540     TEXT_IO.PUT_LINE( ")" );
1541  end if
1542
1543;
1544 
1545  if INT13 /= (13 + INTEGER_FACTORS( TASK_INDEX )  ) then
1546     UNSIGNED32_IO.PUT( TASK_INDEX );
1547     TEXT_IO.PUT( ": INT13 wrong -- (" );
1548     UNSIGNED32_IO.PUT( INT13, BASE => 16);
1549     TEXT_IO.PUT( " not " );
1550     UNSIGNED32_IO.PUT( 13, BASE => 16 );
1551     TEXT_IO.PUT_LINE( ")" );
1552  end if
1553
1554;
1555 
1556  if INT14 /= (14 + INTEGER_FACTORS( TASK_INDEX )  ) then
1557     UNSIGNED32_IO.PUT( TASK_INDEX );
1558     TEXT_IO.PUT( ": INT14 wrong -- (" );
1559     UNSIGNED32_IO.PUT( INT14, BASE => 16);
1560     TEXT_IO.PUT( " not " );
1561     UNSIGNED32_IO.PUT( 14, BASE => 16 );
1562     TEXT_IO.PUT_LINE( ")" );
1563  end if
1564
1565;
1566 
1567  if INT15 /= (15 + INTEGER_FACTORS( TASK_INDEX )  ) then
1568     UNSIGNED32_IO.PUT( TASK_INDEX );
1569     TEXT_IO.PUT( ": INT15 wrong -- (" );
1570     UNSIGNED32_IO.PUT( INT15, BASE => 16);
1571     TEXT_IO.PUT( " not " );
1572     UNSIGNED32_IO.PUT( 15, BASE => 16 );
1573     TEXT_IO.PUT_LINE( ")" );
1574  end if
1575
1576;
1577 
1578  if INT16 /= (16 + INTEGER_FACTORS( TASK_INDEX )  ) then
1579     UNSIGNED32_IO.PUT( TASK_INDEX );
1580     TEXT_IO.PUT( ": INT16 wrong -- (" );
1581     UNSIGNED32_IO.PUT( INT16, BASE => 16);
1582     TEXT_IO.PUT( " not " );
1583     UNSIGNED32_IO.PUT( 16, BASE => 16 );
1584     TEXT_IO.PUT_LINE( ")" );
1585  end if
1586
1587;
1588 
1589  if INT17 /= (17 + INTEGER_FACTORS( TASK_INDEX )  ) then
1590     UNSIGNED32_IO.PUT( TASK_INDEX );
1591     TEXT_IO.PUT( ": INT17 wrong -- (" );
1592     UNSIGNED32_IO.PUT( INT17, BASE => 16);
1593     TEXT_IO.PUT( " not " );
1594     UNSIGNED32_IO.PUT( 17, BASE => 16 );
1595     TEXT_IO.PUT_LINE( ")" );
1596  end if
1597
1598;
1599 
1600  if INT18 /= (18 + INTEGER_FACTORS( TASK_INDEX )  ) then
1601     UNSIGNED32_IO.PUT( TASK_INDEX );
1602     TEXT_IO.PUT( ": INT18 wrong -- (" );
1603     UNSIGNED32_IO.PUT( INT18, BASE => 16);
1604     TEXT_IO.PUT( " not " );
1605     UNSIGNED32_IO.PUT( 18, BASE => 16 );
1606     TEXT_IO.PUT_LINE( ")" );
1607  end if
1608
1609;
1610 
1611  if INT19 /= (19 + INTEGER_FACTORS( TASK_INDEX )  ) then
1612     UNSIGNED32_IO.PUT( TASK_INDEX );
1613     TEXT_IO.PUT( ": INT19 wrong -- (" );
1614     UNSIGNED32_IO.PUT( INT19, BASE => 16);
1615     TEXT_IO.PUT( " not " );
1616     UNSIGNED32_IO.PUT( 19, BASE => 16 );
1617     TEXT_IO.PUT_LINE( ")" );
1618  end if
1619
1620;
1621 
1622  if INT20 /= (20 + INTEGER_FACTORS( TASK_INDEX )  ) then
1623     UNSIGNED32_IO.PUT( TASK_INDEX );
1624     TEXT_IO.PUT( ": INT20 wrong -- (" );
1625     UNSIGNED32_IO.PUT( INT20, BASE => 16);
1626     TEXT_IO.PUT( " not " );
1627     UNSIGNED32_IO.PUT( 20, BASE => 16 );
1628     TEXT_IO.PUT_LINE( ")" );
1629  end if
1630
1631;
1632 
1633  if INT21 /= (21 + INTEGER_FACTORS( TASK_INDEX )  ) then
1634     UNSIGNED32_IO.PUT( TASK_INDEX );
1635     TEXT_IO.PUT( ": INT21 wrong -- (" );
1636     UNSIGNED32_IO.PUT( INT21, BASE => 16);
1637     TEXT_IO.PUT( " not " );
1638     UNSIGNED32_IO.PUT( 21, BASE => 16 );
1639     TEXT_IO.PUT_LINE( ")" );
1640  end if
1641
1642;
1643 
1644  if INT22 /= (22 + INTEGER_FACTORS( TASK_INDEX )  ) then
1645     UNSIGNED32_IO.PUT( TASK_INDEX );
1646     TEXT_IO.PUT( ": INT22 wrong -- (" );
1647     UNSIGNED32_IO.PUT( INT22, BASE => 16);
1648     TEXT_IO.PUT( " not " );
1649     UNSIGNED32_IO.PUT( 22, BASE => 16 );
1650     TEXT_IO.PUT_LINE( ")" );
1651  end if
1652
1653;
1654 
1655  if INT23 /= (23 + INTEGER_FACTORS( TASK_INDEX )  ) then
1656     UNSIGNED32_IO.PUT( TASK_INDEX );
1657     TEXT_IO.PUT( ": INT23 wrong -- (" );
1658     UNSIGNED32_IO.PUT( INT23, BASE => 16);
1659     TEXT_IO.PUT( " not " );
1660     UNSIGNED32_IO.PUT( 23, BASE => 16 );
1661     TEXT_IO.PUT_LINE( ")" );
1662  end if
1663
1664;
1665 
1666  if INT24 /= (24 + INTEGER_FACTORS( TASK_INDEX )  ) then
1667     UNSIGNED32_IO.PUT( TASK_INDEX );
1668     TEXT_IO.PUT( ": INT24 wrong -- (" );
1669     UNSIGNED32_IO.PUT( INT24, BASE => 16);
1670     TEXT_IO.PUT( " not " );
1671     UNSIGNED32_IO.PUT( 24, BASE => 16 );
1672     TEXT_IO.PUT_LINE( ")" );
1673  end if
1674
1675;
1676 
1677  if INT25 /= (25 + INTEGER_FACTORS( TASK_INDEX )  ) then
1678     UNSIGNED32_IO.PUT( TASK_INDEX );
1679     TEXT_IO.PUT( ": INT25 wrong -- (" );
1680     UNSIGNED32_IO.PUT( INT25, BASE => 16);
1681     TEXT_IO.PUT( " not " );
1682     UNSIGNED32_IO.PUT( 25, BASE => 16 );
1683     TEXT_IO.PUT_LINE( ")" );
1684  end if
1685
1686;
1687 
1688  if INT26 /= (26 + INTEGER_FACTORS( TASK_INDEX )  ) then
1689     UNSIGNED32_IO.PUT( TASK_INDEX );
1690     TEXT_IO.PUT( ": INT26 wrong -- (" );
1691     UNSIGNED32_IO.PUT( INT26, BASE => 16);
1692     TEXT_IO.PUT( " not " );
1693     UNSIGNED32_IO.PUT( 26, BASE => 16 );
1694     TEXT_IO.PUT_LINE( ")" );
1695  end if
1696
1697;
1698 
1699  if INT27 /= (27 + INTEGER_FACTORS( TASK_INDEX )  ) then
1700     UNSIGNED32_IO.PUT( TASK_INDEX );
1701     TEXT_IO.PUT( ": INT27 wrong -- (" );
1702     UNSIGNED32_IO.PUT( INT27, BASE => 16);
1703     TEXT_IO.PUT( " not " );
1704     UNSIGNED32_IO.PUT( 27, BASE => 16 );
1705     TEXT_IO.PUT_LINE( ")" );
1706  end if
1707
1708;
1709 
1710  if INT28 /= (28 + INTEGER_FACTORS( TASK_INDEX )  ) then
1711     UNSIGNED32_IO.PUT( TASK_INDEX );
1712     TEXT_IO.PUT( ": INT28 wrong -- (" );
1713     UNSIGNED32_IO.PUT( INT28, BASE => 16);
1714     TEXT_IO.PUT( " not " );
1715     UNSIGNED32_IO.PUT( 28, BASE => 16 );
1716     TEXT_IO.PUT_LINE( ")" );
1717  end if
1718
1719;
1720 
1721  if INT29 /= (29 + INTEGER_FACTORS( TASK_INDEX )  ) then
1722     UNSIGNED32_IO.PUT( TASK_INDEX );
1723     TEXT_IO.PUT( ": INT29 wrong -- (" );
1724     UNSIGNED32_IO.PUT( INT29, BASE => 16);
1725     TEXT_IO.PUT( " not " );
1726     UNSIGNED32_IO.PUT( 29, BASE => 16 );
1727     TEXT_IO.PUT_LINE( ")" );
1728  end if
1729
1730;
1731 
1732  if INT30 /= (30 + INTEGER_FACTORS( TASK_INDEX )  ) then
1733     UNSIGNED32_IO.PUT( TASK_INDEX );
1734     TEXT_IO.PUT( ": INT30 wrong -- (" );
1735     UNSIGNED32_IO.PUT( INT30, BASE => 16);
1736     TEXT_IO.PUT( " not " );
1737     UNSIGNED32_IO.PUT( 30, BASE => 16 );
1738     TEXT_IO.PUT_LINE( ")" );
1739  end if
1740
1741;
1742 
1743  if INT31 /= (31 + INTEGER_FACTORS( TASK_INDEX )  ) then
1744     UNSIGNED32_IO.PUT( TASK_INDEX );
1745     TEXT_IO.PUT( ": INT31 wrong -- (" );
1746     UNSIGNED32_IO.PUT( INT31, BASE => 16);
1747     TEXT_IO.PUT( " not " );
1748     UNSIGNED32_IO.PUT( 31, BASE => 16 );
1749     TEXT_IO.PUT_LINE( ")" );
1750  end if
1751
1752;
1753 
1754  if INT32 /= (32 + INTEGER_FACTORS( TASK_INDEX )  ) then
1755     UNSIGNED32_IO.PUT( TASK_INDEX );
1756     TEXT_IO.PUT( ": INT32 wrong -- (" );
1757     UNSIGNED32_IO.PUT( INT32, BASE => 16);
1758     TEXT_IO.PUT( " not " );
1759     UNSIGNED32_IO.PUT( 32, BASE => 16 );
1760     TEXT_IO.PUT_LINE( ")" );
1761  end if
1762
1763
1764
1765;
1766         
1767 
1768  if ( FP01 - ( 1.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP01 - ( 1.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1769     UNSIGNED32_IO.PUT( TASK_INDEX );
1770     TEXT_IO.PUT( ": FP01 wrong -- (" );
1771     FLOAT_IO.PUT( FP01 );
1772     TEXT_IO.PUT( " not " );
1773     FLOAT_IO.PUT( 1.0 + FP_FACTORS( TASK_INDEX )   );
1774     TEXT_IO.PUT_LINE( ")" );
1775  end if
1776
1777;
1778 
1779  if ( FP02 - ( 2.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP02 - ( 2.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1780     UNSIGNED32_IO.PUT( TASK_INDEX );
1781     TEXT_IO.PUT( ": FP02 wrong -- (" );
1782     FLOAT_IO.PUT( FP02 );
1783     TEXT_IO.PUT( " not " );
1784     FLOAT_IO.PUT( 2.0 + FP_FACTORS( TASK_INDEX )   );
1785     TEXT_IO.PUT_LINE( ")" );
1786  end if
1787
1788;
1789 
1790  if ( FP03 - ( 3.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP03 - ( 3.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1791     UNSIGNED32_IO.PUT( TASK_INDEX );
1792     TEXT_IO.PUT( ": FP03 wrong -- (" );
1793     FLOAT_IO.PUT( FP03 );
1794     TEXT_IO.PUT( " not " );
1795     FLOAT_IO.PUT( 3.0 + FP_FACTORS( TASK_INDEX )   );
1796     TEXT_IO.PUT_LINE( ")" );
1797  end if
1798
1799;
1800 
1801  if ( FP04 - ( 4.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP04 - ( 4.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1802     UNSIGNED32_IO.PUT( TASK_INDEX );
1803     TEXT_IO.PUT( ": FP04 wrong -- (" );
1804     FLOAT_IO.PUT( FP04 );
1805     TEXT_IO.PUT( " not " );
1806     FLOAT_IO.PUT( 4.0 + FP_FACTORS( TASK_INDEX )   );
1807     TEXT_IO.PUT_LINE( ")" );
1808  end if
1809
1810;
1811 
1812  if ( FP05 - ( 5.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP05 - ( 5.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1813     UNSIGNED32_IO.PUT( TASK_INDEX );
1814     TEXT_IO.PUT( ": FP05 wrong -- (" );
1815     FLOAT_IO.PUT( FP05 );
1816     TEXT_IO.PUT( " not " );
1817     FLOAT_IO.PUT( 5.0 + FP_FACTORS( TASK_INDEX )   );
1818     TEXT_IO.PUT_LINE( ")" );
1819  end if
1820
1821;
1822 
1823  if ( FP06 - ( 6.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP06 - ( 6.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1824     UNSIGNED32_IO.PUT( TASK_INDEX );
1825     TEXT_IO.PUT( ": FP06 wrong -- (" );
1826     FLOAT_IO.PUT( FP06 );
1827     TEXT_IO.PUT( " not " );
1828     FLOAT_IO.PUT( 6.0 + FP_FACTORS( TASK_INDEX )   );
1829     TEXT_IO.PUT_LINE( ")" );
1830  end if
1831
1832;
1833 
1834  if ( FP07 - ( 7.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP07 - ( 7.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1835     UNSIGNED32_IO.PUT( TASK_INDEX );
1836     TEXT_IO.PUT( ": FP07 wrong -- (" );
1837     FLOAT_IO.PUT( FP07 );
1838     TEXT_IO.PUT( " not " );
1839     FLOAT_IO.PUT( 7.0 + FP_FACTORS( TASK_INDEX )   );
1840     TEXT_IO.PUT_LINE( ")" );
1841  end if
1842
1843;
1844 
1845  if ( FP08 - ( 8.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP08 - ( 8.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1846     UNSIGNED32_IO.PUT( TASK_INDEX );
1847     TEXT_IO.PUT( ": FP08 wrong -- (" );
1848     FLOAT_IO.PUT( FP08 );
1849     TEXT_IO.PUT( " not " );
1850     FLOAT_IO.PUT( 8.0 + FP_FACTORS( TASK_INDEX )   );
1851     TEXT_IO.PUT_LINE( ")" );
1852  end if
1853
1854;
1855 
1856  if ( FP09 - ( 9.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP09 - ( 9.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1857     UNSIGNED32_IO.PUT( TASK_INDEX );
1858     TEXT_IO.PUT( ": FP09 wrong -- (" );
1859     FLOAT_IO.PUT( FP09 );
1860     TEXT_IO.PUT( " not " );
1861     FLOAT_IO.PUT( 9.0 + FP_FACTORS( TASK_INDEX )   );
1862     TEXT_IO.PUT_LINE( ")" );
1863  end if
1864
1865;
1866 
1867  if ( FP10 - ( 10.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP10 - ( 10.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1868     UNSIGNED32_IO.PUT( TASK_INDEX );
1869     TEXT_IO.PUT( ": FP10 wrong -- (" );
1870     FLOAT_IO.PUT( FP10 );
1871     TEXT_IO.PUT( " not " );
1872     FLOAT_IO.PUT( 10.0 + FP_FACTORS( TASK_INDEX )   );
1873     TEXT_IO.PUT_LINE( ")" );
1874  end if
1875
1876;
1877 
1878  if ( FP11 - ( 11.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP11 - ( 11.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1879     UNSIGNED32_IO.PUT( TASK_INDEX );
1880     TEXT_IO.PUT( ": FP11 wrong -- (" );
1881     FLOAT_IO.PUT( FP11 );
1882     TEXT_IO.PUT( " not " );
1883     FLOAT_IO.PUT( 11.0 + FP_FACTORS( TASK_INDEX )   );
1884     TEXT_IO.PUT_LINE( ")" );
1885  end if
1886
1887;
1888 
1889  if ( FP12 - ( 12.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP12 - ( 12.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1890     UNSIGNED32_IO.PUT( TASK_INDEX );
1891     TEXT_IO.PUT( ": FP12 wrong -- (" );
1892     FLOAT_IO.PUT( FP12 );
1893     TEXT_IO.PUT( " not " );
1894     FLOAT_IO.PUT( 12.0 + FP_FACTORS( TASK_INDEX )   );
1895     TEXT_IO.PUT_LINE( ")" );
1896  end if
1897
1898;
1899 
1900  if ( FP13 - ( 13.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP13 - ( 13.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1901     UNSIGNED32_IO.PUT( TASK_INDEX );
1902     TEXT_IO.PUT( ": FP13 wrong -- (" );
1903     FLOAT_IO.PUT( FP13 );
1904     TEXT_IO.PUT( " not " );
1905     FLOAT_IO.PUT( 13.0 + FP_FACTORS( TASK_INDEX )   );
1906     TEXT_IO.PUT_LINE( ")" );
1907  end if
1908
1909;
1910 
1911  if ( FP14 - ( 14.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP14 - ( 14.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1912     UNSIGNED32_IO.PUT( TASK_INDEX );
1913     TEXT_IO.PUT( ": FP14 wrong -- (" );
1914     FLOAT_IO.PUT( FP14 );
1915     TEXT_IO.PUT( " not " );
1916     FLOAT_IO.PUT( 14.0 + FP_FACTORS( TASK_INDEX )   );
1917     TEXT_IO.PUT_LINE( ")" );
1918  end if
1919
1920;
1921 
1922  if ( FP15 - ( 15.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP15 - ( 15.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1923     UNSIGNED32_IO.PUT( TASK_INDEX );
1924     TEXT_IO.PUT( ": FP15 wrong -- (" );
1925     FLOAT_IO.PUT( FP15 );
1926     TEXT_IO.PUT( " not " );
1927     FLOAT_IO.PUT( 15.0 + FP_FACTORS( TASK_INDEX )   );
1928     TEXT_IO.PUT_LINE( ")" );
1929  end if
1930
1931;
1932 
1933  if ( FP16 - ( 16.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP16 - ( 16.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1934     UNSIGNED32_IO.PUT( TASK_INDEX );
1935     TEXT_IO.PUT( ": FP16 wrong -- (" );
1936     FLOAT_IO.PUT( FP16 );
1937     TEXT_IO.PUT( " not " );
1938     FLOAT_IO.PUT( 16.0 + FP_FACTORS( TASK_INDEX )   );
1939     TEXT_IO.PUT_LINE( ")" );
1940  end if
1941
1942;
1943 
1944  if ( FP17 - ( 17.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP17 - ( 17.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1945     UNSIGNED32_IO.PUT( TASK_INDEX );
1946     TEXT_IO.PUT( ": FP17 wrong -- (" );
1947     FLOAT_IO.PUT( FP17 );
1948     TEXT_IO.PUT( " not " );
1949     FLOAT_IO.PUT( 17.0 + FP_FACTORS( TASK_INDEX )   );
1950     TEXT_IO.PUT_LINE( ")" );
1951  end if
1952
1953;
1954 
1955  if ( FP18 - ( 18.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP18 - ( 18.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1956     UNSIGNED32_IO.PUT( TASK_INDEX );
1957     TEXT_IO.PUT( ": FP18 wrong -- (" );
1958     FLOAT_IO.PUT( FP18 );
1959     TEXT_IO.PUT( " not " );
1960     FLOAT_IO.PUT( 18.0 + FP_FACTORS( TASK_INDEX )   );
1961     TEXT_IO.PUT_LINE( ")" );
1962  end if
1963
1964;
1965 
1966  if ( FP19 - ( 19.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP19 - ( 19.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1967     UNSIGNED32_IO.PUT( TASK_INDEX );
1968     TEXT_IO.PUT( ": FP19 wrong -- (" );
1969     FLOAT_IO.PUT( FP19 );
1970     TEXT_IO.PUT( " not " );
1971     FLOAT_IO.PUT( 19.0 + FP_FACTORS( TASK_INDEX )   );
1972     TEXT_IO.PUT_LINE( ")" );
1973  end if
1974
1975;
1976 
1977  if ( FP20 - ( 20.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP20 - ( 20.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1978     UNSIGNED32_IO.PUT( TASK_INDEX );
1979     TEXT_IO.PUT( ": FP20 wrong -- (" );
1980     FLOAT_IO.PUT( FP20 );
1981     TEXT_IO.PUT( " not " );
1982     FLOAT_IO.PUT( 20.0 + FP_FACTORS( TASK_INDEX )   );
1983     TEXT_IO.PUT_LINE( ")" );
1984  end if
1985
1986;
1987 
1988  if ( FP21 - ( 21.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP21 - ( 21.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
1989     UNSIGNED32_IO.PUT( TASK_INDEX );
1990     TEXT_IO.PUT( ": FP21 wrong -- (" );
1991     FLOAT_IO.PUT( FP21 );
1992     TEXT_IO.PUT( " not " );
1993     FLOAT_IO.PUT( 21.0 + FP_FACTORS( TASK_INDEX )   );
1994     TEXT_IO.PUT_LINE( ")" );
1995  end if
1996
1997;
1998 
1999  if ( FP22 - ( 22.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP22 - ( 22.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2000     UNSIGNED32_IO.PUT( TASK_INDEX );
2001     TEXT_IO.PUT( ": FP22 wrong -- (" );
2002     FLOAT_IO.PUT( FP22 );
2003     TEXT_IO.PUT( " not " );
2004     FLOAT_IO.PUT( 22.0 + FP_FACTORS( TASK_INDEX )   );
2005     TEXT_IO.PUT_LINE( ")" );
2006  end if
2007
2008;
2009 
2010  if ( FP23 - ( 23.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP23 - ( 23.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2011     UNSIGNED32_IO.PUT( TASK_INDEX );
2012     TEXT_IO.PUT( ": FP23 wrong -- (" );
2013     FLOAT_IO.PUT( FP23 );
2014     TEXT_IO.PUT( " not " );
2015     FLOAT_IO.PUT( 23.0 + FP_FACTORS( TASK_INDEX )   );
2016     TEXT_IO.PUT_LINE( ")" );
2017  end if
2018
2019;
2020 
2021  if ( FP24 - ( 24.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP24 - ( 24.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2022     UNSIGNED32_IO.PUT( TASK_INDEX );
2023     TEXT_IO.PUT( ": FP24 wrong -- (" );
2024     FLOAT_IO.PUT( FP24 );
2025     TEXT_IO.PUT( " not " );
2026     FLOAT_IO.PUT( 24.0 + FP_FACTORS( TASK_INDEX )   );
2027     TEXT_IO.PUT_LINE( ")" );
2028  end if
2029
2030;
2031 
2032  if ( FP25 - ( 25.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP25 - ( 25.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2033     UNSIGNED32_IO.PUT( TASK_INDEX );
2034     TEXT_IO.PUT( ": FP25 wrong -- (" );
2035     FLOAT_IO.PUT( FP25 );
2036     TEXT_IO.PUT( " not " );
2037     FLOAT_IO.PUT( 25.0 + FP_FACTORS( TASK_INDEX )   );
2038     TEXT_IO.PUT_LINE( ")" );
2039  end if
2040
2041;
2042 
2043  if ( FP26 - ( 26.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP26 - ( 26.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2044     UNSIGNED32_IO.PUT( TASK_INDEX );
2045     TEXT_IO.PUT( ": FP26 wrong -- (" );
2046     FLOAT_IO.PUT( FP26 );
2047     TEXT_IO.PUT( " not " );
2048     FLOAT_IO.PUT( 26.0 + FP_FACTORS( TASK_INDEX )   );
2049     TEXT_IO.PUT_LINE( ")" );
2050  end if
2051
2052;
2053 
2054  if ( FP27 - ( 27.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP27 - ( 27.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2055     UNSIGNED32_IO.PUT( TASK_INDEX );
2056     TEXT_IO.PUT( ": FP27 wrong -- (" );
2057     FLOAT_IO.PUT( FP27 );
2058     TEXT_IO.PUT( " not " );
2059     FLOAT_IO.PUT( 27.0 + FP_FACTORS( TASK_INDEX )   );
2060     TEXT_IO.PUT_LINE( ")" );
2061  end if
2062
2063;
2064 
2065  if ( FP28 - ( 28.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP28 - ( 28.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2066     UNSIGNED32_IO.PUT( TASK_INDEX );
2067     TEXT_IO.PUT( ": FP28 wrong -- (" );
2068     FLOAT_IO.PUT( FP28 );
2069     TEXT_IO.PUT( " not " );
2070     FLOAT_IO.PUT( 28.0 + FP_FACTORS( TASK_INDEX )   );
2071     TEXT_IO.PUT_LINE( ")" );
2072  end if
2073
2074;
2075 
2076  if ( FP29 - ( 29.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP29 - ( 29.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2077     UNSIGNED32_IO.PUT( TASK_INDEX );
2078     TEXT_IO.PUT( ": FP29 wrong -- (" );
2079     FLOAT_IO.PUT( FP29 );
2080     TEXT_IO.PUT( " not " );
2081     FLOAT_IO.PUT( 29.0 + FP_FACTORS( TASK_INDEX )   );
2082     TEXT_IO.PUT_LINE( ")" );
2083  end if
2084
2085;
2086 
2087  if ( FP30 - ( 30.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP30 - ( 30.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2088     UNSIGNED32_IO.PUT( TASK_INDEX );
2089     TEXT_IO.PUT( ": FP30 wrong -- (" );
2090     FLOAT_IO.PUT( FP30 );
2091     TEXT_IO.PUT( " not " );
2092     FLOAT_IO.PUT( 30.0 + FP_FACTORS( TASK_INDEX )   );
2093     TEXT_IO.PUT_LINE( ")" );
2094  end if
2095
2096;
2097 
2098  if ( FP31 - ( 31.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP31 - ( 31.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2099     UNSIGNED32_IO.PUT( TASK_INDEX );
2100     TEXT_IO.PUT( ": FP31 wrong -- (" );
2101     FLOAT_IO.PUT( FP31 );
2102     TEXT_IO.PUT( " not " );
2103     FLOAT_IO.PUT( 31.0 + FP_FACTORS( TASK_INDEX )   );
2104     TEXT_IO.PUT_LINE( ")" );
2105  end if
2106
2107;
2108 
2109  if ( FP32 - ( 32.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP32 - ( 32.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2110     UNSIGNED32_IO.PUT( TASK_INDEX );
2111     TEXT_IO.PUT( ": FP32 wrong -- (" );
2112     FLOAT_IO.PUT( FP32 );
2113     TEXT_IO.PUT( " not " );
2114     FLOAT_IO.PUT( 32.0 + FP_FACTORS( TASK_INDEX )   );
2115     TEXT_IO.PUT_LINE( ")" );
2116  end if
2117
2118
2119
2120;
2121 
2122         RTEMS.TASKS.WAKE_AFTER( TEST_SUPPORT.TICKS_PER_SECOND, STATUS );
2123         TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_WAKE_AFTER" );
2124         
2125      end loop;
2126   
2127   end FP_TASK;
2128
2129--
2130--  TASK_1
2131--
2132
2133   procedure TASK_1 (
2134      ARGUMENT : in     RTEMS.TASKS.ARGUMENT
2135   ) is
2136      pragma Unreferenced(ARGUMENT);
2137      STATUS     : RTEMS.STATUS_CODES;
2138      TID        : RTEMS.ID;
2139      TIME       : RTEMS.TIME_OF_DAY;
2140      TASK_INDEX : RTEMS.UNSIGNED32;
2141     
2142  INT01 : RTEMS.UNSIGNED32 :=  1;
2143  INT02 : RTEMS.UNSIGNED32 :=  2;
2144  INT03 : RTEMS.UNSIGNED32 :=  3;
2145  INT04 : RTEMS.UNSIGNED32 :=  4;
2146  INT05 : RTEMS.UNSIGNED32 :=  5;
2147  INT06 : RTEMS.UNSIGNED32 :=  6;
2148  INT07 : RTEMS.UNSIGNED32 :=  7;
2149  INT08 : RTEMS.UNSIGNED32 :=  8;
2150  INT09 : RTEMS.UNSIGNED32 :=  9;
2151  INT10 : RTEMS.UNSIGNED32 := 10;
2152  INT11 : RTEMS.UNSIGNED32 := 11;
2153  INT12 : RTEMS.UNSIGNED32 := 12;
2154  INT13 : RTEMS.UNSIGNED32 := 13;
2155  INT14 : RTEMS.UNSIGNED32 := 14;
2156  INT15 : RTEMS.UNSIGNED32 := 15;
2157  INT16 : RTEMS.UNSIGNED32 := 16;
2158  INT17 : RTEMS.UNSIGNED32 := 17;
2159  INT18 : RTEMS.UNSIGNED32 := 18;
2160  INT19 : RTEMS.UNSIGNED32 := 19;
2161  INT20 : RTEMS.UNSIGNED32 := 20;
2162  INT21 : RTEMS.UNSIGNED32 := 21;
2163  INT22 : RTEMS.UNSIGNED32 := 22;
2164  INT23 : RTEMS.UNSIGNED32 := 23;
2165  INT24 : RTEMS.UNSIGNED32 := 24;
2166  INT25 : RTEMS.UNSIGNED32 := 25;
2167  INT26 : RTEMS.UNSIGNED32 := 26;
2168  INT27 : RTEMS.UNSIGNED32 := 27;
2169  INT28 : RTEMS.UNSIGNED32 := 28;
2170  INT29 : RTEMS.UNSIGNED32 := 29;
2171  INT30 : RTEMS.UNSIGNED32 := 30;
2172  INT31 : RTEMS.UNSIGNED32 := 31;
2173  INT32 : RTEMS.UNSIGNED32 := 32
2174
2175;
2176     
2177  FP01 : FLOAT :=  1.0;
2178  FP02 : FLOAT :=  2.0;
2179  FP03 : FLOAT :=  3.0;
2180  FP04 : FLOAT :=  4.0;
2181  FP05 : FLOAT :=  5.0;
2182  FP06 : FLOAT :=  6.0;
2183  FP07 : FLOAT :=  7.0;
2184  FP08 : FLOAT :=  8.0;
2185  FP09 : FLOAT :=  9.0;
2186  FP10 : FLOAT := 10.0;
2187  FP11 : FLOAT := 11.0;
2188  FP12 : FLOAT := 12.0;
2189  FP13 : FLOAT := 13.0;
2190  FP14 : FLOAT := 14.0;
2191  FP15 : FLOAT := 15.0;
2192  FP16 : FLOAT := 16.0;
2193  FP17 : FLOAT := 17.0;
2194  FP18 : FLOAT := 18.0;
2195  FP19 : FLOAT := 19.0;
2196  FP20 : FLOAT := 20.0;
2197  FP21 : FLOAT := 21.0;
2198  FP22 : FLOAT := 22.0;
2199  FP23 : FLOAT := 23.0;
2200  FP24 : FLOAT := 24.0;
2201  FP25 : FLOAT := 25.0;
2202  FP26 : FLOAT := 26.0;
2203  FP27 : FLOAT := 27.0;
2204  FP28 : FLOAT := 28.0;
2205  FP29 : FLOAT := 29.0;
2206  FP30 : FLOAT := 30.0;
2207  FP31 : FLOAT := 31.0;
2208  FP32 : FLOAT := 32.0
2209
2210;
2211   begin
2212
2213      RTEMS.TASKS.IDENT( RTEMS.SELF, RTEMS.SEARCH_ALL_NODES, TID, STATUS );
2214      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_IDENT OF SELF" );
2215   
2216      TASK_INDEX := TEST_SUPPORT.TASK_NUMBER( TID );
2217 
2218     
2219  INT01 := INT01 + INTEGER_FACTORS( TASK_INDEX ) ;
2220  INT02 := INT02 + INTEGER_FACTORS( TASK_INDEX ) ;
2221  INT03 := INT03 + INTEGER_FACTORS( TASK_INDEX ) ;
2222  INT04 := INT04 + INTEGER_FACTORS( TASK_INDEX ) ;
2223  INT05 := INT05 + INTEGER_FACTORS( TASK_INDEX ) ;
2224  INT06 := INT06 + INTEGER_FACTORS( TASK_INDEX ) ;
2225  INT07 := INT07 + INTEGER_FACTORS( TASK_INDEX ) ;
2226  INT08 := INT08 + INTEGER_FACTORS( TASK_INDEX ) ;
2227  INT09 := INT09 + INTEGER_FACTORS( TASK_INDEX ) ;
2228  INT10 := INT10 + INTEGER_FACTORS( TASK_INDEX ) ;
2229  INT11 := INT11 + INTEGER_FACTORS( TASK_INDEX ) ;
2230  INT12 := INT12 + INTEGER_FACTORS( TASK_INDEX ) ;
2231  INT13 := INT13 + INTEGER_FACTORS( TASK_INDEX ) ;
2232  INT14 := INT14 + INTEGER_FACTORS( TASK_INDEX ) ;
2233  INT15 := INT15 + INTEGER_FACTORS( TASK_INDEX ) ;
2234  INT16 := INT16 + INTEGER_FACTORS( TASK_INDEX ) ;
2235  INT17 := INT17 + INTEGER_FACTORS( TASK_INDEX ) ;
2236  INT18 := INT18 + INTEGER_FACTORS( TASK_INDEX ) ;
2237  INT19 := INT19 + INTEGER_FACTORS( TASK_INDEX ) ;
2238  INT20 := INT20 + INTEGER_FACTORS( TASK_INDEX ) ;
2239  INT21 := INT21 + INTEGER_FACTORS( TASK_INDEX ) ;
2240  INT22 := INT22 + INTEGER_FACTORS( TASK_INDEX ) ;
2241  INT23 := INT23 + INTEGER_FACTORS( TASK_INDEX ) ;
2242  INT24 := INT24 + INTEGER_FACTORS( TASK_INDEX ) ;
2243  INT25 := INT25 + INTEGER_FACTORS( TASK_INDEX ) ;
2244  INT26 := INT26 + INTEGER_FACTORS( TASK_INDEX ) ;
2245  INT27 := INT27 + INTEGER_FACTORS( TASK_INDEX ) ;
2246  INT28 := INT28 + INTEGER_FACTORS( TASK_INDEX ) ;
2247  INT29 := INT29 + INTEGER_FACTORS( TASK_INDEX ) ;
2248  INT30 := INT30 + INTEGER_FACTORS( TASK_INDEX ) ;
2249  INT31 := INT31 + INTEGER_FACTORS( TASK_INDEX ) ;
2250  INT32 := INT32 + INTEGER_FACTORS( TASK_INDEX )
2251;
2252     
2253  FP01 := FP01 + FP_FACTORS( TASK_INDEX ) ;
2254  FP02 := FP02 + FP_FACTORS( TASK_INDEX ) ;
2255  FP03 := FP03 + FP_FACTORS( TASK_INDEX ) ;
2256  FP04 := FP04 + FP_FACTORS( TASK_INDEX ) ;
2257  FP05 := FP05 + FP_FACTORS( TASK_INDEX ) ;
2258  FP06 := FP06 + FP_FACTORS( TASK_INDEX ) ;
2259  FP07 := FP07 + FP_FACTORS( TASK_INDEX ) ;
2260  FP08 := FP08 + FP_FACTORS( TASK_INDEX ) ;
2261  FP09 := FP09 + FP_FACTORS( TASK_INDEX ) ;
2262  FP10 := FP10 + FP_FACTORS( TASK_INDEX ) ;
2263  FP11 := FP11 + FP_FACTORS( TASK_INDEX ) ;
2264  FP12 := FP12 + FP_FACTORS( TASK_INDEX ) ;
2265  FP13 := FP13 + FP_FACTORS( TASK_INDEX ) ;
2266  FP14 := FP14 + FP_FACTORS( TASK_INDEX ) ;
2267  FP15 := FP15 + FP_FACTORS( TASK_INDEX ) ;
2268  FP16 := FP16 + FP_FACTORS( TASK_INDEX ) ;
2269  FP17 := FP17 + FP_FACTORS( TASK_INDEX ) ;
2270  FP18 := FP18 + FP_FACTORS( TASK_INDEX ) ;
2271  FP19 := FP19 + FP_FACTORS( TASK_INDEX ) ;
2272  FP20 := FP20 + FP_FACTORS( TASK_INDEX ) ;
2273  FP21 := FP21 + FP_FACTORS( TASK_INDEX ) ;
2274  FP22 := FP22 + FP_FACTORS( TASK_INDEX ) ;
2275  FP23 := FP23 + FP_FACTORS( TASK_INDEX ) ;
2276  FP24 := FP24 + FP_FACTORS( TASK_INDEX ) ;
2277  FP25 := FP25 + FP_FACTORS( TASK_INDEX ) ;
2278  FP26 := FP26 + FP_FACTORS( TASK_INDEX ) ;
2279  FP27 := FP27 + FP_FACTORS( TASK_INDEX ) ;
2280  FP28 := FP28 + FP_FACTORS( TASK_INDEX ) ;
2281  FP29 := FP29 + FP_FACTORS( TASK_INDEX ) ;
2282  FP30 := FP30 + FP_FACTORS( TASK_INDEX ) ;
2283  FP31 := FP31 + FP_FACTORS( TASK_INDEX ) ;
2284  FP32 := FP32 + FP_FACTORS( TASK_INDEX )
2285;
2286 
2287      TEST_SUPPORT.PUT_NAME(
2288         SPTEST.TASK_NAME( TEST_SUPPORT.TASK_NUMBER( TID ) ),
2289         FALSE
2290      );
2291      TEXT_IO.PUT( " - integer base = (" );
2292      UNSIGNED32_IO.PUT( INTEGER_FACTORS( TASK_INDEX ), BASE => 16 );
2293      TEXT_IO.PUT_LINE( ")" );
2294 
2295      loop
2296
2297         RTEMS.CLOCK.GET_TOD( TIME, STATUS );
2298         TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "CLOCK_GET_TOD" );
2299
2300         TEST_SUPPORT.PUT_NAME(
2301            SPTEST.TASK_NAME( TEST_SUPPORT.TASK_NUMBER( TID ) ),
2302            FALSE
2303         );
2304
2305         TEST_SUPPORT.PRINT_TIME( " - clock_get - ", TIME, "" );
2306         TEXT_IO.NEW_LINE;
2307
2308         
2309 
2310  if INT01 /= (1 + INTEGER_FACTORS( TASK_INDEX )  ) then
2311     UNSIGNED32_IO.PUT( TASK_INDEX );
2312     TEXT_IO.PUT( ": INT01 wrong -- (" );
2313     UNSIGNED32_IO.PUT( INT01, BASE => 16);
2314     TEXT_IO.PUT( " not " );
2315     UNSIGNED32_IO.PUT( 1, BASE => 16 );
2316     TEXT_IO.PUT_LINE( ")" );
2317  end if
2318
2319;
2320 
2321  if INT02 /= (2 + INTEGER_FACTORS( TASK_INDEX )  ) then
2322     UNSIGNED32_IO.PUT( TASK_INDEX );
2323     TEXT_IO.PUT( ": INT02 wrong -- (" );
2324     UNSIGNED32_IO.PUT( INT02, BASE => 16);
2325     TEXT_IO.PUT( " not " );
2326     UNSIGNED32_IO.PUT( 2, BASE => 16 );
2327     TEXT_IO.PUT_LINE( ")" );
2328  end if
2329
2330;
2331 
2332  if INT03 /= (3 + INTEGER_FACTORS( TASK_INDEX )  ) then
2333     UNSIGNED32_IO.PUT( TASK_INDEX );
2334     TEXT_IO.PUT( ": INT03 wrong -- (" );
2335     UNSIGNED32_IO.PUT( INT03, BASE => 16);
2336     TEXT_IO.PUT( " not " );
2337     UNSIGNED32_IO.PUT( 3, BASE => 16 );
2338     TEXT_IO.PUT_LINE( ")" );
2339  end if
2340
2341;
2342 
2343  if INT04 /= (4 + INTEGER_FACTORS( TASK_INDEX )  ) then
2344     UNSIGNED32_IO.PUT( TASK_INDEX );
2345     TEXT_IO.PUT( ": INT04 wrong -- (" );
2346     UNSIGNED32_IO.PUT( INT04, BASE => 16);
2347     TEXT_IO.PUT( " not " );
2348     UNSIGNED32_IO.PUT( 4, BASE => 16 );
2349     TEXT_IO.PUT_LINE( ")" );
2350  end if
2351
2352;
2353 
2354  if INT05 /= (5 + INTEGER_FACTORS( TASK_INDEX )  ) then
2355     UNSIGNED32_IO.PUT( TASK_INDEX );
2356     TEXT_IO.PUT( ": INT05 wrong -- (" );
2357     UNSIGNED32_IO.PUT( INT05, BASE => 16);
2358     TEXT_IO.PUT( " not " );
2359     UNSIGNED32_IO.PUT( 5, BASE => 16 );
2360     TEXT_IO.PUT_LINE( ")" );
2361  end if
2362
2363;
2364 
2365  if INT06 /= (6 + INTEGER_FACTORS( TASK_INDEX )  ) then
2366     UNSIGNED32_IO.PUT( TASK_INDEX );
2367     TEXT_IO.PUT( ": INT06 wrong -- (" );
2368     UNSIGNED32_IO.PUT( INT06, BASE => 16);
2369     TEXT_IO.PUT( " not " );
2370     UNSIGNED32_IO.PUT( 6, BASE => 16 );
2371     TEXT_IO.PUT_LINE( ")" );
2372  end if
2373
2374;
2375 
2376  if INT07 /= (7 + INTEGER_FACTORS( TASK_INDEX )  ) then
2377     UNSIGNED32_IO.PUT( TASK_INDEX );
2378     TEXT_IO.PUT( ": INT07 wrong -- (" );
2379     UNSIGNED32_IO.PUT( INT07, BASE => 16);
2380     TEXT_IO.PUT( " not " );
2381     UNSIGNED32_IO.PUT( 7, BASE => 16 );
2382     TEXT_IO.PUT_LINE( ")" );
2383  end if
2384
2385;
2386 
2387  if INT08 /= (8 + INTEGER_FACTORS( TASK_INDEX )  ) then
2388     UNSIGNED32_IO.PUT( TASK_INDEX );
2389     TEXT_IO.PUT( ": INT08 wrong -- (" );
2390     UNSIGNED32_IO.PUT( INT08, BASE => 16);
2391     TEXT_IO.PUT( " not " );
2392     UNSIGNED32_IO.PUT( 8, BASE => 16 );
2393     TEXT_IO.PUT_LINE( ")" );
2394  end if
2395
2396;
2397 
2398  if INT09 /= (9 + INTEGER_FACTORS( TASK_INDEX )  ) then
2399     UNSIGNED32_IO.PUT( TASK_INDEX );
2400     TEXT_IO.PUT( ": INT09 wrong -- (" );
2401     UNSIGNED32_IO.PUT( INT09, BASE => 16);
2402     TEXT_IO.PUT( " not " );
2403     UNSIGNED32_IO.PUT( 9, BASE => 16 );
2404     TEXT_IO.PUT_LINE( ")" );
2405  end if
2406
2407;
2408 
2409  if INT10 /= (10 + INTEGER_FACTORS( TASK_INDEX )  ) then
2410     UNSIGNED32_IO.PUT( TASK_INDEX );
2411     TEXT_IO.PUT( ": INT10 wrong -- (" );
2412     UNSIGNED32_IO.PUT( INT10, BASE => 16);
2413     TEXT_IO.PUT( " not " );
2414     UNSIGNED32_IO.PUT( 10, BASE => 16 );
2415     TEXT_IO.PUT_LINE( ")" );
2416  end if
2417
2418;
2419 
2420  if INT11 /= (11 + INTEGER_FACTORS( TASK_INDEX )  ) then
2421     UNSIGNED32_IO.PUT( TASK_INDEX );
2422     TEXT_IO.PUT( ": INT11 wrong -- (" );
2423     UNSIGNED32_IO.PUT( INT11, BASE => 16);
2424     TEXT_IO.PUT( " not " );
2425     UNSIGNED32_IO.PUT( 11, BASE => 16 );
2426     TEXT_IO.PUT_LINE( ")" );
2427  end if
2428
2429;
2430 
2431  if INT12 /= (12 + INTEGER_FACTORS( TASK_INDEX )  ) then
2432     UNSIGNED32_IO.PUT( TASK_INDEX );
2433     TEXT_IO.PUT( ": INT12 wrong -- (" );
2434     UNSIGNED32_IO.PUT( INT12, BASE => 16);
2435     TEXT_IO.PUT( " not " );
2436     UNSIGNED32_IO.PUT( 12, BASE => 16 );
2437     TEXT_IO.PUT_LINE( ")" );
2438  end if
2439
2440;
2441 
2442  if INT13 /= (13 + INTEGER_FACTORS( TASK_INDEX )  ) then
2443     UNSIGNED32_IO.PUT( TASK_INDEX );
2444     TEXT_IO.PUT( ": INT13 wrong -- (" );
2445     UNSIGNED32_IO.PUT( INT13, BASE => 16);
2446     TEXT_IO.PUT( " not " );
2447     UNSIGNED32_IO.PUT( 13, BASE => 16 );
2448     TEXT_IO.PUT_LINE( ")" );
2449  end if
2450
2451;
2452 
2453  if INT14 /= (14 + INTEGER_FACTORS( TASK_INDEX )  ) then
2454     UNSIGNED32_IO.PUT( TASK_INDEX );
2455     TEXT_IO.PUT( ": INT14 wrong -- (" );
2456     UNSIGNED32_IO.PUT( INT14, BASE => 16);
2457     TEXT_IO.PUT( " not " );
2458     UNSIGNED32_IO.PUT( 14, BASE => 16 );
2459     TEXT_IO.PUT_LINE( ")" );
2460  end if
2461
2462;
2463 
2464  if INT15 /= (15 + INTEGER_FACTORS( TASK_INDEX )  ) then
2465     UNSIGNED32_IO.PUT( TASK_INDEX );
2466     TEXT_IO.PUT( ": INT15 wrong -- (" );
2467     UNSIGNED32_IO.PUT( INT15, BASE => 16);
2468     TEXT_IO.PUT( " not " );
2469     UNSIGNED32_IO.PUT( 15, BASE => 16 );
2470     TEXT_IO.PUT_LINE( ")" );
2471  end if
2472
2473;
2474 
2475  if INT16 /= (16 + INTEGER_FACTORS( TASK_INDEX )  ) then
2476     UNSIGNED32_IO.PUT( TASK_INDEX );
2477     TEXT_IO.PUT( ": INT16 wrong -- (" );
2478     UNSIGNED32_IO.PUT( INT16, BASE => 16);
2479     TEXT_IO.PUT( " not " );
2480     UNSIGNED32_IO.PUT( 16, BASE => 16 );
2481     TEXT_IO.PUT_LINE( ")" );
2482  end if
2483
2484;
2485 
2486  if INT17 /= (17 + INTEGER_FACTORS( TASK_INDEX )  ) then
2487     UNSIGNED32_IO.PUT( TASK_INDEX );
2488     TEXT_IO.PUT( ": INT17 wrong -- (" );
2489     UNSIGNED32_IO.PUT( INT17, BASE => 16);
2490     TEXT_IO.PUT( " not " );
2491     UNSIGNED32_IO.PUT( 17, BASE => 16 );
2492     TEXT_IO.PUT_LINE( ")" );
2493  end if
2494
2495;
2496 
2497  if INT18 /= (18 + INTEGER_FACTORS( TASK_INDEX )  ) then
2498     UNSIGNED32_IO.PUT( TASK_INDEX );
2499     TEXT_IO.PUT( ": INT18 wrong -- (" );
2500     UNSIGNED32_IO.PUT( INT18, BASE => 16);
2501     TEXT_IO.PUT( " not " );
2502     UNSIGNED32_IO.PUT( 18, BASE => 16 );
2503     TEXT_IO.PUT_LINE( ")" );
2504  end if
2505
2506;
2507 
2508  if INT19 /= (19 + INTEGER_FACTORS( TASK_INDEX )  ) then
2509     UNSIGNED32_IO.PUT( TASK_INDEX );
2510     TEXT_IO.PUT( ": INT19 wrong -- (" );
2511     UNSIGNED32_IO.PUT( INT19, BASE => 16);
2512     TEXT_IO.PUT( " not " );
2513     UNSIGNED32_IO.PUT( 19, BASE => 16 );
2514     TEXT_IO.PUT_LINE( ")" );
2515  end if
2516
2517;
2518 
2519  if INT20 /= (20 + INTEGER_FACTORS( TASK_INDEX )  ) then
2520     UNSIGNED32_IO.PUT( TASK_INDEX );
2521     TEXT_IO.PUT( ": INT20 wrong -- (" );
2522     UNSIGNED32_IO.PUT( INT20, BASE => 16);
2523     TEXT_IO.PUT( " not " );
2524     UNSIGNED32_IO.PUT( 20, BASE => 16 );
2525     TEXT_IO.PUT_LINE( ")" );
2526  end if
2527
2528;
2529 
2530  if INT21 /= (21 + INTEGER_FACTORS( TASK_INDEX )  ) then
2531     UNSIGNED32_IO.PUT( TASK_INDEX );
2532     TEXT_IO.PUT( ": INT21 wrong -- (" );
2533     UNSIGNED32_IO.PUT( INT21, BASE => 16);
2534     TEXT_IO.PUT( " not " );
2535     UNSIGNED32_IO.PUT( 21, BASE => 16 );
2536     TEXT_IO.PUT_LINE( ")" );
2537  end if
2538
2539;
2540 
2541  if INT22 /= (22 + INTEGER_FACTORS( TASK_INDEX )  ) then
2542     UNSIGNED32_IO.PUT( TASK_INDEX );
2543     TEXT_IO.PUT( ": INT22 wrong -- (" );
2544     UNSIGNED32_IO.PUT( INT22, BASE => 16);
2545     TEXT_IO.PUT( " not " );
2546     UNSIGNED32_IO.PUT( 22, BASE => 16 );
2547     TEXT_IO.PUT_LINE( ")" );
2548  end if
2549
2550;
2551 
2552  if INT23 /= (23 + INTEGER_FACTORS( TASK_INDEX )  ) then
2553     UNSIGNED32_IO.PUT( TASK_INDEX );
2554     TEXT_IO.PUT( ": INT23 wrong -- (" );
2555     UNSIGNED32_IO.PUT( INT23, BASE => 16);
2556     TEXT_IO.PUT( " not " );
2557     UNSIGNED32_IO.PUT( 23, BASE => 16 );
2558     TEXT_IO.PUT_LINE( ")" );
2559  end if
2560
2561;
2562 
2563  if INT24 /= (24 + INTEGER_FACTORS( TASK_INDEX )  ) then
2564     UNSIGNED32_IO.PUT( TASK_INDEX );
2565     TEXT_IO.PUT( ": INT24 wrong -- (" );
2566     UNSIGNED32_IO.PUT( INT24, BASE => 16);
2567     TEXT_IO.PUT( " not " );
2568     UNSIGNED32_IO.PUT( 24, BASE => 16 );
2569     TEXT_IO.PUT_LINE( ")" );
2570  end if
2571
2572;
2573 
2574  if INT25 /= (25 + INTEGER_FACTORS( TASK_INDEX )  ) then
2575     UNSIGNED32_IO.PUT( TASK_INDEX );
2576     TEXT_IO.PUT( ": INT25 wrong -- (" );
2577     UNSIGNED32_IO.PUT( INT25, BASE => 16);
2578     TEXT_IO.PUT( " not " );
2579     UNSIGNED32_IO.PUT( 25, BASE => 16 );
2580     TEXT_IO.PUT_LINE( ")" );
2581  end if
2582
2583;
2584 
2585  if INT26 /= (26 + INTEGER_FACTORS( TASK_INDEX )  ) then
2586     UNSIGNED32_IO.PUT( TASK_INDEX );
2587     TEXT_IO.PUT( ": INT26 wrong -- (" );
2588     UNSIGNED32_IO.PUT( INT26, BASE => 16);
2589     TEXT_IO.PUT( " not " );
2590     UNSIGNED32_IO.PUT( 26, BASE => 16 );
2591     TEXT_IO.PUT_LINE( ")" );
2592  end if
2593
2594;
2595 
2596  if INT27 /= (27 + INTEGER_FACTORS( TASK_INDEX )  ) then
2597     UNSIGNED32_IO.PUT( TASK_INDEX );
2598     TEXT_IO.PUT( ": INT27 wrong -- (" );
2599     UNSIGNED32_IO.PUT( INT27, BASE => 16);
2600     TEXT_IO.PUT( " not " );
2601     UNSIGNED32_IO.PUT( 27, BASE => 16 );
2602     TEXT_IO.PUT_LINE( ")" );
2603  end if
2604
2605;
2606 
2607  if INT28 /= (28 + INTEGER_FACTORS( TASK_INDEX )  ) then
2608     UNSIGNED32_IO.PUT( TASK_INDEX );
2609     TEXT_IO.PUT( ": INT28 wrong -- (" );
2610     UNSIGNED32_IO.PUT( INT28, BASE => 16);
2611     TEXT_IO.PUT( " not " );
2612     UNSIGNED32_IO.PUT( 28, BASE => 16 );
2613     TEXT_IO.PUT_LINE( ")" );
2614  end if
2615
2616;
2617 
2618  if INT29 /= (29 + INTEGER_FACTORS( TASK_INDEX )  ) then
2619     UNSIGNED32_IO.PUT( TASK_INDEX );
2620     TEXT_IO.PUT( ": INT29 wrong -- (" );
2621     UNSIGNED32_IO.PUT( INT29, BASE => 16);
2622     TEXT_IO.PUT( " not " );
2623     UNSIGNED32_IO.PUT( 29, BASE => 16 );
2624     TEXT_IO.PUT_LINE( ")" );
2625  end if
2626
2627;
2628 
2629  if INT30 /= (30 + INTEGER_FACTORS( TASK_INDEX )  ) then
2630     UNSIGNED32_IO.PUT( TASK_INDEX );
2631     TEXT_IO.PUT( ": INT30 wrong -- (" );
2632     UNSIGNED32_IO.PUT( INT30, BASE => 16);
2633     TEXT_IO.PUT( " not " );
2634     UNSIGNED32_IO.PUT( 30, BASE => 16 );
2635     TEXT_IO.PUT_LINE( ")" );
2636  end if
2637
2638;
2639 
2640  if INT31 /= (31 + INTEGER_FACTORS( TASK_INDEX )  ) then
2641     UNSIGNED32_IO.PUT( TASK_INDEX );
2642     TEXT_IO.PUT( ": INT31 wrong -- (" );
2643     UNSIGNED32_IO.PUT( INT31, BASE => 16);
2644     TEXT_IO.PUT( " not " );
2645     UNSIGNED32_IO.PUT( 31, BASE => 16 );
2646     TEXT_IO.PUT_LINE( ")" );
2647  end if
2648
2649;
2650 
2651  if INT32 /= (32 + INTEGER_FACTORS( TASK_INDEX )  ) then
2652     UNSIGNED32_IO.PUT( TASK_INDEX );
2653     TEXT_IO.PUT( ": INT32 wrong -- (" );
2654     UNSIGNED32_IO.PUT( INT32, BASE => 16);
2655     TEXT_IO.PUT( " not " );
2656     UNSIGNED32_IO.PUT( 32, BASE => 16 );
2657     TEXT_IO.PUT_LINE( ")" );
2658  end if
2659
2660
2661
2662;
2663         
2664 
2665  if ( FP01 - ( 1.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP01 - ( 1.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2666     UNSIGNED32_IO.PUT( TASK_INDEX );
2667     TEXT_IO.PUT( ": FP01 wrong -- (" );
2668     FLOAT_IO.PUT( FP01 );
2669     TEXT_IO.PUT( " not " );
2670     FLOAT_IO.PUT( 1.0 + FP_FACTORS( TASK_INDEX )   );
2671     TEXT_IO.PUT_LINE( ")" );
2672  end if
2673
2674;
2675 
2676  if ( FP02 - ( 2.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP02 - ( 2.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2677     UNSIGNED32_IO.PUT( TASK_INDEX );
2678     TEXT_IO.PUT( ": FP02 wrong -- (" );
2679     FLOAT_IO.PUT( FP02 );
2680     TEXT_IO.PUT( " not " );
2681     FLOAT_IO.PUT( 2.0 + FP_FACTORS( TASK_INDEX )   );
2682     TEXT_IO.PUT_LINE( ")" );
2683  end if
2684
2685;
2686 
2687  if ( FP03 - ( 3.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP03 - ( 3.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2688     UNSIGNED32_IO.PUT( TASK_INDEX );
2689     TEXT_IO.PUT( ": FP03 wrong -- (" );
2690     FLOAT_IO.PUT( FP03 );
2691     TEXT_IO.PUT( " not " );
2692     FLOAT_IO.PUT( 3.0 + FP_FACTORS( TASK_INDEX )   );
2693     TEXT_IO.PUT_LINE( ")" );
2694  end if
2695
2696;
2697 
2698  if ( FP04 - ( 4.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP04 - ( 4.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2699     UNSIGNED32_IO.PUT( TASK_INDEX );
2700     TEXT_IO.PUT( ": FP04 wrong -- (" );
2701     FLOAT_IO.PUT( FP04 );
2702     TEXT_IO.PUT( " not " );
2703     FLOAT_IO.PUT( 4.0 + FP_FACTORS( TASK_INDEX )   );
2704     TEXT_IO.PUT_LINE( ")" );
2705  end if
2706
2707;
2708 
2709  if ( FP05 - ( 5.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP05 - ( 5.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2710     UNSIGNED32_IO.PUT( TASK_INDEX );
2711     TEXT_IO.PUT( ": FP05 wrong -- (" );
2712     FLOAT_IO.PUT( FP05 );
2713     TEXT_IO.PUT( " not " );
2714     FLOAT_IO.PUT( 5.0 + FP_FACTORS( TASK_INDEX )   );
2715     TEXT_IO.PUT_LINE( ")" );
2716  end if
2717
2718;
2719 
2720  if ( FP06 - ( 6.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP06 - ( 6.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2721     UNSIGNED32_IO.PUT( TASK_INDEX );
2722     TEXT_IO.PUT( ": FP06 wrong -- (" );
2723     FLOAT_IO.PUT( FP06 );
2724     TEXT_IO.PUT( " not " );
2725     FLOAT_IO.PUT( 6.0 + FP_FACTORS( TASK_INDEX )   );
2726     TEXT_IO.PUT_LINE( ")" );
2727  end if
2728
2729;
2730 
2731  if ( FP07 - ( 7.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP07 - ( 7.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2732     UNSIGNED32_IO.PUT( TASK_INDEX );
2733     TEXT_IO.PUT( ": FP07 wrong -- (" );
2734     FLOAT_IO.PUT( FP07 );
2735     TEXT_IO.PUT( " not " );
2736     FLOAT_IO.PUT( 7.0 + FP_FACTORS( TASK_INDEX )   );
2737     TEXT_IO.PUT_LINE( ")" );
2738  end if
2739
2740;
2741 
2742  if ( FP08 - ( 8.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP08 - ( 8.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2743     UNSIGNED32_IO.PUT( TASK_INDEX );
2744     TEXT_IO.PUT( ": FP08 wrong -- (" );
2745     FLOAT_IO.PUT( FP08 );
2746     TEXT_IO.PUT( " not " );
2747     FLOAT_IO.PUT( 8.0 + FP_FACTORS( TASK_INDEX )   );
2748     TEXT_IO.PUT_LINE( ")" );
2749  end if
2750
2751;
2752 
2753  if ( FP09 - ( 9.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP09 - ( 9.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2754     UNSIGNED32_IO.PUT( TASK_INDEX );
2755     TEXT_IO.PUT( ": FP09 wrong -- (" );
2756     FLOAT_IO.PUT( FP09 );
2757     TEXT_IO.PUT( " not " );
2758     FLOAT_IO.PUT( 9.0 + FP_FACTORS( TASK_INDEX )   );
2759     TEXT_IO.PUT_LINE( ")" );
2760  end if
2761
2762;
2763 
2764  if ( FP10 - ( 10.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP10 - ( 10.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2765     UNSIGNED32_IO.PUT( TASK_INDEX );
2766     TEXT_IO.PUT( ": FP10 wrong -- (" );
2767     FLOAT_IO.PUT( FP10 );
2768     TEXT_IO.PUT( " not " );
2769     FLOAT_IO.PUT( 10.0 + FP_FACTORS( TASK_INDEX )   );
2770     TEXT_IO.PUT_LINE( ")" );
2771  end if
2772
2773;
2774 
2775  if ( FP11 - ( 11.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP11 - ( 11.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2776     UNSIGNED32_IO.PUT( TASK_INDEX );
2777     TEXT_IO.PUT( ": FP11 wrong -- (" );
2778     FLOAT_IO.PUT( FP11 );
2779     TEXT_IO.PUT( " not " );
2780     FLOAT_IO.PUT( 11.0 + FP_FACTORS( TASK_INDEX )   );
2781     TEXT_IO.PUT_LINE( ")" );
2782  end if
2783
2784;
2785 
2786  if ( FP12 - ( 12.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP12 - ( 12.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2787     UNSIGNED32_IO.PUT( TASK_INDEX );
2788     TEXT_IO.PUT( ": FP12 wrong -- (" );
2789     FLOAT_IO.PUT( FP12 );
2790     TEXT_IO.PUT( " not " );
2791     FLOAT_IO.PUT( 12.0 + FP_FACTORS( TASK_INDEX )   );
2792     TEXT_IO.PUT_LINE( ")" );
2793  end if
2794
2795;
2796 
2797  if ( FP13 - ( 13.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP13 - ( 13.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2798     UNSIGNED32_IO.PUT( TASK_INDEX );
2799     TEXT_IO.PUT( ": FP13 wrong -- (" );
2800     FLOAT_IO.PUT( FP13 );
2801     TEXT_IO.PUT( " not " );
2802     FLOAT_IO.PUT( 13.0 + FP_FACTORS( TASK_INDEX )   );
2803     TEXT_IO.PUT_LINE( ")" );
2804  end if
2805
2806;
2807 
2808  if ( FP14 - ( 14.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP14 - ( 14.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2809     UNSIGNED32_IO.PUT( TASK_INDEX );
2810     TEXT_IO.PUT( ": FP14 wrong -- (" );
2811     FLOAT_IO.PUT( FP14 );
2812     TEXT_IO.PUT( " not " );
2813     FLOAT_IO.PUT( 14.0 + FP_FACTORS( TASK_INDEX )   );
2814     TEXT_IO.PUT_LINE( ")" );
2815  end if
2816
2817;
2818 
2819  if ( FP15 - ( 15.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP15 - ( 15.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2820     UNSIGNED32_IO.PUT( TASK_INDEX );
2821     TEXT_IO.PUT( ": FP15 wrong -- (" );
2822     FLOAT_IO.PUT( FP15 );
2823     TEXT_IO.PUT( " not " );
2824     FLOAT_IO.PUT( 15.0 + FP_FACTORS( TASK_INDEX )   );
2825     TEXT_IO.PUT_LINE( ")" );
2826  end if
2827
2828;
2829 
2830  if ( FP16 - ( 16.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP16 - ( 16.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2831     UNSIGNED32_IO.PUT( TASK_INDEX );
2832     TEXT_IO.PUT( ": FP16 wrong -- (" );
2833     FLOAT_IO.PUT( FP16 );
2834     TEXT_IO.PUT( " not " );
2835     FLOAT_IO.PUT( 16.0 + FP_FACTORS( TASK_INDEX )   );
2836     TEXT_IO.PUT_LINE( ")" );
2837  end if
2838
2839;
2840 
2841  if ( FP17 - ( 17.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP17 - ( 17.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2842     UNSIGNED32_IO.PUT( TASK_INDEX );
2843     TEXT_IO.PUT( ": FP17 wrong -- (" );
2844     FLOAT_IO.PUT( FP17 );
2845     TEXT_IO.PUT( " not " );
2846     FLOAT_IO.PUT( 17.0 + FP_FACTORS( TASK_INDEX )   );
2847     TEXT_IO.PUT_LINE( ")" );
2848  end if
2849
2850;
2851 
2852  if ( FP18 - ( 18.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP18 - ( 18.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2853     UNSIGNED32_IO.PUT( TASK_INDEX );
2854     TEXT_IO.PUT( ": FP18 wrong -- (" );
2855     FLOAT_IO.PUT( FP18 );
2856     TEXT_IO.PUT( " not " );
2857     FLOAT_IO.PUT( 18.0 + FP_FACTORS( TASK_INDEX )   );
2858     TEXT_IO.PUT_LINE( ")" );
2859  end if
2860
2861;
2862 
2863  if ( FP19 - ( 19.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP19 - ( 19.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2864     UNSIGNED32_IO.PUT( TASK_INDEX );
2865     TEXT_IO.PUT( ": FP19 wrong -- (" );
2866     FLOAT_IO.PUT( FP19 );
2867     TEXT_IO.PUT( " not " );
2868     FLOAT_IO.PUT( 19.0 + FP_FACTORS( TASK_INDEX )   );
2869     TEXT_IO.PUT_LINE( ")" );
2870  end if
2871
2872;
2873 
2874  if ( FP20 - ( 20.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP20 - ( 20.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2875     UNSIGNED32_IO.PUT( TASK_INDEX );
2876     TEXT_IO.PUT( ": FP20 wrong -- (" );
2877     FLOAT_IO.PUT( FP20 );
2878     TEXT_IO.PUT( " not " );
2879     FLOAT_IO.PUT( 20.0 + FP_FACTORS( TASK_INDEX )   );
2880     TEXT_IO.PUT_LINE( ")" );
2881  end if
2882
2883;
2884 
2885  if ( FP21 - ( 21.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP21 - ( 21.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2886     UNSIGNED32_IO.PUT( TASK_INDEX );
2887     TEXT_IO.PUT( ": FP21 wrong -- (" );
2888     FLOAT_IO.PUT( FP21 );
2889     TEXT_IO.PUT( " not " );
2890     FLOAT_IO.PUT( 21.0 + FP_FACTORS( TASK_INDEX )   );
2891     TEXT_IO.PUT_LINE( ")" );
2892  end if
2893
2894;
2895 
2896  if ( FP22 - ( 22.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP22 - ( 22.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2897     UNSIGNED32_IO.PUT( TASK_INDEX );
2898     TEXT_IO.PUT( ": FP22 wrong -- (" );
2899     FLOAT_IO.PUT( FP22 );
2900     TEXT_IO.PUT( " not " );
2901     FLOAT_IO.PUT( 22.0 + FP_FACTORS( TASK_INDEX )   );
2902     TEXT_IO.PUT_LINE( ")" );
2903  end if
2904
2905;
2906 
2907  if ( FP23 - ( 23.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP23 - ( 23.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2908     UNSIGNED32_IO.PUT( TASK_INDEX );
2909     TEXT_IO.PUT( ": FP23 wrong -- (" );
2910     FLOAT_IO.PUT( FP23 );
2911     TEXT_IO.PUT( " not " );
2912     FLOAT_IO.PUT( 23.0 + FP_FACTORS( TASK_INDEX )   );
2913     TEXT_IO.PUT_LINE( ")" );
2914  end if
2915
2916;
2917 
2918  if ( FP24 - ( 24.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP24 - ( 24.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2919     UNSIGNED32_IO.PUT( TASK_INDEX );
2920     TEXT_IO.PUT( ": FP24 wrong -- (" );
2921     FLOAT_IO.PUT( FP24 );
2922     TEXT_IO.PUT( " not " );
2923     FLOAT_IO.PUT( 24.0 + FP_FACTORS( TASK_INDEX )   );
2924     TEXT_IO.PUT_LINE( ")" );
2925  end if
2926
2927;
2928 
2929  if ( FP25 - ( 25.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP25 - ( 25.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2930     UNSIGNED32_IO.PUT( TASK_INDEX );
2931     TEXT_IO.PUT( ": FP25 wrong -- (" );
2932     FLOAT_IO.PUT( FP25 );
2933     TEXT_IO.PUT( " not " );
2934     FLOAT_IO.PUT( 25.0 + FP_FACTORS( TASK_INDEX )   );
2935     TEXT_IO.PUT_LINE( ")" );
2936  end if
2937
2938;
2939 
2940  if ( FP26 - ( 26.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP26 - ( 26.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2941     UNSIGNED32_IO.PUT( TASK_INDEX );
2942     TEXT_IO.PUT( ": FP26 wrong -- (" );
2943     FLOAT_IO.PUT( FP26 );
2944     TEXT_IO.PUT( " not " );
2945     FLOAT_IO.PUT( 26.0 + FP_FACTORS( TASK_INDEX )   );
2946     TEXT_IO.PUT_LINE( ")" );
2947  end if
2948
2949;
2950 
2951  if ( FP27 - ( 27.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP27 - ( 27.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2952     UNSIGNED32_IO.PUT( TASK_INDEX );
2953     TEXT_IO.PUT( ": FP27 wrong -- (" );
2954     FLOAT_IO.PUT( FP27 );
2955     TEXT_IO.PUT( " not " );
2956     FLOAT_IO.PUT( 27.0 + FP_FACTORS( TASK_INDEX )   );
2957     TEXT_IO.PUT_LINE( ")" );
2958  end if
2959
2960;
2961 
2962  if ( FP28 - ( 28.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP28 - ( 28.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2963     UNSIGNED32_IO.PUT( TASK_INDEX );
2964     TEXT_IO.PUT( ": FP28 wrong -- (" );
2965     FLOAT_IO.PUT( FP28 );
2966     TEXT_IO.PUT( " not " );
2967     FLOAT_IO.PUT( 28.0 + FP_FACTORS( TASK_INDEX )   );
2968     TEXT_IO.PUT_LINE( ")" );
2969  end if
2970
2971;
2972 
2973  if ( FP29 - ( 29.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP29 - ( 29.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2974     UNSIGNED32_IO.PUT( TASK_INDEX );
2975     TEXT_IO.PUT( ": FP29 wrong -- (" );
2976     FLOAT_IO.PUT( FP29 );
2977     TEXT_IO.PUT( " not " );
2978     FLOAT_IO.PUT( 29.0 + FP_FACTORS( TASK_INDEX )   );
2979     TEXT_IO.PUT_LINE( ")" );
2980  end if
2981
2982;
2983 
2984  if ( FP30 - ( 30.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP30 - ( 30.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2985     UNSIGNED32_IO.PUT( TASK_INDEX );
2986     TEXT_IO.PUT( ": FP30 wrong -- (" );
2987     FLOAT_IO.PUT( FP30 );
2988     TEXT_IO.PUT( " not " );
2989     FLOAT_IO.PUT( 30.0 + FP_FACTORS( TASK_INDEX )   );
2990     TEXT_IO.PUT_LINE( ")" );
2991  end if
2992
2993;
2994 
2995  if ( FP31 - ( 31.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP31 - ( 31.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
2996     UNSIGNED32_IO.PUT( TASK_INDEX );
2997     TEXT_IO.PUT( ": FP31 wrong -- (" );
2998     FLOAT_IO.PUT( FP31 );
2999     TEXT_IO.PUT( " not " );
3000     FLOAT_IO.PUT( 31.0 + FP_FACTORS( TASK_INDEX )   );
3001     TEXT_IO.PUT_LINE( ")" );
3002  end if
3003
3004;
3005 
3006  if ( FP32 - ( 32.0 + FP_FACTORS( TASK_INDEX )   ) ) > 0.0005 or else ( FP32 - ( 32.0 + FP_FACTORS( TASK_INDEX )   ) ) < - 0.0005 then
3007     UNSIGNED32_IO.PUT( TASK_INDEX );
3008     TEXT_IO.PUT( ": FP32 wrong -- (" );
3009     FLOAT_IO.PUT( FP32 );
3010     TEXT_IO.PUT( " not " );
3011     FLOAT_IO.PUT( 32.0 + FP_FACTORS( TASK_INDEX )   );
3012     TEXT_IO.PUT_LINE( ")" );
3013  end if
3014
3015
3016
3017;
3018
3019         RTEMS.TASKS.WAKE_AFTER(
3020            TEST_SUPPORT.TASK_NUMBER( TID ) * 5 *
3021              TEST_SUPPORT.TICKS_PER_SECOND,
3022            STATUS
3023         );
3024         TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_WAKE_AFTER" );
3025         
3026      end loop;
3027   
3028   end TASK_1;
3029
3030end SPTEST;
Note: See TracBrowser for help on using the repository browser.