Index: src/compiler/register-allocator.cc |
diff --git a/src/compiler/register-allocator.cc b/src/compiler/register-allocator.cc |
index 9f804e744f1e99d39dede960731753cfa58464c6..0629ecd33c7b4fbcf197c8e13ef3ea1e5691125b 100644 |
--- a/src/compiler/register-allocator.cc |
+++ b/src/compiler/register-allocator.cc |
@@ -2444,10 +2444,11 @@ LiveRange* RegisterAllocator::SplitRangeAt(LiveRange* range, |
if (pos.Value() <= range->Start().Value()) return range; |
- // We can't properly connect liveranges if split occured at the end |
- // of control instruction. |
+ // We can't properly connect liveranges if splitting occurred at the end |
+ // a block. |
DCHECK(pos.IsInstructionStart() || |
- !InstructionAt(pos.InstructionIndex())->IsControl()); |
+ (code()->GetInstructionBlock(pos.InstructionIndex())) |
+ ->last_instruction_index() != pos.InstructionIndex()); |
int vreg = GetVirtualRegister(); |
auto result = LiveRangeFor(vreg); |