Revision f230a1cf deps/v8/src/builtins.h

View differences:

deps/v8/src/builtins.h
50 50
#define CODE_AGE_LIST(V) \
51 51
  CODE_AGE_LIST_WITH_ARG(CODE_AGE_LIST_IGNORE_ARG, V)
52 52

  
53
#define CODE_AGE_LIST_WITH_NO_AGE(V)               \
54
  V(NoAge)                                         \
55
  CODE_AGE_LIST_WITH_ARG(CODE_AGE_LIST_IGNORE_ARG, V)
56

  
53 57
#define DECLARE_CODE_AGE_BUILTIN(C, V)             \
54 58
  V(Make##C##CodeYoungAgainOddMarking, BUILTIN,    \
55 59
    UNINITIALIZED, Code::kNoExtraICState)          \
......
63 67
                                                                    \
64 68
  V(EmptyFunction, NO_EXTRA_ARGUMENTS)                              \
65 69
                                                                    \
66
  V(InternalArrayCodeGeneric, NO_EXTRA_ARGUMENTS)                   \
67
  V(ArrayCodeGeneric, NO_EXTRA_ARGUMENTS)                           \
68
                                                                    \
69 70
  V(ArrayPush, NO_EXTRA_ARGUMENTS)                                  \
70 71
  V(ArrayPop, NO_EXTRA_ARGUMENTS)                                   \
71 72
  V(ArrayShift, NO_EXTRA_ARGUMENTS)                                 \
......
111 112
                                    Code::kNoExtraICState)              \
112 113
  V(NotifyStubFailure,              BUILTIN, UNINITIALIZED,             \
113 114
                                    Code::kNoExtraICState)              \
114
  V(NotifyOSR,                      BUILTIN, UNINITIALIZED,             \
115
                                    Code::kNoExtraICState)              \
116 115
                                                                        \
117 116
  V(LoadIC_Miss,                    BUILTIN, UNINITIALIZED,             \
118 117
                                    Code::kNoExtraICState)              \
......
120 119
                                    Code::kNoExtraICState)              \
121 120
  V(KeyedLoadIC_MissForceGeneric,   BUILTIN, UNINITIALIZED,             \
122 121
                                    Code::kNoExtraICState)              \
123
  V(KeyedLoadIC_Slow,               STUB, MONOMORPHIC,                  \
124
                                    Code::kNoExtraICState)              \
125 122
  V(StoreIC_Miss,                   BUILTIN, UNINITIALIZED,             \
126 123
                                    Code::kNoExtraICState)              \
127
  V(StoreIC_Slow,                   BUILTIN, UNINITIALIZED,             \
128
                                    Code::kNoExtraICState)              \
129 124
  V(KeyedStoreIC_Miss,              BUILTIN, UNINITIALIZED,             \
130 125
                                    Code::kNoExtraICState)              \
131 126
  V(KeyedStoreIC_MissForceGeneric,  BUILTIN, UNINITIALIZED,             \
132 127
                                    Code::kNoExtraICState)              \
133
  V(KeyedStoreIC_Slow,              BUILTIN, UNINITIALIZED,             \
134
                                    Code::kNoExtraICState)              \
135 128
  V(LoadIC_Initialize,              LOAD_IC, UNINITIALIZED,             \
136 129
                                    Code::kNoExtraICState)              \
137 130
  V(LoadIC_PreMonomorphic,          LOAD_IC, PREMONOMORPHIC,            \
138 131
                                    Code::kNoExtraICState)              \
139
  V(LoadIC_Normal,                  LOAD_IC, MONOMORPHIC,               \
140
                                    Code::kNoExtraICState)              \
141 132
  V(LoadIC_Megamorphic,             LOAD_IC, MEGAMORPHIC,               \
142 133
                                    Code::kNoExtraICState)              \
143 134
  V(LoadIC_Getter_ForDeopt,         LOAD_IC, MONOMORPHIC,               \
144 135
                                    Code::kNoExtraICState)              \
145
  V(LoadIC_Slow,                    STUB, MONOMORPHIC,                  \
146
                                    Code::kNoExtraICState)              \
147 136
                                                                        \
148 137
  V(KeyedLoadIC_Initialize,         KEYED_LOAD_IC, UNINITIALIZED,       \
149 138
                                    Code::kNoExtraICState)              \
......
162 151
                                    Code::kNoExtraICState)              \
163 152
  V(StoreIC_PreMonomorphic,         STORE_IC, PREMONOMORPHIC,           \
164 153
                                    Code::kNoExtraICState)              \
165
  V(StoreIC_Normal,                 STORE_IC, MONOMORPHIC,              \
166
                                    Code::kNoExtraICState)              \
167 154
  V(StoreIC_Megamorphic,            STORE_IC, MEGAMORPHIC,              \
168 155
                                    Code::kNoExtraICState)              \
169 156
  V(StoreIC_Generic,                STORE_IC, GENERIC,                  \
......
176 163
                                    kStrictMode)                        \
177 164
  V(StoreIC_PreMonomorphic_Strict,  STORE_IC, PREMONOMORPHIC,           \
178 165
                                    kStrictMode)                        \
179
  V(StoreIC_Normal_Strict,          STORE_IC, MONOMORPHIC,              \
180
                                    kStrictMode)                        \
181 166
  V(StoreIC_Megamorphic_Strict,     STORE_IC, MEGAMORPHIC,              \
182 167
                                    kStrictMode)                        \
