- 追加された行はこの色です。
- 削除された行はこの色です。
*参照元 [#bbc0ce69]
#backlinks
*説明 [#i0318e99]
-パス: [[gcc-8.3/gcc/rtl.h]]
-FIXME: これは何?
--説明
--RTX のオペランド(u.fld[])が取るべき型が文字列で返される。
--例えば insn なら 'uuBeiie' である。1文字が 1オペランドに対応している。
なので insn は 7つオペランドを取って、それぞれの型は 'u', 'u', 'B', 'e', 'i', 'i', 'e' だとわかる。
-GCC 内では、
char c = GET_RTX_FORMAT(GET_CODE(rtx))[N]
このようにして、rtx の N 番目のオペランドが取るべき型は何か?を得ている。
-デバッガなどで直接見たければ、マクロ展開後の式、
rtx_format[rtx->code][N]
で見ると早い。rtx_format はグローバル変数なので、いつでも参照できるはず。
**引数 [#h1e69a2d]
-CODE
--
-enum rtx_code CODE
--RTX の種類、簡単に言えば RTX の code メンバの値
--[[gcc-8.3/gcc/rtx_def]]
**返り値 [#x76a4123]
-
--
-const char *
--RTX のオペランド(u.fld[])が取るべき型が文字列で返される。
**参考 [#za24dd91]
*実装 [#v72e2b2f]
#define GET_RTX_FORMAT(CODE) (rtx_format[(int) (CODE)])
-
-RTX のオペランドが取るべき型を返す。
--[[gcc-8.3/gcc/rtx_format(global)]]
*コメント [#z2b46ef4]