]> granicus.if.org Git - llvm/commit
[ExecutionDepsFix] Don't revisit true dependencies
authorKeno Fischer <keno@alumni.harvard.edu>
Tue, 4 Apr 2017 20:30:47 +0000 (20:30 +0000)
committerKeno Fischer <keno@alumni.harvard.edu>
Tue, 4 Apr 2017 20:30:47 +0000 (20:30 +0000)
commit54eda943893db59f794921a0affaa862b0ae0452
tree707ee5b90690eda4b73a7fe790a87e8d0ae35356
parentd6c407ebd68ac980ee78ebe14d510740152884fa
[ExecutionDepsFix] Don't revisit true dependencies

If an instruction has a true dependency, it makes sense for to use that
register for any undef read operands in the same instruction (we'll have
to wait for that register to become available anyway). This logic
was already implemented. However, the code would then still try to
revisit that instruction and break the dependency (and always fail,
since by definition a true dependency has to be live before the
instruction). Avoid revisiting such instructions as a performance
optimization. No functional change.

Differential Revision: https://reviews.llvm.org/D30173

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@299467 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/CodeGen/ExecutionDepsFix.h
lib/CodeGen/ExecutionDepsFix.cpp