Index: src/x64/lithium-codegen-x64.cc |
diff --git a/src/x64/lithium-codegen-x64.cc b/src/x64/lithium-codegen-x64.cc |
index 3e8fd5c72fb582ac662e6be50f6172ff97f91739..21b0fcdd3be357b20ccb853003dcc7d640bf9c73 100644 |
--- a/src/x64/lithium-codegen-x64.cc |
+++ b/src/x64/lithium-codegen-x64.cc |
@@ -1822,17 +1822,16 @@ void LCodeGen::DoArithmeticT(LArithmeticT* instr) { |
} |
-int LCodeGen::GetNextEmittedBlock(int block) { |
- for (int i = block + 1; i < graph()->blocks()->length(); ++i) { |
- LLabel* label = chunk_->GetLabel(i); |
- if (!label->HasReplacement()) return i; |
+int LCodeGen::GetNextEmittedBlock() { |
+ for (int i = current_block_ + 1; i < graph()->blocks()->length(); ++i) { |
+ if (!chunk_->GetLabel(i)->HasReplacement()) return i; |
} |
return -1; |
} |
void LCodeGen::EmitBranch(int left_block, int right_block, Condition cc) { |
- int next_block = GetNextEmittedBlock(current_block_); |
+ int next_block = GetNextEmittedBlock(); |
right_block = chunk_->LookupDestination(right_block); |
left_block = chunk_->LookupDestination(left_block); |
@@ -1962,10 +1961,9 @@ void LCodeGen::DoBranch(LBranch* instr) { |
void LCodeGen::EmitGoto(int block) { |
- block = chunk_->LookupDestination(block); |
- int next_block = GetNextEmittedBlock(current_block_); |
- if (block != next_block) { |
- __ jmp(chunk_->GetAssemblyLabel(block)); |
+ int destination = chunk_->LookupDestination(block); |
+ if (destination != GetNextEmittedBlock()) { |
+ __ jmp(chunk_->GetAssemblyLabel(destination)); |
} |
} |