summaryrefslogtreecommitdiffstats
path: root/c/src/tests/tmtests/tm27/task1.c
diff options
context:
space:
mode:
authorRalf Corsepius <ralf.corsepius@rtems.org>2003-11-11 00:59:06 +0000
committerRalf Corsepius <ralf.corsepius@rtems.org>2003-11-11 00:59:06 +0000
commite164eef409c072a5c1c7f3e905129df4a06478ab (patch)
tree493633b5b1c27c6954d7b779c943d6ad22966cee /c/src/tests/tmtests/tm27/task1.c
parent2003-11-10 Ralf Corsepius <corsepiu@faw.uni-ulm.de> (diff)
downloadrtems-e164eef409c072a5c1c7f3e905129df4a06478ab.tar.bz2
2003-11-10 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* include/.cvsignore: Remove. * include/Makefile.am: Remove. * include/timesys.h: Remove. * .cvsignore: Remove. * ChangeLog: Remove. * Makefile.am: Remove. * README: Remove. * configure.ac: Remove. * tmtests.am: Remove. * tm01/.cvsignore: Remove. * tm01/Makefile.am: Remove. * tm01/system.h: Remove. * tm01/task1.c: Remove. * tm01/tm01.doc: Remove. * tm02/.cvsignore: Remove. * tm02/Makefile.am: Remove. * tm02/system.h: Remove. * tm02/task1.c: Remove. * tm02/tm02.doc: Remove. * tm03/.cvsignore: Remove. * tm03/Makefile.am: Remove. * tm03/system.h: Remove. * tm03/task1.c: Remove. * tm03/tm03.doc: Remove. * tm04/.cvsignore: Remove. * tm04/Makefile.am: Remove. * tm04/system.h: Remove. * tm04/task1.c: Remove. * tm04/tm04.doc: Remove. * tm05/.cvsignore: Remove. * tm05/Makefile.am: Remove. * tm05/system.h: Remove. * tm05/task1.c: Remove. * tm05/tm05.doc: Remove. * tm06/.cvsignore: Remove. * tm06/Makefile.am: Remove. * tm06/system.h: Remove. * tm06/task1.c: Remove. * tm06/tm06.doc: Remove. * tm07/.cvsignore: Remove. * tm07/Makefile.am: Remove. * tm07/system.h: Remove. * tm07/task1.c: Remove. * tm07/tm07.doc: Remove. * tm08/.cvsignore: Remove. * tm08/Makefile.am: Remove. * tm08/system.h: Remove. * tm08/task1.c: Remove. * tm08/tm08.doc: Remove. * tm09/.cvsignore: Remove. * tm09/Makefile.am: Remove. * tm09/system.h: Remove. * tm09/task1.c: Remove. * tm09/tm09.doc: Remove. * tm10/.cvsignore: Remove. * tm10/Makefile.am: Remove. * tm10/system.h: Remove. * tm10/task1.c: Remove. * tm10/tm10.doc: Remove. * tm11/.cvsignore: Remove. * tm11/Makefile.am: Remove. * tm11/system.h: Remove. * tm11/task1.c: Remove. * tm11/tm11.doc: Remove. * tm12/.cvsignore: Remove. * tm12/Makefile.am: Remove. * tm12/system.h: Remove. * tm12/task1.c: Remove. * tm12/tm12.doc: Remove. * tm13/.cvsignore: Remove. * tm13/Makefile.am: Remove. * tm13/system.h: Remove. * tm13/task1.c: Remove. * tm13/tm13.doc: Remove. * tm14/.cvsignore: Remove. * tm14/Makefile.am: Remove. * tm14/system.h: Remove. * tm14/task1.c: Remove. * tm14/tm14.doc: Remove. * tm15/.cvsignore: Remove. * tm15/Makefile.am: Remove. * tm15/system.h: Remove. * tm15/task1.c: Remove. * tm15/tm15.doc: Remove. * tm16/.cvsignore: Remove. * tm16/Makefile.am: Remove. * tm16/system.h: Remove. * tm16/task1.c: Remove. * tm16/tm16.doc: Remove. * tm17/.cvsignore: Remove. * tm17/Makefile.am: Remove. * tm17/system.h: Remove. * tm17/task1.c: Remove. * tm17/tm17.doc: Remove. * tm18/.cvsignore: Remove. * tm18/Makefile.am: Remove. * tm18/system.h: Remove. * tm18/task1.c: Remove. * tm18/tm18.doc: Remove. * tm19/.cvsignore: Remove. * tm19/Makefile.am: Remove. * tm19/system.h: Remove. * tm19/task1.c: Remove. * tm19/tm19.doc: Remove. * tm20/.cvsignore: Remove. * tm20/Makefile.am: Remove. * tm20/system.h: Remove. * tm20/task1.c: Remove. * tm20/tm20.doc: Remove. * tm21/.cvsignore: Remove. * tm21/Makefile.am: Remove. * tm21/system.h: Remove. * tm21/task1.c: Remove. * tm21/tm21.doc: Remove. * tm22/.cvsignore: Remove. * tm22/Makefile.am: Remove. * tm22/system.h: Remove. * tm22/task1.c: Remove. * tm22/tm22.doc: Remove. * tm23/.cvsignore: Remove. * tm23/Makefile.am: Remove. * tm23/system.h: Remove. * tm23/task1.c: Remove. * tm23/tm23.doc: Remove. * tm24/.cvsignore: Remove. * tm24/Makefile.am: Remove. * tm24/system.h: Remove. * tm24/task1.c: Remove. * tm24/tm24.doc: Remove. * tm25/.cvsignore: Remove. * tm25/Makefile.am: Remove. * tm25/system.h: Remove. * tm25/task1.c: Remove. * tm25/tm25.doc: Remove. * tm26/.cvsignore: Remove. * tm26/Makefile.am: Remove. * tm26/fptest.h: Remove. * tm26/system.h: Remove. * tm26/task1.c: Remove. * tm26/tm26.doc: Remove. * tm27/.cvsignore: Remove. * tm27/Makefile.am: Remove. * tm27/system.h: Remove. * tm27/task1.c: Remove. * tm27/tm27.doc: Remove. * tm28/.cvsignore: Remove. * tm28/Makefile.am: Remove. * tm28/system.h: Remove. * tm28/task1.c: Remove. * tm28/tm28.doc: Remove. * tm29/.cvsignore: Remove. * tm29/Makefile.am: Remove. * tm29/system.h: Remove. * tm29/task1.c: Remove. * tm29/tm29.doc: Remove. * tmck/.cvsignore: Remove. * tmck/Makefile.am: Remove. * tmck/system.h: Remove. * tmck/task1.c: Remove. * tmck/tmck.doc: Remove. * tmoverhd/.cvsignore: Remove. * tmoverhd/Makefile.am: Remove. * tmoverhd/dumrtems.h: Remove. * tmoverhd/empty.c: Remove. * tmoverhd/system.h: Remove. * tmoverhd/testtask.c: Remove. * tmoverhd/tmoverhd.doc: Remove.
Diffstat (limited to 'c/src/tests/tmtests/tm27/task1.c')
-rw-r--r--c/src/tests/tmtests/tm27/task1.c279
1 files changed, 0 insertions, 279 deletions
diff --git a/c/src/tests/tmtests/tm27/task1.c b/c/src/tests/tmtests/tm27/task1.c
deleted file mode 100644
index 18ea62a162..0000000000
--- a/c/src/tests/tmtests/tm27/task1.c
+++ /dev/null
@@ -1,279 +0,0 @@
-/*
- *
- * COPYRIGHT (c) 1989-1999.
- * On-Line Applications Research Corporation (OAR).
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.com/license/LICENSE.
- *
- * $Id$
- */
-
-/*
- * WARNING!!!!!!!!!
- *
- * THIS TEST USES INTERNAL RTEMS VARIABLES!!!
- */
-
-#define TEST_INIT
-#define RTEMS_TM27
-#include "system.h"
-
-#include <bsp.h>
-
-rtems_task Task_1(
- rtems_task_argument argument
-);
-
-rtems_task Task_2(
- rtems_task_argument argument
-);
-
-volatile rtems_unsigned32 Interrupt_occurred;
-volatile rtems_unsigned32 Interrupt_enter_time, Interrupt_enter_nested_time;
-volatile rtems_unsigned32 Interrupt_return_time, Interrupt_return_nested_time;
-rtems_unsigned32 Interrupt_nest;
-rtems_unsigned32 timer_overhead;
-
-rtems_isr Isr_handler(
- rtems_vector_number vector
-);
-
-rtems_task Init(
- rtems_task_argument argument
-)
-{
- rtems_status_code status;
-
- Print_Warning();
-
- puts( "\n\n*** TIME TEST 27 ***" );
-
- status = rtems_task_create(
- rtems_build_name( 'T', 'A', '1', ' ' ),
- 254,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &Task_id[ 1 ]
- );
- directive_failed( status, "rtems_task_create Task_1" );
-
- status = rtems_task_start( Task_id[ 1 ], Task_1, 0 );
- directive_failed( status, "rtems_task_start Task_1" );
-
- status = rtems_task_create(
- rtems_build_name( 'T', 'A', '2', ' ' ),
- 254,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &Task_id[ 2 ]
- );
- directive_failed( status, "rtems_task_create of Task_2" );
-
- status = rtems_task_start( Task_id[ 2 ], Task_2, 0 );
- directive_failed( status, "rtems_task_start of Task_2" );
-
- Timer_initialize();
- Read_timer();
- Timer_initialize();
- timer_overhead = Read_timer();
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
-}
-
-rtems_task Task_1(
- rtems_task_argument argument
-)
-{
- Install_tm27_vector( Isr_handler );
-
- /*
- * No preempt .. no nesting
- */
-
- Interrupt_nest = 0;
-
- _Thread_Dispatch_disable_level = 0;
-
- Interrupt_occurred = 0;
-
- Timer_initialize();
- Cause_tm27_intr();
- /* goes to Isr_handler */
-
-#if (MUST_WAIT_FOR_INTERRUPT == 1)
- while ( Interrupt_occurred == 0 );
-#endif
- Interrupt_return_time = Read_timer();
-
- put_time(
- "interrupt entry overhead: returns to interrupted task",
- Interrupt_enter_time,
- 1,
- 0,
- timer_overhead
- );
-
- put_time(
- "interrupt exit overhead: returns to interrupted task",
- Interrupt_return_time,
- 1,
- 0,
- timer_overhead
- );
-
- /*
- * No preempt .. nested
- */
-
- _Thread_Dispatch_disable_level = 1;
-
- Interrupt_nest = 1;
-
- Interrupt_occurred = 0;
- Timer_initialize();
- Cause_tm27_intr();
- /* goes to Isr_handler */
-
-#if (MUST_WAIT_FOR_INTERRUPT == 1)
- while ( Interrupt_occurred == 0 );
-#endif
- Interrupt_return_time = Read_timer();
-
- put_time(
- "interrupt entry overhead: returns to nested interrupt",
- Interrupt_enter_nested_time,
- 1,
- 0,
- 0
- );
-
- put_time(
- "interrupt exit overhead: returns to nested interrupt",
- Interrupt_return_nested_time,
- 1,
- 0,
- 0
- );
-
- /*
- * Does a preempt .. not nested
- */
-
- _Thread_Dispatch_disable_level = 0;
-
- _Thread_Heir = (rtems_tcb *) _Thread_Ready_chain[254].last;
-
- _Context_Switch_necessary = 1;
-
- Interrupt_occurred = 0;
- Timer_initialize();
- Cause_tm27_intr();
-
- /*
- * goes to Isr_handler and then returns
- */
-
- puts( "*** END OF TEST 27 ***" );
- rtems_test_exit( 0 );
-}
-
-/*
- * NOTE: When this task is executing, some of the assumptions made
- * regarding the placement of the currently executing task's TCB
- * on the ready chains have been violated. At least the assumption
- * that this task is at the head of the chain for its priority
- * has been violated.
- */
-
-rtems_task Task_2(
- rtems_task_argument argument
-)
-{
-#if (MUST_WAIT_FOR_INTERRUPT == 1)
- while ( Interrupt_occurred == 0 );
-#endif
- end_time = Read_timer();
-
- put_time(
- "interrupt entry overhead: returns to preempting task",
- Interrupt_enter_time,
- 1,
- 0,
- timer_overhead
- );
-
- put_time(
- "interrupt exit overhead: returns to preempting task",
- end_time,
- 1,
- 0,
- 0
- );
-
- fflush( stdout );
-
- /*
- * Switch back to the other task to exit the test.
- */
-
- _Thread_Dispatch_disable_level = 0;
-
- _Thread_Heir = (rtems_tcb *) _Thread_Ready_chain[254].first;
-
- _Context_Switch_necessary = 1;
-
- _Thread_Dispatch();
-
-}
-
-/* The Isr_handler() and Isr_handler_inner() routines are structured
- * so that there will be as little entry overhead as possible included
- * in the interrupt entry time.
- */
-
-void Isr_handler_inner( void );
-
-rtems_isr Isr_handler(
- rtems_vector_number vector
-)
-{
- end_time = Read_timer();
-
- Interrupt_occurred = 1;
- Isr_handler_inner();
-}
-
-void Isr_handler_inner( void )
-{
-
- /*enable_tracing();*/
- Clear_tm27_intr();
- switch ( Interrupt_nest ) {
- case 0:
- Interrupt_enter_time = end_time;
- break;
- case 1:
- Interrupt_enter_time = end_time;
- Interrupt_nest = 2;
- Interrupt_occurred = 0;
- Lower_tm27_intr();
- Timer_initialize();
- Cause_tm27_intr();
- /* goes to a nested copy of Isr_handler */
-#if (MUST_WAIT_FOR_INTERRUPT == 1)
- while ( Interrupt_occurred == 0 );
-#endif
- Interrupt_return_nested_time = Read_timer();
- break;
- case 2:
- Interrupt_enter_nested_time = end_time;
- break;
- }
-
- Timer_initialize();
-}