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

Side by Side Diff: src/runtime.h

Issue 12296026: ES6 symbols: Implement Symbol intrinsic and basic functionality (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Addressed more comments Created 7 years, 9 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/objects-inl.h ('k') | src/runtime.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 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 278 matching lines...) Expand 10 before | Expand all | Expand 10 after
289 /* Literals */ \ 289 /* Literals */ \
290 F(MaterializeRegExpLiteral, 4, 1)\ 290 F(MaterializeRegExpLiteral, 4, 1)\
291 F(CreateObjectLiteral, 4, 1) \ 291 F(CreateObjectLiteral, 4, 1) \
292 F(CreateObjectLiteralShallow, 4, 1) \ 292 F(CreateObjectLiteralShallow, 4, 1) \
293 F(CreateArrayLiteral, 3, 1) \ 293 F(CreateArrayLiteral, 3, 1) \
294 F(CreateArrayLiteralShallow, 3, 1) \ 294 F(CreateArrayLiteralShallow, 3, 1) \
295 \ 295 \
296 /* Harmony modules */ \ 296 /* Harmony modules */ \
297 F(IsJSModule, 1, 1) \ 297 F(IsJSModule, 1, 1) \
298 \ 298 \
299 /* Harmony symbols */ \
300 F(CreateSymbol, 0, 1) \
301 \
299 /* Harmony proxies */ \ 302 /* Harmony proxies */ \
300 F(CreateJSProxy, 2, 1) \ 303 F(CreateJSProxy, 2, 1) \
301 F(CreateJSFunctionProxy, 4, 1) \ 304 F(CreateJSFunctionProxy, 4, 1) \
302 F(IsJSProxy, 1, 1) \ 305 F(IsJSProxy, 1, 1) \
303 F(IsJSFunctionProxy, 1, 1) \ 306 F(IsJSFunctionProxy, 1, 1) \
304 F(GetHandler, 1, 1) \ 307 F(GetHandler, 1, 1) \
305 F(GetCallTrap, 1, 1) \ 308 F(GetCallTrap, 1, 1) \
306 F(GetConstructTrap, 1, 1) \ 309 F(GetConstructTrap, 1, 1) \
307 F(Fix, 1, 1) \ 310 F(Fix, 1, 1) \
308 \ 311 \
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
502 RUNTIME_FUNCTION_LIST_DEBUG(F) \ 505 RUNTIME_FUNCTION_LIST_DEBUG(F) \
503 RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) 506 RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F)
504 507
505 // ---------------------------------------------------------------------------- 508 // ----------------------------------------------------------------------------
506 // INLINE_FUNCTION_LIST defines all inlined functions accessed 509 // INLINE_FUNCTION_LIST defines all inlined functions accessed
507 // with a native call of the form %_name from within JS code. 510 // with a native call of the form %_name from within JS code.
508 // Entries have the form F(name, number of arguments, number of return values). 511 // Entries have the form F(name, number of arguments, number of return values).
509 #define INLINE_FUNCTION_LIST(F) \ 512 #define INLINE_FUNCTION_LIST(F) \
510 F(IsSmi, 1, 1) \ 513 F(IsSmi, 1, 1) \
511 F(IsNonNegativeSmi, 1, 1) \ 514 F(IsNonNegativeSmi, 1, 1) \
515 F(IsSymbol, 1, 1) \
512 F(IsArray, 1, 1) \ 516 F(IsArray, 1, 1) \
513 F(IsRegExp, 1, 1) \ 517 F(IsRegExp, 1, 1) \
514 F(IsConstructCall, 0, 1) \ 518 F(IsConstructCall, 0, 1) \
515 F(CallFunction, -1 /* receiver + n args + function */, 1) \ 519 F(CallFunction, -1 /* receiver + n args + function */, 1) \
516 F(ArgumentsLength, 0, 1) \ 520 F(ArgumentsLength, 0, 1) \
517 F(Arguments, 1, 1) \ 521 F(Arguments, 1, 1) \
518 F(ValueOf, 1, 1) \ 522 F(ValueOf, 1, 1) \
519 F(SetValueOf, 2, 1) \ 523 F(SetValueOf, 2, 1) \
520 F(DateField, 2 /* date object, field index */, 1) \ 524 F(DateField, 2 /* date object, field index */, 1) \
521 F(StringCharFromCode, 1, 1) \ 525 F(StringCharFromCode, 1, 1) \
(...skipping 13 matching lines...) Expand all
535 F(MathTan, 1, 1) \ 539 F(MathTan, 1, 1) \
536 F(MathSqrt, 1, 1) \ 540 F(MathSqrt, 1, 1) \
537 F(MathLog, 1, 1) \ 541 F(MathLog, 1, 1) \
538 F(IsRegExpEquivalent, 2, 1) \ 542 F(IsRegExpEquivalent, 2, 1) \
539 F(HasCachedArrayIndex, 1, 1) \ 543 F(HasCachedArrayIndex, 1, 1) \
540 F(GetCachedArrayIndex, 1, 1) \ 544 F(GetCachedArrayIndex, 1, 1) \
541 F(FastAsciiArrayJoin, 2, 1) 545 F(FastAsciiArrayJoin, 2, 1)
542 546
543 547
544 // ---------------------------------------------------------------------------- 548 // ----------------------------------------------------------------------------
545 // INLINE_AND_RUNTIME_FUNCTION_LIST defines all inlined functions accessed 549 // INLINE_RUNTIME_FUNCTION_LIST defines all inlined functions accessed
546 // with a native call of the form %_name from within JS code that also have 550 // with a native call of the form %_name from within JS code that also have
547 // a corresponding runtime function, that is called for slow cases. 551 // a corresponding runtime function, that is called for slow cases.
548 // Entries have the form F(name, number of arguments, number of return values). 552 // Entries have the form F(name, number of arguments, number of return values).
549 #define INLINE_RUNTIME_FUNCTION_LIST(F) \ 553 #define INLINE_RUNTIME_FUNCTION_LIST(F) \
550 F(ClassOf, 1, 1) \ 554 F(ClassOf, 1, 1) \
551 F(StringCharCodeAt, 2, 1) \ 555 F(StringCharCodeAt, 2, 1) \
552 F(Log, 3, 1) \ 556 F(Log, 3, 1) \
553 F(StringAdd, 2, 1) \ 557 F(StringAdd, 2, 1) \
554 F(SubString, 3, 1) \ 558 F(SubString, 3, 1) \
555 F(StringCompare, 2, 1) \ 559 F(StringCompare, 2, 1) \
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
712 //--------------------------------------------------------------------------- 716 //---------------------------------------------------------------------------
713 // Constants used by interface to runtime functions. 717 // Constants used by interface to runtime functions.
714 718
715 class DeclareGlobalsEvalFlag: public BitField<bool, 0, 1> {}; 719 class DeclareGlobalsEvalFlag: public BitField<bool, 0, 1> {};
716 class DeclareGlobalsNativeFlag: public BitField<bool, 1, 1> {}; 720 class DeclareGlobalsNativeFlag: public BitField<bool, 1, 1> {};
717 class DeclareGlobalsLanguageMode: public BitField<LanguageMode, 2, 2> {}; 721 class DeclareGlobalsLanguageMode: public BitField<LanguageMode, 2, 2> {};
718 722
719 } } // namespace v8::internal 723 } } // namespace v8::internal
720 724
721 #endif // V8_RUNTIME_H_ 725 #endif // V8_RUNTIME_H_
OLDNEW
« no previous file with comments | « src/objects-inl.h ('k') | src/runtime.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698