Stop relying on physical register kill flags in isKilled() in the two-address
authorCameron Zwarich <zwarich@apple.com>
Thu, 21 Feb 2013 22:58:42 +0000 (22:58 +0000)
committerCameron Zwarich <zwarich@apple.com>
Thu, 21 Feb 2013 22:58:42 +0000 (22:58 +0000)
commit384026b3d46f45ca141e5c9eff43ef15b44e9d18
tree06744ebd3e802f35d18e411bc32a21d86d5a8a96
parent705085da37eed9557202ff1e86f9462842ef7af9
Stop relying on physical register kill flags in isKilled() in the two-address
pass. One of the callers of isKilled() can cope with overapproximation of kills
and the other can't, so I added a flag to indicate this.

In theory this could pessimize code slightly, but in practice most physical
register uses are kills, and most important kills of physical registers are the
only uses of that register prior to register allocation, so we can recognize
them as kills even without kill flags.

This is relevant because LiveIntervals gets rid of all kill flags.

llvm-svn: 175821
llvm/lib/CodeGen/TwoAddressInstructionPass.cpp