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/handles-inl.h" | 9 #include "src/handles-inl.h" |
10 #include "src/heap/heap.h" | 10 #include "src/heap/heap.h" |
(...skipping 347 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
358 // static | 358 // static |
359 FieldAccess AccessBuilder::ForMapPrototype() { | 359 FieldAccess AccessBuilder::ForMapPrototype() { |
360 FieldAccess access = { | 360 FieldAccess access = { |
361 kTaggedBase, Map::kPrototypeOffset, Handle<Name>(), | 361 kTaggedBase, Map::kPrototypeOffset, Handle<Name>(), |
362 Type::TaggedPointer(), MachineType::AnyTagged(), kPointerWriteBarrier}; | 362 Type::TaggedPointer(), MachineType::AnyTagged(), kPointerWriteBarrier}; |
363 return access; | 363 return access; |
364 } | 364 } |
365 | 365 |
366 | 366 |
367 // static | 367 // static |
| 368 FieldAccess AccessBuilder::ForNameHashField() { |
| 369 FieldAccess access = { |
| 370 kTaggedBase, Name::kHashFieldOffset, Handle<Name>(), |
| 371 Type::Internal(), MachineType::Pointer(), kNoWriteBarrier}; |
| 372 return access; |
| 373 } |
| 374 |
| 375 // static |
368 FieldAccess AccessBuilder::ForStringLength() { | 376 FieldAccess AccessBuilder::ForStringLength() { |
369 FieldAccess access = {kTaggedBase, | 377 FieldAccess access = {kTaggedBase, |
370 String::kLengthOffset, | 378 String::kLengthOffset, |
371 Handle<Name>(), | 379 Handle<Name>(), |
372 TypeCache::Get().kStringLengthType, | 380 TypeCache::Get().kStringLengthType, |
373 MachineType::AnyTagged(), | 381 MachineType::AnyTagged(), |
374 kNoWriteBarrier}; | 382 kNoWriteBarrier}; |
375 return access; | 383 return access; |
376 } | 384 } |
377 | 385 |
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
539 } | 547 } |
540 UNREACHABLE(); | 548 UNREACHABLE(); |
541 ElementAccess access = {kUntaggedBase, 0, Type::None(), MachineType::None(), | 549 ElementAccess access = {kUntaggedBase, 0, Type::None(), MachineType::None(), |
542 kNoWriteBarrier}; | 550 kNoWriteBarrier}; |
543 return access; | 551 return access; |
544 } | 552 } |
545 | 553 |
546 } // namespace compiler | 554 } // namespace compiler |
547 } // namespace internal | 555 } // namespace internal |
548 } // namespace v8 | 556 } // namespace v8 |
OLD | NEW |