OLD | NEW |
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 <limits> | 5 #include <limits> |
6 | 6 |
7 #include "src/compiler/control-builders.h" | 7 #include "src/compiler/control-builders.h" |
8 #include "src/compiler/generic-node-inl.h" | 8 #include "src/compiler/generic-node-inl.h" |
9 #include "src/compiler/graph-visualizer.h" | 9 #include "src/compiler/graph-visualizer.h" |
10 #include "src/compiler/node-properties-inl.h" | 10 #include "src/compiler/node-properties-inl.h" |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
65 | 65 |
66 FieldAccess ForJSObjectProperties() { | 66 FieldAccess ForJSObjectProperties() { |
67 FieldAccess access = {kTaggedBase, JSObject::kPropertiesOffset, | 67 FieldAccess access = {kTaggedBase, JSObject::kPropertiesOffset, |
68 Handle<Name>(), Type::Any(), kMachAnyTagged}; | 68 Handle<Name>(), Type::Any(), kMachAnyTagged}; |
69 return access; | 69 return access; |
70 } | 70 } |
71 | 71 |
72 | 72 |
73 FieldAccess ForArrayBufferBackingStore() { | 73 FieldAccess ForArrayBufferBackingStore() { |
74 FieldAccess access = { | 74 FieldAccess access = { |
75 kTaggedBase, JSArrayBuffer::kBackingStoreOffset, | 75 kTaggedBase, JSArrayBuffer::kBackingStoreOffset, Handle<Name>(), |
76 Handle<Name>(), Type::UntaggedPtr(), | 76 Type::UntaggedPtr(), kMachPtr, |
77 MachineOperatorBuilder::pointer_rep(), | |
78 }; | 77 }; |
79 return access; | 78 return access; |
80 } | 79 } |
81 | 80 |
82 | 81 |
83 ElementAccess ForFixedArrayElement() { | 82 ElementAccess ForFixedArrayElement() { |
84 ElementAccess access = {kTaggedBase, FixedArray::kHeaderSize, Type::Any(), | 83 ElementAccess access = {kTaggedBase, FixedArray::kHeaderSize, Type::Any(), |
85 kMachAnyTagged}; | 84 kMachAnyTagged}; |
86 return access; | 85 return access; |
87 } | 86 } |
(...skipping 1253 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1341 | 1340 |
1342 Node* store = t.graph()->NewNode(t.simplified()->StoreField(access), t.p0, | 1341 Node* store = t.graph()->NewNode(t.simplified()->StoreField(access), t.p0, |
1343 t.p1, t.start, t.start); | 1342 t.p1, t.start, t.start); |
1344 t.Effect(store); | 1343 t.Effect(store); |
1345 t.Lower(); | 1344 t.Lower(); |
1346 | 1345 |
1347 CHECK_EQ(IrOpcode::kStore, store->opcode()); | 1346 CHECK_EQ(IrOpcode::kStore, store->opcode()); |
1348 CHECK_EQ(t.p0, store->InputAt(0)); | 1347 CHECK_EQ(t.p0, store->InputAt(0)); |
1349 CheckChangeOf(IrOpcode::kChangeTaggedToFloat64, t.p1, store->InputAt(2)); | 1348 CheckChangeOf(IrOpcode::kChangeTaggedToFloat64, t.p1, store->InputAt(2)); |
1350 } | 1349 } |
OLD | NEW |