Index: src/code-stubs-hydrogen.cc |
diff --git a/src/code-stubs-hydrogen.cc b/src/code-stubs-hydrogen.cc |
index 14bd8f9c9439afe5512ecce4526d14c5e5c0a4b1..cbd1c95daacbc32092a0249cee41b9f15c4390d3 100644 |
--- a/src/code-stubs-hydrogen.cc |
+++ b/src/code-stubs-hydrogen.cc |
@@ -418,7 +418,7 @@ HValue* CodeStubGraphBuilder<KeyedLoadFastElementStub>::BuildCodeStub() { |
HInstruction* load = BuildUncheckedMonomorphicElementAccess( |
GetParameter(0), GetParameter(1), NULL, NULL, |
casted_stub()->is_js_array(), casted_stub()->elements_kind(), |
- false, NEVER_RETURN_HOLE, STANDARD_STORE, Representation::Tagged()); |
+ false, NEVER_RETURN_HOLE, STANDARD_STORE, Representation::Smi()); |
return load; |
} |
@@ -464,7 +464,7 @@ HValue* CodeStubGraphBuilder<KeyedStoreFastElementStub>::BuildCodeStub() { |
GetParameter(0), GetParameter(1), GetParameter(2), NULL, |
casted_stub()->is_js_array(), casted_stub()->elements_kind(), |
true, NEVER_RETURN_HOLE, casted_stub()->store_mode(), |
- Representation::Tagged()); |
+ Representation::Smi()); |
return GetParameter(2); |
} |
@@ -588,11 +588,9 @@ HValue* CodeStubGraphBuilder<ArraySingleArgumentConstructorStub>:: |
new(zone()) HConstant(initial_capacity, Representation::Tagged()); |
AddInstruction(initial_capacity_node); |
- // Since we're forcing Integer32 representation for this HBoundsCheck, |
- // there's no need to Smi-check the index. |
HBoundsCheck* checked_arg = AddBoundsCheck(argument, max_alloc_length, |
ALLOW_SMI_KEY, |
- Representation::Tagged()); |
+ Representation::Smi()); |
IfBuilder if_builder(this); |
if_builder.IfCompare(checked_arg, constant_zero, Token::EQ); |
if_builder.Then(); |