diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-02-16 08:15:10 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-02-20 15:18:49 +0100 |
commit | f6a97f59925e0f6f880fdc5ce9e94a84e5db2998 (patch) | |
tree | 83558db9e431ec5b86587779b4c7bf7260904b02 /cpukit/include/rtems/rtems/asrimpl.h | |
parent | rtems: Move _Signal_Action_handler() (diff) | |
download | rtems-f6a97f59925e0f6f880fdc5ce9e94a84e5db2998.tar.bz2 |
rtems: Simplify signal handling
Remove superfluous ASR_Information::signals_posted. Move code out of
trivial inline functions.
Update #4244.
Diffstat (limited to 'cpukit/include/rtems/rtems/asrimpl.h')
-rw-r--r-- | cpukit/include/rtems/rtems/asrimpl.h | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/cpukit/include/rtems/rtems/asrimpl.h b/cpukit/include/rtems/rtems/asrimpl.h deleted file mode 100644 index e9369079e6..0000000000 --- a/cpukit/include/rtems/rtems/asrimpl.h +++ /dev/null @@ -1,90 +0,0 @@ -/** - * @file - * - * @ingroup RTEMSImplClassicASR - * - * @brief This header file provides the implementation interfaces of - * the @ref RTEMSImplClassicASR support. - */ - -/* COPYRIGHT (c) 1989-2008. - * 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.org/license/LICENSE. - */ - -#ifndef _RTEMS_RTEMS_ASRIMPL_H -#define _RTEMS_RTEMS_ASRIMPL_H - -#include <rtems/rtems/asrdata.h> - -#include <string.h> - -#ifdef __cplusplus -extern "C" { -#endif - -/** - * @defgroup RTEMSImplClassicASR Asynchronous Signal Routine (ASR) - * - * @ingroup RTEMSImplClassic - * - * @brief This group contains the implementation to support asynchronous signal - * routines. - * - * @{ - */ - -/** - * @brief ASR_Initialize - * - * This routine initializes the given RTEMS_ASR information record. - */ -RTEMS_INLINE_ROUTINE void _ASR_Initialize ( - ASR_Information *asr -) -{ - memset(asr, 0, sizeof(*asr)); -} - -RTEMS_INLINE_ROUTINE rtems_signal_set _ASR_Swap_signals( ASR_Information *asr ) -{ - rtems_signal_set new_signals_posted; - - new_signals_posted = asr->signals_pending; - asr->signals_pending = asr->signals_posted; - asr->signals_posted = new_signals_posted; - - return new_signals_posted; -} - -RTEMS_INLINE_ROUTINE void _ASR_Post_signals( - rtems_signal_set signals, - rtems_signal_set *signal_set -) -{ - *signal_set |= signals; -} - -RTEMS_INLINE_ROUTINE rtems_signal_set _ASR_Get_posted_signals( - ASR_Information *asr -) -{ - rtems_signal_set signal_set; - - signal_set = asr->signals_posted; - asr->signals_posted = 0; - - return signal_set; -} - -/**@}*/ - -#ifdef __cplusplus -} -#endif - -#endif -/* end of include file */ |