DescriptionInstead of splintering by chunks of deferred blocks, irrespective of the
range's internal structure, we take a range at a time and splinter based on
the blocks it covers. This is no different in scenarios where a UseInterval
covers non-deferred then deferred blocks. However, in scenarios where
a deferred block jumps to another one, and there are no other blocks
covered by the range in between, this CL will treat the two such blocks
together, while the previous one would treat them separately. This matters
in cases such as deoptimization blocks preceded (not necessarily
consecutively) by a single instruction (jump) Merging block.
Committed: https://crrev.com/27f51390e9e2a1bdf72783ebe2407045815c5ee9
Cr-Commit-Position: refs/heads/master@{#31422}
Patch Set 1 #Patch Set 2 : #Patch Set 3 : #Patch Set 4 #Patch Set 5 : #Messages
Total messages: 10 (5 generated)
|