Go to file
Ahmed Bougacha 54b7d334c7 [MachineCSE] Clear kill-flag on registers imp-def'd by the CSE'd instruction.
Go through implicit defs of CSMI and MI, and clear the kill flags on
their uses in all the instructions between CSMI and MI.
We might have made some of the kill flags redundant, consider:
  subs  ... %NZCV<imp-def>        <- CSMI
  csinc ... %NZCV<imp-use,kill>   <- this kill flag isn't valid anymore
  subs  ... %NZCV<imp-def>        <- MI, to be eliminated
  csinc ... %NZCV<imp-use,kill>
Since we eliminated MI, and reused a register imp-def'd by CSMI
(here %NZCV), that register, if it was killed before MI, should have
that kill flag removed, because it's lifetime was extended.

Also, add an exhaustive testcase for the motivating example.

Reviewed by: Juergen Ributzka <juergen@apple.com>

llvm-svn: 223133
2014-12-02 18:09:51 +00:00
clang Fix invalid calling convention used for libcalls on ARM. 2014-12-02 16:04:58 +00:00
clang-tools-extra Update and simplify to match Clang r223095. 2014-12-02 00:32:02 +00:00
compiler-rt [Tsan] Fix the atomic_race.cc test to pass on systems with high loads 2014-12-02 15:04:39 +00:00
debuginfo-tests New round of fixes for "Always compile debuginfo-tests for the host triple" 2014-10-18 23:47:59 +00:00
libclc Don't include <stddef.h> 2014-11-18 14:19:27 +00:00
libcxx libc++: support NaCl when building thread.cpp 2014-12-02 17:30:19 +00:00
libcxxabi Fix comment on end of #endif to match #if 2014-11-25 03:19:02 +00:00
lld Disable warning 4530 for MSVC builds. 2014-12-02 17:57:54 +00:00
lldb Fix the behavior of ${current-pc-arrow} in the default disassembly 2014-12-02 00:26:21 +00:00
llgo Initial commit of llgo third_party. 2014-11-27 00:12:26 +00:00
llvm [MachineCSE] Clear kill-flag on registers imp-def'd by the CSE'd instruction. 2014-12-02 18:09:51 +00:00
openmp I apologise in advance for the size of this check-in. At Intel we do 2014-10-07 16:25:50 +00:00
polly Drop unused enum value 2014-11-30 15:57:07 +00:00