Make recursive resolution of XForm patterns optional.

This fixes the failing tests in the CellSPU backend. With this option enabled,
the ISEL matcher for the CellSPU replaces a BUILD_VECTOR with a TargetContant
node in some cases, causing an assertion in some tests. Without this option
enabled, some Patmos patterns like SHADD2 fail to match properly and the
backend creates incorrect code.
Do not run MachineFunctionAnalysis if no pass uses it
Add TargetMachine reference to MachineModuleInfo, register MachineFunctionAnalysis as regular pass, cleanup of preserved MachineFunctions.
Fixed segfault on empty functions
Added info about target triples