[x86] machine combiner reassociation: mark EFLAGS operand as 'dead'
authorSanjay Patel <spatel@rotateright.com>
Tue, 4 Aug 2015 15:21:56 +0000 (15:21 +0000)
committerSanjay Patel <spatel@rotateright.com>
Tue, 4 Aug 2015 15:21:56 +0000 (15:21 +0000)
commit75ced2782b73b44823769782977121de2bb71c89
tree552141f125a727074120f328dabe5aa6e1e46ecd
parenta00e997b4ff9b3a4b203b8a04aec4ed808c6b2cb
[x86] machine combiner reassociation: mark EFLAGS operand as 'dead'

In the commentary for D11660, I wasn't sure if it was alright to create new
integer machine instructions without also creating the implicit EFLAGS operand.
From what I can see, the implicit operand is always created by the MachineInstrBuilder
based on the instruction type, so we don't have to do that explicitly. However, in
reviewing the debug output, I noticed that the operand was not marked as 'dead'.
The machine combiner should do that to preserve future optimization opportunities
that may be checking for that dead EFLAGS operand themselves.

Differential Revision: http://reviews.llvm.org/D11696

llvm-svn: 243990
llvm/lib/Target/X86/X86InstrInfo.cpp
llvm/test/CodeGen/X86/machine-combiner-int.ll