183 168
  V(StoreIC_GlobalProxy_Strict,     STORE_IC, GENERIC,                  \
......
219 204
                                    Code::kNoExtraICState)              \
220 205
  V(InterruptCheck,                 BUILTIN, UNINITIALIZED,             \
221 206
                                    Code::kNoExtraICState)              \
207
  V(OsrAfterStackCheck,             BUILTIN, UNINITIALIZED,             \
208
                                    Code::kNoExtraICState)              \
222 209
  V(StackCheck,                     BUILTIN, UNINITIALIZED,             \
223 210
                                    Code::kNoExtraICState)              \
211
                                                                        \
212
  V(MarkCodeAsExecutedOnce,         BUILTIN, UNINITIALIZED,             \
213
                                    Code::kNoExtraICState)              \
214
  V(MarkCodeAsExecutedTwice,        BUILTIN, UNINITIALIZED,             \
215
                                    Code::kNoExtraICState)              \
224 216
  CODE_AGE_LIST_WITH_ARG(DECLARE_CODE_AGE_BUILTIN, V)
225 217

  
218
// Define list of builtin handlers implemented in assembly.
219
#define BUILTIN_LIST_H(V)                                                 \
220
  V(LoadIC_Slow,                    LOAD_IC, Code::kNoExtraICState)       \
221
  V(KeyedLoadIC_Slow,               KEYED_LOAD_IC, Code::kNoExtraICState) \
222
  V(StoreIC_Slow,                   STORE_IC, Code::kNoExtraICState)      \
223
  V(StoreIC_Slow_Strict,            STORE_IC, kStrictMode)                \
224
  V(KeyedStoreIC_Slow,              KEYED_STORE_IC, Code::kNoExtraICState)\
225
  V(KeyedStoreIC_Slow_Strict,       KEYED_STORE_IC, kStrictMode)          \
226
  V(LoadIC_Normal,                  LOAD_IC, Code::kNoExtraICState)       \
227
  V(StoreIC_Normal,                 STORE_IC, Code::kNoExtraICState)      \
228
  V(StoreIC_Normal_Strict,          STORE_IC, kStrictMode)
229

  
226 230
#ifdef ENABLE_DEBUGGER_SUPPORT
227 231
// Define list of builtins used by the debugger implemented in assembly.
228 232
#define BUILTIN_LIST_DEBUG_A(V)                                               \
......
310 314
  enum Name {
311 315
#define DEF_ENUM_C(name, ignore) k##name,
312 316
#define DEF_ENUM_A(name, kind, state, extra) k##name,
317
#define DEF_ENUM_H(name, kind, extra) k##name,
313 318
    BUILTIN_LIST_C(DEF_ENUM_C)
314 319
    BUILTIN_LIST_A(DEF_ENUM_A)
320
    BUILTIN_LIST_H(DEF_ENUM_H)
315 321
    BUILTIN_LIST_DEBUG_A(DEF_ENUM_A)
316 322
#undef DEF_ENUM_C
317 323
#undef DEF_ENUM_A
......
335 341
#define DECLARE_BUILTIN_ACCESSOR_C(name, ignore) Handle<Code> name();
336 342
#define DECLARE_BUILTIN_ACCESSOR_A(name, kind, state, extra) \
337 343
  Handle<Code> name();
344
#define DECLARE_BUILTIN_ACCESSOR_H(name, kind, extra) Handle<Code> name();
338 345
  BUILTIN_LIST_C(DECLARE_BUILTIN_ACCESSOR_C)
339 346
  BUILTIN_LIST_A(DECLARE_BUILTIN_ACCESSOR_A)
347
  BUILTIN_LIST_H(DECLARE_BUILTIN_ACCESSOR_H)
340 348
  BUILTIN_LIST_DEBUG_A(DECLARE_BUILTIN_ACCESSOR_A)
341 349
#undef DECLARE_BUILTIN_ACCESSOR_C
342 350
#undef DECLARE_BUILTIN_ACCESSOR_A
......
391 399
  static void Generate_NotifyDeoptimized(MacroAssembler* masm);
392 400
  static void Generate_NotifySoftDeoptimized(MacroAssembler* masm);
393 401
  static void Generate_NotifyLazyDeoptimized(MacroAssembler* masm);
394
  static void Generate_NotifyOSR(MacroAssembler* masm);
395 402
  static void Generate_NotifyStubFailure(MacroAssembler* masm);
396 403
  static void Generate_ArgumentsAdaptorTrampoline(MacroAssembler* masm);
397 404

  
......
403 410

  
404 411
  static void Generate_StringConstructCode(MacroAssembler* masm);
405 412
  static void Generate_OnStackReplacement(MacroAssembler* masm);
406

  
413
  static void Generate_OsrAfterStackCheck(MacroAssembler* masm);
407 414
  static void Generate_InterruptCheck(MacroAssembler* masm);
408 415
  static void Generate_StackCheck(MacroAssembler* masm);
409 416

  
......
415 422
  CODE_AGE_LIST(DECLARE_CODE_AGE_BUILTIN_GENERATOR)
416 423
#undef DECLARE_CODE_AGE_BUILTIN_GENERATOR
417 424

  
425
  static void Generate_MarkCodeAsExecutedOnce(MacroAssembler* masm);
426
  static void Generate_MarkCodeAsExecutedTwice(MacroAssembler* masm);
427

  
418 428
  static void InitBuiltinFunctionTable();
419 429

  
420 430
  bool initialized_;

Also available in: Unified diff