| OLD | NEW |
| 1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 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 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 53 F(GetPropertyNames, 1, 1) \ | 53 F(GetPropertyNames, 1, 1) \ |
| 54 F(GetPropertyNamesFast, 1, 1) \ | 54 F(GetPropertyNamesFast, 1, 1) \ |
| 55 F(GetLocalPropertyNames, 1, 1) \ | 55 F(GetLocalPropertyNames, 1, 1) \ |
| 56 F(GetLocalElementNames, 1, 1) \ | 56 F(GetLocalElementNames, 1, 1) \ |
| 57 F(GetInterceptorInfo, 1, 1) \ | 57 F(GetInterceptorInfo, 1, 1) \ |
| 58 F(GetNamedInterceptorPropertyNames, 1, 1) \ | 58 F(GetNamedInterceptorPropertyNames, 1, 1) \ |
| 59 F(GetIndexedInterceptorElementNames, 1, 1) \ | 59 F(GetIndexedInterceptorElementNames, 1, 1) \ |
| 60 F(GetArgumentsProperty, 1, 1) \ | 60 F(GetArgumentsProperty, 1, 1) \ |
| 61 F(ToFastProperties, 1, 1) \ | 61 F(ToFastProperties, 1, 1) \ |
| 62 F(ToSlowProperties, 1, 1) \ | 62 F(ToSlowProperties, 1, 1) \ |
| 63 F(FinishArrayPrototypeSetup, 1, 1) \ |
| 63 \ | 64 \ |
| 64 F(IsInPrototypeChain, 2, 1) \ | 65 F(IsInPrototypeChain, 2, 1) \ |
| 65 F(SetHiddenPrototype, 2, 1) \ | 66 F(SetHiddenPrototype, 2, 1) \ |
| 66 \ | 67 \ |
| 67 F(IsConstructCall, 0, 1) \ | 68 F(IsConstructCall, 0, 1) \ |
| 68 \ | 69 \ |
| 69 F(GetOwnProperty, 2, 1) \ | 70 F(GetOwnProperty, 2, 1) \ |
| 70 \ | 71 \ |
| 71 F(IsExtensible, 1, 1) \ | 72 F(IsExtensible, 1, 1) \ |
| 72 \ | 73 \ |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 135 F(Math_acos, 1, 1) \ | 136 F(Math_acos, 1, 1) \ |
| 136 F(Math_asin, 1, 1) \ | 137 F(Math_asin, 1, 1) \ |
| 137 F(Math_atan, 1, 1) \ | 138 F(Math_atan, 1, 1) \ |
| 138 F(Math_atan2, 2, 1) \ | 139 F(Math_atan2, 2, 1) \ |
| 139 F(Math_ceil, 1, 1) \ | 140 F(Math_ceil, 1, 1) \ |
| 140 F(Math_cos, 1, 1) \ | 141 F(Math_cos, 1, 1) \ |
| 141 F(Math_exp, 1, 1) \ | 142 F(Math_exp, 1, 1) \ |
| 142 F(Math_floor, 1, 1) \ | 143 F(Math_floor, 1, 1) \ |
| 143 F(Math_log, 1, 1) \ | 144 F(Math_log, 1, 1) \ |
| 144 F(Math_pow, 2, 1) \ | 145 F(Math_pow, 2, 1) \ |
| 146 F(Math_pow_cfunction, 2, 1) \ |
| 145 F(Math_round, 1, 1) \ | 147 F(Math_round, 1, 1) \ |
| 146 F(Math_sin, 1, 1) \ | 148 F(Math_sin, 1, 1) \ |
| 147 F(Math_sqrt, 1, 1) \ | 149 F(Math_sqrt, 1, 1) \ |
| 148 F(Math_tan, 1, 1) \ | 150 F(Math_tan, 1, 1) \ |
| 149 \ | 151 \ |
| 150 /* Regular expressions */ \ | 152 /* Regular expressions */ \ |
| 151 F(RegExpCompile, 3, 1) \ | 153 F(RegExpCompile, 3, 1) \ |
| 152 F(RegExpExec, 4, 1) \ | 154 F(RegExpExec, 4, 1) \ |
| 153 \ | 155 \ |
| 154 /* Strings */ \ | 156 /* Strings */ \ |
| 155 F(StringCharCodeAt, 2, 1) \ | 157 F(StringCharCodeAt, 2, 1) \ |
| 156 F(StringCharAt, 2, 1) \ | 158 F(StringCharAt, 2, 1) \ |
| 157 F(StringIndexOf, 3, 1) \ | 159 F(StringIndexOf, 3, 1) \ |
| 158 F(StringLastIndexOf, 3, 1) \ | 160 F(StringLastIndexOf, 3, 1) \ |
| 159 F(StringLocaleCompare, 2, 1) \ | 161 F(StringLocaleCompare, 2, 1) \ |
| 160 F(SubString, 3, 1) \ | 162 F(SubString, 3, 1) \ |
| 161 F(StringReplaceRegExpWithString, 4, 1) \ | 163 F(StringReplaceRegExpWithString, 4, 1) \ |
| 162 F(StringMatch, 3, 1) \ | 164 F(StringMatch, 3, 1) \ |
| 163 F(StringTrim, 3, 1) \ | 165 F(StringTrim, 3, 1) \ |
| 166 F(StringToArray, 1, 1) \ |
| 164 \ | 167 \ |
| 165 /* Numbers */ \ | 168 /* Numbers */ \ |
| 166 F(NumberToRadixString, 2, 1) \ | 169 F(NumberToRadixString, 2, 1) \ |
| 167 F(NumberToFixed, 2, 1) \ | 170 F(NumberToFixed, 2, 1) \ |
| 168 F(NumberToExponential, 2, 1) \ | 171 F(NumberToExponential, 2, 1) \ |
| 169 F(NumberToPrecision, 2, 1) | 172 F(NumberToPrecision, 2, 1) |
| 170 | 173 |
| 171 #define RUNTIME_FUNCTION_LIST_ALWAYS_2(F) \ | 174 #define RUNTIME_FUNCTION_LIST_ALWAYS_2(F) \ |
| 172 /* Reflection */ \ | 175 /* Reflection */ \ |
| 173 F(FunctionSetInstanceClassName, 2, 1) \ | 176 F(FunctionSetInstanceClassName, 2, 1) \ |
| (...skipping 19 matching lines...) Expand all Loading... |
| 193 F(GetTemplateField, 2, 1) \ | 196 F(GetTemplateField, 2, 1) \ |
| 194 F(DisableAccessChecks, 1, 1) \ | 197 F(DisableAccessChecks, 1, 1) \ |
| 195 F(EnableAccessChecks, 1, 1) \ | 198 F(EnableAccessChecks, 1, 1) \ |
| 196 \ | 199 \ |
| 197 /* Dates */ \ | 200 /* Dates */ \ |
| 198 F(DateCurrentTime, 0, 1) \ | 201 F(DateCurrentTime, 0, 1) \ |
| 199 F(DateParseString, 2, 1) \ | 202 F(DateParseString, 2, 1) \ |
| 200 F(DateLocalTimezone, 1, 1) \ | 203 F(DateLocalTimezone, 1, 1) \ |
| 201 F(DateLocalTimeOffset, 0, 1) \ | 204 F(DateLocalTimeOffset, 0, 1) \ |
| 202 F(DateDaylightSavingsOffset, 1, 1) \ | 205 F(DateDaylightSavingsOffset, 1, 1) \ |
| 206 F(DateMakeDay, 3, 1) \ |
| 203 \ | 207 \ |
| 204 /* Numbers */ \ | 208 /* Numbers */ \ |
| 205 F(NumberIsFinite, 1, 1) \ | 209 F(NumberIsFinite, 1, 1) \ |
| 206 \ | 210 \ |
| 207 /* Globals */ \ | 211 /* Globals */ \ |
| 208 F(CompileString, 2, 1) \ | 212 F(CompileString, 2, 1) \ |
| 209 F(GlobalPrint, 1, 1) \ | 213 F(GlobalPrint, 1, 1) \ |
| 210 \ | 214 \ |
| 211 /* Eval */ \ | 215 /* Eval */ \ |
| 212 F(GlobalReceiver, 1, 1) \ | 216 F(GlobalReceiver, 1, 1) \ |
| (...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 314 F(ClearStepping, 0, 1) \ | 318 F(ClearStepping, 0, 1) \ |
| 315 F(DebugEvaluate, 4, 1) \ | 319 F(DebugEvaluate, 4, 1) \ |
| 316 F(DebugEvaluateGlobal, 3, 1) \ | 320 F(DebugEvaluateGlobal, 3, 1) \ |
| 317 F(DebugGetLoadedScripts, 0, 1) \ | 321 F(DebugGetLoadedScripts, 0, 1) \ |
| 318 F(DebugReferencedBy, 3, 1) \ | 322 F(DebugReferencedBy, 3, 1) \ |
| 319 F(DebugConstructedBy, 2, 1) \ | 323 F(DebugConstructedBy, 2, 1) \ |
| 320 F(DebugGetPrototype, 1, 1) \ | 324 F(DebugGetPrototype, 1, 1) \ |
| 321 F(SystemBreak, 0, 1) \ | 325 F(SystemBreak, 0, 1) \ |
| 322 F(DebugDisassembleFunction, 1, 1) \ | 326 F(DebugDisassembleFunction, 1, 1) \ |
| 323 F(DebugDisassembleConstructor, 1, 1) \ | 327 F(DebugDisassembleConstructor, 1, 1) \ |
| 324 F(FunctionGetInferredName, 1, 1) | 328 F(FunctionGetInferredName, 1, 1) \ |
| 329 F(LiveEditFindSharedFunctionInfosForScript, 1, 1) \ |
| 330 F(LiveEditGatherCompileInfo, 2, 1) \ |
| 331 F(LiveEditReplaceScript, 3, 1) \ |
| 332 F(LiveEditReplaceFunctionCode, 2, 1) \ |
| 333 F(LiveEditRelinkFunctionToScript, 2, 1) \ |
| 334 F(LiveEditPatchFunctionPositions, 2, 1) \ |
| 335 F(LiveEditCheckStackActivations, 1, 1) |
| 325 #else | 336 #else |
| 326 #define RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) | 337 #define RUNTIME_FUNCTION_LIST_DEBUGGER_SUPPORT(F) |
| 327 #endif | 338 #endif |
| 328 | 339 |
| 329 #ifdef ENABLE_LOGGING_AND_PROFILING | 340 #ifdef ENABLE_LOGGING_AND_PROFILING |
| 330 #define RUNTIME_FUNCTION_LIST_PROFILER_SUPPORT(F) \ | 341 #define RUNTIME_FUNCTION_LIST_PROFILER_SUPPORT(F) \ |
| 331 F(ProfilerResume, 2, 1) \ | 342 F(ProfilerResume, 2, 1) \ |
| 332 F(ProfilerPause, 2, 1) | 343 F(ProfilerPause, 2, 1) |
| 333 #else | 344 #else |
| 334 #define RUNTIME_FUNCTION_LIST_PROFILER_SUPPORT(F) | 345 #define RUNTIME_FUNCTION_LIST_PROFILER_SUPPORT(F) |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 393 static int StringMatch(Handle<String> sub, Handle<String> pat, int index); | 404 static int StringMatch(Handle<String> sub, Handle<String> pat, int index); |
| 394 | 405 |
| 395 static bool IsUpperCaseChar(uint16_t ch); | 406 static bool IsUpperCaseChar(uint16_t ch); |
| 396 | 407 |
| 397 // TODO(1240886): The following three methods are *not* handle safe, | 408 // TODO(1240886): The following three methods are *not* handle safe, |
| 398 // but accept handle arguments. This seems fragile. | 409 // but accept handle arguments. This seems fragile. |
| 399 | 410 |
| 400 // Support getting the characters in a string using [] notation as | 411 // Support getting the characters in a string using [] notation as |
| 401 // in Firefox/SpiderMonkey, Safari and Opera. | 412 // in Firefox/SpiderMonkey, Safari and Opera. |
| 402 static Object* GetElementOrCharAt(Handle<Object> object, uint32_t index); | 413 static Object* GetElementOrCharAt(Handle<Object> object, uint32_t index); |
| 414 static Object* GetElement(Handle<Object> object, uint32_t index); |
| 403 | 415 |
| 404 static Object* SetObjectProperty(Handle<Object> object, | 416 static Object* SetObjectProperty(Handle<Object> object, |
| 405 Handle<Object> key, | 417 Handle<Object> key, |
| 406 Handle<Object> value, | 418 Handle<Object> value, |
| 407 PropertyAttributes attr); | 419 PropertyAttributes attr); |
| 408 | 420 |
| 409 static Object* ForceSetObjectProperty(Handle<JSObject> object, | 421 static Object* ForceSetObjectProperty(Handle<JSObject> object, |
| 410 Handle<Object> key, | 422 Handle<Object> key, |
| 411 Handle<Object> value, | 423 Handle<Object> value, |
| 412 PropertyAttributes attr); | 424 PropertyAttributes attr); |
| 413 | 425 |
| 414 static Object* ForceDeleteObjectProperty(Handle<JSObject> object, | 426 static Object* ForceDeleteObjectProperty(Handle<JSObject> object, |
| 415 Handle<Object> key); | 427 Handle<Object> key); |
| 416 | 428 |
| 417 static Object* GetObjectProperty(Handle<Object> object, Handle<Object> key); | 429 static Object* GetObjectProperty(Handle<Object> object, Handle<Object> key); |
| 418 | 430 |
| 419 // This function is used in FunctionNameUsing* tests. | 431 // This function is used in FunctionNameUsing* tests. |
| 420 static Object* FindSharedFunctionInfoInScript(Handle<Script> script, | 432 static Object* FindSharedFunctionInfoInScript(Handle<Script> script, |
| 421 int position); | 433 int position); |
| 422 | 434 |
| 423 // Helper functions used stubs. | 435 // Helper functions used stubs. |
| 424 static void PerformGC(Object* result); | 436 static void PerformGC(Object* result); |
| 425 }; | 437 }; |
| 426 | 438 |
| 427 | 439 |
| 428 } } // namespace v8::internal | 440 } } // namespace v8::internal |
| 429 | 441 |
| 430 #endif // V8_RUNTIME_H_ | 442 #endif // V8_RUNTIME_H_ |
| OLD | NEW |