Help regarding basic blocks in LLVM

Is there a way to combine basic blocks in LLVM?
I want to form Extended Basic Blocks in LLVM.

Have you looked at how the RegionInfo[1] analysis pass[2] is
implemented? You might be able to use it or a similar mechanism
yourself.

[1] http://www.llvm.org/docs/doxygen/html/da/d2d/classllvm_1_1RegionInfo.html
[2] http://llvm.org/docs/Passes.html#regions

Anuj,