Matthias Braun ca0abaebfb SplitKit: Fix liveness recomputation in some remat cases.
Example situation:
```
BB0:
  %0 = ...
  use %0
  ; ...
  condjump BB1
  jmp BB2

BB1:
  %0 = ...   ; rematerialized def from above (from earlier split step)
  jmp BB2

BB2:
  ; ...
  use %0
```

%0 will have a live interval with 3 value numbers (for the BB0, BB1 and
BB2 parts). Now SplitKit tries and succeeds in rematerializing the value
number in BB2 (This only works because it is a secondary split so
SplitKit is can trace this back to a single original def).

We need to recompute all live ranges affected by a value number that we
rematerialize. The case that we missed before is that when the value
that is rematerialized is at a join (Phi VNI) then we also have to
recompute liveness for the predecessor VNIs.

rdar://35699130

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

llvm-svn: 324039
2018-02-02 00:08:19 +00:00
..
2017-02-21 20:17:34 +00:00
2016-01-26 00:03:25 +00:00
2017-08-01 22:20:49 +00:00
2017-08-28 20:20:47 +00:00
2017-04-07 22:01:23 +00:00
2017-04-07 22:01:23 +00:00
2016-06-16 16:09:53 +00:00
2016-01-28 18:59:04 +00:00
2017-08-01 22:20:49 +00:00
2017-08-01 22:20:49 +00:00
2017-08-28 20:20:47 +00:00
2017-07-21 22:48:47 +00:00
2016-06-16 16:09:53 +00:00
2015-10-26 20:49:49 +00:00
2016-06-20 17:45:33 +00:00
2016-12-27 18:35:19 +00:00
2016-01-26 00:03:25 +00:00
2016-04-08 18:15:37 +00:00
2014-11-17 14:08:57 +00:00
2017-12-15 09:24:46 +00:00
2014-12-04 19:34:50 +00:00
2016-06-16 16:09:53 +00:00
2016-03-31 19:42:04 +00:00
2015-12-17 01:29:08 +00:00
2017-11-28 01:17:52 +00:00
2017-12-11 12:13:45 +00:00
2017-12-11 12:13:45 +00:00
2017-12-11 12:13:45 +00:00
2015-01-19 15:16:06 +00:00
2017-08-28 20:20:47 +00:00
2017-08-28 20:20:47 +00:00
2017-12-22 08:36:25 +00:00
2017-08-01 22:20:49 +00:00
2017-08-01 22:20:49 +00:00
2016-12-27 18:35:19 +00:00
2016-12-27 18:35:19 +00:00
2015-08-13 17:28:16 +00:00