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

Side by Side Diff: src/runtime/runtime.h

Issue 1292283005: Prototype CL for faster DOM accessors. Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 4 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
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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 #ifndef V8_RUNTIME_RUNTIME_H_ 5 #ifndef V8_RUNTIME_RUNTIME_H_
6 #define V8_RUNTIME_RUNTIME_H_ 6 #define V8_RUNTIME_RUNTIME_H_
7 7
8 #include "src/allocation.h" 8 #include "src/allocation.h"
9 #include "src/objects.h" 9 #include "src/objects.h"
10 #include "src/zone.h" 10 #include "src/zone.h"
(...skipping 853 matching lines...) Expand 10 before | Expand all | Expand 10 after
864 864
865 #define FOR_EACH_INTRINSIC_URI(F) \ 865 #define FOR_EACH_INTRINSIC_URI(F) \
866 F(URIEscape, 1, 1) \ 866 F(URIEscape, 1, 1) \
867 F(URIUnescape, 1, 1) 867 F(URIUnescape, 1, 1)
868 868
869 869
870 #define FOR_EACH_INTRINSIC_RETURN_PAIR(F) \ 870 #define FOR_EACH_INTRINSIC_RETURN_PAIR(F) \
871 F(LoadLookupSlot, 2, 2) \ 871 F(LoadLookupSlot, 2, 2) \
872 F(LoadLookupSlotNoReferenceError, 2, 2) 872 F(LoadLookupSlotNoReferenceError, 2, 2)
873 873
874 #define FOR_EACH_INTRINSIC_DIRECT_PTR_ACCESS(F) \
875 F(PtrGetFromInternalField, 2, 1) \
876 F(PtrLoadOffset, 2, 1) \
877 F(PtrLoadOffsetInt, 2, 1) \
878 F(PtrLoadOffsetObj, 1, 1) \
879 F(PtrIsNull, 1, 1)
874 880
875 // Most intrinsics are implemented in the runtime/ directory, but ICs are 881 // Most intrinsics are implemented in the runtime/ directory, but ICs are
876 // implemented in ic.cc for now. 882 // implemented in ic.cc for now.
877 #define FOR_EACH_INTRINSIC_IC(F) \ 883 #define FOR_EACH_INTRINSIC_IC(F) \
878 F(LoadIC_Miss, 3, 1) \ 884 F(LoadIC_Miss, 3, 1) \
879 F(KeyedLoadIC_Miss, 3, 1) \ 885 F(KeyedLoadIC_Miss, 3, 1) \
880 F(CallIC_Miss, 3, 1) \ 886 F(CallIC_Miss, 3, 1) \
881 F(CallIC_Customization_Miss, 3, 1) \ 887 F(CallIC_Customization_Miss, 3, 1) \
882 F(StoreIC_Miss, 3, 1) \ 888 F(StoreIC_Miss, 3, 1) \
883 F(StoreIC_Slow, 3, 1) \ 889 F(StoreIC_Slow, 3, 1) \
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
924 FOR_EACH_INTRINSIC_OBJECT(F) \ 930 FOR_EACH_INTRINSIC_OBJECT(F) \
925 FOR_EACH_INTRINSIC_OBSERVE(F) \ 931 FOR_EACH_INTRINSIC_OBSERVE(F) \
926 FOR_EACH_INTRINSIC_PROXY(F) \ 932 FOR_EACH_INTRINSIC_PROXY(F) \
927 FOR_EACH_INTRINSIC_REGEXP(F) \ 933 FOR_EACH_INTRINSIC_REGEXP(F) \
928 FOR_EACH_INTRINSIC_SCOPES(F) \ 934 FOR_EACH_INTRINSIC_SCOPES(F) \
929 FOR_EACH_INTRINSIC_SIMD(F) \ 935 FOR_EACH_INTRINSIC_SIMD(F) \
930 FOR_EACH_INTRINSIC_STRINGS(F) \ 936 FOR_EACH_INTRINSIC_STRINGS(F) \
931 FOR_EACH_INTRINSIC_SYMBOL(F) \ 937 FOR_EACH_INTRINSIC_SYMBOL(F) \
932 FOR_EACH_INTRINSIC_TEST(F) \ 938 FOR_EACH_INTRINSIC_TEST(F) \
933 FOR_EACH_INTRINSIC_TYPEDARRAY(F) \ 939 FOR_EACH_INTRINSIC_TYPEDARRAY(F) \
934 FOR_EACH_INTRINSIC_URI(F) 940 FOR_EACH_INTRINSIC_URI(F) \
941 FOR_EACH_INTRINSIC_DIRECT_PTR_ACCESS(F)
935 942
936 // FOR_EACH_INTRINSIC defines the list of all intrinsics, coming in 2 flavors, 943 // FOR_EACH_INTRINSIC defines the list of all intrinsics, coming in 2 flavors,
937 // either returning an object or a pair. 944 // either returning an object or a pair.
938 #define FOR_EACH_INTRINSIC(F) \ 945 #define FOR_EACH_INTRINSIC(F) \
939 FOR_EACH_INTRINSIC_RETURN_PAIR(F) \ 946 FOR_EACH_INTRINSIC_RETURN_PAIR(F) \
940 FOR_EACH_INTRINSIC_RETURN_OBJECT(F) 947 FOR_EACH_INTRINSIC_RETURN_OBJECT(F)
941 948
942 949
943 #define F(name, nargs, ressize) \ 950 #define F(name, nargs, ressize) \
944 Object* Runtime_##name(int args_length, Object** args_object, \ 951 Object* Runtime_##name(int args_length, Object** args_object, \
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
1134 inline bool Runtime::AtomicIsLockFree(uint32_t size) { 1141 inline bool Runtime::AtomicIsLockFree(uint32_t size) {
1135 return size == 1 || size == 2 || size == 4; 1142 return size == 1 || size == 2 || size == 4;
1136 } 1143 }
1137 1144
1138 #endif 1145 #endif
1139 1146
1140 } // namespace internal 1147 } // namespace internal
1141 } // namespace v8 1148 } // namespace v8
1142 1149
1143 #endif // V8_RUNTIME_RUNTIME_H_ 1150 #endif // V8_RUNTIME_RUNTIME_H_
OLDNEW
« no previous file with comments | « BUILD.gn ('k') | src/runtime/runtime-ptr.cc » ('j') | src/runtime/runtime-ptr.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698