Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(485)

Side by Side Diff: src/compiler/js-typed-lowering.cc

Issue 1312893010: Remove no-zone versions of intersection and union. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/compiler/access-builder.cc ('k') | src/compiler/typer.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/code-factory.h" 5 #include "src/code-factory.h"
6 #include "src/compiler/access-builder.h" 6 #include "src/compiler/access-builder.h"
7 #include "src/compiler/js-graph.h" 7 #include "src/compiler/js-graph.h"
8 #include "src/compiler/js-typed-lowering.h" 8 #include "src/compiler/js-typed-lowering.h"
9 #include "src/compiler/linkage.h" 9 #include "src/compiler/linkage.h"
10 #include "src/compiler/node-matchers.h" 10 #include "src/compiler/node-matchers.h"
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 // Primitive store into a field. 54 // Primitive store into a field.
55 void Store(const FieldAccess& access, Node* value) { 55 void Store(const FieldAccess& access, Node* value) {
56 effect_ = graph()->NewNode(simplified()->StoreField(access), allocation_, 56 effect_ = graph()->NewNode(simplified()->StoreField(access), allocation_,
57 value, effect_, control_); 57 value, effect_, control_);
58 } 58 }
59 59
60 // Compound allocation of a FixedArray. 60 // Compound allocation of a FixedArray.
61 void AllocateArray(int length, Handle<Map> map) { 61 void AllocateArray(int length, Handle<Map> map) {
62 Allocate(FixedArray::SizeFor(length)); 62 Allocate(FixedArray::SizeFor(length));
63 Store(AccessBuilder::ForMap(), map); 63 Store(AccessBuilder::ForMap(), map);
64 Store(AccessBuilder::ForFixedArrayLength(), jsgraph()->Constant(length)); 64 Store(AccessBuilder::ForFixedArrayLength(graph()->zone()),
65 jsgraph()->Constant(length));
65 } 66 }
66 67
67 // Compound store of a constant into a field. 68 // Compound store of a constant into a field.
68 void Store(const FieldAccess& access, Handle<Object> value) { 69 void Store(const FieldAccess& access, Handle<Object> value) {
69 Store(access, jsgraph()->Constant(value)); 70 Store(access, jsgraph()->Constant(value));
70 } 71 }
71 72
72 Node* allocation() const { return allocation_; } 73 Node* allocation() const { return allocation_; }
73 Node* effect() const { return effect_; } 74 Node* effect() const { return effect_; }
74 75
(...skipping 1327 matching lines...) Expand 10 before | Expand all | Expand 10 after
1402 cache_type_false0 = graph()->NewNode( 1403 cache_type_false0 = graph()->NewNode(
1403 common()->Select(kMachAnyTagged, BranchHint::kFalse), 1404 common()->Select(kMachAnyTagged, BranchHint::kFalse),
1404 graph()->NewNode(machine()->Uint32LessThanOrEqual(), 1405 graph()->NewNode(machine()->Uint32LessThanOrEqual(),
1405 receiver_instance_type, 1406 receiver_instance_type,
1406 jsgraph()->Uint32Constant(LAST_JS_PROXY_TYPE)), 1407 jsgraph()->Uint32Constant(LAST_JS_PROXY_TYPE)),
1407 jsgraph()->ZeroConstant(), // Zero indicagtes proxy. 1408 jsgraph()->ZeroConstant(), // Zero indicagtes proxy.
1408 jsgraph()->OneConstant()); // One means slow check. 1409 jsgraph()->OneConstant()); // One means slow check.
1409 1410
1410 cache_array_false0 = cache_type; 1411 cache_array_false0 = cache_type;
1411 cache_length_false0 = efalse0 = graph()->NewNode( 1412 cache_length_false0 = efalse0 = graph()->NewNode(
1412 simplified()->LoadField(AccessBuilder::ForFixedArrayLength()), 1413 simplified()->LoadField(
1414 AccessBuilder::ForFixedArrayLength(graph()->zone())),
1413 cache_array_false0, efalse0, if_false0); 1415 cache_array_false0, efalse0, if_false0);
1414 } 1416 }
1415 1417
1416 control = graph()->NewNode(common()->Merge(2), if_true0, if_false0); 1418 control = graph()->NewNode(common()->Merge(2), if_true0, if_false0);
1417 effect = graph()->NewNode(common()->EffectPhi(2), etrue0, efalse0, control); 1419 effect = graph()->NewNode(common()->EffectPhi(2), etrue0, efalse0, control);
1418 Node* cache_array = 1420 Node* cache_array =
1419 graph()->NewNode(common()->Phi(kMachAnyTagged, 2), cache_array_true0, 1421 graph()->NewNode(common()->Phi(kMachAnyTagged, 2), cache_array_true0,
1420 cache_array_false0, control); 1422 cache_array_false0, control);
1421 Node* cache_length = 1423 Node* cache_length =
1422 graph()->NewNode(common()->Phi(kMachAnyTagged, 2), cache_length_true0, 1424 graph()->NewNode(common()->Phi(kMachAnyTagged, 2), cache_length_true0,
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after
1706 } 1708 }
1707 1709
1708 1710
1709 MachineOperatorBuilder* JSTypedLowering::machine() const { 1711 MachineOperatorBuilder* JSTypedLowering::machine() const {
1710 return jsgraph()->machine(); 1712 return jsgraph()->machine();
1711 } 1713 }
1712 1714
1713 } // namespace compiler 1715 } // namespace compiler
1714 } // namespace internal 1716 } // namespace internal
1715 } // namespace v8 1717 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/access-builder.cc ('k') | src/compiler/typer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698