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/compiler/type-cache.h" | 7 #include "src/compiler/type-cache.h" |
8 #include "src/contexts.h" | 8 #include "src/contexts.h" |
9 #include "src/frames.h" | 9 #include "src/frames.h" |
10 #include "src/handles-inl.h" | 10 #include "src/handles-inl.h" |
(...skipping 834 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
845 MachineType::Float64(), kNoWriteBarrier}; | 845 MachineType::Float64(), kNoWriteBarrier}; |
846 return access; | 846 return access; |
847 } | 847 } |
848 } | 848 } |
849 UNREACHABLE(); | 849 UNREACHABLE(); |
850 ElementAccess access = {kUntaggedBase, 0, Type::None(), MachineType::None(), | 850 ElementAccess access = {kUntaggedBase, 0, Type::None(), MachineType::None(), |
851 kNoWriteBarrier}; | 851 kNoWriteBarrier}; |
852 return access; | 852 return access; |
853 } | 853 } |
854 | 854 |
855 // static | |
856 FieldAccess AccessBuilder::ForHashTableBaseNumberOfElements() { | |
857 FieldAccess access = { | |
858 kTaggedBase, | |
859 FixedArray::OffsetOfElementAt(HashTableBase::kNumberOfElementsIndex), | |
860 MaybeHandle<Name>(), | |
861 MaybeHandle<Map>(), | |
862 Type::SignedSmall(), | |
863 MachineType::TaggedSigned(), | |
864 kNoWriteBarrier}; | |
865 return access; | |
866 } | |
867 | |
868 // static | |
869 FieldAccess AccessBuilder::ForHashTableBaseNumberOfDeletedElement() { | |
870 FieldAccess access = { | |
871 kTaggedBase, FixedArray::OffsetOfElementAt( | |
872 HashTableBase::kNumberOfDeletedElementsIndex), | |
873 MaybeHandle<Name>(), MaybeHandle<Map>(), Type::SignedSmall(), | |
874 MachineType::TaggedSigned(), kNoWriteBarrier}; | |
875 return access; | |
876 } | |
877 | |
878 // static | |
879 FieldAccess AccessBuilder::ForHashTableBaseCapacity() { | |
880 FieldAccess access = { | |
881 kTaggedBase, | |
882 FixedArray::OffsetOfElementAt(HashTableBase::kCapacityIndex), | |
883 MaybeHandle<Name>(), | |
884 MaybeHandle<Map>(), | |
885 Type::SignedSmall(), | |
886 MachineType::TaggedSigned(), | |
887 kNoWriteBarrier}; | |
888 return access; | |
889 } | |
890 | |
891 // static | |
892 FieldAccess AccessBuilder::ForDictionaryMaxNumberKey() { | |
893 FieldAccess access = { | |
894 kTaggedBase, | |
895 FixedArray::OffsetOfElementAt(NameDictionary::kMaxNumberKeyIndex), | |
896 MaybeHandle<Name>(), | |
897 MaybeHandle<Map>(), | |
898 Type::Any(), | |
899 MachineType::AnyTagged(), | |
900 kNoWriteBarrier}; | |
901 return access; | |
902 } | |
903 | |
904 // static | |
905 FieldAccess AccessBuilder::ForNextEnumerationIndex() { | |
906 FieldAccess access = { | |
907 kTaggedBase, | |
908 FixedArray::OffsetOfElementAt(NameDictionary::kNextEnumerationIndexIndex), | |
909 MaybeHandle<Name>(), | |
910 MaybeHandle<Map>(), | |
911 Type::SignedSmall(), | |
912 MachineType::TaggedSigned(), | |
913 kNoWriteBarrier}; | |
914 return access; | |
915 } | |
916 | |
917 } // namespace compiler | 855 } // namespace compiler |
918 } // namespace internal | 856 } // namespace internal |
919 } // namespace v8 | 857 } // namespace v8 |
OLD | NEW |