The last of the restructuring stuff before flattening basic-block.h. 5 new files, cfgbuild.h, cfgcleanup.h, cfgloopmanip.h, dominance.h, and ifcvt.h. MOstly prototypes, but a few enums, #defines and structs were more appropriately located. basic-block.h only includes cfgbuild.h, cfgcleanup.h, and dominance.h. Most of the prototypes for cfgloopmanip.h were actually in cfgloop.h, so cfgloopmanip.h is included from there instead. "struct ce_if_block" was moved to the new ifcvt.h. Other than ifcvt.c, the frv target was the only one which actually used the struct, so we include it there directly. predict.h was also brought up to snuff to match predict.c. maybe_hot_count_p() was newly exported from predict.c so that the definitions of cgraph_edge::maybe_hot_p() and cgraph_node::optimize_for_size_p() could be moved back to cgraph.[ch] where they belong. Bootstraps on x86_64-unknown-linux-gnu, and testsuites are currently running. I'll also do a full set of port builds over night... assuming no issues, OK? Andrew