Change the default latency for implicit defs.
authorAndrew Trick <atrick@apple.com>
Sat, 16 Mar 2013 18:58:57 +0000 (18:58 +0000)
committerAndrew Trick <atrick@apple.com>
Sat, 16 Mar 2013 18:58:57 +0000 (18:58 +0000)
commit51f6747b23bf7c85e90f816bf9bfae3a1d4fd058
treec7257f9feb14d6d562878563c31140dc680b2dab
parent1ab961f6d3cdd284f5d6c696f3e26eb3627e2c8b
Change the default latency for implicit defs.

Implicit defs are not currently positional and not modeled by the
per-operand machine model. Unfortunately, we treat defs that are part
of the architectural instruction description, like flags, the same as
other implicit defs. Really, they should have a fixed MachineInstr
layout and probably shouldn't be "implicit" at all.

For now, we'll change the default latency to be the max operand
latency. That will give flag setting operands full latency for x86
folded loads. Other kinds of "fake" implicit defs don't occur prior to
regalloc anyway, and we would like them to go away postRegAlloc as
well.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177227 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/TargetSchedule.cpp