gcc-8.3/gcc/RTL_CHECK1()
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*参照元 [#j5d9b883]
#backlinks
*説明 [#q11b7060]
-パス: [[gcc-8.3/gcc/rtl.h]]
-FIXME: これは何?
--N 番目のオペランド(u.fld[N])を返す。
--引数 N が範囲内に収まっているかチェックする
--RTX の N 番目のオペランドの型が引数 C と一致するかチェ...
**引数 [#h3b5cf17]
-RTX
--
--[[gcc-8.3/gcc/rtx]]
-int N
--何番目のオペランドを返すか
-char C
--オペランドが持つ値の型
**返り値 [#n3f3e89c]
-rtunion
--rtx の u.fld[] の型と同じ
--[[gcc-8.3/gcc/rtunion]]
**参考 [#r67c8a35]
-オペランドではなく、rtx のコードチェックをするバージョン...
--[[gcc-8.3/gcc/RTL_CHECKC1()]]
*実装 [#s06ff71c]
#if defined ENABLE_RTL_CHECKING && (GCC_VERSION >= 2007)
/* The bit with a star outside the statement expr and an...
so that N can be evaluated only once. */
#define RTL_CHECK1(RTX, N, C1) __extension__ \
(*({ __typeof (RTX) const _rtx = (RTX); const int _n = (...
const enum rtx_code _code = GET_CODE (_rtx); \
if (_n < 0 || _n >= GET_RTX_LENGTH (_code)) \
rtl_check_failed_bounds (_rtx, _n, __FILE__, __LI...
__FUNCTION__); \
if (GET_RTX_FORMAT (_code)[_n] != C1) \
rtl_check_failed_type1 (_rtx, _n, C1, __FILE__, _...
__FUNCTION__); \
&_rtx->u.fld[_n]; }))
-
--[[gcc-8.3/gcc/rtx_code]]
--[[gcc-8.3/gcc/GET_CODE()]]
--[[gcc-8.3/gcc/GET_RTX_LENGTH()]]
--[[gcc-8.3/gcc/rtl_check_failed_bounds()]]
--[[gcc-8.3/gcc/GET_RTX_FORMAT()]]
--[[gcc-8.3/gcc/rtl_check_failed_type1()]]
#else /* not ENABLE_RTL_CHECKING */
#define RTL_CHECK1(RTX, N, C1) ((RTX)->u.fld[N])
#endif
*コメント [#bacd8c90]
終了行:
*参照元 [#j5d9b883]
#backlinks
*説明 [#q11b7060]
-パス: [[gcc-8.3/gcc/rtl.h]]
-FIXME: これは何?
--N 番目のオペランド(u.fld[N])を返す。
--引数 N が範囲内に収まっているかチェックする
--RTX の N 番目のオペランドの型が引数 C と一致するかチェ...
**引数 [#h3b5cf17]
-RTX
--
--[[gcc-8.3/gcc/rtx]]
-int N
--何番目のオペランドを返すか
-char C
--オペランドが持つ値の型
**返り値 [#n3f3e89c]
-rtunion
--rtx の u.fld[] の型と同じ
--[[gcc-8.3/gcc/rtunion]]
**参考 [#r67c8a35]
-オペランドではなく、rtx のコードチェックをするバージョン...
--[[gcc-8.3/gcc/RTL_CHECKC1()]]
*実装 [#s06ff71c]
#if defined ENABLE_RTL_CHECKING && (GCC_VERSION >= 2007)
/* The bit with a star outside the statement expr and an...
so that N can be evaluated only once. */
#define RTL_CHECK1(RTX, N, C1) __extension__ \
(*({ __typeof (RTX) const _rtx = (RTX); const int _n = (...
const enum rtx_code _code = GET_CODE (_rtx); \
if (_n < 0 || _n >= GET_RTX_LENGTH (_code)) \
rtl_check_failed_bounds (_rtx, _n, __FILE__, __LI...
__FUNCTION__); \
if (GET_RTX_FORMAT (_code)[_n] != C1) \
rtl_check_failed_type1 (_rtx, _n, C1, __FILE__, _...
__FUNCTION__); \
&_rtx->u.fld[_n]; }))
-
--[[gcc-8.3/gcc/rtx_code]]
--[[gcc-8.3/gcc/GET_CODE()]]
--[[gcc-8.3/gcc/GET_RTX_LENGTH()]]
--[[gcc-8.3/gcc/rtl_check_failed_bounds()]]
--[[gcc-8.3/gcc/GET_RTX_FORMAT()]]
--[[gcc-8.3/gcc/rtl_check_failed_type1()]]
#else /* not ENABLE_RTL_CHECKING */
#define RTL_CHECK1(RTX, N, C1) ((RTX)->u.fld[N])
#endif
*コメント [#bacd8c90]
ページ名: