source: asp3_wo_tecs/trunk/target/macosx_xcode/target_sil.h@ 302

Last change on this file since 302 was 302, checked in by ertl-honda, 7 years ago

TECSレスのASP3の開発のため以下のtrunkからコピー
http://dev.toppers.jp/svn/asp3/branches/WO_TECS-3.C.0

File size: 4.3 KB
Line 
1/*
2 * TOPPERS Software
3 * Toyohashi Open Platform for Embedded Real-Time Systems
4 *
5 * Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory
6 * Toyohashi Univ. of Technology, JAPAN
7 * Copyright (C) 2004-2014 by Embedded and Real-Time Systems Laboratory
8 * Graduate School of Information Science, Nagoya Univ., JAPAN
9 *
10 * 上記著作権者
11は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
12 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
13 * 変・再é…
14å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
15 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
16 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
17 * スコード中に含まれていること.
18 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
19 * 用できる形で再é…
20å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é…
21å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
22 * 者
23マニュアルなど)に,上記の著作権表示,この利用条件および下記
24 * の無保証規定を掲載すること.
25 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
26 * 用できない形で再é…
27å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
28 * と.
29 * (a) 再é…
30å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€…
31マニュアルなど)に,上記の著
32 * 作権表示,この利用条件および下記の無保証規定を掲載すること.
33 * (b) 再é…
34å¸ƒã®å½¢æ…
35‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
36 * 報告すること.
37 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
38 * 害からも,上記著作権者
39およびTOPPERSプロジェクトをå…
40è²¬ã™ã‚‹ã“と.
41 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
42 * 由に基づく請求からも,上記著作権者
43およびTOPPERSプロジェクトを
44 * å…
45è²¬ã™ã‚‹ã“と.
46 *
47 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者
48お
49 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
50 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
51 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
52 * の責任を負わない.
53 *
54 * $Id: target_sil.h 286 2014-11-29 07:51:11Z ertl-hiro $
55 */
56
57/*
58 * sil.hのターゲット依存部(Mac OS X用)
59 *
60 * このインクルードファイルは,sil.hのå…
61ˆé ­ã§ã‚¤ãƒ³ã‚¯ãƒ«ãƒ¼ãƒ‰ã•ã‚Œã‚‹ï¼Žä»–のファ
62 * イルからは直接インクルードすることはない.このファイルをインクルー
63 * ドする前に,t_stddef.hがインクルードされるので,それらに依存しても
64 * よい.
65 */
66
67#ifndef TOPPERS_TARGET_SIL_H
68#define TOPPERS_TARGET_SIL_H
69
70#ifndef TOPPERS_MACRO_ONLY
71
72/*
73 * 標準のインクルードファイル
74 */
75#include <signal.h>
76
77#include <t_stddef.h>
78
79/*
80 * NMIを除くすべての割込みの禁止
81 */
82Inline void
83TOPPERS_dissig(sigset_t *p_sigmask)
84{
85 extern sigset_t _kernel_sigmask_intlock;
86
87 sigprocmask(SIG_BLOCK, &_kernel_sigmask_intlock, p_sigmask);
88}
89
90/*
91 * 割込み優å…
92ˆåº¦ãƒžã‚¹ã‚¯ï¼ˆå†…
93部表現)の現在値の設定
94 */
95Inline void
96TOPPERS_setsig(sigset_t *p_sigmask)
97{
98 sigprocmask(SIG_SETMASK, p_sigmask, NULL);
99}
100
101/*
102 * å…
103¨å‰²è¾¼ã¿ãƒ­ãƒƒã‚¯çŠ¶æ…
104‹ã®åˆ¶å¾¡
105 */
106#define SIL_PRE_LOC sigset_t TOPPERS_sigmask
107#define SIL_LOC_INT() (TOPPERS_dissig(&TOPPERS_sigmask))
108#define SIL_UNL_INT() (TOPPERS_setsig(&TOPPERS_sigmask))
109
110/*
111 * 微少時間待
112ち
113 */
114Inline void
115sil_dly_nse(ulong_t dlytim)
116{
117 /*
118 * シミュレーション環境では意味がないため,何もしない.
119 */
120}
121
122#endif /* TOPPERS_MACRO_ONLY */
123
124/*
125 * プロセッサのエンディアン
126 */
127#if defined(__ppc__)
128#define SIL_ENDIAN_BIG /* ビッグエンディアン */
129#elif defined(__i386__) || defined(__x86_64__)
130#define SIL_ENDIAN_LITTLE /* リトルエンディアン */
131#endif
132
133#endif /* TOPPERS_TARGET_SIL_H */
Note: See TracBrowser for help on using the repository browser.