Attached patch eliminates a number of test failures in LLVM built with expensive checks turned on (-DLLVM_ENABLE_EXPENSIVE_CHECKS:BOOL=True).
DAGTypeLegalizer::PerformExpensiveChecks() is not currently familiar with promoted floats supported at r235215. This causes a number of tests to fail with "Processed value not in any map!" message. The patch solves the issue.