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

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

Issue 651223002: Implement inline %_IsJSProxy() for full codegen and Hydrogen (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 2 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 | Annotate | Revision Log
« no previous file with comments | « src/object-observe.js ('k') | src/runtime/runtime-proxy.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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_H_ 5 #ifndef V8_RUNTIME_H_
6 #define V8_RUNTIME_H_ 6 #define V8_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 273 matching lines...) Expand 10 before | Expand all | Expand 10 after
284 F(CreateGlobalPrivateOwnSymbol, 1, 1) \ 284 F(CreateGlobalPrivateOwnSymbol, 1, 1) \
285 F(CreatePrivateOwnSymbol, 1, 1) \ 285 F(CreatePrivateOwnSymbol, 1, 1) \
286 F(NewSymbolWrapper, 1, 1) \ 286 F(NewSymbolWrapper, 1, 1) \
287 F(SymbolDescription, 1, 1) \ 287 F(SymbolDescription, 1, 1) \
288 F(SymbolRegistry, 0, 1) \ 288 F(SymbolRegistry, 0, 1) \
289 F(SymbolIsPrivate, 1, 1) \ 289 F(SymbolIsPrivate, 1, 1) \
290 \ 290 \
291 /* Harmony proxies */ \ 291 /* Harmony proxies */ \
292 F(CreateJSProxy, 2, 1) \ 292 F(CreateJSProxy, 2, 1) \
293 F(CreateJSFunctionProxy, 4, 1) \ 293 F(CreateJSFunctionProxy, 4, 1) \
294 F(IsJSProxy, 1, 1) \
295 F(IsJSFunctionProxy, 1, 1) \ 294 F(IsJSFunctionProxy, 1, 1) \
296 F(GetHandler, 1, 1) \ 295 F(GetHandler, 1, 1) \
297 F(GetCallTrap, 1, 1) \ 296 F(GetCallTrap, 1, 1) \
298 F(GetConstructTrap, 1, 1) \ 297 F(GetConstructTrap, 1, 1) \
299 F(Fix, 1, 1) \ 298 F(Fix, 1, 1) \
300 \ 299 \
301 /* Harmony sets */ \ 300 /* Harmony sets */ \
302 F(SetInitialize, 1, 1) \ 301 F(SetInitialize, 1, 1) \
303 F(SetAdd, 2, 1) \ 302 F(SetAdd, 2, 1) \
304 F(SetHas, 2, 1) \ 303 F(SetHas, 2, 1) \
(...skipping 356 matching lines...) Expand 10 before | Expand all | Expand 10 after
661 660
662 // ---------------------------------------------------------------------------- 661 // ----------------------------------------------------------------------------
663 // INLINE_FUNCTION_LIST defines all inlined functions accessed 662 // INLINE_FUNCTION_LIST defines all inlined functions accessed
664 // with a native call of the form %_name from within JS code. 663 // with a native call of the form %_name from within JS code.
665 // Entries have the form F(name, number of arguments, number of return values). 664 // Entries have the form F(name, number of arguments, number of return values).
666 #define INLINE_FUNCTION_LIST(F) \ 665 #define INLINE_FUNCTION_LIST(F) \
667 F(IsSmi, 1, 1) \ 666 F(IsSmi, 1, 1) \
668 F(IsNonNegativeSmi, 1, 1) \ 667 F(IsNonNegativeSmi, 1, 1) \
669 F(IsArray, 1, 1) \ 668 F(IsArray, 1, 1) \
670 F(IsRegExp, 1, 1) \ 669 F(IsRegExp, 1, 1) \
670 F(IsJSProxy, 1, 1) \
671 F(IsConstructCall, 0, 1) \ 671 F(IsConstructCall, 0, 1) \
672 F(CallFunction, -1 /* receiver + n args + function */, 1) \ 672 F(CallFunction, -1 /* receiver + n args + function */, 1) \
673 F(ArgumentsLength, 0, 1) \ 673 F(ArgumentsLength, 0, 1) \
674 F(Arguments, 1, 1) \ 674 F(Arguments, 1, 1) \
675 F(ValueOf, 1, 1) \ 675 F(ValueOf, 1, 1) \
676 F(SetValueOf, 2, 1) \ 676 F(SetValueOf, 2, 1) \
677 F(DateField, 2 /* date object, field index */, 1) \ 677 F(DateField, 2 /* date object, field index */, 1) \
678 F(StringCharFromCode, 1, 1) \ 678 F(StringCharFromCode, 1, 1) \
679 F(StringCharAt, 2, 1) \ 679 F(StringCharAt, 2, 1) \
680 F(OneByteSeqStringSetChar, 3, 1) \ 680 F(OneByteSeqStringSetChar, 3, 1) \
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
911 class AllocateTargetSpace : public BitField<AllocationSpace, 1, 3> {}; 911 class AllocateTargetSpace : public BitField<AllocationSpace, 1, 3> {};
912 912
913 class DeclareGlobalsEvalFlag : public BitField<bool, 0, 1> {}; 913 class DeclareGlobalsEvalFlag : public BitField<bool, 0, 1> {};
914 class DeclareGlobalsNativeFlag : public BitField<bool, 1, 1> {}; 914 class DeclareGlobalsNativeFlag : public BitField<bool, 1, 1> {};
915 class DeclareGlobalsStrictMode : public BitField<StrictMode, 2, 1> {}; 915 class DeclareGlobalsStrictMode : public BitField<StrictMode, 2, 1> {};
916 916
917 } // namespace internal 917 } // namespace internal
918 } // namespace v8 918 } // namespace v8
919 919
920 #endif // V8_RUNTIME_H_ 920 #endif // V8_RUNTIME_H_
OLDNEW
« no previous file with comments | « src/object-observe.js ('k') | src/runtime/runtime-proxy.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698