V8 Project
builtins.h File Reference
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  v8::internal::Builtins
 

Namespaces

 v8
 Debugger support for the V8 JavaScript engine.
 
 v8::internal
 

Macros

#define CODE_AGE_LIST_WITH_ARG(V, A)
 
#define CODE_AGE_LIST_IGNORE_ARG(X, V)   V(X)
 
#define CODE_AGE_LIST(V)    CODE_AGE_LIST_WITH_ARG(CODE_AGE_LIST_IGNORE_ARG, V)
 
#define CODE_AGE_LIST_COMPLETE(V)
 
#define DECLARE_CODE_AGE_BUILTIN(C, V)
 
#define BUILTIN_LIST_C(V)
 
#define BUILTIN_LIST_A(V)
 
#define BUILTIN_LIST_H(V)
 
#define BUILTIN_LIST_DEBUG_A(V)
 
#define BUILTINS_LIST_JS(V)
 
#define DEF_ENUM_C(name, ignore)   k##name,
 
#define DEF_ENUM_A(name, kind, state, extra)   k##name,
 
#define DEF_ENUM_H(name, kind)   k##name,
 
#define DEF_ENUM_C(name, ignore)   c_##name,
 
#define DEF_ENUM(name, ignore)   name,
 
#define DECLARE_BUILTIN_ACCESSOR_C(name, ignore)   Handle<Code> name();
 
#define DECLARE_BUILTIN_ACCESSOR_A(name, kind, state, extra)    Handle<Code> name();
 
#define DECLARE_BUILTIN_ACCESSOR_H(name, kind)   Handle<Code> name();
 
#define DECLARE_CODE_AGE_BUILTIN_GENERATOR(C)
 

Enumerations

enum  v8::internal::BuiltinExtraArguments { v8::internal::NO_EXTRA_ARGUMENTS = 0 , v8::internal::NEEDS_CALLED_FUNCTION = 1 }
 

Macro Definition Documentation

◆ BUILTIN_LIST_A

#define BUILTIN_LIST_A (   V)

Definition at line 66 of file builtins.h.

◆ BUILTIN_LIST_C

#define BUILTIN_LIST_C (   V)
Value:
V(EmptyFunction, NO_EXTRA_ARGUMENTS) \
V(ArrayPush, NO_EXTRA_ARGUMENTS) \
V(ArrayPop, NO_EXTRA_ARGUMENTS) \
V(ArrayShift, NO_EXTRA_ARGUMENTS) \
V(ArrayUnshift, NO_EXTRA_ARGUMENTS) \
V(ArraySlice, NO_EXTRA_ARGUMENTS) \
V(ArraySplice, NO_EXTRA_ARGUMENTS) \
V(ArrayConcat, NO_EXTRA_ARGUMENTS) \
V(HandleApiCall, NEEDS_CALLED_FUNCTION) \
V(HandleApiCallConstruct, NEEDS_CALLED_FUNCTION) \
V(HandleApiCallAsFunction, NO_EXTRA_ARGUMENTS) \
V(HandleApiCallAsConstructor, NO_EXTRA_ARGUMENTS) \
V(StrictModePoisonPill, NO_EXTRA_ARGUMENTS) \
V(GeneratorPoisonPill, NO_EXTRA_ARGUMENTS)
#define V(NAME, Name, id)
Definition: execution.h:170
@ NEEDS_CALLED_FUNCTION
Definition: builtins.h:14
@ NO_EXTRA_ARGUMENTS
Definition: builtins.h:13

Definition at line 44 of file builtins.h.

◆ BUILTIN_LIST_DEBUG_A

