Index: src/hydrogen.cc |
diff --git a/src/hydrogen.cc b/src/hydrogen.cc |
index 117e6bfedeccb5866bc807e1c2c8c523ea708a3f..46a3672b94ed2ef74f67dd88b64ac0cc124c9539 100644 |
--- a/src/hydrogen.cc |
+++ b/src/hydrogen.cc |
@@ -634,6 +634,11 @@ HConstant* HGraph::GetConstantHole() { |
} |
+HConstant* HGraph::GetInvalidContext() { |
+ return GetConstantInt32(&constant_invalid_context_, 0xFFFFC0C7); |
+} |
+ |
+ |
HGraphBuilder::IfBuilder::IfBuilder(HGraphBuilder* builder, BailoutId id) |
: builder_(builder), |
finished_(false), |
@@ -3905,6 +3910,13 @@ void HGraph::SetupInformativeDefinitionsRecursively(HBasicBlock* block) { |
for (int i = 0; i < block->dominated_blocks()->length(); ++i) { |
SetupInformativeDefinitionsRecursively(block->dominated_blocks()->at(i)); |
} |
+ |
+ for (HInstruction* i = block->first(); i != NULL; i = i->next()) { |
+ if (i->IsBoundsCheck()) { |
+ HBoundsCheck* check = HBoundsCheck::cast(i); |
+ check->ApplyIndexChange(); |
+ } |
+ } |
} |