source: rtems/c/src/ada-tests/sptests/sp25/sptest.adb @ 3c4d8cd1

4.115
Last change on this file since 3c4d8cd1 was 3c4d8cd1, checked in by Joel Sherrill <joel.sherrill@…>, on 02/16/11 at 15:53:16

2011-02-16 Joel Sherrill <joel.sherrill@…>

  • ada-tests/mptests/mp01/mp01.adb, ada-tests/mptests/mp01/mptest.adb, ada-tests/mptests/mp01/mptest.ads, ada-tests/mptests/mp01/node1/mp01_node1.adb, ada-tests/mptests/mp01/node2/mp01_node2.adb, ada-tests/mptests/mp02/mptest.adb, ada-tests/mptests/mp02/mptest.ads, ada-tests/mptests/mp02/node1/mp02_node1.adb, ada-tests/mptests/mp02/node2/mp02_node2.adb, ada-tests/mptests/mp03/mptest.adb, ada-tests/mptests/mp03/mptest.ads, ada-tests/mptests/mp03/node1/mp03_node1.adb, ada-tests/mptests/mp03/node2/mp03_node2.adb, ada-tests/mptests/mp04/mptest.adb, ada-tests/mptests/mp04/mptest.ads, ada-tests/mptests/mp04/node1/mp04_node1.adb, ada-tests/mptests/mp04/node2/mp04_node2.adb, ada-tests/mptests/mp05/mptest.adb, ada-tests/mptests/mp05/mptest.ads, ada-tests/mptests/mp05/node1/mp05_node1.adb, ada-tests/mptests/mp05/node2/mp05_node2.adb, ada-tests/mptests/mp06/mptest.adb, ada-tests/mptests/mp06/mptest.ads, ada-tests/mptests/mp06/node1/mp06_node1.adb, ada-tests/mptests/mp06/node2/mp06_node2.adb, ada-tests/mptests/mp07/mptest.adb, ada-tests/mptests/mp07/mptest.ads, ada-tests/mptests/mp07/node1/mp07_node1.adb, ada-tests/mptests/mp07/node2/mp07_node2.adb, ada-tests/mptests/mp08/mptest.adb, ada-tests/mptests/mp08/mptest.ads, ada-tests/mptests/mp08/node1/mp08_node1.adb, ada-tests/mptests/mp08/node2/mp08_node2.adb, ada-tests/mptests/mp09/mptest.adb, ada-tests/mptests/mp09/mptest.ads, ada-tests/mptests/mp09/node1/mp09_node1.adb, ada-tests/mptests/mp09/node2/mp09_node2.adb, ada-tests/mptests/mp10/mptest.adb, ada-tests/mptests/mp10/mptest.ads, ada-tests/mptests/mp10/node1/mp10_node1.adb, ada-tests/mptests/mp10/node2/mp10_node2.adb, ada-tests/mptests/mp11/mptest.adb, ada-tests/mptests/mp11/mptest.ads, ada-tests/mptests/mp11/node1/mp11_node1.adb, ada-tests/mptests/mp11/node2/mp11_node2.adb, ada-tests/mptests/mp12/mptest.adb, ada-tests/mptests/mp12/mptest.ads, ada-tests/mptests/mp12/node1/mp12_node1.adb, ada-tests/mptests/mp12/node2/mp12_node2.adb, ada-tests/mptests/mp13/mptest.adb, ada-tests/mptests/mp13/mptest.ads, ada-tests/mptests/mp13/node1/mp13_node1.adb, ada-tests/mptests/mp13/node2/mp13_node2.adb, ada-tests/mptests/mp14/mptest.adb, ada-tests/mptests/mp14/mptest.ads, ada-tests/mptests/mp14/node1/mp14_node1.adb, ada-tests/mptests/mp14/node2/mp14_node2.adb, ada-tests/samples/base_mp/mptest.adb, ada-tests/samples/base_mp/mptest.ads, ada-tests/samples/base_sp/base_sp.adb, ada-tests/samples/base_sp/sptest.adb, ada-tests/samples/base_sp/sptest.ads, ada-tests/samples/hello/hello.adb, ada-tests/samples/hello/sptest.adb, ada-tests/samples/hello/sptest.ads, ada-tests/samples/nsecs/nsecs.adb, ada-tests/samples/nsecs/sptest.adb, ada-tests/samples/nsecs/sptest.ads, ada-tests/samples/ticker/sptest.adb, ada-tests/samples/ticker/sptest.ads, ada-tests/samples/ticker/ticker.adb, ada-tests/sptests/sp01/sp01.adb, ada-tests/sptests/sp01/sptest.adb, ada-tests/sptests/sp01/sptest.ads, ada-tests/sptests/sp02/sp02.adb, ada-tests/sptests/sp02/sptest.adb, ada-tests/sptests/sp02/sptest.ads, ada-tests/sptests/sp03/sp03.adb, ada-tests/sptests/sp03/sptest.adb, ada-tests/sptests/sp03/sptest.ads, ada-tests/sptests/sp04/sp04.adb, ada-tests/sptests/sp04/sptest.adb, ada-tests/sptests/sp04/sptest.ads, ada-tests/sptests/sp05/sp05.adb, ada-tests/sptests/sp05/sptest.adb, ada-tests/sptests/sp05/sptest.ads, ada-tests/sptests/sp06/sp06.adb, ada-tests/sptests/sp06/sptest.adb, ada-tests/sptests/sp06/sptest.ads, ada-tests/sptests/sp07/sp07.adb, ada-tests/sptests/sp07/sptest.adb, ada-tests/sptests/sp07/sptest.ads, ada-tests/sptests/sp08/sp08.adb, ada-tests/sptests/sp08/sptest.adb, ada-tests/sptests/sp08/sptest.ads, ada-tests/sptests/sp09/sp09.adb, ada-tests/sptests/sp09/sptest.adb, ada-tests/sptests/sp09/sptest.ads, ada-tests/sptests/sp11/sp11.adb, ada-tests/sptests/sp11/sptest.adb, ada-tests/sptests/sp11/sptest.ads, ada-tests/sptests/sp12/sp12.adb, ada-tests/sptests/sp12/sptest.adb, ada-tests/sptests/sp12/sptest.ads, ada-tests/sptests/sp13/sp13.adb, ada-tests/sptests/sp13/sptest.adb, ada-tests/sptests/sp13/sptest.ads, ada-tests/sptests/sp14/sp14.adb, ada-tests/sptests/sp14/sptest.adb, ada-tests/sptests/sp14/sptest.ads, ada-tests/sptests/sp15/sp15.adb, ada-tests/sptests/sp15/sptest.adb, ada-tests/sptests/sp15/sptest.ads, ada-tests/sptests/sp16/sp16.adb, ada-tests/sptests/sp16/sptest.adb, ada-tests/sptests/sp16/sptest.ads, ada-tests/sptests/sp17/sp17.adb, ada-tests/sptests/sp17/sptest.adb, ada-tests/sptests/sp17/sptest.ads, ada-tests/sptests/sp19/sp19.adb, ada-tests/sptests/sp19/sptest.adp, ada-tests/sptests/sp19/sptest.ads, ada-tests/sptests/sp20/sp20.adb, ada-tests/sptests/sp20/sptest.adb, ada-tests/sptests/sp20/sptest.ads, ada-tests/sptests/sp22/sp22.adb, ada-tests/sptests/sp22/sptest.adb, ada-tests/sptests/sp22/sptest.ads, ada-tests/sptests/sp23/sp23.adb, ada-tests/sptests/sp23/sptest.adb, ada-tests/sptests/sp23/sptest.ads, ada-tests/sptests/sp24/sp24.adb, ada-tests/sptests/sp24/sptest.adb, ada-tests/sptests/sp24/sptest.ads, ada-tests/sptests/sp25/sp25.adb, ada-tests/sptests/sp25/sptest.adb, ada-tests/sptests/sp25/sptest.ads, ada-tests/support/test_support.adb, ada-tests/tmtests/tm01/tm01.adb, ada-tests/tmtests/tm01/tmtest.adb, ada-tests/tmtests/tm01/tmtest.ads, ada-tests/tmtests/tm02/tm02.adb, ada-tests/tmtests/tm02/tmtest.adb, ada-tests/tmtests/tm02/tmtest.ads, ada-tests/tmtests/tm03/tm03.adb, ada-tests/tmtests/tm03/tmtest.adb, ada-tests/tmtests/tm03/tmtest.ads, ada-tests/tmtests/tm04/tm04.adb, ada-tests/tmtests/tm04/tmtest.adb, ada-tests/tmtests/tm04/tmtest.ads, ada-tests/tmtests/tm05/tm05.adb, ada-tests/tmtests/tm05/tmtest.adb, ada-tests/tmtests/tm05/tmtest.ads, ada-tests/tmtests/tm06/tm06.adb, ada-tests/tmtests/tm06/tmtest.adb, ada-tests/tmtests/tm06/tmtest.ads, ada-tests/tmtests/tm07/tm07.adb, ada-tests/tmtests/tm07/tmtest.adb, ada-tests/tmtests/tm07/tmtest.ads, ada-tests/tmtests/tm08/tm08.adb, ada-tests/tmtests/tm08/tmtest.adb, ada-tests/tmtests/tm08/tmtest.ads, ada-tests/tmtests/tm09/tm09.adb, ada-tests/tmtests/tm09/tmtest.adb, ada-tests/tmtests/tm09/tmtest.ads, ada-tests/tmtests/tm10/tm10.adb, ada-tests/tmtests/tm10/tmtest.adb, ada-tests/tmtests/tm10/tmtest.ads, ada-tests/tmtests/tm11/tm11.adb, ada-tests/tmtests/tm11/tmtest.adb, ada-tests/tmtests/tm11/tmtest.ads, ada-tests/tmtests/tm12/tm12.adb, ada-tests/tmtests/tm12/tmtest.adb, ada-tests/tmtests/tm12/tmtest.ads, ada-tests/tmtests/tm13/tm13.adb, ada-tests/tmtests/tm13/tmtest.adb, ada-tests/tmtests/tm13/tmtest.ads, ada-tests/tmtests/tm14/tm14.adb, ada-tests/tmtests/tm14/tmtest.adb, ada-tests/tmtests/tm14/tmtest.ads, ada-tests/tmtests/tm15/tm15.adb, ada-tests/tmtests/tm15/tmtest.adb, ada-tests/tmtests/tm15/tmtest.ads, ada-tests/tmtests/tm16/tm16.adb, ada-tests/tmtests/tm16/tmtest.adb, ada-tests/tmtests/tm16/tmtest.ads, ada-tests/tmtests/tm17/tm17.adb, ada-tests/tmtests/tm17/tmtest.adb, ada-tests/tmtests/tm17/tmtest.ads, ada-tests/tmtests/tm18/tm18.adb, ada-tests/tmtests/tm18/tmtest.adb, ada-tests/tmtests/tm18/tmtest.ads, ada-tests/tmtests/tm19/tm19.adb, ada-tests/tmtests/tm19/tmtest.adb, ada-tests/tmtests/tm19/tmtest.ads, ada-tests/tmtests/tm20/tm20.adb, ada-tests/tmtests/tm20/tmtest.adb, ada-tests/tmtests/tm20/tmtest.ads, ada-tests/tmtests/tm21/tm21.adb, ada-tests/tmtests/tm21/tmtest.adb, ada-tests/tmtests/tm21/tmtest.ads, ada-tests/tmtests/tm22/tm22.adb, ada-tests/tmtests/tm22/tmtest.adb, ada-tests/tmtests/tm22/tmtest.ads, ada-tests/tmtests/tm23/tm23.adb, ada-tests/tmtests/tm23/tmtest.adb, ada-tests/tmtests/tm23/tmtest.ads, ada-tests/tmtests/tm24/tm24.adb, ada-tests/tmtests/tm24/tmtest.adb, ada-tests/tmtests/tm24/tmtest.ads, ada-tests/tmtests/tm25/tm25.adb, ada-tests/tmtests/tm25/tmtest.adb, ada-tests/tmtests/tm25/tmtest.ads, ada-tests/tmtests/tm28/tm28.adb, ada-tests/tmtests/tm28/tmtest.adb, ada-tests/tmtests/tm28/tmtest.ads, ada-tests/tmtests/tm29/tm29.adb, ada-tests/tmtests/tm29/tmtest.adb, ada-tests/tmtests/tm29/tmtest.ads, ada-tests/tmtests/tmck/tmck.adb, ada-tests/tmtests/tmck/tmtest.adb, ada-tests/tmtests/tmck/tmtest.ads, ada-tests/tmtests/tmoverhd/dummy_rtems.adb, ada-tests/tmtests/tmoverhd/dummy_rtems.ads, ada-tests/tmtests/tmoverhd/tmoverhd.adb, ada-tests/tmtests/tmoverhd/tmtest.adb, ada-tests/tmtests/tmoverhd/tmtest.ads: Account for RTEMS binding child package rework. Eliminate all warnings.
  • Property mode set to 100644