#define BUILTIN_LIST_DEBUG_A (   V)
Value:
V(Return_DebugBreak, BUILTIN, DEBUG_STUB, \
V(CallFunctionStub_DebugBreak, BUILTIN, DEBUG_STUB, \
V(CallConstructStub_DebugBreak, BUILTIN, DEBUG_STUB, \
V(CallConstructStub_Recording_DebugBreak, BUILTIN, DEBUG_STUB, \
V(CallICStub_DebugBreak, CALL_IC, DEBUG_STUB, \
V(LoadIC_DebugBreak, LOAD_IC, DEBUG_STUB, \
V(KeyedLoadIC_DebugBreak, KEYED_LOAD_IC, DEBUG_STUB, \
V(StoreIC_DebugBreak, STORE_IC, DEBUG_STUB, \
V(KeyedStoreIC_DebugBreak, KEYED_STORE_IC, DEBUG_STUB, \
V(CompareNilIC_DebugBreak, COMPARE_NIL_IC, DEBUG_STUB, \
V(Slot_DebugBreak, BUILTIN, DEBUG_STUB, \
V(PlainReturn_LiveEdit, BUILTIN, DEBUG_STUB, \
V(FrameDropper_LiveEdit, BUILTIN, DEBUG_STUB, \
#define BUILTIN(name)
Definition: builtins.cc:122

Definition at line 137 of file builtins.h.

◆ BUILTIN_LIST_H

#define BUILTIN_LIST_H (   V)
Value:
V(LoadIC_Slow, LOAD_IC) \
V(KeyedLoadIC_Slow, KEYED_LOAD_IC) \
V(StoreIC_Slow, STORE_IC) \
V(KeyedStoreIC_Slow, KEYED_STORE_IC) \
V(LoadIC_Normal, LOAD_IC) \
V(StoreIC_Normal, STORE_IC)

Definition at line 128 of file builtins.h.

◆ BUILTINS_LIST_JS

#define BUILTINS_LIST_JS (   V)
Value:
V(EQUALS, 1) \
V(STRICT_EQUALS, 1) \
V(COMPARE, 2) \
V(ADD, 1) \
V(SUB, 1) \
V(MUL, 1) \
V(DIV, 1) \
V(MOD, 1) \
V(BIT_OR, 1) \
V(BIT_AND, 1) \
V(BIT_XOR, 1) \
V(SHL, 1) \
V(SAR, 1) \
V(SHR, 1) \
V(DELETE, 2) \
V(IN, 1) \
V(INSTANCE_OF, 1) \
V(FILTER_KEY, 1) \
V(CALL_NON_FUNCTION, 0) \
V(CALL_NON_FUNCTION_AS_CONSTRUCTOR, 0) \
V(CALL_FUNCTION_PROXY, 1) \
V(CALL_FUNCTION_PROXY_AS_CONSTRUCTOR, 1) \
V(TO_OBJECT, 0) \
V(TO_NUMBER, 0) \
V(TO_STRING, 0) \
V(STRING_ADD_LEFT, 1) \
V(STRING_ADD_RIGHT, 1) \
V(APPLY_PREPARE, 1) \
V(STACK_OVERFLOW, 1)
#define IN

Definition at line 166 of file builtins.h.

◆ CODE_AGE_LIST

#define CODE_AGE_LIST (   V)     CODE_AGE_LIST_WITH_ARG(CODE_AGE_LIST_IGNORE_ARG, V)

Definition at line 27 of file builtins.h.

◆ CODE_AGE_LIST_COMPLETE

#define CODE_AGE_LIST_COMPLETE (   V)
Value:
V(NotExecuted) \
V(ExecutedOnce) \
V(NoAge) \
CODE_AGE_LIST_WITH_ARG(CODE_AGE_LIST_IGNORE_ARG, V)
#define CODE_AGE_LIST_IGNORE_ARG(X, V)
Definition: builtins.h:25

Definition at line 30 of file builtins.h.

◆ CODE_AGE_LIST_IGNORE_ARG

#define CODE_AGE_LIST_IGNORE_ARG (   X,
  V 
)    V(X)

Definition at line 25 of file builtins.h.

◆ CODE_AGE_LIST_WITH_ARG

#define CODE_AGE_LIST_WITH_ARG (   V,
 
)
Value:
V(Quadragenarian, A) \
V(Quinquagenarian, A) \
V(Sexagenarian, A) \
V(Septuagenarian, A) \
V(Octogenarian, A)

Definition at line 18 of file builtins.h.

◆ DECLARE_BUILTIN_ACCESSOR_A

#define DECLARE_BUILTIN_ACCESSOR_A (   name,
  kind,
  state,
  extra 
)     Handle<Code> name();

Definition at line 244 of file builtins.h.

◆ DECLARE_BUILTIN_ACCESSOR_C

#define DECLARE_BUILTIN_ACCESSOR_C (   name,
  ignore 
)    Handle<Code> name();

Definition at line 243 of file builtins.h.

◆ DECLARE_BUILTIN_ACCESSOR_H

#define DECLARE_BUILTIN_ACCESSOR_H (   name,
  kind 
)    Handle<Code> name();

Definition at line 246 of file builtins.h.

◆ DECLARE_CODE_AGE_BUILTIN

#define DECLARE_CODE_AGE_BUILTIN (   C,
  V 
)
Value:
V(Make##C##CodeYoungAgainOddMarking, BUILTIN, \
V(Make##C##CodeYoungAgainEvenMarking, BUILTIN, \
static const ExtraICState kNoExtraICState
Definition: objects.h:306
@ UNINITIALIZED
Definition: globals.h:446

Definition at line 36 of file builtins.h.

◆ DECLARE_CODE_AGE_BUILTIN_GENERATOR

#define DECLARE_CODE_AGE_BUILTIN_GENERATOR (   C)
Value:
static void Generate_Make##C##CodeYoungAgainEvenMarking( \
MacroAssembler* masm); \
static void Generate_Make##C##CodeYoungAgainOddMarking( \
MacroAssembler* masm);

Definition at line 324 of file builtins.h.

◆ DEF_ENUM

#define DEF_ENUM (   name,
  ignore 
)    name,

Definition at line 237 of file builtins.h.

◆ DEF_ENUM_A

#define DEF_ENUM_A (   name,
  kind,
  state,
  extra 
)    k##name,

Definition at line 218 of file builtins.h.

◆ DEF_ENUM_C [1/2]

#define DEF_ENUM_C (   name,
  ignore 
)    k##name,

Definition at line 230 of file builtins.h.

◆ DEF_ENUM_C [2/2]

#define DEF_ENUM_C (   name,
  ignore 
)    c_##name,

Definition at line 230 of file builtins.h.

◆ DEF_ENUM_H

#define DEF_ENUM_H (   name,
  kind 
)    k##name,

Definition at line 219 of file builtins.h.