GCC Wikia
(→‎概要: tree_opt_passリンク追記)
(ソース追加)
 
12行目: 12行目:
   
 
pass_hogehogeは[[tree_opt_pass]]構造体である
 
pass_hogehogeは[[tree_opt_pass]]構造体である
  +
  +
pass_expand->[[tree_expand_cfg]]->[[expand_gimple_basic_block]]->
  +
  +
[[expand_expr_stmt]]->[[expand_expr]]->[[langhooks.expand_expr]]->[[c_expand_expr]]->
  +
  +
[[expand_expr_real]]->[[expand_expr_real1]]
  +
  +
とづづく
   
 
== 引数 ==
 
== 引数 ==
18行目: 26行目:
   
 
== 実装 ==
 
== 実装 ==
 
 
<code>
 
<code>
  +
1690 struct tree_opt_pass pass_expand =
  +
1691 {
  +
1692 "expand", /* name */
  +
1693 NULL, /* gate */
  +
1694 [[tree_expand_cfg]], /* execute */
  +
1695 NULL, /* sub */
  +
1696 NULL, /* next */
  +
1697 0, /* static_pass_number */
  +
1698 TV_EXPAND, /* tv_id */
  +
1699 /* ??? If TER is enabled, we actually receive GENERIC. */
  +
1700 PROP_gimple_leh | PROP_cfg, /* properties_required */
  +
1701 PROP_rtl, /* properties_provided */
  +
1702 PROP_gimple_leh, /* properties_destroyed */
  +
1703 0, /* todo_flags_start */
  +
1704 TODO_dump_func, /* todo_flags_finish */
  +
1705 'r' /* letter */
  +
1706 };
   
 
</code>
 
</code>

2008年6月10日 (火) 13:09時点における最新版

このページを編集する際は,編集に関する方針に従ってください.[]

概要[]

  • gcc-4.1.0/gcc/cfgexpand.cにて定義

コメント

gcc Internalsの中RTL passes

RTL の生成

pass_hogehogeはtree_opt_pass構造体である

pass_expand->tree_expand_cfg->expand_gimple_basic_block->

expand_expr_stmt->expand_expr->langhooks.expand_expr->c_expand_expr->

expand_expr_real->expand_expr_real1

とづづく

引数[]

実装[]

1690 struct tree_opt_pass pass_expand =
1691 {
1692   "expand",                             /* name */
1693   NULL,                                 /* gate */
1694   tree_expand_cfg,                      /* execute */
1695   NULL,                                 /* sub */
1696   NULL,                                 /* next */
1697   0,                                    /* static_pass_number */
1698   TV_EXPAND,                            /* tv_id */
1699   /* ??? If TER is enabled, we actually receive GENERIC.  */
1700   PROP_gimple_leh | PROP_cfg,           /* properties_required */
1701   PROP_rtl,                             /* properties_provided */
1702   PROP_gimple_leh,                      /* properties_destroyed */
1703   0,                                    /* todo_flags_start */
1704   TODO_dump_func,                       /* todo_flags_finish */
1705   'r'                                   /* letter */
1706 };



リンク元