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

Side by Side Diff: src/runtime.h

Issue 7348008: Merge up to 8597 to experimental/gc from the bleeding edge. (Closed) Base URL: http://v8.googlecode.com/svn/branches/experimental/gc/
Patch Set: '' Created 9 years, 5 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/rewriter.cc ('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 2010 the V8 project authors. All rights reserved. 1 // Copyright 2011 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
11 // with the distribution. 11 // with the distribution.
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 F(GetInterceptorInfo, 1, 1) \ 60 F(GetInterceptorInfo, 1, 1) \
61 F(GetNamedInterceptorPropertyNames, 1, 1) \ 61 F(GetNamedInterceptorPropertyNames, 1, 1) \
62 F(GetIndexedInterceptorElementNames, 1, 1) \ 62 F(GetIndexedInterceptorElementNames, 1, 1) \
63 F(GetArgumentsProperty, 1, 1) \ 63 F(GetArgumentsProperty, 1, 1) \
64 F(ToFastProperties, 1, 1) \ 64 F(ToFastProperties, 1, 1) \
65 F(ToSlowProperties, 1, 1) \ 65 F(ToSlowProperties, 1, 1) \
66 F(FinishArrayPrototypeSetup, 1, 1) \ 66 F(FinishArrayPrototypeSetup, 1, 1) \
67 F(SpecialArrayFunctions, 1, 1) \ 67 F(SpecialArrayFunctions, 1, 1) \
68 F(GetGlobalReceiver, 0, 1) \ 68 F(GetGlobalReceiver, 0, 1) \
69 \ 69 \
70 F(GetPrototype, 1, 1) \
70 F(IsInPrototypeChain, 2, 1) \ 71 F(IsInPrototypeChain, 2, 1) \
71 F(SetHiddenPrototype, 2, 1) \ 72 F(SetHiddenPrototype, 2, 1) \
72 \ 73 \
73 F(IsConstructCall, 0, 1) \ 74 F(IsConstructCall, 0, 1) \
74 \ 75 \
75 F(GetOwnProperty, 2, 1) \ 76 F(GetOwnProperty, 2, 1) \
76 \ 77 \
77 F(IsExtensible, 1, 1) \ 78 F(IsExtensible, 1, 1) \
78 F(PreventExtensions, 1, 1)\ 79 F(PreventExtensions, 1, 1)\
79 \ 80 \
80 /* Utilities */ \ 81 /* Utilities */ \
81 F(GetFunctionDelegate, 1, 1) \ 82 F(GetFunctionDelegate, 1, 1) \
82 F(GetConstructorDelegate, 1, 1) \ 83 F(GetConstructorDelegate, 1, 1) \
83 F(NewArgumentsFast, 3, 1) \ 84 F(NewArgumentsFast, 3, 1) \
85 F(NewStrictArgumentsFast, 3, 1) \
84 F(LazyCompile, 1, 1) \ 86 F(LazyCompile, 1, 1) \
85 F(LazyRecompile, 1, 1) \ 87 F(LazyRecompile, 1, 1) \
86 F(NotifyDeoptimized, 1, 1) \ 88 F(NotifyDeoptimized, 1, 1) \
87 F(NotifyOSR, 0, 1) \ 89 F(NotifyOSR, 0, 1) \
88 F(DeoptimizeFunction, 1, 1) \ 90 F(DeoptimizeFunction, 1, 1) \
91 F(RunningInSimulator, 0, 1) \
89 F(OptimizeFunctionOnNextCall, 1, 1) \ 92 F(OptimizeFunctionOnNextCall, 1, 1) \
90 F(GetOptimizationStatus, 1, 1) \ 93 F(GetOptimizationStatus, 1, 1) \
91 F(GetOptimizationCount, 1, 1) \ 94 F(GetOptimizationCount, 1, 1) \
92 F(CompileForOnStackReplacement, 1, 1) \ 95 F(CompileForOnStackReplacement, 1, 1) \
93 F(SetNewFunctionAttributes, 1, 1) \ 96 F(SetNewFunctionAttributes, 1, 1) \
94 F(AllocateInNewSpace, 1, 1) \ 97 F(AllocateInNewSpace, 1, 1) \
95 F(SetES5Flag, 1, 1) \ 98 F(SetNativeFlag, 1, 1) \
96 \ 99 \
97 /* Array join support */ \ 100 /* Array join support */ \
98 F(PushIfAbsent, 2, 1) \ 101 F(PushIfAbsent, 2, 1) \
99 F(ArrayConcat, 1, 1) \ 102 F(ArrayConcat, 1, 1) \
100 \ 103 \
101 /* Conversions */ \ 104 /* Conversions */ \
102 F(ToBool, 1, 1) \ 105 F(ToBool, 1, 1) \
103 F(Typeof, 1, 1) \ 106 F(Typeof, 1, 1) \
104 \ 107 \
105 F(StringToNumber, 1, 1) \ 108 F(StringToNumber, 1, 1) \
106 F(StringFromCharCodeArray, 1, 1) \ 109 F(StringFromCharCodeArray, 1, 1) \
107 F(StringParseInt, 2, 1) \ 110 F(StringParseInt, 2, 1) \
108 F(StringParseFloat, 1, 1) \ 111 F(StringParseFloat, 1, 1) \
109 F(StringToLowerCase, 1, 1) \ 112 F(StringToLowerCase, 1, 1) \
110 F(StringToUpperCase, 1, 1) \ 113 F(StringToUpperCase, 1, 1) \
111 F(StringSplit, 3, 1) \ 114 F(StringSplit, 3, 1) \
112 F(CharFromCode, 1, 1) \ 115 F(CharFromCode, 1, 1) \
113 F(URIEscape, 1, 1) \ 116 F(URIEscape, 1, 1) \
114 F(URIUnescape, 1, 1) \ 117 F(URIUnescape, 1, 1) \
115 F(QuoteJSONString, 1, 1) \ 118 F(QuoteJSONString, 1, 1) \
116 F(QuoteJSONStringComma, 1, 1) \ 119 F(QuoteJSONStringComma, 1, 1) \
120 F(QuoteJSONStringArray, 1, 1) \
117 \ 121 \
118 F(NumberToString, 1, 1) \ 122 F(NumberToString, 1, 1) \
119 F(NumberToStringSkipCache, 1, 1) \ 123 F(NumberToStringSkipCache, 1, 1) \
120 F(NumberToInteger, 1, 1) \ 124 F(NumberToInteger, 1, 1) \
121 F(NumberToIntegerMapMinusZero, 1, 1) \ 125 F(NumberToIntegerMapMinusZero, 1, 1) \
122 F(NumberToJSUint32, 1, 1) \ 126 F(NumberToJSUint32, 1, 1) \
123 F(NumberToJSInt32, 1, 1) \ 127 F(NumberToJSInt32, 1, 1) \
124 F(NumberToSmi, 1, 1) \ 128 F(NumberToSmi, 1, 1) \
125 F(AllocateHeapNumber, 0, 1) \ 129 F(AllocateHeapNumber, 0, 1) \
126 \ 130 \
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 F(NumberToExponential, 2, 1) \ 205 F(NumberToExponential, 2, 1) \
202 F(NumberToPrecision, 2, 1) 206 F(NumberToPrecision, 2, 1)
203 207
204 #define RUNTIME_FUNCTION_LIST_ALWAYS_2(F) \ 208 #define RUNTIME_FUNCTION_LIST_ALWAYS_2(F) \
205 /* Reflection */ \ 209 /* Reflection */ \
206 F(FunctionSetInstanceClassName, 2, 1) \ 210 F(FunctionSetInstanceClassName, 2, 1) \
207 F(FunctionSetLength, 2, 1) \ 211 F(FunctionSetLength, 2, 1) \
208 F(FunctionSetPrototype, 2, 1) \ 212 F(FunctionSetPrototype, 2, 1) \
209 F(FunctionGetName, 1, 1) \ 213 F(FunctionGetName, 1, 1) \
210 F(FunctionSetName, 2, 1) \ 214 F(FunctionSetName, 2, 1) \
215 F(FunctionSetBound, 1, 1) \
211 F(FunctionRemovePrototype, 1, 1) \ 216 F(FunctionRemovePrototype, 1, 1) \
212 F(FunctionGetSourceCode, 1, 1) \ 217 F(FunctionGetSourceCode, 1, 1) \
213 F(FunctionGetScript, 1, 1) \ 218 F(FunctionGetScript, 1, 1) \
214 F(FunctionGetScriptSourcePosition, 1, 1) \ 219 F(FunctionGetScriptSourcePosition, 1, 1) \
215 F(FunctionGetPositionForOffset, 2, 1) \ 220 F(FunctionGetPositionForOffset, 2, 1) \
216 F(FunctionIsAPIFunction, 1, 1) \ 221 F(FunctionIsAPIFunction, 1, 1) \
217 F(FunctionIsBuiltin, 1, 1) \ 222 F(FunctionIsBuiltin, 1, 1) \
218 F(GetScript, 1, 1) \ 223 F(GetScript, 1, 1) \
219 F(CollectStackTrace, 2, 1) \ 224 F(CollectStackTrace, 2, 1) \
220 F(GetV8Version, 0, 1) \ 225 F(GetV8Version, 0, 1) \
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
270 F(CreateArrayLiteralBoilerplate, 3, 1) \ 275 F(CreateArrayLiteralBoilerplate, 3, 1) \
271 F(CloneLiteralBoilerplate, 1, 1) \ 276 F(CloneLiteralBoilerplate, 1, 1) \
272 F(CloneShallowLiteralBoilerplate, 1, 1) \ 277 F(CloneShallowLiteralBoilerplate, 1, 1) \
273 F(CreateObjectLiteral, 4, 1) \ 278 F(CreateObjectLiteral, 4, 1) \
274 F(CreateObjectLiteralShallow, 4, 1) \ 279 F(CreateObjectLiteralShallow, 4, 1) \
275 F(CreateArrayLiteral, 3, 1) \ 280 F(CreateArrayLiteral, 3, 1) \
276 F(CreateArrayLiteralShallow, 3, 1) \ 281 F(CreateArrayLiteralShallow, 3, 1) \
277 \ 282 \
278 /* Harmony proxies */ \ 283 /* Harmony proxies */ \
279 F(CreateJSProxy, 2, 1) \ 284 F(CreateJSProxy, 2, 1) \
280 \ 285 F(IsJSProxy, 1, 1) \
281 /* Catch context extension objects */ \ 286 F(GetHandler, 1, 1) \
282 F(CreateCatchExtensionObject, 2, 1) \
283 \ 287 \
284 /* Statements */ \ 288 /* Statements */ \
285 F(NewClosure, 3, 1) \ 289 F(NewClosure, 3, 1) \
286 F(NewObject, 1, 1) \ 290 F(NewObject, 1, 1) \
287 F(NewObjectFromBound, 2, 1) \ 291 F(NewObjectFromBound, 2, 1) \
288 F(FinalizeInstanceSize, 1, 1) \ 292 F(FinalizeInstanceSize, 1, 1) \
289 F(Throw, 1, 1) \ 293 F(Throw, 1, 1) \
290 F(ReThrow, 1, 1) \ 294 F(ReThrow, 1, 1) \
291 F(ThrowReferenceError, 1, 1) \ 295 F(ThrowReferenceError, 1, 1) \
292 F(StackGuard, 0, 1) \ 296 F(StackGuard, 0, 1) \
293 F(PromoteScheduledException, 0, 1) \ 297 F(PromoteScheduledException, 0, 1) \
294 \ 298 \
295 /* Contexts */ \ 299 /* Contexts */ \
296 F(NewContext, 1, 1) \ 300 F(NewFunctionContext, 1, 1) \
297 F(PushContext, 1, 1) \ 301 F(PushWithContext, 2, 1) \
298 F(PushCatchContext, 1, 1) \ 302 F(PushCatchContext, 3, 1) \
299 F(DeleteContextSlot, 2, 1) \ 303 F(DeleteContextSlot, 2, 1) \
300 F(LoadContextSlot, 2, 2) \ 304 F(LoadContextSlot, 2, 2) \
301 F(LoadContextSlotNoReferenceError, 2, 2) \ 305 F(LoadContextSlotNoReferenceError, 2, 2) \
302 F(StoreContextSlot, 4, 1) \ 306 F(StoreContextSlot, 4, 1) \
303 \ 307 \
304 /* Declarations and initialization */ \ 308 /* Declarations and initialization */ \
305 F(DeclareGlobals, 4, 1) \ 309 F(DeclareGlobals, 4, 1) \
306 F(DeclareContextSlot, 4, 1) \ 310 F(DeclareContextSlot, 4, 1) \
307 F(InitializeVarGlobal, -1 /* 2 or 3 */, 1) \ 311 F(InitializeVarGlobal, -1 /* 2 or 3 */, 1) \
308 F(InitializeConstGlobal, 2, 1) \ 312 F(InitializeConstGlobal, 2, 1) \
(...skipping 14 matching lines...) Expand all
323 F(GetFromCache, 2, 1) \ 327 F(GetFromCache, 2, 1) \
324 \ 328 \
325 /* Message objects */ \ 329 /* Message objects */ \
326 F(NewMessageObject, 2, 1) \ 330 F(NewMessageObject, 2, 1) \
327 F(MessageGetType, 1, 1) \ 331 F(MessageGetType, 1, 1) \
328 F(MessageGetArguments, 1, 1) \ 332 F(MessageGetArguments, 1, 1) \
329 F(MessageGetStartPosition, 1, 1) \ 333 F(MessageGetStartPosition, 1, 1) \
330 F(MessageGetScript, 1, 1) \ 334 F(MessageGetScript, 1, 1) \
331 \ 335 \
332 /* Pseudo functions - handled as macros by parser */ \ 336 /* Pseudo functions - handled as macros by parser */ \
333 F(IS_VAR, 1, 1) 337 F(IS_VAR, 1, 1) \
338 \
339 /* expose boolean functions from objects-inl.h */ \
340 F(HasFastElements, 1, 1) \
341 F(HasFastDoubleElements, 1, 1) \
342 F(HasDictionaryElements, 1, 1) \
343 F(HasExternalPixelElements, 1, 1) \
344 F(HasExternalArrayElements, 1, 1) \
345 F(HasExternalByteElements, 1, 1) \
346 F(HasExternalUnsignedByteElements, 1, 1) \
347 F(HasExternalShortElements, 1, 1) \
348 F(HasExternalUnsignedShortElements, 1, 1) \
349 F(HasExternalIntElements, 1, 1) \
350 F(HasExternalUnsignedIntElements, 1, 1) \
351 F(HasExternalFloatElements, 1, 1) \
352 F(HasExternalDoubleElements, 1, 1)
353
334 354
335 #ifdef ENABLE_DEBUGGER_SUPPORT 355 #ifdef ENABLE_DEBUGGER_SUPPORT
336 #define RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) \ 356 #define RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) \
337 /* Debugger support*/ \ 357 /* Debugger support*/ \
338 F(DebugBreak, 0, 1) \ 358 F(DebugBreak, 0, 1) \
339 F(SetDebugEventListener, 2, 1) \ 359 F(SetDebugEventListener, 2, 1) \
340 F(Break, 0, 1) \ 360 F(Break, 0, 1) \
341 F(DebugGetPropertyDetails, 2, 1) \ 361 F(DebugGetPropertyDetails, 2, 1) \
342 F(DebugGetProperty, 2, 1) \ 362 F(DebugGetProperty, 2, 1) \
343 F(DebugPropertyTypeFromDetails, 1, 1) \ 363 F(DebugPropertyTypeFromDetails, 1, 1) \
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
402 F(PrintLOLObj, 1, 1) \ 422 F(PrintLOLObj, 1, 1) \
403 F(ResetLOL, 0, 1) \ 423 F(ResetLOL, 0, 1) \
404 F(SummarizeLOL, 3, 1) 424 F(SummarizeLOL, 3, 1)
405 425
406 #else 426 #else
407 #define RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) 427 #define RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F)
408 #endif 428 #endif
409 429
410 #ifdef ENABLE_LOGGING_AND_PROFILING 430 #ifdef ENABLE_LOGGING_AND_PROFILING
411 #define RUNTIME_FUNCTION_LIST_PROFILER_SUPPORT(F) \ 431 #define RUNTIME_FUNCTION_LIST_PROFILER_SUPPORT(F) \
412 F(ProfilerResume, 2, 1) \ 432 F(ProfilerResume, 0, 1) \
413 F(ProfilerPause, 2, 1) 433 F(ProfilerPause, 0, 1)
414 #else 434 #else
415 #define RUNTIME_FUNCTION_LIST_PROFILER_SUPPORT(F) 435 #define RUNTIME_FUNCTION_LIST_PROFILER_SUPPORT(F)
416 #endif 436 #endif
417 437
418 #ifdef DEBUG 438 #ifdef DEBUG
419 #define RUNTIME_FUNCTION_LIST_DEBUG(F) \ 439 #define RUNTIME_FUNCTION_LIST_DEBUG(F) \
420 /* Testing */ \ 440 /* Testing */ \
421 F(ListNatives, 0, 1) 441 F(ListNatives, 0, 1)
422 #else 442 #else
423 #define RUNTIME_FUNCTION_LIST_DEBUG(F) 443 #define RUNTIME_FUNCTION_LIST_DEBUG(F)
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
459 F(IsSpecObject, 1, 1) \ 479 F(IsSpecObject, 1, 1) \
460 F(IsStringWrapperSafeForDefaultValueOf, 1, 1) \ 480 F(IsStringWrapperSafeForDefaultValueOf, 1, 1) \
461 F(MathPow, 2, 1) \ 481 F(MathPow, 2, 1) \
462 F(MathSin, 1, 1) \ 482 F(MathSin, 1, 1) \
463 F(MathCos, 1, 1) \ 483 F(MathCos, 1, 1) \
464 F(MathSqrt, 1, 1) \ 484 F(MathSqrt, 1, 1) \
465 F(MathLog, 1, 1) \ 485 F(MathLog, 1, 1) \
466 F(IsRegExpEquivalent, 2, 1) \ 486 F(IsRegExpEquivalent, 2, 1) \
467 F(HasCachedArrayIndex, 1, 1) \ 487 F(HasCachedArrayIndex, 1, 1) \
468 F(GetCachedArrayIndex, 1, 1) \ 488 F(GetCachedArrayIndex, 1, 1) \
469 F(FastAsciiArrayJoin, 2, 1) 489 F(FastAsciiArrayJoin, 2, 1) \
490 F(IsNativeOrStrictMode, 1, 1)
470 491
471 492
472 // ---------------------------------------------------------------------------- 493 // ----------------------------------------------------------------------------
473 // INLINE_AND_RUNTIME_FUNCTION_LIST defines all inlined functions accessed 494 // INLINE_AND_RUNTIME_FUNCTION_LIST defines all inlined functions accessed
474 // with a native call of the form %_name from within JS code that also have 495 // with a native call of the form %_name from within JS code that also have
475 // a corresponding runtime function, that is called for slow cases. 496 // a corresponding runtime function, that is called for slow cases.
476 // Entries have the form F(name, number of arguments, number of return values). 497 // Entries have the form F(name, number of arguments, number of return values).
477 #define INLINE_RUNTIME_FUNCTION_LIST(F) \ 498 #define INLINE_RUNTIME_FUNCTION_LIST(F) \
478 F(IsConstructCall, 0, 1) \ 499 F(IsConstructCall, 0, 1) \
479 F(ClassOf, 1, 1) \ 500 F(ClassOf, 1, 1) \
480 F(StringCharCodeAt, 2, 1) \ 501 F(StringCharCodeAt, 2, 1) \
481 F(Log, 3, 1) \ 502 F(Log, 3, 1) \
482 F(StringAdd, 2, 1) \ 503 F(StringAdd, 2, 1) \
483 F(SubString, 3, 1) \ 504 F(SubString, 3, 1) \
484 F(StringCompare, 2, 1) \ 505 F(StringCompare, 2, 1) \
485 F(RegExpExec, 4, 1) \ 506 F(RegExpExec, 4, 1) \
486 F(RegExpConstructResult, 3, 1) \ 507 F(RegExpConstructResult, 3, 1) \
487 F(GetFromCache, 2, 1) \ 508 F(GetFromCache, 2, 1) \
488 F(NumberToString, 1, 1) \ 509 F(NumberToString, 1, 1) \
489 F(SwapElements, 3, 1) 510 F(SwapElements, 3, 1)
490 511
491 512
492 //--------------------------------------------------------------------------- 513 //---------------------------------------------------------------------------
493 // Runtime provides access to all C++ runtime functions. 514 // Runtime provides access to all C++ runtime functions.
494 515
495 class RuntimeState { 516 class RuntimeState {
496 public: 517 public:
497
498 StaticResource<StringInputBuffer>* string_input_buffer() { 518 StaticResource<StringInputBuffer>* string_input_buffer() {
499 return &string_input_buffer_; 519 return &string_input_buffer_;
500 } 520 }
501 unibrow::Mapping<unibrow::ToUppercase, 128>* to_upper_mapping() { 521 unibrow::Mapping<unibrow::ToUppercase, 128>* to_upper_mapping() {
502 return &to_upper_mapping_; 522 return &to_upper_mapping_;
503 } 523 }
504 unibrow::Mapping<unibrow::ToLowercase, 128>* to_lower_mapping() { 524 unibrow::Mapping<unibrow::ToLowercase, 128>* to_lower_mapping() {
505 return &to_lower_mapping_; 525 return &to_lower_mapping_;
506 } 526 }
507 StringInputBuffer* string_input_buffer_compare_bufx() { 527 StringInputBuffer* string_input_buffer_compare_bufx() {
508 return &string_input_buffer_compare_bufx_; 528 return &string_input_buffer_compare_bufx_;
509 } 529 }
510 StringInputBuffer* string_input_buffer_compare_bufy() { 530 StringInputBuffer* string_input_buffer_compare_bufy() {
511 return &string_input_buffer_compare_bufy_; 531 return &string_input_buffer_compare_bufy_;
512 } 532 }
513 StringInputBuffer* string_locale_compare_buf1() { 533 StringInputBuffer* string_locale_compare_buf1() {
514 return &string_locale_compare_buf1_; 534 return &string_locale_compare_buf1_;
515 } 535 }
516 StringInputBuffer* string_locale_compare_buf2() { 536 StringInputBuffer* string_locale_compare_buf2() {
517 return &string_locale_compare_buf2_; 537 return &string_locale_compare_buf2_;
518 } 538 }
519 int* smi_lexicographic_compare_x_elms() {
520 return smi_lexicographic_compare_x_elms_;
521 }
522 int* smi_lexicographic_compare_y_elms() {
523 return smi_lexicographic_compare_y_elms_;
524 }
525 539
526 private: 540 private:
527 RuntimeState() {} 541 RuntimeState() {}
528 // Non-reentrant string buffer for efficient general use in the runtime. 542 // Non-reentrant string buffer for efficient general use in the runtime.
529 StaticResource<StringInputBuffer> string_input_buffer_; 543 StaticResource<StringInputBuffer> string_input_buffer_;
530 unibrow::Mapping<unibrow::ToUppercase, 128> to_upper_mapping_; 544 unibrow::Mapping<unibrow::ToUppercase, 128> to_upper_mapping_;
531 unibrow::Mapping<unibrow::ToLowercase, 128> to_lower_mapping_; 545 unibrow::Mapping<unibrow::ToLowercase, 128> to_lower_mapping_;
532 StringInputBuffer string_input_buffer_compare_bufx_; 546 StringInputBuffer string_input_buffer_compare_bufx_;
533 StringInputBuffer string_input_buffer_compare_bufy_; 547 StringInputBuffer string_input_buffer_compare_bufy_;
534 StringInputBuffer string_locale_compare_buf1_; 548 StringInputBuffer string_locale_compare_buf1_;
535 StringInputBuffer string_locale_compare_buf2_; 549 StringInputBuffer string_locale_compare_buf2_;
536 int smi_lexicographic_compare_x_elms_[10];
537 int smi_lexicographic_compare_y_elms_[10];
538 550
539 friend class Isolate; 551 friend class Isolate;
540 friend class Runtime; 552 friend class Runtime;
541 553
542 DISALLOW_COPY_AND_ASSIGN(RuntimeState); 554 DISALLOW_COPY_AND_ASSIGN(RuntimeState);
543 }; 555 };
544 556
545 557
546 class Runtime : public AllStatic { 558 class Runtime : public AllStatic {
547 public: 559 public:
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
643 Handle<Script> script, 655 Handle<Script> script,
644 int position); 656 int position);
645 657
646 // Helper functions used stubs. 658 // Helper functions used stubs.
647 static void PerformGC(Object* result); 659 static void PerformGC(Object* result);
648 }; 660 };
649 661
650 } } // namespace v8::internal 662 } } // namespace v8::internal
651 663
652 #endif // V8_RUNTIME_H_ 664 #endif // V8_RUNTIME_H_
OLDNEW
« no previous file with comments | « src/rewriter.cc ('k') | src/runtime.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698