| Index: src/hydrogen.cc
|
| diff --git a/src/hydrogen.cc b/src/hydrogen.cc
|
| index e5270575e99303bfe4cf64e0b529c2c15022218a..0444f86a0822062ea504e8cf9333ae96133c4aaa 100644
|
| --- a/src/hydrogen.cc
|
| +++ b/src/hydrogen.cc
|
| @@ -1081,7 +1081,7 @@ HValue* HGraphBuilder::BuildCheckNonSmi(HValue* obj) {
|
|
|
| HValue* HGraphBuilder::BuildCheckMap(HValue* obj,
|
| Handle<Map> map) {
|
| - HCheckMaps* check = new(zone()) HCheckMaps(obj, map, zone());
|
| + HCheckMaps* check = HCheckMaps::New(obj, map, zone());
|
| AddInstruction(check);
|
| return check;
|
| }
|
| @@ -1297,7 +1297,7 @@ HInstruction* HGraphBuilder::BuildUncheckedMonomorphicElementAccess(
|
| AddInstruction(new(zone) HLoadElements(object, mapcheck));
|
| if (is_store && (fast_elements || fast_smi_only_elements) &&
|
| store_mode != STORE_NO_TRANSITION_HANDLE_COW) {
|
| - HCheckMaps* check_cow_map = new(zone) HCheckMaps(
|
| + HCheckMaps* check_cow_map = HCheckMaps::New(
|
| elements, isolate()->factory()->fixed_array_map(), zone);
|
| check_cow_map->ClearGVNFlag(kDependsOnElementsKind);
|
| AddInstruction(check_cow_map);
|
| @@ -1371,7 +1371,7 @@ HInstruction* HGraphBuilder::BuildUncheckedMonomorphicElementAccess(
|
| elements = BuildCopyElementsOnWrite(object, elements, elements_kind,
|
| length);
|
| } else {
|
| - HCheckMaps* check_cow_map = new(zone) HCheckMaps(
|
| + HCheckMaps* check_cow_map = HCheckMaps::New(
|
| elements, isolate()->factory()->fixed_array_map(), zone);
|
| check_cow_map->ClearGVNFlag(kDependsOnElementsKind);
|
| AddInstruction(check_cow_map);
|
| @@ -6652,7 +6652,7 @@ static int ComputeLoadStoreFieldIndex(Handle<Map> type,
|
|
|
| void HOptimizedGraphBuilder::AddCheckMap(HValue* object, Handle<Map> map) {
|
| AddInstruction(new(zone()) HCheckNonSmi(object));
|
| - AddInstruction(new(zone()) HCheckMaps(object, map, zone()));
|
| + AddInstruction(HCheckMaps::New(object, map, zone()));
|
| }
|
|
|
|
|
| @@ -6781,7 +6781,7 @@ bool HOptimizedGraphBuilder::HandlePolymorphicArrayLengthLoad(
|
| AddInstruction(new(zone()) HCheckNonSmi(object));
|
|
|
| HInstruction* typecheck =
|
| - AddInstruction(new(zone()) HCheckMaps(object, types, zone()));
|
| + AddInstruction(HCheckMaps::New(object, types, zone()));
|
| HInstruction* instr =
|
| HLoadNamedField::NewArrayLength(zone(), object, typecheck);
|
| instr->set_position(expr->position());
|
| @@ -6833,7 +6833,7 @@ void HOptimizedGraphBuilder::HandlePolymorphicLoadNamedField(Property* expr,
|
| AddInstruction(new(zone()) HCheckNonSmi(object));
|
| HInstruction* instr;
|
| if (count == types->length() && is_monomorphic_field) {
|
| - AddInstruction(new(zone()) HCheckMaps(object, types, zone()));
|
| + AddInstruction(HCheckMaps::New(object, types, zone()));
|
| instr = BuildLoadNamedField(object, map, &lookup);
|
| } else {
|
| HValue* context = environment()->LookupContext();
|
| @@ -7510,8 +7510,7 @@ HInstruction* HOptimizedGraphBuilder::BuildMonomorphicElementAccess(
|
| Handle<Map> map,
|
| bool is_store,
|
| KeyedAccessStoreMode store_mode) {
|
| - HCheckMaps* mapcheck = new(zone()) HCheckMaps(object, map,
|
| - zone(), dependency);
|
| + HCheckMaps* mapcheck = HCheckMaps::New(object, map, zone(), dependency);
|
| AddInstruction(mapcheck);
|
| if (dependency) {
|
| mapcheck->ClearGVNFlag(kDependsOnElementsKind);
|
| @@ -7568,7 +7567,7 @@ HInstruction* HOptimizedGraphBuilder::TryBuildConsolidatedElementLoad(
|
| }
|
| if (!has_double_maps && !has_smi_or_object_maps) return NULL;
|
|
|
| - HCheckMaps* check_maps = new(zone()) HCheckMaps(object, maps, zone());
|
| + HCheckMaps* check_maps = HCheckMaps::New(object, maps, zone());
|
| AddInstruction(check_maps);
|
| HInstruction* instr = BuildUncheckedMonomorphicElementAccess(
|
| object, key, val, check_maps,
|
| @@ -7720,7 +7719,7 @@ HValue* HOptimizedGraphBuilder::HandlePolymorphicElementAccess(
|
| HInstruction* access;
|
| if (IsFastElementsKind(elements_kind)) {
|
| if (is_store && !IsFastDoubleElementsKind(elements_kind)) {
|
| - AddInstruction(new(zone()) HCheckMaps(
|
| + AddInstruction(HCheckMaps::New(
|
| elements, isolate()->factory()->fixed_array_map(),
|
| zone(), elements_kind_branch));
|
| }
|
|
|