[ARM] optimizeSelect should clear kill flags.
authorPete Cooper <peter_cooper@apple.com>
Thu, 30 Apr 2015 23:57:47 +0000 (23:57 +0000)
committerPete Cooper <peter_cooper@apple.com>
Thu, 30 Apr 2015 23:57:47 +0000 (23:57 +0000)
commit2127b00cd5d4058bb315220ae64b021219f7ef5b
tree90e08564a11a5814e96a7760d043f5839e73e9d2
parenta71e681792e1a4109c63ad46a663dd11041a699b
[ARM] optimizeSelect should clear kill flags.

If we move an instruction from one block down to a MOVC and predicate it,
then the original instruction could be moved in to a loop.  In this case,
its invalid for any kill flags to remain on there.

Fails with -verfy-machineinstrs.

rdar://problem/20752113

llvm-svn: 236290
llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
llvm/test/CodeGen/ARM/combine-movc-sub.ll [new file with mode: 0644]