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 "src/compiler/access-builder.h" | 5 #include "src/compiler/access-builder.h" |
6 | 6 |
7 #include "src/contexts.h" | 7 #include "src/contexts.h" |
8 #include "src/frames.h" | 8 #include "src/frames.h" |
9 #include "src/heap/heap.h" | 9 #include "src/heap/heap.h" |
10 #include "src/type-cache.h" | 10 #include "src/type-cache.h" |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
124 | 124 |
125 // static | 125 // static |
126 FieldAccess AccessBuilder::ForMapInstanceType() { | 126 FieldAccess AccessBuilder::ForMapInstanceType() { |
127 FieldAccess access = {kTaggedBase, Map::kInstanceTypeOffset, Handle<Name>(), | 127 FieldAccess access = {kTaggedBase, Map::kInstanceTypeOffset, Handle<Name>(), |
128 TypeCache::Get().kUint8, kMachUint8}; | 128 TypeCache::Get().kUint8, kMachUint8}; |
129 return access; | 129 return access; |
130 } | 130 } |
131 | 131 |
132 | 132 |
133 // static | 133 // static |
| 134 FieldAccess AccessBuilder::ForMapPrototype() { |
| 135 FieldAccess access = {kTaggedBase, Map::kPrototypeOffset, Handle<Name>(), |
| 136 Type::TaggedPointer(), kMachAnyTagged}; |
| 137 return access; |
| 138 } |
| 139 |
| 140 |
| 141 // static |
134 FieldAccess AccessBuilder::ForStringLength() { | 142 FieldAccess AccessBuilder::ForStringLength() { |
135 FieldAccess access = {kTaggedBase, String::kLengthOffset, Handle<Name>(), | 143 FieldAccess access = {kTaggedBase, String::kLengthOffset, Handle<Name>(), |
136 TypeCache::Get().kStringLengthType, kMachAnyTagged}; | 144 TypeCache::Get().kStringLengthType, kMachAnyTagged}; |
137 return access; | 145 return access; |
138 } | 146 } |
139 | 147 |
140 | 148 |
141 // static | 149 // static |
142 FieldAccess AccessBuilder::ForJSGlobalObjectGlobalProxy() { | 150 FieldAccess AccessBuilder::ForJSGlobalObjectGlobalProxy() { |
143 FieldAccess access = {kTaggedBase, JSGlobalObject::kGlobalProxyOffset, | 151 FieldAccess access = {kTaggedBase, JSGlobalObject::kGlobalProxyOffset, |
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
325 // static | 333 // static |
326 FieldAccess AccessBuilder::ForFrameMarker() { | 334 FieldAccess AccessBuilder::ForFrameMarker() { |
327 FieldAccess access = {kUntaggedBase, StandardFrameConstants::kMarkerOffset, | 335 FieldAccess access = {kUntaggedBase, StandardFrameConstants::kMarkerOffset, |
328 MaybeHandle<Name>(), Type::Tagged(), kMachAnyTagged}; | 336 MaybeHandle<Name>(), Type::Tagged(), kMachAnyTagged}; |
329 return access; | 337 return access; |
330 } | 338 } |
331 | 339 |
332 } // namespace compiler | 340 } // namespace compiler |
333 } // namespace internal | 341 } // namespace internal |
334 } // namespace v8 | 342 } // namespace v8 |
OLD | NEW |