File size: 10.7 KB
Line 
1--
2--  SPTEST / BODY
3--
4--  DESCRIPTION:
5--
6--  This package is the implementation of Test 25 of the RTEMS
7--  Single Processor Test Suite.
8--
9--  DEPENDENCIES:
10--
11-- 
12--
13--  COPYRIGHT (c) 1989-2011.
14--  On-Line Applications Research Corporation (OAR).
15--
16--  The license and distribution terms for this file may in
17--  the file LICENSE in this distribution or at
18--  http://www.rtems.com/license/LICENSE.
19--
20--  $Id$
21--
22
23with TEST_SUPPORT;
24with TEXT_IO;
25with UNSIGNED32_IO;
26with RTEMS.REGION;
27
28package body SPTEST is
29
30--
31--  INIT
32--
33
34   procedure INIT (
35      ARGUMENT : in     RTEMS.TASKS.ARGUMENT
36   ) is
37      pragma Unreferenced(ARGUMENT);
38      STATUS : RTEMS.STATUS_CODES;
39   begin
40
41      TEXT_IO.NEW_LINE( 2 );
42      TEXT_IO.PUT_LINE( "*** TEST 25 ***" );
43
44      SPTEST.TASK_NAME( 1 ) := RTEMS.BUILD_NAME(  'T', 'A', '1', ' ' );
45
46      RTEMS.TASKS.CREATE(
47         SPTEST.TASK_NAME( 1 ),
48         SPTEST.BASE_PRIORITY,
49         2048,
50         RTEMS.DEFAULT_MODES,
51         RTEMS.DEFAULT_ATTRIBUTES,
52         SPTEST.TASK_ID( 1 ),
53         STATUS
54      );
55      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA1" );
56
57      RTEMS.TASKS.START(
58         SPTEST.TASK_ID( 1 ),
59         SPTEST.TASK_1'ACCESS,
60         0,
61         STATUS
62      );
63      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TA1" );
64
65      SPTEST.REGION_NAME( 1 ) := RTEMS.BUILD_NAME(  'R', 'N', '1', ' ' );
66
67      RTEMS.REGION.CREATE(
68         SPTEST.REGION_NAME( 1 ),
69         SPTEST.AREA_1'ADDRESS,
70         64000,
71         32,
72         RTEMS.DEFAULT_ATTRIBUTES,
73         SPTEST.REGION_ID( 1 ),
74         STATUS
75      );
76      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_CREATE OF RN1" );
77
78      RTEMS.TASKS.DELETE( RTEMS.SELF, STATUS );
79      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" );
80
81   end INIT;
82
83--
84--  PUT_ADDRESS_FROM_AREA_1
85--
86
87   procedure PUT_ADDRESS_FROM_AREA_1 (
88      TO_BE_PRINTED : in     RTEMS.ADDRESS
89   ) is
90
91   begin
92
93      UNSIGNED32_IO.PUT(
94         RTEMS.SUBTRACT( TO_BE_PRINTED, SPTEST.AREA_1'ADDRESS ),
95         WIDTH => 8,
96         BASE => 16
97      );
98
99   end PUT_ADDRESS_FROM_AREA_1;
100
101--
102--  TASK_1
103--
104
105   procedure TASK_1 (
106      ARGUMENT : in     RTEMS.TASKS.ARGUMENT
107   ) is
108      pragma Unreferenced(ARGUMENT);
109      RNID              : RTEMS.ID;
110      SEGMENT_ADDRESS_1 : RTEMS.ADDRESS;
111      SEGMENT_ADDRESS_2 : RTEMS.ADDRESS;
112      SEGMENT_ADDRESS_3 : RTEMS.ADDRESS;
113      SEGMENT_ADDRESS_4 : RTEMS.ADDRESS;
114      SEGMENT_ADDRESS_5 : RTEMS.ADDRESS;
115      SEGMENT_ADDRESS_6 : RTEMS.ADDRESS;
116      SEGMENT_ADDRESS_7 : RTEMS.ADDRESS;
117      SEGMENT_ADDRESS_8 : RTEMS.ADDRESS;
118      STATUS            : RTEMS.STATUS_CODES;
119   begin
120
121      RTEMS.REGION.IDENT( SPTEST.REGION_NAME( 1 ), RNID, STATUS );
122      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_IDENT OF RN1" );
123      TEXT_IO.PUT( "TA1 - region_ident - rnid => " );
124      UNSIGNED32_IO.PUT( RNID, WIDTH => 8, BASE => 16 );
125      TEXT_IO.NEW_LINE;
126       
127      TEXT_IO.PUT( "TA1 - region_get_segment - wait on " );
128      TEXT_IO.PUT_LINE( "64 byte segment from region 1" );
129      RTEMS.REGION.GET_SEGMENT(
130         SPTEST.REGION_ID( 1 ),
131         64,
132         RTEMS.DEFAULT_OPTIONS,
133         RTEMS.NO_TIMEOUT,
134         SEGMENT_ADDRESS_1,
135         STATUS
136      );
137      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_GET_SEGMENT" );
138      TEXT_IO.PUT( "TA1 - got segment from region 1 - " );
139      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_1 );
140      TEXT_IO.NEW_LINE;
141
142      TEXT_IO.PUT( "TA1 - region_get_segment - wait on " );
143      TEXT_IO.PUT_LINE( "128 byte segment from region 1" );
144      RTEMS.REGION.GET_SEGMENT(
145         SPTEST.REGION_ID( 1 ),
146         128,
147         RTEMS.DEFAULT_OPTIONS,
148         RTEMS.NO_TIMEOUT,
149         SEGMENT_ADDRESS_2,
150         STATUS
151      );
152      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_GET_SEGMENT" );
153      TEXT_IO.PUT( "TA1 - got segment from region 1 - " );
154      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_2 );
155      TEXT_IO.NEW_LINE;
156
157      TEXT_IO.PUT( "TA1 - region_get_segment - wait on " );
158      TEXT_IO.PUT_LINE( "256 byte segment from region 1" );
159      RTEMS.REGION.GET_SEGMENT(
160         SPTEST.REGION_ID( 1 ),
161         256,
162         RTEMS.DEFAULT_OPTIONS,
163         RTEMS.NO_TIMEOUT,
164         SEGMENT_ADDRESS_3,
165         STATUS
166      );
167      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_GET_SEGMENT" );
168      TEXT_IO.PUT( "TA1 - got segment from region 1 - " );
169      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_3 );
170      TEXT_IO.NEW_LINE;
171
172      TEXT_IO.PUT( "TA1 - region_get_segment - wait on " );
173      TEXT_IO.PUT_LINE( "512 byte segment from region 1" );
174      RTEMS.REGION.GET_SEGMENT(
175         SPTEST.REGION_ID( 1 ),
176         512,
177         RTEMS.DEFAULT_OPTIONS,
178         RTEMS.NO_TIMEOUT,
179         SEGMENT_ADDRESS_4,
180         STATUS
181      );
182      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_GET_SEGMENT" );
183      TEXT_IO.PUT( "TA1 - got segment from region 1 - " );
184      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_4 );
185      TEXT_IO.NEW_LINE;
186
187      TEXT_IO.PUT( "TA1 - region_get_segment - wait on " );
188      TEXT_IO.PUT_LINE( "1024 byte segment from region 1" );
189      RTEMS.REGION.GET_SEGMENT(
190         SPTEST.REGION_ID( 1 ),
191         1024,
192         RTEMS.DEFAULT_OPTIONS,
193         RTEMS.NO_TIMEOUT,
194         SEGMENT_ADDRESS_5,
195         STATUS
196      );
197      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_GET_SEGMENT" );
198      TEXT_IO.PUT( "TA1 - got segment from region 1 - " );
199      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_5 );
200      TEXT_IO.NEW_LINE;
201
202      TEXT_IO.PUT( "TA1 - region_get_segment - wait on " );
203      TEXT_IO.PUT_LINE( "2048 byte segment from region 1" );
204      RTEMS.REGION.GET_SEGMENT(
205         SPTEST.REGION_ID( 1 ),
206         2048,
207         RTEMS.DEFAULT_OPTIONS,
208         RTEMS.NO_TIMEOUT,
209         SEGMENT_ADDRESS_6,
210         STATUS
211      );
212      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_GET_SEGMENT" );
213      TEXT_IO.PUT( "TA1 - got segment from region 1 - " );
214      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_6 );
215      TEXT_IO.NEW_LINE;
216
217      TEXT_IO.PUT( "TA1 - region_get_segment - wait on " );
218      TEXT_IO.PUT_LINE( "4096 byte segment from region 1" );
219      RTEMS.REGION.GET_SEGMENT(
220         SPTEST.REGION_ID( 1 ),
221         4096,
222         RTEMS.DEFAULT_OPTIONS,
223         RTEMS.NO_TIMEOUT,
224         SEGMENT_ADDRESS_7,
225         STATUS
226      );
227      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_GET_SEGMENT" );
228      TEXT_IO.PUT( "TA1 - got segment from region 1 - " );
229      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_7 );
230      TEXT_IO.NEW_LINE;
231
232      TEXT_IO.PUT( "TA1 - region_get_segment - wait on " );
233      TEXT_IO.PUT_LINE( "8192 byte segment from region 1" );
234      RTEMS.REGION.GET_SEGMENT(
235         SPTEST.REGION_ID( 1 ),
236         8192,
237         RTEMS.DEFAULT_OPTIONS,
238         RTEMS.NO_TIMEOUT,
239         SEGMENT_ADDRESS_8,
240         STATUS
241      );
242      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_GET_SEGMENT" );
243      TEXT_IO.PUT( "TA1 - got segment from region 1 - " );
244      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_8 );
245      TEXT_IO.NEW_LINE;
246
247TEST_SUPPORT.PAUSE;
248
249      TEXT_IO.PUT(
250         "TA1 - region_return_segment - return segment to region 1 - "
251      );
252      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_3 );
253      RTEMS.REGION.RETURN_SEGMENT(
254         SPTEST.REGION_ID( 1 ),
255         SEGMENT_ADDRESS_3,
256         STATUS
257      );
258      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_RETURN_SEGMENT" );
259      TEXT_IO.NEW_LINE;
260      -- SEGMENT_ADDRESS_3 := RTEMS.NULL_ADDRESS;
261
262      TEXT_IO.PUT(
263         "TA1 - region_return_segment - return segment to region 1 - "
264      );
265      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_4 );
266      RTEMS.REGION.RETURN_SEGMENT(
267         SPTEST.REGION_ID( 1 ),
268         SEGMENT_ADDRESS_4,
269         STATUS
270      );
271      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_RETURN_SEGMENT" );
272      TEXT_IO.NEW_LINE;
273      -- SEGMENT_ADDRESS_4 := RTEMS.NULL_ADDRESS;
274
275      TEXT_IO.PUT(
276         "TA1 - region_return_segment - return segment to region 1 - "
277      );
278      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_1 );
279      RTEMS.REGION.RETURN_SEGMENT(
280         SPTEST.REGION_ID( 1 ),
281         SEGMENT_ADDRESS_1,
282         STATUS
283      );
284      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_RETURN_SEGMENT" );
285      TEXT_IO.NEW_LINE;
286      -- SEGMENT_ADDRESS_1 := RTEMS.NULL_ADDRESS;
287
288      TEXT_IO.PUT(
289         "TA1 - region_return_segment - return segment to region 1 - "
290      );
291      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_2 );
292      RTEMS.REGION.RETURN_SEGMENT(
293         SPTEST.REGION_ID( 1 ),
294         SEGMENT_ADDRESS_2,
295         STATUS
296      );
297      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_RETURN_SEGMENT" );
298      TEXT_IO.NEW_LINE;
299      -- SEGMENT_ADDRESS_2 := RTEMS.NULL_ADDRESS;
300
301      TEXT_IO.PUT(
302         "TA1 - region_return_segment - return segment to region 1 - "
303      );
304      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_7 );
305      RTEMS.REGION.RETURN_SEGMENT(
306         SPTEST.REGION_ID( 1 ),
307         SEGMENT_ADDRESS_7,
308         STATUS
309      );
310      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_RETURN_SEGMENT" );
311      TEXT_IO.NEW_LINE;
312      -- SEGMENT_ADDRESS_7 := RTEMS.NULL_ADDRESS;
313
314      TEXT_IO.PUT(
315         "TA1 - region_return_segment - return segment to region 1 - "
316      );
317      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_6 );
318      RTEMS.REGION.RETURN_SEGMENT(
319         SPTEST.REGION_ID( 1 ),
320         SEGMENT_ADDRESS_6,
321         STATUS
322      );
323      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_RETURN_SEGMENT" );
324      TEXT_IO.NEW_LINE;
325      -- SEGMENT_ADDRESS_6 := RTEMS.NULL_ADDRESS;
326
327      TEXT_IO.PUT(
328         "TA1 - region_return_segment - return segment to region 1 - "
329      );
330      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_8 );
331      RTEMS.REGION.RETURN_SEGMENT(
332         SPTEST.REGION_ID( 1 ),
333         SEGMENT_ADDRESS_8,
334         STATUS
335      );
336      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_RETURN_SEGMENT" );
337      TEXT_IO.NEW_LINE;
338      -- SEGMENT_ADDRESS_8 := RTEMS.NULL_ADDRESS;
339
340      TEXT_IO.PUT(
341         "TA1 - region_return_segment - return segment to region 1 - "
342      );
343      SPTEST.PUT_ADDRESS_FROM_AREA_1( SEGMENT_ADDRESS_5 );
344      RTEMS.REGION.RETURN_SEGMENT(
345         SPTEST.REGION_ID( 1 ),
346         SEGMENT_ADDRESS_5,
347         STATUS
348      );
349      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_RETURN_SEGMENT" );
350      TEXT_IO.NEW_LINE;
351      -- SEGMENT_ADDRESS_5 := RTEMS.NULL_ADDRESS;
352
353      TEXT_IO.PUT_LINE(
354         "TA1 - region_delete - walks heap if debug enabled"
355      );
356      RTEMS.REGION.DELETE( SPTEST.REGION_ID( 1 ), STATUS );
357      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_DELETE OF RN1" );
358
359      TEXT_IO.PUT_LINE( "*** END OF TEST 25 ***" );
360      RTEMS.SHUTDOWN_EXECUTIVE( 0 );
361
362   end TASK_1;
363
364end SPTEST;
Note: See TracBrowser for help on using the repository browser.