Fix LLVM error after loweriing thumb tMOVCCr_pseudo.

The physical register should not be used across the
machine basic block, because the register allocator
may spill or resue the register.

The previous fix for test-libstlport by adding live-ins
will not run correctly.  This CL should address
the issue.

This reverts commit 95b8007dded354d15113cc0038f12ec62fa2b596.
Fix tMOVCC_pseudo for libpng -O0.

Previous fix to tMOVCC_pseudo will cause a regression on
libpng when -O0 is specified.

Some non live-ins physical registers will be splitted as
well, so we should create virtual registers for them.

This CL implements a complete live variable analysis to
analyze the usage of physical registers among the splitted
machine instructions.

Change-Id: I1974111c3446f0b66e012cead7bdb5dffe4f8b3b