2015-05-13 19:09:14 -04:00
USING: compiler.cfg compiler.cfg.instructions help.markup help.syntax kernel ;
2014-08-06 10:39:29 -04:00
IN: compiler.cfg.block-joining
HELP: join-block?
2015-05-13 19:09:14 -04:00
{ $values { "bb" basic-block } { "?" boolean } }
2015-07-27 05:11:49 -04:00
{ $description "Whether the block can be joined with its predecessor or not. Two blocks can only be joined if:"
{ $list
"Neither of them are kill blocks"
"They have only one predecessor and it has only one successor"
"The predecessor has a lower block number"
}
} ;
2015-03-16 05:00:21 -04:00
2015-04-08 02:20:55 -04:00
HELP: join-blocks
{ $values { "cfg" cfg } }
{ $description "A compiler pass when optimizing the cfg." } ;
2015-03-16 05:00:21 -04:00
ARTICLE: "compiler.cfg.block-joining" "Block Joining"
2015-07-27 05:11:49 -04:00
"Joining blocks that are not calls and are connected by a single CFG edge. This pass does not update " { $link ##phi } " nodes and should therefore only run before stack analysis or after ##phi node elimination." ;
2015-03-16 05:00:21 -04:00
ABOUT: "compiler.cfg.block-joining"