[PATCH] clean up all the spatomic test cases
WeiY
wei.a.yang at gmail.com
Thu Jul 18 14:44:36 UTC 2013
---
c/src/lib/libbsp/bfin/acinclude.m4 | 4 +-
c/src/lib/libbsp/powerpc/acinclude.m4 | 4 +-
testsuites/sptests/Makefile.am | 4 +-
testsuites/sptests/configure.ac | 7 --
testsuites/sptests/spatomic01/Makefile.am | 24 ------
testsuites/sptests/spatomic01/init.c | 63 --------------
testsuites/sptests/spatomic01/spatomic01.doc | 23 -----
testsuites/sptests/spatomic01/spatomic01.scn | 70 ---------------
testsuites/sptests/spatomic01/system.h | 51 -----------
testsuites/sptests/spatomic01/tasks.c | 93 --------------------
testsuites/sptests/spatomic02/Makefile.am | 24 ------
testsuites/sptests/spatomic02/init.c | 68 ---------------
testsuites/sptests/spatomic02/spatomic02.doc | 23 -----
testsuites/sptests/spatomic02/spatomic02.scn | 70 ---------------
testsuites/sptests/spatomic02/system.h | 51 -----------
testsuites/sptests/spatomic02/tasks.c | 94 ---------------------
testsuites/sptests/spatomic03/Makefile.am | 24 ------
testsuites/sptests/spatomic03/init.c | 68 ---------------
testsuites/sptests/spatomic03/spatomic03.doc | 23 -----
testsuites/sptests/spatomic03/spatomic03.scn | 102 ----------------------
testsuites/sptests/spatomic03/system.h | 51 -----------
testsuites/sptests/spatomic03/tasks.c | 102 ----------------------
testsuites/sptests/spatomic04/Makefile.am | 24 ------
testsuites/sptests/spatomic04/init.c | 68 ---------------
testsuites/sptests/spatomic04/spatomic04.doc | 23 -----
testsuites/sptests/spatomic04/spatomic04.scn | 102 ----------------------
testsuites/sptests/spatomic04/system.h | 51 -----------
testsuites/sptests/spatomic04/tasks.c | 102 ----------------------
testsuites/sptests/spatomic05/Makefile.am | 24 ------
testsuites/sptests/spatomic05/init.c | 68 ---------------
testsuites/sptests/spatomic05/spatomic05.doc | 23 -----
testsuites/sptests/spatomic05/spatomic05.scn | 102 ----------------------
testsuites/sptests/spatomic05/system.h | 51 -----------
testsuites/sptests/spatomic05/tasks.c | 101 ----------------------
testsuites/sptests/spatomic06/Makefile.am | 24 ------
testsuites/sptests/spatomic06/init.c | 68 ---------------
testsuites/sptests/spatomic06/spatomic06.doc | 23 -----
testsuites/sptests/spatomic06/spatomic06.scn | 102 ----------------------
testsuites/sptests/spatomic06/system.h | 51 -----------
testsuites/sptests/spatomic06/tasks.c | 101 ----------------------
testsuites/sptests/spatomic07/Makefile.am | 24 ------
testsuites/sptests/spatomic07/init.c | 68 ---------------
testsuites/sptests/spatomic07/spatomic07.doc | 24 ------
testsuites/sptests/spatomic07/spatomic07.scn | 102 ----------------------
testsuites/sptests/spatomic07/system.h | 51 -----------
testsuites/sptests/spatomic07/tasks.c | 117 --------------------------
46 files changed, 5 insertions(+), 2532 deletions(-)
delete mode 100644 testsuites/sptests/spatomic01/Makefile.am
delete mode 100644 testsuites/sptests/spatomic01/init.c
delete mode 100644 testsuites/sptests/spatomic01/spatomic01.doc
delete mode 100644 testsuites/sptests/spatomic01/spatomic01.scn
delete mode 100644 testsuites/sptests/spatomic01/system.h
delete mode 100644 testsuites/sptests/spatomic01/tasks.c
delete mode 100644 testsuites/sptests/spatomic02/Makefile.am
delete mode 100644 testsuites/sptests/spatomic02/init.c
delete mode 100644 testsuites/sptests/spatomic02/spatomic02.doc
delete mode 100644 testsuites/sptests/spatomic02/spatomic02.scn
delete mode 100644 testsuites/sptests/spatomic02/system.h
delete mode 100644 testsuites/sptests/spatomic02/tasks.c
delete mode 100644 testsuites/sptests/spatomic03/Makefile.am
delete mode 100644 testsuites/sptests/spatomic03/init.c
delete mode 100644 testsuites/sptests/spatomic03/spatomic03.doc
delete mode 100644 testsuites/sptests/spatomic03/spatomic03.scn
delete mode 100644 testsuites/sptests/spatomic03/system.h
delete mode 100644 testsuites/sptests/spatomic03/tasks.c
delete mode 100644 testsuites/sptests/spatomic04/Makefile.am
delete mode 100644 testsuites/sptests/spatomic04/init.c
delete mode 100644 testsuites/sptests/spatomic04/spatomic04.doc
delete mode 100644 testsuites/sptests/spatomic04/spatomic04.scn
delete mode 100644 testsuites/sptests/spatomic04/system.h
delete mode 100644 testsuites/sptests/spatomic04/tasks.c
delete mode 100644 testsuites/sptests/spatomic05/Makefile.am
delete mode 100644 testsuites/sptests/spatomic05/init.c
delete mode 100644 testsuites/sptests/spatomic05/spatomic05.doc
delete mode 100644 testsuites/sptests/spatomic05/spatomic05.scn
delete mode 100644 testsuites/sptests/spatomic05/system.h
delete mode 100644 testsuites/sptests/spatomic05/tasks.c
delete mode 100644 testsuites/sptests/spatomic06/Makefile.am
delete mode 100644 testsuites/sptests/spatomic06/init.c
delete mode 100644 testsuites/sptests/spatomic06/spatomic06.doc
delete mode 100644 testsuites/sptests/spatomic06/spatomic06.scn
delete mode 100644 testsuites/sptests/spatomic06/system.h
delete mode 100644 testsuites/sptests/spatomic06/tasks.c
delete mode 100644 testsuites/sptests/spatomic07/Makefile.am
delete mode 100644 testsuites/sptests/spatomic07/init.c
delete mode 100644 testsuites/sptests/spatomic07/spatomic07.doc
delete mode 100644 testsuites/sptests/spatomic07/spatomic07.scn
delete mode 100644 testsuites/sptests/spatomic07/system.h
delete mode 100644 testsuites/sptests/spatomic07/tasks.c
diff --git a/c/src/lib/libbsp/bfin/acinclude.m4 b/c/src/lib/libbsp/bfin/acinclude.m4
index 828fd89..ab6082e 100644
--- a/c/src/lib/libbsp/bfin/acinclude.m4
+++ b/c/src/lib/libbsp/bfin/acinclude.m4
@@ -2,12 +2,12 @@
AC_DEFUN([RTEMS_CHECK_BSPDIR],
[
case "$1" in
+ TLL6527M )
+ AC_CONFIG_SUBDIRS([TLL6527M]);;
bf537Stamp )
AC_CONFIG_SUBDIRS([bf537Stamp]);;
eZKit533 )
AC_CONFIG_SUBDIRS([eZKit533]);;
- TLL6527M )
- AC_CONFIG_SUBDIRS([TLL6527M]);;
*)
AC_MSG_ERROR([Invalid BSP]);;
esac
diff --git a/c/src/lib/libbsp/powerpc/acinclude.m4 b/c/src/lib/libbsp/powerpc/acinclude.m4
index e46fa2b..6442399 100644
--- a/c/src/lib/libbsp/powerpc/acinclude.m4
+++ b/c/src/lib/libbsp/powerpc/acinclude.m4
@@ -38,12 +38,12 @@ AC_DEFUN([RTEMS_CHECK_BSPDIR],
AC_CONFIG_SUBDIRS([t32mppc]);;
tqm8xx )
AC_CONFIG_SUBDIRS([tqm8xx]);;
+ virtex )
+ AC_CONFIG_SUBDIRS([virtex]);;
virtex4 )
AC_CONFIG_SUBDIRS([virtex4]);;
virtex5 )
AC_CONFIG_SUBDIRS([virtex5]);;
- virtex )
- AC_CONFIG_SUBDIRS([virtex]);;
*)
AC_MSG_ERROR([Invalid BSP]);;
esac
diff --git a/testsuites/sptests/Makefile.am b/testsuites/sptests/Makefile.am
index 8e61968..e0dfb05 100644
--- a/testsuites/sptests/Makefile.am
+++ b/testsuites/sptests/Makefile.am
@@ -27,9 +27,7 @@ SUBDIRS = \
spintrcritical17 spintrcritical18 spmkdir spmountmgr01 spheapprot \
spsem01 spsem02 spsimplesched01 spsimplesched02 spsimplesched03 spnsext01 \
spedfsched01 spedfsched02 spedfsched03 \
- spcbssched01 spcbssched02 spcbssched03 spqreslib sptimespec01 \
- spatomic01 spatomic02 spatomic03 spatomic04 spatomic05 \
- spatomic06 spatomic07
+ spcbssched01 spcbssched02 spcbssched03 spqreslib sptimespec01
SUBDIRS += spcontext01
SUBDIRS += spfatal26
SUBDIRS += speventtransient01
diff --git a/testsuites/sptests/configure.ac b/testsuites/sptests/configure.ac
index db44659..c2a2f11 100644
--- a/testsuites/sptests/configure.ac
+++ b/testsuites/sptests/configure.ac
@@ -117,13 +117,6 @@ sp76/Makefile
sp77/Makefile
sp2038/Makefile
spassoc01/Makefile
-spatomic01/Makefile
-spatomic02/Makefile
-spatomic03/Makefile
-spatomic04/Makefile
-spatomic05/Makefile
-spatomic06/Makefile
-spatomic07/Makefile
spcbssched01/Makefile
spcbssched02/Makefile
spcbssched03/Makefile
diff --git a/testsuites/sptests/spatomic01/Makefile.am b/testsuites/sptests/spatomic01/Makefile.am
deleted file mode 100644
index 3bf1e11..0000000
--- a/testsuites/sptests/spatomic01/Makefile.am
+++ /dev/null
@@ -1,24 +0,0 @@
-if ATOMIC
-rtems_tests_PROGRAMS = spatomic01
-spatomic01_SOURCES = init.c tasks.c system.h
-
-dist_rtems_tests_DATA = spatomic01.scn
-dist_rtems_tests_DATA += spatomic01.doc
-endif
-
-include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP at .cfg
-include $(top_srcdir)/../automake/compile.am
-include $(top_srcdir)/../automake/leaf.am
-
-if ATOMIC
-AM_CPPFLAGS += -I$(top_srcdir)/../support/include
-
-LINK_OBJS = $(spatomic01_OBJECTS)
-LINK_LIBS = $(spatomic01_LDLIBS)
-
-spatomic01$(EXEEXT): $(spatomic01_OBJECTS) $(spatomic01_DEPENDENCIES)
- @rm -f spatomic01$(EXEEXT)
- $(make-exe)
-endif
-
-include $(top_srcdir)/../automake/local.am
diff --git a/testsuites/sptests/spatomic01/init.c b/testsuites/sptests/spatomic01/init.c
deleted file mode 100644
index 7326bf7..0000000
--- a/testsuites/sptests/spatomic01/init.c
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic load operation.
- *
- * 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.
- *
- */
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#define CONFIGURE_INIT
-#include "system.h"
-
-rtems_task Init(
- rtems_task_argument argument
-)
-{
- int i;
- char ch;
- rtems_id id;
- rtems_status_code status;
-
- /* Put start of test message */
- puts( "\n\n*** spatomic01 TEST ***\n" );
-
- /* Create and start tasks to test */
- for ( i=0; i< TASK_NUMS ; i++ ) {
- ch = '0' + i;
-
- status = rtems_task_create(
- rtems_build_name( 'T', 'A', ch, ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Test_task, i );
- directive_failed( status, "task start" );
- }
-
- status = rtems_task_create(
- rtems_build_name( 'A', 'T', '0', ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Wait_task, 0 );
- directive_failed( status, "task start" );
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
diff --git a/testsuites/sptests/spatomic01/spatomic01.doc b/testsuites/sptests/spatomic01/spatomic01.doc
deleted file mode 100644
index dc322a3..0000000
--- a/testsuites/sptests/spatomic01/spatomic01.doc
+++ /dev/null
@@ -1,23 +0,0 @@
-# COPYRIGHT (c) 1989-2012.
-# 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.
-#
-
-This file describes the directives and concepts tested by this test set.
-
-test set name: spatomic01
-
-directives:
-
- _Atomic_Load_int
- _Atomic_Load_long
- _Atomic_Load_ptr
- _Atomic_Load_32
- _Atomic_Load_64
-
-concepts:
-
-+ Ensure that the atomic load operations listed above behave as defined.
diff --git a/testsuites/sptests/spatomic01/spatomic01.scn b/testsuites/sptests/spatomic01/spatomic01.scn
deleted file mode 100644
index 9979d80..0000000
--- a/testsuites/sptests/spatomic01/spatomic01.scn
+++ /dev/null
@@ -1,70 +0,0 @@
-*** spatomic01 TEST ***
-
-
-task0: _Atomic_Load_int: SUCCESS
-
-task0: _Atomic_Load_long: SUCCESS
-
-task0: _Atomic_Load_ptr: SUCCESS
-
-task0: _Atomic_Load_32: SUCCESS
-
-task0: _Atomic_Load_int: SUCCESS
-
-task0: _Atomic_Load_long: SUCCESS
-
-task0: _Atomic_Load_ptr: SUCCESS
-
-task0: _Atomic_Load_32: SUCCESS
-
-task1: _Atomic_Load_int: SUCCESS
-
-task1: _Atomic_Load_long: SUCCESS
-
-task1: _Atomic_Load_ptr: SUCCESS
-
-task1: _Atomic_Load_32: SUCCESS
-
-task1: _Atomic_Load_int: SUCCESS
-
-task1: _Atomic_Load_long: SUCCESS
-
-task1: _Atomic_Load_ptr: SUCCESS
-
-task1: _Atomic_Load_32: SUCCESS
-
-task2: _Atomic_Load_int: SUCCESS
-
-task2: _Atomic_Load_long: SUCCESS
-
-task2: _Atomic_Load_ptr: SUCCESS
-
-task2: _Atomic_Load_32: SUCCESS
-
-task2: _Atomic_Load_int: SUCCESS
-
-task2: _Atomic_Load_long: SUCCESS
-
-task2: _Atomic_Load_ptr: SUCCESS
-
-task2: _Atomic_Load_32: SUCCESS
-
-task3: _Atomic_Load_int: SUCCESS
-
-task3: _Atomic_Load_long: SUCCESS
-
-task3: _Atomic_Load_ptr: SUCCESS
-
-task3: _Atomic_Load_32: SUCCESS
-
-task3: _Atomic_Load_int: SUCCESS
-
-task3: _Atomic_Load_long: SUCCESS
-
-task3: _Atomic_Load_ptr: SUCCESS
-
-task3: _Atomic_Load_32: SUCCESS
-
-
-*** END OF TEST spatomic01 ***
-
diff --git a/testsuites/sptests/spatomic01/system.h b/testsuites/sptests/spatomic01/system.h
deleted file mode 100644
index 55931f2..0000000
--- a/testsuites/sptests/spatomic01/system.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * COPYRIGHT (c) 1989-2011.
- * 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.
- */
-
-#include "tmacros.h"
-#include "test_support.h"
-
-/* functions */
-
-rtems_task Init(
- rtems_task_argument argument
-);
-
-rtems_task Test_task(
- rtems_task_argument argument
-);
-
-rtems_task Wait_task(
- rtems_task_argument argument
-);
-/* configuration information */
-#define TASK_NUMS 4
-
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-
-#define CONFIGURE_MAXIMUM_TASKS \
- (2 + TASK_NUMS)
-
-#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-
-#include <rtems/confdefs.h>
-
-/* global variables */
-
-/*
- * Keep the names and IDs in global variables so another task can use them.
- */
-
-TEST_EXTERN volatile bool TaskRan[ TASK_NUMS ];
-
-/*
- * Handy macros and static inline functions
- */
-
-/* end of include file */
diff --git a/testsuites/sptests/spatomic01/tasks.c b/testsuites/sptests/spatomic01/tasks.c
deleted file mode 100644
index 9392a5b..0000000
--- a/testsuites/sptests/spatomic01/tasks.c
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic load operation.
- *
- * 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.
- *
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "system.h"
-
-#include <stdlib.h>
-#include <rtems/rtems/atomic.h>
-
-#define TEST_REPEAT 1000
-
-#define ATOMIC_LOAD_NO_BARRIER(NAME, TYPE, R_TYPE, task_id, mem_bar) \
-{ \
- Atomic_##TYPE t; \
- R_TYPE a; \
- R_TYPE b; \
- unsigned int i; \
- for (i = 0; i < TEST_REPEAT; i++){ \
- b = (R_TYPE)rand(); \
- atomic_init(&t, b); \
- a = _Atomic_Load_##NAME(&t, mem_bar); \
- rtems_test_assert(a == b); \
- } \
- printf("\ntask%d: Atomic_Load_" #NAME ": SUCCESS\n", (unsigned int)task_id); \
-}
-
-rtems_task Test_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- rtems_status_code status;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Print that the task is up and running. */
- /* test relaxed barrier */
- ATOMIC_LOAD_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELAXED);
-
- ATOMIC_LOAD_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELAXED);
-
- /* test acquire barrier */
- ATOMIC_LOAD_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_ACQUIRE);
-
- ATOMIC_LOAD_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_ACQUIRE);
-
- /* Set the flag that the task is up and running */
- TaskRan[argument] = true;
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
-
-rtems_task Wait_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- bool allDone;
- int i;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Wait on the all tasks to run */
- while (1) {
- allDone = true;
- for ( i=0; i<TASK_NUMS ; i++ ) {
- if (TaskRan[i] == false)
- allDone = false;
- }
- if (allDone) {
- puts( "\n\n*** END OF TEST spatomic01 ***\n" );
- rtems_test_exit( 0 );
- }
- }
-}
diff --git a/testsuites/sptests/spatomic02/Makefile.am b/testsuites/sptests/spatomic02/Makefile.am
deleted file mode 100644
index cf3e655..0000000
--- a/testsuites/sptests/spatomic02/Makefile.am
+++ /dev/null
@@ -1,24 +0,0 @@
-if ATOMIC
-rtems_tests_PROGRAMS = spatomic02
-spatomic02_SOURCES = init.c tasks.c system.h
-
-dist_rtems_tests_DATA = spatomic02.scn
-dist_rtems_tests_DATA += spatomic02.doc
-endif
-
-include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP at .cfg
-include $(top_srcdir)/../automake/compile.am
-include $(top_srcdir)/../automake/leaf.am
-
-if ATOMIC
-AM_CPPFLAGS += -I$(top_srcdir)/../support/include
-
-LINK_OBJS = $(spatomic02_OBJECTS)
-LINK_LIBS = $(spatomic02_LDLIBS)
-
-spatomic02$(EXEEXT): $(spatomic02_OBJECTS) $(spatomic02_DEPENDENCIES)
- @rm -f spatomic01$(EXEEXT)
- $(make-exe)
-endif
-
-include $(top_srcdir)/../automake/local.am
diff --git a/testsuites/sptests/spatomic02/init.c b/testsuites/sptests/spatomic02/init.c
deleted file mode 100644
index 7eec1ea..0000000
--- a/testsuites/sptests/spatomic02/init.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic store operation.
- *
- * 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.
- *
- */
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#define CONFIGURE_INIT
-#include "system.h"
-
-rtems_task Init(
- rtems_task_argument argument
-)
-{
- int i;
- char ch;
- rtems_id id;
- rtems_status_code status;
-
- /* Put start of test message */
- puts( "\n\n*** spatomic02 TEST ***\n" );
-
- /* Initialize the TaskRan array */
- for ( i=0; i<TASK_NUMS ; i++ ) {
- TaskRan[i] = false;
- }
-
- /* Create and start tasks for each processor */
- for ( i=0; i< TASK_NUMS ; i++ ) {
- ch = '0' + i;
-
- status = rtems_task_create(
- rtems_build_name( 'T', 'A', ch, ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Test_task, i );
- directive_failed( status, "task start" );
- }
-
- status = rtems_task_create(
- rtems_build_name( 'A', 'T', '0', ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Wait_task, 0 );
- directive_failed( status, "task start" );
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
diff --git a/testsuites/sptests/spatomic02/spatomic02.doc b/testsuites/sptests/spatomic02/spatomic02.doc
deleted file mode 100644
index 70e6744..0000000
--- a/testsuites/sptests/spatomic02/spatomic02.doc
+++ /dev/null
@@ -1,23 +0,0 @@
-# COPYRIGHT (c) 1989-2012.
-# 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.
-#
-
-This file describes the directives and concepts tested by this test set.
-
-test set name: spatomic02
-
-directives:
-
- _Atomic_Store_int
- _Atomic_Store_long
- _Atomic_Store_ptr
- _Atomic_Store_32
- _Atomic_Store_64
-
-concepts:
-
-+ Ensure that the atomic store operations listed above behave as defined.
diff --git a/testsuites/sptests/spatomic02/spatomic02.scn b/testsuites/sptests/spatomic02/spatomic02.scn
deleted file mode 100644
index 31ba7e9..0000000
--- a/testsuites/sptests/spatomic02/spatomic02.scn
+++ /dev/null
@@ -1,70 +0,0 @@
-*** spatomic02 TEST ***
-
-
-task0: _Atomic_Store_int: SUCCESS
-
-task0: _Atomic_Store_long: SUCCESS
-
-task0: _Atomic_Store_ptr: SUCCESS
-
-task0: _Atomic_Store_32: SUCCESS
-
-task0: _Atomic_Store_int: SUCCESS
-
-task0: _Atomic_Store_long: SUCCESS
-
-task0: _Atomic_Store_ptr: SUCCESS
-
-task0: _Atomic_Store_32: SUCCESS
-
-task1: _Atomic_Store_int: SUCCESS
-
-task1: _Atomic_Store_long: SUCCESS
-
-task1: _Atomic_Store_ptr: SUCCESS
-
-task1: _Atomic_Store_32: SUCCESS
-
-task1: _Atomic_Store_int: SUCCESS
-
-task1: _Atomic_Store_long: SUCCESS
-
-task1: _Atomic_Store_ptr: SUCCESS
-
-task1: _Atomic_Store_32: SUCCESS
-
-task2: _Atomic_Store_int: SUCCESS
-
-task2: _Atomic_Store_long: SUCCESS
-
-task2: _Atomic_Store_ptr: SUCCESS
-
-task2: _Atomic_Store_32: SUCCESS
-
-task2: _Atomic_Store_int: SUCCESS
-
-task2: _Atomic_Store_long: SUCCESS
-
-task2: _Atomic_Store_ptr: SUCCESS
-
-task2: _Atomic_Store_32: SUCCESS
-
-task3: _Atomic_Store_int: SUCCESS
-
-task3: _Atomic_Store_long: SUCCESS
-
-task3: _Atomic_Store_ptr: SUCCESS
-
-task3: _Atomic_Store_32: SUCCESS
-
-task3: _Atomic_Store_int: SUCCESS
-
-task3: _Atomic_Store_long: SUCCESS
-
-task3: _Atomic_Store_ptr: SUCCESS
-
-task3: _Atomic_Store_32: SUCCESS
-
-
-*** END OF TEST spatomic02 ***
-
diff --git a/testsuites/sptests/spatomic02/system.h b/testsuites/sptests/spatomic02/system.h
deleted file mode 100644
index 55931f2..0000000
--- a/testsuites/sptests/spatomic02/system.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * COPYRIGHT (c) 1989-2011.
- * 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.
- */
-
-#include "tmacros.h"
-#include "test_support.h"
-
-/* functions */
-
-rtems_task Init(
- rtems_task_argument argument
-);
-
-rtems_task Test_task(
- rtems_task_argument argument
-);
-
-rtems_task Wait_task(
- rtems_task_argument argument
-);
-/* configuration information */
-#define TASK_NUMS 4
-
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-
-#define CONFIGURE_MAXIMUM_TASKS \
- (2 + TASK_NUMS)
-
-#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-
-#include <rtems/confdefs.h>
-
-/* global variables */
-
-/*
- * Keep the names and IDs in global variables so another task can use them.
- */
-
-TEST_EXTERN volatile bool TaskRan[ TASK_NUMS ];
-
-/*
- * Handy macros and static inline functions
- */
-
-/* end of include file */
diff --git a/testsuites/sptests/spatomic02/tasks.c b/testsuites/sptests/spatomic02/tasks.c
deleted file mode 100644
index 558b718..0000000
--- a/testsuites/sptests/spatomic02/tasks.c
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic store operation.
- *
- * 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.
- *
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "system.h"
-
-#include <stdlib.h>
-#include <rtems/rtems/atomic.h>
-
-#define TEST_REPEAT 1000
-
-#define ATOMIC_STORE_NO_BARRIER(NAME, TYPE, R_TYPE, task_id, mem_bar) \
-{ \
- Atomic_##TYPE t; \
- R_TYPE a; \
- R_TYPE b; \
- unsigned int i; \
- for (i = 0; i < TEST_REPEAT; i++){ \
- b = (R_TYPE)rand(); \
- _Atomic_Store_##NAME(&t, b, mem_bar); \
- a = _Atomic_Load_##NAME(&t, memory_order_relaxed); \
- rtems_test_assert(a == b); \
- } \
- printf("\ntask%d: Atomic_Store_" #NAME ": SUCCESS\n", (unsigned int)task_id); \
-}
-
-rtems_task Test_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- rtems_status_code status;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Print that the task is up and running. */
- /* test relaxed barrier */
- ATOMIC_STORE_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELAXED);
-
- ATOMIC_STORE_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELAXED);
-
- /* test release barrier */
- ATOMIC_STORE_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELEASE);
-
- ATOMIC_STORE_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELEASE);
-
- /* Set the flag that the task is up and running */
- TaskRan[argument] = true;
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
-
-rtems_task Wait_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- bool allDone;
- int i;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Wait on the all tasks to run */
- while (1) {
- allDone = true;
- for ( i=0; i<TASK_NUMS ; i++ ) {
- if (TaskRan[i] == false)
- allDone = false;
- }
- if (allDone) {
- puts( "\n\n*** END OF TEST spatomic02 ***\n" );
- rtems_test_exit( 0 );
- }
- }
-}
-
diff --git a/testsuites/sptests/spatomic03/Makefile.am b/testsuites/sptests/spatomic03/Makefile.am
deleted file mode 100644
index 15b3b47..0000000
--- a/testsuites/sptests/spatomic03/Makefile.am
+++ /dev/null
@@ -1,24 +0,0 @@
-if ATOMIC
-rtems_tests_PROGRAMS = spatomic03
-spatomic03_SOURCES = init.c tasks.c system.h
-
-dist_rtems_tests_DATA = spatomic03.scn
-dist_rtems_tests_DATA += spatomic03.doc
-endif
-
-include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP at .cfg
-include $(top_srcdir)/../automake/compile.am
-include $(top_srcdir)/../automake/leaf.am
-
-if ATOMIC
-AM_CPPFLAGS += -I$(top_srcdir)/../support/include
-
-LINK_OBJS = $(spatomic03_OBJECTS)
-LINK_LIBS = $(spatomic03_LDLIBS)
-
-spatomic03$(EXEEXT): $(spatomic03_OBJECTS) $(spatomic03_DEPENDENCIES)
- @rm -f spatomic03$(EXEEXT)
- $(make-exe)
-endif
-
-include $(top_srcdir)/../automake/local.am
diff --git a/testsuites/sptests/spatomic03/init.c b/testsuites/sptests/spatomic03/init.c
deleted file mode 100644
index 946797e..0000000
--- a/testsuites/sptests/spatomic03/init.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic add operation.
- *
- * 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.
- *
- */
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#define CONFIGURE_INIT
-#include "system.h"
-
-rtems_task Init(
- rtems_task_argument argument
-)
-{
- int i;
- char ch;
- rtems_id id;
- rtems_status_code status;
-
- /* Put start of test message */
- puts( "\n\n*** spatomic03 TEST ***\n" );
-
- /* Initialize the TaskRan array */
- for ( i=0; i<TASK_NUMS ; i++ ) {
- TaskRan[i] = false;
- }
-
- /* Create and start tasks for each processor */
- for ( i=0; i< TASK_NUMS ; i++ ) {
- ch = '0' + i;
-
- status = rtems_task_create(
- rtems_build_name( 'T', 'A', ch, ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Test_task, i );
- directive_failed( status, "task start" );
- }
-
- status = rtems_task_create(
- rtems_build_name( 'A', 'T', '0', ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Wait_task, 0 );
- directive_failed( status, "task start" );
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
diff --git a/testsuites/sptests/spatomic03/spatomic03.doc b/testsuites/sptests/spatomic03/spatomic03.doc
deleted file mode 100644
index 130dca9..0000000
--- a/testsuites/sptests/spatomic03/spatomic03.doc
+++ /dev/null
@@ -1,23 +0,0 @@
-# COPYRIGHT (c) 1989-2012.
-# 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.
-#
-
-This file describes the directives and concepts tested by this test set.
-
-test set name: spatomic03
-
-directives:
-
- _Atomic_Fetch_add_int
- _Atomic_Fetch_add_long
- _Atomic_Fetch_add_ptr
- _Atomic_Fetch_add_32
- _Atomic_Fetch_add_64
-
-concepts:
-
-+ Ensure that the atomic add operations listed above behave as defined.
diff --git a/testsuites/sptests/spatomic03/spatomic03.scn b/testsuites/sptests/spatomic03/spatomic03.scn
deleted file mode 100644
index 69216e5..0000000
--- a/testsuites/sptests/spatomic03/spatomic03.scn
+++ /dev/null
@@ -1,102 +0,0 @@
-*** spatomic03 TEST ***
-
-
-task0: _Atomic_Fetch_add_int: SUCCESS
-
-task0: _Atomic_Fetch_add_long: SUCCESS
-
-task0: _Atomic_Fetch_add_ptr: SUCCESS
-
-task0: _Atomic_Fetch_add_32: SUCCESS
-
-task0: _Atomic_Fetch_add_int: SUCCESS
-
-task0: _Atomic_Fetch_add_long: SUCCESS
-
-task0: _Atomic_Fetch_add_ptr: SUCCESS
-
-task0: _Atomic_Fetch_add_32: SUCCESS
-
-task0: _Atomic_Fetch_add_int: SUCCESS
-
-task0: _Atomic_Fetch_add_long: SUCCESS
-
-task0: _Atomic_Fetch_add_ptr: SUCCESS
-
-task0: _Atomic_Fetch_add_32: SUCCESS
-
-task1: _Atomic_Fetch_add_int: SUCCESS
-
-task1: _Atomic_Fetch_add_long: SUCCESS
-
-task1: _Atomic_Fetch_add_ptr: SUCCESS
-
-task1: _Atomic_Fetch_add_32: SUCCESS
-
-task1: _Atomic_Fetch_add_int: SUCCESS
-
-task1: _Atomic_Fetch_add_long: SUCCESS
-
-task1: _Atomic_Fetch_add_ptr: SUCCESS
-
-task1: _Atomic_Fetch_add_32: SUCCESS
-
-task1: _Atomic_Fetch_add_int: SUCCESS
-
-task1: _Atomic_Fetch_add_long: SUCCESS
-
-task1: _Atomic_Fetch_add_ptr: SUCCESS
-
-task1: _Atomic_Fetch_add_32: SUCCESS
-
-task2: _Atomic_Fetch_add_int: SUCCESS
-
-task2: _Atomic_Fetch_add_long: SUCCESS
-
-task2: _Atomic_Fetch_add_ptr: SUCCESS
-
-task2: _Atomic_Fetch_add_32: SUCCESS
-
-task2: _Atomic_Fetch_add_int: SUCCESS
-
-task2: _Atomic_Fetch_add_long: SUCCESS
-
-task2: _Atomic_Fetch_add_ptr: SUCCESS
-
-task2: _Atomic_Fetch_add_32: SUCCESS
-
-task2: _Atomic_Fetch_add_int: SUCCESS
-
-task2: _Atomic_Fetch_add_long: SUCCESS
-
-task2: _Atomic_Fetch_add_ptr: SUCCESS
-
-task2: _Atomic_Fetch_add_32: SUCCESS
-
-task3: _Atomic_Fetch_add_int: SUCCESS
-
-task3: _Atomic_Fetch_add_long: SUCCESS
-
-task3: _Atomic_Fetch_add_ptr: SUCCESS
-
-task3: _Atomic_Fetch_add_32: SUCCESS
-
-task3: _Atomic_Fetch_add_int: SUCCESS
-
-task3: _Atomic_Fetch_add_long: SUCCESS
-
-task3: _Atomic_Fetch_add_ptr: SUCCESS
-
-task3: _Atomic_Fetch_add_32: SUCCESS
-
-task3: _Atomic_Fetch_add_int: SUCCESS
-
-task3: _Atomic_Fetch_add_long: SUCCESS
-
-task3: _Atomic_Fetch_add_ptr: SUCCESS
-
-task3: _Atomic_Fetch_add_32: SUCCESS
-
-
-*** END OF TEST spatomic03 ***
-
diff --git a/testsuites/sptests/spatomic03/system.h b/testsuites/sptests/spatomic03/system.h
deleted file mode 100644
index 55931f2..0000000
--- a/testsuites/sptests/spatomic03/system.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * COPYRIGHT (c) 1989-2011.
- * 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.
- */
-
-#include "tmacros.h"
-#include "test_support.h"
-
-/* functions */
-
-rtems_task Init(
- rtems_task_argument argument
-);
-
-rtems_task Test_task(
- rtems_task_argument argument
-);
-
-rtems_task Wait_task(
- rtems_task_argument argument
-);
-/* configuration information */
-#define TASK_NUMS 4
-
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-
-#define CONFIGURE_MAXIMUM_TASKS \
- (2 + TASK_NUMS)
-
-#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-
-#include <rtems/confdefs.h>
-
-/* global variables */
-
-/*
- * Keep the names and IDs in global variables so another task can use them.
- */
-
-TEST_EXTERN volatile bool TaskRan[ TASK_NUMS ];
-
-/*
- * Handy macros and static inline functions
- */
-
-/* end of include file */
diff --git a/testsuites/sptests/spatomic03/tasks.c b/testsuites/sptests/spatomic03/tasks.c
deleted file mode 100644
index d03cf54..0000000
--- a/testsuites/sptests/spatomic03/tasks.c
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic add operation.
- *
- * 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.
- *
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "system.h"
-
-#include <stdlib.h>
-#include <rtems/rtems/atomic.h>
-
-#define TEST_REPEAT 1000
-
-#define ATOMIC_FETCH_ADD_NO_BARRIER(NAME, TYPE, R_TYPE, task_id, mem_bar)\
-{ \
- Atomic_##TYPE t; \
- R_TYPE a; \
- R_TYPE b; \
- R_TYPE c; \
- unsigned int i; \
- for (i = 0; i < TEST_REPEAT; i++){ \
- a = (R_TYPE)(rand() % ((R_TYPE)-1 / 2)); \
- b = (R_TYPE)(rand() % ((R_TYPE)-1 / 2)); \
- _Atomic_Store_##NAME(&t, a, ATOMIC_ORDER_RELAXED); \
- _Atomic_Fetch_add_##NAME(&t, b, mem_bar); \
- c = _Atomic_Load_##NAME(&t, ATOMIC_ORDER_RELAXED); \
- rtems_test_assert(c == (R_TYPE)(a + b)); \
- } \
- printf("\ntask%d: Atomic_Fetch_add_" #NAME ": SUCCESS\n", (unsigned int)task_id); \
-}
-
-rtems_task Test_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- rtems_status_code status;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Print that the task is up and running. */
- /* test relaxed barrier */
- ATOMIC_FETCH_ADD_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELAXED);
-
- ATOMIC_FETCH_ADD_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELAXED);
-
- /* test acquire barrier */
- ATOMIC_FETCH_ADD_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_ACQUIRE);
-
- ATOMIC_FETCH_ADD_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_ACQUIRE);
-
- /* test release barrier */
- ATOMIC_FETCH_ADD_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELEASE);
-
- ATOMIC_FETCH_ADD_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELEASE);
-
- /* Set the flag that the task is up and running */
- TaskRan[argument] = true;
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
-
-rtems_task Wait_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- bool allDone;
- int i;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Wait on the all tasks to run */
- while (1) {
- allDone = true;
- for ( i=0; i<TASK_NUMS ; i++ ) {
- if (TaskRan[i] == false)
- allDone = false;
- }
- if (allDone) {
- puts( "\n\n*** END OF TEST spatomic03 ***\n" );
- rtems_test_exit( 0 );
- }
- }
-}
-
diff --git a/testsuites/sptests/spatomic04/Makefile.am b/testsuites/sptests/spatomic04/Makefile.am
deleted file mode 100644
index d03e8b5..0000000
--- a/testsuites/sptests/spatomic04/Makefile.am
+++ /dev/null
@@ -1,24 +0,0 @@
-if ATOMIC
-rtems_tests_PROGRAMS = spatomic04
-spatomic04_SOURCES = init.c tasks.c system.h
-
-dist_rtems_tests_DATA = spatomic04.scn
-dist_rtems_tests_DATA += spatomic04.doc
-endif
-
-include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP at .cfg
-include $(top_srcdir)/../automake/compile.am
-include $(top_srcdir)/../automake/leaf.am
-
-if ATOMIC
-AM_CPPFLAGS += -I$(top_srcdir)/../support/include
-
-LINK_OBJS = $(spatomic04_OBJECTS)
-LINK_LIBS = $(spatomic04_LDLIBS)
-
-spatomic04$(EXEEXT): $(spatomic04_OBJECTS) $(spatomic04_DEPENDENCIES)
- @rm -f spatomic04$(EXEEXT)
- $(make-exe)
-endif
-
-include $(top_srcdir)/../automake/local.am
diff --git a/testsuites/sptests/spatomic04/init.c b/testsuites/sptests/spatomic04/init.c
deleted file mode 100644
index f0b0751..0000000
--- a/testsuites/sptests/spatomic04/init.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic sub operation.
- *
- * 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.
- *
- */
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#define CONFIGURE_INIT
-#include "system.h"
-
-rtems_task Init(
- rtems_task_argument argument
-)
-{
- int i;
- char ch;
- rtems_id id;
- rtems_status_code status;
-
- /* Put start of test message */
- puts( "\n\n*** spatomic04 TEST ***\n" );
-
- /* Initialize the TaskRan array */
- for ( i=0; i<TASK_NUMS ; i++ ) {
- TaskRan[i] = false;
- }
-
- /* Create and start tasks for each processor */
- for ( i=0; i< TASK_NUMS ; i++ ) {
- ch = '0' + i;
-
- status = rtems_task_create(
- rtems_build_name( 'T', 'A', ch, ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Test_task, i );
- directive_failed( status, "task start" );
- }
-
- status = rtems_task_create(
- rtems_build_name( 'A', 'T', '0', ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Wait_task, 0 );
- directive_failed( status, "task start" );
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
diff --git a/testsuites/sptests/spatomic04/spatomic04.doc b/testsuites/sptests/spatomic04/spatomic04.doc
deleted file mode 100644
index 6fc8f09..0000000
--- a/testsuites/sptests/spatomic04/spatomic04.doc
+++ /dev/null
@@ -1,23 +0,0 @@
-# COPYRIGHT (c) 1989-2012.
-# 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.
-#
-
-This file describes the directives and concepts tested by this test set.
-
-test set name: spatomic04
-
-directives:
-
- _Atomic_Fetch_sub_int
- _Atomic_Fetch_sub_long
- _Atomic_Fetch_sub_ptr
- _Atomic_Fetch_sub_32
- _Atomic_Fetch_sub_64
-
-concepts:
-
-+ Ensure that the atomic sub operations listed above behave as defined.
diff --git a/testsuites/sptests/spatomic04/spatomic04.scn b/testsuites/sptests/spatomic04/spatomic04.scn
deleted file mode 100644
index 550e87e..0000000
--- a/testsuites/sptests/spatomic04/spatomic04.scn
+++ /dev/null
@@ -1,102 +0,0 @@
-patomic04 TEST ***
-
-
-task0: _Atomic_Fetch_sub_int: SUCCESS
-
-task0: _Atomic_Fetch_sub_long: SUCCESS
-
-task0: _Atomic_Fetch_sub_ptr: SUCCESS
-
-task0: _Atomic_Fetch_sub_32: SUCCESS
-
-task0: _Atomic_Fetch_sub_int: SUCCESS
-
-task0: _Atomic_Fetch_sub_long: SUCCESS
-
-task0: _Atomic_Fetch_sub_ptr: SUCCESS
-
-task0: _Atomic_Fetch_sub_32: SUCCESS
-
-task0: _Atomic_Fetch_sub_int: SUCCESS
-
-task0: _Atomic_Fetch_sub_long: SUCCESS
-
-task0: _Atomic_Fetch_sub_ptr: SUCCESS
-
-task0: _Atomic_Fetch_sub_32: SUCCESS
-
-task1: _Atomic_Fetch_sub_int: SUCCESS
-
-task1: _Atomic_Fetch_sub_long: SUCCESS
-
-task1: _Atomic_Fetch_sub_ptr: SUCCESS
-
-task1: _Atomic_Fetch_sub_32: SUCCESS
-
-task1: _Atomic_Fetch_sub_int: SUCCESS
-
-task1: _Atomic_Fetch_sub_long: SUCCESS
-
-task1: _Atomic_Fetch_sub_ptr: SUCCESS
-
-task1: _Atomic_Fetch_sub_32: SUCCESS
-
-task1: _Atomic_Fetch_sub_int: SUCCESS
-
-task1: _Atomic_Fetch_sub_long: SUCCESS
-
-task1: _Atomic_Fetch_sub_ptr: SUCCESS
-
-task1: _Atomic_Fetch_sub_32: SUCCESS
-
-task2: _Atomic_Fetch_sub_int: SUCCESS
-
-task2: _Atomic_Fetch_sub_long: SUCCESS
-
-task2: _Atomic_Fetch_sub_ptr: SUCCESS
-
-task2: _Atomic_Fetch_sub_32: SUCCESS
-
-task2: _Atomic_Fetch_sub_int: SUCCESS
-
-task2: _Atomic_Fetch_sub_long: SUCCESS
-
-task2: _Atomic_Fetch_sub_ptr: SUCCESS
-
-task2: _Atomic_Fetch_sub_32: SUCCESS
-
-task2: _Atomic_Fetch_sub_int: SUCCESS
-
-task2: _Atomic_Fetch_sub_long: SUCCESS
-
-task2: _Atomic_Fetch_sub_ptr: SUCCESS
-
-task2: _Atomic_Fetch_sub_32: SUCCESS
-
-task3: _Atomic_Fetch_sub_int: SUCCESS
-
-task3: _Atomic_Fetch_sub_long: SUCCESS
-
-task3: _Atomic_Fetch_sub_ptr: SUCCESS
-
-task3: _Atomic_Fetch_sub_32: SUCCESS
-
-task3: _Atomic_Fetch_sub_int: SUCCESS
-
-task3: _Atomic_Fetch_sub_long: SUCCESS
-
-task3: _Atomic_Fetch_sub_ptr: SUCCESS
-
-task3: _Atomic_Fetch_sub_32: SUCCESS
-
-task3: _Atomic_Fetch_sub_int: SUCCESS
-
-task3: _Atomic_Fetch_sub_long: SUCCESS
-
-task3: _Atomic_Fetch_sub_ptr: SUCCESS
-
-task3: _Atomic_Fetch_sub_32: SUCCESS
-
-
-*** END OF TEST spatomic04 ***
-
diff --git a/testsuites/sptests/spatomic04/system.h b/testsuites/sptests/spatomic04/system.h
deleted file mode 100644
index 55931f2..0000000
--- a/testsuites/sptests/spatomic04/system.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * COPYRIGHT (c) 1989-2011.
- * 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.
- */
-
-#include "tmacros.h"
-#include "test_support.h"
-
-/* functions */
-
-rtems_task Init(
- rtems_task_argument argument
-);
-
-rtems_task Test_task(
- rtems_task_argument argument
-);
-
-rtems_task Wait_task(
- rtems_task_argument argument
-);
-/* configuration information */
-#define TASK_NUMS 4
-
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-
-#define CONFIGURE_MAXIMUM_TASKS \
- (2 + TASK_NUMS)
-
-#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-
-#include <rtems/confdefs.h>
-
-/* global variables */
-
-/*
- * Keep the names and IDs in global variables so another task can use them.
- */
-
-TEST_EXTERN volatile bool TaskRan[ TASK_NUMS ];
-
-/*
- * Handy macros and static inline functions
- */
-
-/* end of include file */
diff --git a/testsuites/sptests/spatomic04/tasks.c b/testsuites/sptests/spatomic04/tasks.c
deleted file mode 100644
index 9f587be..0000000
--- a/testsuites/sptests/spatomic04/tasks.c
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic sub operation.
- *
- * 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.
- *
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "system.h"
-
-#include <stdlib.h>
-#include <rtems/rtems/atomic.h>
-
-#define TEST_REPEAT 1000
-
-#define ATOMIC_FETCH_SUB_NO_BARRIER(NAME, TYPE, R_TYPE, task_id, mem_bar)\
-{ \
- Atomic_##TYPE t; \
- R_TYPE a; \
- R_TYPE b; \
- R_TYPE c; \
- unsigned int i; \
- for (i = 0; i < TEST_REPEAT; i++){ \
- a = (R_TYPE)(rand() % ((R_TYPE)-1 / 2)); \
- b = (R_TYPE)(rand() % ((R_TYPE)-1 / 2)); \
- _Atomic_Store_##NAME(&t, a, ATOMIC_ORDER_RELAXED); \
- _Atomic_Fetch_sub_##NAME(&t, b, mem_bar); \
- c = _Atomic_Load_##NAME(&t, ATOMIC_ORDER_RELAXED); \
- rtems_test_assert(c == (R_TYPE)(a - b)); \
- } \
- printf("\ntask%d: Atomic_Fetch_sub_" #NAME ": SUCCESS\n", (unsigned int)task_id); \
-}
-
-rtems_task Test_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- rtems_status_code status;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Print that the task is up and running. */
- /* test relaxed barrier */
- ATOMIC_FETCH_SUB_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELAXED);
-
- ATOMIC_FETCH_SUB_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELAXED);
-
- /* test acquire barrier */
- ATOMIC_FETCH_SUB_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_ACQUIRE);
-
- ATOMIC_FETCH_SUB_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_ACQUIRE);
-
- /* test release barrier */
- ATOMIC_FETCH_SUB_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELEASE);
-
- ATOMIC_FETCH_SUB_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELEASE);
-
- /* Set the flag that the task is up and running */
- TaskRan[argument] = true;
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
-
-rtems_task Wait_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- bool allDone;
- int i;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Wait on the all tasks to run */
- while (1) {
- allDone = true;
- for ( i=0; i<TASK_NUMS ; i++ ) {
- if (TaskRan[i] == false)
- allDone = false;
- }
- if (allDone) {
- puts( "\n\n*** END OF TEST spatomic04 ***\n" );
- rtems_test_exit( 0 );
- }
- }
-}
-
diff --git a/testsuites/sptests/spatomic05/Makefile.am b/testsuites/sptests/spatomic05/Makefile.am
deleted file mode 100644
index cf72b8e..0000000
--- a/testsuites/sptests/spatomic05/Makefile.am
+++ /dev/null
@@ -1,24 +0,0 @@
-if ATOMIC
-rtems_tests_PROGRAMS = spatomic05
-spatomic05_SOURCES = init.c tasks.c system.h
-
-dist_rtems_tests_DATA = spatomic05.scn
-dist_rtems_tests_DATA += spatomic05.doc
-endif
-
-include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP at .cfg
-include $(top_srcdir)/../automake/compile.am
-include $(top_srcdir)/../automake/leaf.am
-
-if ATOMIC
-AM_CPPFLAGS += -I$(top_srcdir)/../support/include
-
-LINK_OBJS = $(spatomic05_OBJECTS)
-LINK_LIBS = $(spatomic05_LDLIBS)
-
-spatomic05$(EXEEXT): $(spatomic05_OBJECTS) $(spatomic05_DEPENDENCIES)
- @rm -f spatomic05$(EXEEXT)
- $(make-exe)
-endif
-
-include $(top_srcdir)/../automake/local.am
diff --git a/testsuites/sptests/spatomic05/init.c b/testsuites/sptests/spatomic05/init.c
deleted file mode 100644
index 328d417..0000000
--- a/testsuites/sptests/spatomic05/init.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic and operation.
- *
- * 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.
- *
- */
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#define CONFIGURE_INIT
-#include "system.h"
-
-rtems_task Init(
- rtems_task_argument argument
-)
-{
- int i;
- char ch;
- rtems_id id;
- rtems_status_code status;
-
- /* Put start of test message */
- puts( "\n\n*** spatomic05 TEST ***\n" );
-
- /* Initialize the TaskRan array */
- for ( i=0; i<TASK_NUMS ; i++ ) {
- TaskRan[i] = false;
- }
-
- /* Create and start tasks for each processor */
- for ( i=0; i< TASK_NUMS ; i++ ) {
- ch = '0' + i;
-
- status = rtems_task_create(
- rtems_build_name( 'T', 'A', ch, ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Test_task, i );
- directive_failed( status, "task start" );
- }
-
- status = rtems_task_create(
- rtems_build_name( 'A', 'T', '0', ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Wait_task, 0 );
- directive_failed( status, "task start" );
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
diff --git a/testsuites/sptests/spatomic05/spatomic05.doc b/testsuites/sptests/spatomic05/spatomic05.doc
deleted file mode 100644
index 018dd64..0000000
--- a/testsuites/sptests/spatomic05/spatomic05.doc
+++ /dev/null
@@ -1,23 +0,0 @@
-# COPYRIGHT (c) 1989-2012.
-# 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.
-#
-
-This file describes the directives and concepts tested by this test set.
-
-test set name: spatomic05
-
-directives:
-
- _Atomic_Fetch_and_int
- _Atomic_Fetch_and_long
- _Atomic_Fetch_and_ptr
- _Atomic_Fetch_and_32
- _Atomic_Fetch_and_64
-
-concepts:
-
-+ Ensure that the atomic and operations listed above behave as defined.
diff --git a/testsuites/sptests/spatomic05/spatomic05.scn b/testsuites/sptests/spatomic05/spatomic05.scn
deleted file mode 100644
index 84020b9..0000000
--- a/testsuites/sptests/spatomic05/spatomic05.scn
+++ /dev/null
@@ -1,102 +0,0 @@
-patomic05 TEST ***
-
-
-task0: _Atomic_Fetch_and_int: SUCCESS
-
-task0: _Atomic_Fetch_and_long: SUCCESS
-
-task0: _Atomic_Fetch_and_ptr: SUCCESS
-
-task0: _Atomic_Fetch_and_32: SUCCESS
-
-task0: _Atomic_Fetch_and_int: SUCCESS
-
-task0: _Atomic_Fetch_and_long: SUCCESS
-
-task0: _Atomic_Fetch_and_ptr: SUCCESS
-
-task0: _Atomic_Fetch_and_32: SUCCESS
-
-task0: _Atomic_Fetch_and_int: SUCCESS
-
-task0: _Atomic_Fetch_and_long: SUCCESS
-
-task0: _Atomic_Fetch_and_ptr: SUCCESS
-
-task0: _Atomic_Fetch_and_32: SUCCESS
-
-task1: _Atomic_Fetch_and_int: SUCCESS
-
-task1: _Atomic_Fetch_and_long: SUCCESS
-
-task1: _Atomic_Fetch_and_ptr: SUCCESS
-
-task1: _Atomic_Fetch_and_32: SUCCESS
-
-task1: _Atomic_Fetch_and_int: SUCCESS
-
-task1: _Atomic_Fetch_and_long: SUCCESS
-
-task1: _Atomic_Fetch_and_ptr: SUCCESS
-
-task1: _Atomic_Fetch_and_32: SUCCESS
-
-task1: _Atomic_Fetch_and_int: SUCCESS
-
-task1: _Atomic_Fetch_and_long: SUCCESS
-
-task1: _Atomic_Fetch_and_ptr: SUCCESS
-
-task1: _Atomic_Fetch_and_32: SUCCESS
-
-task2: _Atomic_Fetch_and_int: SUCCESS
-
-task2: _Atomic_Fetch_and_long: SUCCESS
-
-task2: _Atomic_Fetch_and_ptr: SUCCESS
-
-task2: _Atomic_Fetch_and_32: SUCCESS
-
-task2: _Atomic_Fetch_and_int: SUCCESS
-
-task2: _Atomic_Fetch_and_long: SUCCESS
-
-task2: _Atomic_Fetch_and_ptr: SUCCESS
-
-task2: _Atomic_Fetch_and_32: SUCCESS
-
-task2: _Atomic_Fetch_and_int: SUCCESS
-
-task2: _Atomic_Fetch_and_long: SUCCESS
-
-task2: _Atomic_Fetch_and_ptr: SUCCESS
-
-task2: _Atomic_Fetch_and_32: SUCCESS
-
-task3: _Atomic_Fetch_and_int: SUCCESS
-
-task3: _Atomic_Fetch_and_long: SUCCESS
-
-task3: _Atomic_Fetch_and_ptr: SUCCESS
-
-task3: _Atomic_Fetch_and_32: SUCCESS
-
-task3: _Atomic_Fetch_and_int: SUCCESS
-
-task3: _Atomic_Fetch_and_long: SUCCESS
-
-task3: _Atomic_Fetch_and_ptr: SUCCESS
-
-task3: _Atomic_Fetch_and_32: SUCCESS
-
-task3: _Atomic_Fetch_and_int: SUCCESS
-
-task3: _Atomic_Fetch_and_long: SUCCESS
-
-task3: _Atomic_Fetch_and_ptr: SUCCESS
-
-task3: _Atomic_Fetch_and_32: SUCCESS
-
-
-*** END OF TEST spatomic05 ***
-
diff --git a/testsuites/sptests/spatomic05/system.h b/testsuites/sptests/spatomic05/system.h
deleted file mode 100644
index 55931f2..0000000
--- a/testsuites/sptests/spatomic05/system.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * COPYRIGHT (c) 1989-2011.
- * 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.
- */
-
-#include "tmacros.h"
-#include "test_support.h"
-
-/* functions */
-
-rtems_task Init(
- rtems_task_argument argument
-);
-
-rtems_task Test_task(
- rtems_task_argument argument
-);
-
-rtems_task Wait_task(
- rtems_task_argument argument
-);
-/* configuration information */
-#define TASK_NUMS 4
-
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-
-#define CONFIGURE_MAXIMUM_TASKS \
- (2 + TASK_NUMS)
-
-#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-
-#include <rtems/confdefs.h>
-
-/* global variables */
-
-/*
- * Keep the names and IDs in global variables so another task can use them.
- */
-
-TEST_EXTERN volatile bool TaskRan[ TASK_NUMS ];
-
-/*
- * Handy macros and static inline functions
- */
-
-/* end of include file */
diff --git a/testsuites/sptests/spatomic05/tasks.c b/testsuites/sptests/spatomic05/tasks.c
deleted file mode 100644
index 5f93dae..0000000
--- a/testsuites/sptests/spatomic05/tasks.c
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic and operation.
- *
- * 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.
- *
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "system.h"
-
-#include <stdlib.h>
-#include <rtems/rtems/atomic.h>
-
-#define TEST_REPEAT 1000
-
-#define ATOMIC_FETCH_AND_NO_BARRIER(NAME, TYPE, R_TYPE, task_id, mem_bar)\
-{ \
- Atomic_##TYPE t; \
- R_TYPE a; \
- R_TYPE b; \
- R_TYPE c; \
- unsigned int i; \
- for (i = 0; i < TEST_REPEAT; i++){ \
- a = (R_TYPE)(rand() % ((R_TYPE)-1 / 2)); \
- b = (R_TYPE)(rand() % ((R_TYPE)-1 / 2)); \
- _Atomic_Store_##NAME(&t, a, ATOMIC_ORDER_RELAXED); \
- _Atomic_Fetch_and_##NAME(&t, b, mem_bar); \
- c = _Atomic_Load_##NAME(&t, ATOMIC_ORDER_RELAXED); \
- rtems_test_assert(c == (R_TYPE)(a & b)); \
- } \
- printf("\ntask%d: Atomic_Fetch_and_" #NAME ": SUCCESS\n", (unsigned int)task_id); \
-}
-
-rtems_task Test_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- rtems_status_code status;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Print that the task is up and running. */
- /* test relaxed barrier */
- ATOMIC_FETCH_AND_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELAXED);
-
- ATOMIC_FETCH_AND_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELAXED);
-
- /* test acquire barrier */
- ATOMIC_FETCH_AND_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_ACQUIRE);
-
- ATOMIC_FETCH_AND_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_ACQUIRE);
-
- /* test release barrier */
- ATOMIC_FETCH_AND_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELEASE);
-
- ATOMIC_FETCH_AND_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELEASE);
-
- /* Set the flag that the task is up and running */
- TaskRan[argument] = true;
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
-
-rtems_task Wait_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- bool allDone;
- int i;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Wait on the all tasks to run */
- while (1) {
- allDone = true;
- for ( i=0; i<TASK_NUMS ; i++ ) {
- if (TaskRan[i] == false)
- allDone = false;
- }
- if (allDone) {
- puts( "\n\n*** END OF TEST spatomic05 ***\n" );
- rtems_test_exit( 0 );
- }
- }
-}
diff --git a/testsuites/sptests/spatomic06/Makefile.am b/testsuites/sptests/spatomic06/Makefile.am
deleted file mode 100644
index 82150f9..0000000
--- a/testsuites/sptests/spatomic06/Makefile.am
+++ /dev/null
@@ -1,24 +0,0 @@
-if ATOMIC
-rtems_tests_PROGRAMS = spatomic06
-spatomic06_SOURCES = init.c tasks.c system.h
-
-dist_rtems_tests_DATA = spatomic06.scn
-dist_rtems_tests_DATA += spatomic06.doc
-endif
-
-include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP at .cfg
-include $(top_srcdir)/../automake/compile.am
-include $(top_srcdir)/../automake/leaf.am
-
-if ATOMIC
-AM_CPPFLAGS += -I$(top_srcdir)/../support/include
-
-LINK_OBJS = $(spatomic06_OBJECTS)
-LINK_LIBS = $(spatomic06_LDLIBS)
-
-spatomic06$(EXEEXT): $(spatomic06_OBJECTS) $(spatomic06_DEPENDENCIES)
- @rm -f spatomic06$(EXEEXT)
- $(make-exe)
-endif
-
-include $(top_srcdir)/../automake/local.am
diff --git a/testsuites/sptests/spatomic06/init.c b/testsuites/sptests/spatomic06/init.c
deleted file mode 100644
index 4a7ecfc..0000000
--- a/testsuites/sptests/spatomic06/init.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic or operation.
- *
- * 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.
- *
- */
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#define CONFIGURE_INIT
-#include "system.h"
-
-rtems_task Init(
- rtems_task_argument argument
-)
-{
- int i;
- char ch;
- rtems_id id;
- rtems_status_code status;
-
- /* Put start of test message */
- puts( "\n\n*** spatomic06 TEST ***\n" );
-
- /* Initialize the TaskRan array */
- for ( i=0; i<TASK_NUMS ; i++ ) {
- TaskRan[i] = false;
- }
-
- /* Create and start tasks for each processor */
- for ( i=0; i< TASK_NUMS ; i++ ) {
- ch = '0' + i;
-
- status = rtems_task_create(
- rtems_build_name( 'T', 'A', ch, ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Test_task, i );
- directive_failed( status, "task start" );
- }
-
- status = rtems_task_create(
- rtems_build_name( 'A', 'T', '0', ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Wait_task, 0 );
- directive_failed( status, "task start" );
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
diff --git a/testsuites/sptests/spatomic06/spatomic06.doc b/testsuites/sptests/spatomic06/spatomic06.doc
deleted file mode 100644
index 5a4d033..0000000
--- a/testsuites/sptests/spatomic06/spatomic06.doc
+++ /dev/null
@@ -1,23 +0,0 @@
-# COPYRIGHT (c) 1989-2012.
-# 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.
-#
-
-This file describes the directives and concepts tested by this test set.
-
-test set name: spatomic06
-
-directives:
-
- _Atomic_Fetch_or_int
- _Atomic_Fetch_or_long
- _Atomic_Fetch_or_ptr
- _Atomic_Fetch_or_32
- _Atomic_Fetch_or_64
-
-concepts:
-
-+ Ensure that the atomic or operations listed above behave as defined.
diff --git a/testsuites/sptests/spatomic06/spatomic06.scn b/testsuites/sptests/spatomic06/spatomic06.scn
deleted file mode 100644
index 1429061..0000000
--- a/testsuites/sptests/spatomic06/spatomic06.scn
+++ /dev/null
@@ -1,102 +0,0 @@
-*** spatomic06 TEST ***
-
-
-task0: _Atomic_Fetch_or_int: SUCCESS
-
-task0: _Atomic_Fetch_or_long: SUCCESS
-
-task0: _Atomic_Fetch_or_ptr: SUCCESS
-
-task0: _Atomic_Fetch_or_32: SUCCESS
-
-task0: _Atomic_Fetch_or_int: SUCCESS
-
-task0: _Atomic_Fetch_or_long: SUCCESS
-
-task0: _Atomic_Fetch_or_ptr: SUCCESS
-
-task0: _Atomic_Fetch_or_32: SUCCESS
-
-task0: _Atomic_Fetch_or_int: SUCCESS
-
-task0: _Atomic_Fetch_or_long: SUCCESS
-
-task0: _Atomic_Fetch_or_ptr: SUCCESS
-
-task0: _Atomic_Fetch_or_32: SUCCESS
-
-task1: _Atomic_Fetch_or_int: SUCCESS
-
-task1: _Atomic_Fetch_or_long: SUCCESS
-
-task1: _Atomic_Fetch_or_ptr: SUCCESS
-
-task1: _Atomic_Fetch_or_32: SUCCESS
-
-task1: _Atomic_Fetch_or_int: SUCCESS
-
-task1: _Atomic_Fetch_or_long: SUCCESS
-
-task1: _Atomic_Fetch_or_ptr: SUCCESS
-
-task1: _Atomic_Fetch_or_32: SUCCESS
-
-task1: _Atomic_Fetch_or_int: SUCCESS
-
-task1: _Atomic_Fetch_or_long: SUCCESS
-
-task1: _Atomic_Fetch_or_ptr: SUCCESS
-
-task1: _Atomic_Fetch_or_32: SUCCESS
-
-task2: _Atomic_Fetch_or_int: SUCCESS
-
-task2: _Atomic_Fetch_or_long: SUCCESS
-
-task2: _Atomic_Fetch_or_ptr: SUCCESS
-
-task2: _Atomic_Fetch_or_32: SUCCESS
-
-task2: _Atomic_Fetch_or_int: SUCCESS
-
-task2: _Atomic_Fetch_or_long: SUCCESS
-
-task2: _Atomic_Fetch_or_ptr: SUCCESS
-
-task2: _Atomic_Fetch_or_32: SUCCESS
-
-task2: _Atomic_Fetch_or_int: SUCCESS
-
-task2: _Atomic_Fetch_or_long: SUCCESS
-
-task2: _Atomic_Fetch_or_ptr: SUCCESS
-
-task2: _Atomic_Fetch_or_32: SUCCESS
-
-task3: _Atomic_Fetch_or_int: SUCCESS
-
-task3: _Atomic_Fetch_or_long: SUCCESS
-
-task3: _Atomic_Fetch_or_ptr: SUCCESS
-
-task3: _Atomic_Fetch_or_32: SUCCESS
-
-task3: _Atomic_Fetch_or_int: SUCCESS
-
-task3: _Atomic_Fetch_or_long: SUCCESS
-
-task3: _Atomic_Fetch_or_ptr: SUCCESS
-
-task3: _Atomic_Fetch_or_32: SUCCESS
-
-task3: _Atomic_Fetch_or_int: SUCCESS
-
-task3: _Atomic_Fetch_or_long: SUCCESS
-
-task3: _Atomic_Fetch_or_ptr: SUCCESS
-
-task3: _Atomic_Fetch_or_32: SUCCESS
-
-
-*** END OF TEST spatomic06 ***
-
diff --git a/testsuites/sptests/spatomic06/system.h b/testsuites/sptests/spatomic06/system.h
deleted file mode 100644
index 55931f2..0000000
--- a/testsuites/sptests/spatomic06/system.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * COPYRIGHT (c) 1989-2011.
- * 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.
- */
-
-#include "tmacros.h"
-#include "test_support.h"
-
-/* functions */
-
-rtems_task Init(
- rtems_task_argument argument
-);
-
-rtems_task Test_task(
- rtems_task_argument argument
-);
-
-rtems_task Wait_task(
- rtems_task_argument argument
-);
-/* configuration information */
-#define TASK_NUMS 4
-
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-
-#define CONFIGURE_MAXIMUM_TASKS \
- (2 + TASK_NUMS)
-
-#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-
-#include <rtems/confdefs.h>
-
-/* global variables */
-
-/*
- * Keep the names and IDs in global variables so another task can use them.
- */
-
-TEST_EXTERN volatile bool TaskRan[ TASK_NUMS ];
-
-/*
- * Handy macros and static inline functions
- */
-
-/* end of include file */
diff --git a/testsuites/sptests/spatomic06/tasks.c b/testsuites/sptests/spatomic06/tasks.c
deleted file mode 100644
index b03d3f0..0000000
--- a/testsuites/sptests/spatomic06/tasks.c
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic or operation.
- *
- * 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.
- *
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "system.h"
-
-#include <stdlib.h>
-#include <rtems/rtems/atomic.h>
-
-#define TEST_REPEAT 1000
-
-#define ATOMIC_FETCH_OR_NO_BARRIER(NAME, TYPE, R_TYPE, task_id, mem_bar) \
-{ \
- Atomic_##TYPE t; \
- R_TYPE a; \
- R_TYPE b; \
- R_TYPE c; \
- unsigned int i; \
- for (i = 0; i < TEST_REPEAT; i++){ \
- a = (R_TYPE)(rand() % ((R_TYPE)-1 / 2)); \
- b = (R_TYPE)(rand() % ((R_TYPE)-1 / 2)); \
- _Atomic_Store_##NAME(&t, a, ATOMIC_ORDER_RELAXED); \
- _Atomic_Fetch_or_##NAME(&t, b, mem_bar); \
- c = _Atomic_Load_##NAME(&t, ATOMIC_ORDER_RELAXED); \
- rtems_test_assert(c == (R_TYPE)(a | b)); \
- } \
- printf("\ntask%d: Atomic_Fetch_or_" #NAME ": SUCCESS\n", (unsigned int)task_id); \
-}
-
-rtems_task Test_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- rtems_status_code status;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Print that the task is up and running. */
- /* test relaxed barrier */
- ATOMIC_FETCH_OR_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELAXED);
-
- ATOMIC_FETCH_OR_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELAXED);
-
- /* test acquire barrier */
- ATOMIC_FETCH_OR_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_ACQUIRE);
-
- ATOMIC_FETCH_OR_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_ACQUIRE);
-
- /* test release barrier */
- ATOMIC_FETCH_OR_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELEASE);
-
- ATOMIC_FETCH_OR_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELEASE);
-
- /* Set the flag that the task is up and running */
- TaskRan[argument] = true;
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
-
-rtems_task Wait_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- bool allDone;
- int i;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Wait on the all tasks to run */
- while (1) {
- allDone = true;
- for ( i=0; i<TASK_NUMS ; i++ ) {
- if (TaskRan[i] == false)
- allDone = false;
- }
- if (allDone) {
- puts( "\n\n*** END OF TEST spatomic06 ***\n" );
- rtems_test_exit( 0 );
- }
- }
-}
diff --git a/testsuites/sptests/spatomic07/Makefile.am b/testsuites/sptests/spatomic07/Makefile.am
deleted file mode 100644
index bd63c52..0000000
--- a/testsuites/sptests/spatomic07/Makefile.am
+++ /dev/null
@@ -1,24 +0,0 @@
-if ATOMIC
-rtems_tests_PROGRAMS = spatomic07
-spatomic07_SOURCES = init.c tasks.c system.h
-
-dist_rtems_tests_DATA = spatomic07.scn
-dist_rtems_tests_DATA += spatomic07.doc
-endif
-
-include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP at .cfg
-include $(top_srcdir)/../automake/compile.am
-include $(top_srcdir)/../automake/leaf.am
-
-if ATOMIC
-AM_CPPFLAGS += -I$(top_srcdir)/../support/include
-
-LINK_OBJS = $(spatomic07_OBJECTS)
-LINK_LIBS = $(spatomic07_LDLIBS)
-
-spatomic07$(EXEEXT): $(spatomic07_OBJECTS) $(spatomic07_DEPENDENCIES)
- @rm -f spatomic07$(EXEEXT)
- $(make-exe)
-endif
-
-include $(top_srcdir)/../automake/local.am
diff --git a/testsuites/sptests/spatomic07/init.c b/testsuites/sptests/spatomic07/init.c
deleted file mode 100644
index 3cc1b27..0000000
--- a/testsuites/sptests/spatomic07/init.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic compare and exchange operation.
- *
- * 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.
- *
- */
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#define CONFIGURE_INIT
-#include "system.h"
-
-rtems_task Init(
- rtems_task_argument argument
-)
-{
- int i;
- char ch;
- rtems_id id;
- rtems_status_code status;
-
- /* Put start of test message */
- puts( "\n\n*** spatomic07 TEST ***\n" );
-
- /* Initialize the TaskRan array */
- for ( i=0; i<TASK_NUMS ; i++ ) {
- TaskRan[i] = false;
- }
-
- /* Create and start tasks for each processor */
- for ( i=0; i< TASK_NUMS ; i++ ) {
- ch = '0' + i;
-
- status = rtems_task_create(
- rtems_build_name( 'T', 'A', ch, ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Test_task, i );
- directive_failed( status, "task start" );
- }
-
- status = rtems_task_create(
- rtems_build_name( 'A', 'T', '0', ' ' ),
- 1,
- RTEMS_MINIMUM_STACK_SIZE,
- RTEMS_DEFAULT_MODES,
- RTEMS_DEFAULT_ATTRIBUTES,
- &id
- );
- directive_failed( status, "task create" );
-
- status = rtems_task_start( id, Wait_task, 0 );
- directive_failed( status, "task start" );
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
diff --git a/testsuites/sptests/spatomic07/spatomic07.doc b/testsuites/sptests/spatomic07/spatomic07.doc
deleted file mode 100644
index 4ade88f..0000000
--- a/testsuites/sptests/spatomic07/spatomic07.doc
+++ /dev/null
@@ -1,24 +0,0 @@
-# COPYRIGHT (c) 1989-2012.
-# 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.
-#
-
-This file describes the directives and concepts tested by this test set.
-
-test set name: spatomic07
-
-directives:
-
- _Atomic_Compare_exchange_int
- _Atomic_Compare_exchange_long
- _Atomic_Compare_exchange_ptr
- _Atomic_Compare_exchange_32
- _Atomic_Compare_exchange_64
-
-concepts:
-
-+ Ensure that the atomic compare and exchange operations listed above behave
- as defined.
diff --git a/testsuites/sptests/spatomic07/spatomic07.scn b/testsuites/sptests/spatomic07/spatomic07.scn
deleted file mode 100644
index bb37ba6..0000000
--- a/testsuites/sptests/spatomic07/spatomic07.scn
+++ /dev/null
@@ -1,102 +0,0 @@
-patomic07 TEST ***
-
-
-task0: _Atomic_Compare_exchange_int: SUCCESS
-
-task0: _Atomic_Compare_exchange_long: SUCCESS
-
-task0: _Atomic_Compare_exchange_ptr: SUCCESS
-
-task0: _Atomic_Compare_exchange_32: SUCCESS
-
-task0: _Atomic_Compare_exchange_int: SUCCESS
-
-task0: _Atomic_Compare_exchange_long: SUCCESS
-
-task0: _Atomic_Compare_exchange_ptr: SUCCESS
-
-task0: _Atomic_Compare_exchange_32: SUCCESS
-
-task0: _Atomic_Compare_exchange_int: SUCCESS
-
-task0: _Atomic_Compare_exchange_long: SUCCESS
-
-task0: _Atomic_Compare_exchange_ptr: SUCCESS
-
-task0: _Atomic_Compare_exchange_32: SUCCESS
-
-task1: _Atomic_Compare_exchange_int: SUCCESS
-
-task1: _Atomic_Compare_exchange_long: SUCCESS
-
-task1: _Atomic_Compare_exchange_ptr: SUCCESS
-
-task1: _Atomic_Compare_exchange_32: SUCCESS
-
-task1: _Atomic_Compare_exchange_int: SUCCESS
-
-task1: _Atomic_Compare_exchange_long: SUCCESS
-
-task1: _Atomic_Compare_exchange_ptr: SUCCESS
-
-task1: _Atomic_Compare_exchange_32: SUCCESS
-
-task1: _Atomic_Compare_exchange_int: SUCCESS
-
-task1: _Atomic_Compare_exchange_long: SUCCESS
-
-task1: _Atomic_Compare_exchange_ptr: SUCCESS
-
-task1: _Atomic_Compare_exchange_32: SUCCESS
-
-task2: _Atomic_Compare_exchange_int: SUCCESS
-
-task2: _Atomic_Compare_exchange_long: SUCCESS
-
-task2: _Atomic_Compare_exchange_ptr: SUCCESS
-
-task2: _Atomic_Compare_exchange_32: SUCCESS
-
-task2: _Atomic_Compare_exchange_int: SUCCESS
-
-task2: _Atomic_Compare_exchange_long: SUCCESS
-
-task2: _Atomic_Compare_exchange_ptr: SUCCESS
-
-task2: _Atomic_Compare_exchange_32: SUCCESS
-
-task2: _Atomic_Compare_exchange_int: SUCCESS
-
-task2: _Atomic_Compare_exchange_long: SUCCESS
-
-task2: _Atomic_Compare_exchange_ptr: SUCCESS
-
-task2: _Atomic_Compare_exchange_32: SUCCESS
-
-task3: _Atomic_Compare_exchange_int: SUCCESS
-
-task3: _Atomic_Compare_exchange_long: SUCCESS
-
-task3: _Atomic_Compare_exchange_ptr: SUCCESS
-
-task3: _Atomic_Compare_exchange_32: SUCCESS
-
-task3: _Atomic_Compare_exchange_int: SUCCESS
-
-task3: _Atomic_Compare_exchange_long: SUCCESS
-
-task3: _Atomic_Compare_exchange_ptr: SUCCESS
-
-task3: _Atomic_Compare_exchange_32: SUCCESS
-
-task3: _Atomic_Compare_exchange_int: SUCCESS
-
-task3: _Atomic_Compare_exchange_long: SUCCESS
-
-task3: _Atomic_Compare_exchange_ptr: SUCCESS
-
-task3: _Atomic_Compare_exchange_32: SUCCESS
-
-
-*** END OF TEST spatomic07 ***
-
diff --git a/testsuites/sptests/spatomic07/system.h b/testsuites/sptests/spatomic07/system.h
deleted file mode 100644
index 55931f2..0000000
--- a/testsuites/sptests/spatomic07/system.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * COPYRIGHT (c) 1989-2011.
- * 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.
- */
-
-#include "tmacros.h"
-#include "test_support.h"
-
-/* functions */
-
-rtems_task Init(
- rtems_task_argument argument
-);
-
-rtems_task Test_task(
- rtems_task_argument argument
-);
-
-rtems_task Wait_task(
- rtems_task_argument argument
-);
-/* configuration information */
-#define TASK_NUMS 4
-
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-
-#define CONFIGURE_MAXIMUM_TASKS \
- (2 + TASK_NUMS)
-
-#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
-
-#include <rtems/confdefs.h>
-
-/* global variables */
-
-/*
- * Keep the names and IDs in global variables so another task can use them.
- */
-
-TEST_EXTERN volatile bool TaskRan[ TASK_NUMS ];
-
-/*
- * Handy macros and static inline functions
- */
-
-/* end of include file */
diff --git a/testsuites/sptests/spatomic07/tasks.c b/testsuites/sptests/spatomic07/tasks.c
deleted file mode 100644
index 286a994..0000000
--- a/testsuites/sptests/spatomic07/tasks.c
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright (c) 2012 Deng Hengyi.
- *
- * This test case is to test atomic compare and exchange operation.
- *
- * 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.
- *
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include "system.h"
-
-#include <stdlib.h>
-#include <rtems/rtems/atomic.h>
-
-#define TEST_REPEAT 1000
-
-#define ATOMIC_CAS_NO_BARRIER(NAME, TYPE, R_TYPE, task_id, mem_bar) \
-{ \
- Atomic_##TYPE t; \
- R_TYPE a; \
- R_TYPE b; \
- unsigned int i; \
- int r; \
- for (i = 0; i < TEST_REPEAT; i++){ \
- a = rand() % (R_TYPE)-1; \
- _Atomic_Store_##NAME(&t, a, ATOMIC_ORDER_RELAXED); \
- b = a + 1; \
- r = _Atomic_Compare_exchange_##NAME(&t, &b, a - 1, mem_bar, memory_order_relaxed); \
- if(r != 0){ \
- printf("\ntask%d: Atomic_Compare_exchange_" #NAME ": FAILED\n", (unsigned int)task_id); \
- rtems_test_exit( 0 ); \
- } \
- _Atomic_Store_##NAME(&t, a, ATOMIC_ORDER_RELAXED); \
- r = _Atomic_Compare_exchange_##NAME(&t, &a, a - 1, mem_bar, memory_order_relaxed); \
- b = _Atomic_Load_##NAME(&t, ATOMIC_ORDER_RELAXED); \
- if((r == 0) ||((r != 0) && ((a - 1) != b))){ \
- printf("\ntask%d: Atomic_Compare_exchange_" #NAME ": FAILED\n", (unsigned int)task_id); \
- rtems_test_exit( 0 ); \
- } \
- _Atomic_Store_##NAME(&t, a, ATOMIC_ORDER_RELAXED); \
- b = a + 1; \
- r = _Atomic_Compare_exchange_##NAME(&t, &b, a, mem_bar, memory_order_relaxed); \
- if(r != 0){ \
- printf("\ntask%d: Atomic_Compare_exchange_" #NAME ": FAILED\n", (unsigned int)task_id); \
- rtems_test_exit( 0 ); \
- } \
- } \
- printf("\ntask%d: Atomic_Compare_exchange_" #NAME ": SUCCESS\n", (unsigned int)task_id); \
-}
-
-rtems_task Test_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- rtems_status_code status;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Print that the task is up and running. */
- /* test relaxed barrier */
- ATOMIC_CAS_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELAXED);
-
- ATOMIC_CAS_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELAXED);
-
- /* test acquire barrier */
- ATOMIC_CAS_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_ACQUIRE);
-
- ATOMIC_CAS_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_ACQUIRE);
-
- /* test release barrier */
- ATOMIC_CAS_NO_BARRIER(uint, Uint, uint_fast32_t, argument, ATOMIC_ORDER_RELEASE);
-
- ATOMIC_CAS_NO_BARRIER(ptr, Pointer, uintptr_t, argument, ATOMIC_ORDER_RELEASE);
-
- /* Set the flag that the task is up and running */
- TaskRan[argument] = true;
-
- status = rtems_task_delete( RTEMS_SELF );
- directive_failed( status, "delete" );
-}
-
-rtems_task Wait_task(
- rtems_task_argument argument
- )
-{
- char name[5];
- char *p;
- bool allDone;
- int i;
-
- /* Get the task name */
- p = rtems_object_get_name( RTEMS_SELF, 5, name );
- rtems_test_assert( p != NULL );
-
- /* Wait on the all tasks to run */
- while (1) {
- allDone = true;
- for ( i=0; i<TASK_NUMS ; i++ ) {
- if (TaskRan[i] == false)
- allDone = false;
- }
- if (allDone) {
- puts( "\n\n*** END OF TEST spatomic07 ***\n" );
- rtems_test_exit( 0 );
- }
- }
-}
--
1.7.9.5
More information about the devel
mailing list