| OLD | NEW |
| 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 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 172 \ | 172 \ |
| 173 F(NumberCompare, 3, 1) \ | 173 F(NumberCompare, 3, 1) \ |
| 174 F(SmiLexicographicCompare, 2, 1) \ | 174 F(SmiLexicographicCompare, 2, 1) \ |
| 175 F(StringCompare, 2, 1) \ | 175 F(StringCompare, 2, 1) \ |
| 176 \ | 176 \ |
| 177 /* Math */ \ | 177 /* Math */ \ |
| 178 F(Math_acos, 1, 1) \ | 178 F(Math_acos, 1, 1) \ |
| 179 F(Math_asin, 1, 1) \ | 179 F(Math_asin, 1, 1) \ |
| 180 F(Math_atan, 1, 1) \ | 180 F(Math_atan, 1, 1) \ |
| 181 F(Math_atan2, 2, 1) \ | 181 F(Math_atan2, 2, 1) \ |
| 182 F(Math_ceil, 1, 1) \ | |
| 183 F(Math_cos, 1, 1) \ | 182 F(Math_cos, 1, 1) \ |
| 184 F(Math_exp, 1, 1) \ | 183 F(Math_exp, 1, 1) \ |
| 185 F(Math_floor, 1, 1) \ | 184 F(Math_floor, 1, 1) \ |
| 186 F(Math_log, 1, 1) \ | 185 F(Math_log, 1, 1) \ |
| 187 F(Math_pow, 2, 1) \ | 186 F(Math_pow, 2, 1) \ |
| 188 F(Math_pow_cfunction, 2, 1) \ | 187 F(Math_pow_cfunction, 2, 1) \ |
| 189 F(RoundNumber, 1, 1) \ | 188 F(RoundNumber, 1, 1) \ |
| 190 F(Math_sin, 1, 1) \ | 189 F(Math_sin, 1, 1) \ |
| 191 F(Math_sqrt, 1, 1) \ | 190 F(Math_sqrt, 1, 1) \ |
| 192 F(Math_tan, 1, 1) \ | 191 F(Math_tan, 1, 1) \ |
| 193 F(PopulateTrigonometricTable, 3, 1) \ | |
| 194 \ | 192 \ |
| 195 /* Regular expressions */ \ | 193 /* Regular expressions */ \ |
| 196 F(RegExpCompile, 3, 1) \ | 194 F(RegExpCompile, 3, 1) \ |
| 197 F(RegExpExec, 4, 1) \ | 195 F(RegExpExec, 4, 1) \ |
| 198 F(RegExpExecMultiple, 4, 1) \ | 196 F(RegExpExecMultiple, 4, 1) \ |
| 199 F(RegExpInitializeObject, 5, 1) \ | 197 F(RegExpInitializeObject, 5, 1) \ |
| 200 F(RegExpConstructResult, 3, 1) \ | 198 F(RegExpConstructResult, 3, 1) \ |
| 201 \ | 199 \ |
| 202 /* JSON */ \ | 200 /* JSON */ \ |
| 203 F(ParseJson, 1, 1) \ | 201 F(ParseJson, 1, 1) \ |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 294 F(EstimateNumberOfElements, 1, 1) \ | 292 F(EstimateNumberOfElements, 1, 1) \ |
| 295 F(ArrayConstructor, -1, 1) \ | 293 F(ArrayConstructor, -1, 1) \ |
| 296 F(InternalArrayConstructor, -1, 1) \ | 294 F(InternalArrayConstructor, -1, 1) \ |
| 297 \ | 295 \ |
| 298 /* Getters and Setters */ \ | 296 /* Getters and Setters */ \ |
| 299 F(LookupAccessor, 3, 1) \ | 297 F(LookupAccessor, 3, 1) \ |
| 300 \ | 298 \ |
| 301 /* Literals */ \ | 299 /* Literals */ \ |
| 302 F(MaterializeRegExpLiteral, 4, 1)\ | 300 F(MaterializeRegExpLiteral, 4, 1)\ |
| 303 F(CreateObjectLiteral, 4, 1) \ | 301 F(CreateObjectLiteral, 4, 1) \ |
| 304 F(CreateArrayLiteral, 3, 1) \ | 302 F(CreateArrayLiteral, 4, 1) \ |
| 303 F(CreateArrayLiteralStubBailout, 3, 1) \ |
| 305 \ | 304 \ |
| 306 /* Harmony generators */ \ | 305 /* Harmony generators */ \ |
| 307 F(CreateJSGeneratorObject, 0, 1) \ | 306 F(CreateJSGeneratorObject, 0, 1) \ |
| 308 F(SuspendJSGeneratorObject, 1, 1) \ | 307 F(SuspendJSGeneratorObject, 1, 1) \ |
| 309 F(ResumeJSGeneratorObject, 3, 1) \ | 308 F(ResumeJSGeneratorObject, 3, 1) \ |
| 310 F(ThrowGeneratorStateError, 1, 1) \ | 309 F(ThrowGeneratorStateError, 1, 1) \ |
| 311 \ | 310 \ |
| 312 /* ES5 */ \ | 311 /* ES5 */ \ |
| 313 F(ObjectFreeze, 1, 1) \ | 312 F(ObjectFreeze, 1, 1) \ |
| 314 \ | 313 \ |
| (...skipping 301 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 616 F(ArgumentsLength, 0, 1) \ | 615 F(ArgumentsLength, 0, 1) \ |
| 617 F(Arguments, 1, 1) \ | 616 F(Arguments, 1, 1) \ |
| 618 F(ValueOf, 1, 1) \ | 617 F(ValueOf, 1, 1) \ |
| 619 F(SetValueOf, 2, 1) \ | 618 F(SetValueOf, 2, 1) \ |
| 620 F(DateField, 2 /* date object, field index */, 1) \ | 619 F(DateField, 2 /* date object, field index */, 1) \ |
| 621 F(StringCharFromCode, 1, 1) \ | 620 F(StringCharFromCode, 1, 1) \ |
| 622 F(StringCharAt, 2, 1) \ | 621 F(StringCharAt, 2, 1) \ |
| 623 F(OneByteSeqStringSetChar, 3, 1) \ | 622 F(OneByteSeqStringSetChar, 3, 1) \ |
| 624 F(TwoByteSeqStringSetChar, 3, 1) \ | 623 F(TwoByteSeqStringSetChar, 3, 1) \ |
| 625 F(ObjectEquals, 2, 1) \ | 624 F(ObjectEquals, 2, 1) \ |
| 626 F(RandomHeapNumber, 0, 1) \ | |
| 627 F(IsObject, 1, 1) \ | 625 F(IsObject, 1, 1) \ |
| 628 F(IsFunction, 1, 1) \ | 626 F(IsFunction, 1, 1) \ |
| 629 F(IsUndetectableObject, 1, 1) \ | 627 F(IsUndetectableObject, 1, 1) \ |
| 630 F(IsSpecObject, 1, 1) \ | 628 F(IsSpecObject, 1, 1) \ |
| 631 F(IsStringWrapperSafeForDefaultValueOf, 1, 1) \ | 629 F(IsStringWrapperSafeForDefaultValueOf, 1, 1) \ |
| 632 F(MathPow, 2, 1) \ | 630 F(MathPow, 2, 1) \ |
| 633 F(MathSqrt, 1, 1) \ | 631 F(MathSqrt, 1, 1) \ |
| 634 F(MathLog, 1, 1) \ | 632 F(MathLog, 1, 1) \ |
| 635 F(IsMinusZero, 1, 1) \ | 633 F(IsMinusZero, 1, 1) \ |
| 636 F(IsRegExpEquivalent, 2, 1) \ | 634 F(IsRegExpEquivalent, 2, 1) \ |
| (...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 824 static bool SetupArrayBufferAllocatingData( | 822 static bool SetupArrayBufferAllocatingData( |
| 825 Isolate* isolate, | 823 Isolate* isolate, |
| 826 Handle<JSArrayBuffer> array_buffer, | 824 Handle<JSArrayBuffer> array_buffer, |
| 827 size_t allocated_length, | 825 size_t allocated_length, |
| 828 bool initialize = true); | 826 bool initialize = true); |
| 829 | 827 |
| 830 static void FreeArrayBuffer( | 828 static void FreeArrayBuffer( |
| 831 Isolate* isolate, | 829 Isolate* isolate, |
| 832 JSArrayBuffer* phantom_array_buffer); | 830 JSArrayBuffer* phantom_array_buffer); |
| 833 | 831 |
| 832 enum TypedArrayId { |
| 833 // arrayIds below should be synchromized with typedarray.js natives. |
| 834 ARRAY_ID_UINT8 = 1, |
| 835 ARRAY_ID_INT8 = 2, |
| 836 ARRAY_ID_UINT16 = 3, |
| 837 ARRAY_ID_INT16 = 4, |
| 838 ARRAY_ID_UINT32 = 5, |
| 839 ARRAY_ID_INT32 = 6, |
| 840 ARRAY_ID_FLOAT32 = 7, |
| 841 ARRAY_ID_FLOAT64 = 8, |
| 842 ARRAY_ID_UINT8C = 9 |
| 843 }; |
| 844 |
| 845 static void ArrayIdToTypeAndSize(int array_id, |
| 846 ExternalArrayType *type, size_t *element_size); |
| 847 |
| 834 // Helper functions used stubs. | 848 // Helper functions used stubs. |
| 835 static void PerformGC(Object* result, Isolate* isolate); | 849 static void PerformGC(Object* result, Isolate* isolate); |
| 836 | 850 |
| 837 // Used in runtime.cc and hydrogen's VisitArrayLiteral. | 851 // Used in runtime.cc and hydrogen's VisitArrayLiteral. |
| 838 static Handle<Object> CreateArrayLiteralBoilerplate( | 852 static Handle<Object> CreateArrayLiteralBoilerplate( |
| 839 Isolate* isolate, | 853 Isolate* isolate, |
| 840 Handle<FixedArray> literals, | 854 Handle<FixedArray> literals, |
| 841 Handle<FixedArray> elements); | 855 Handle<FixedArray> elements); |
| 842 }; | 856 }; |
| 843 | 857 |
| 844 | 858 |
| 845 //--------------------------------------------------------------------------- | 859 //--------------------------------------------------------------------------- |
| 846 // Constants used by interface to runtime functions. | 860 // Constants used by interface to runtime functions. |
| 847 | 861 |
| 848 class AllocateDoubleAlignFlag: public BitField<bool, 0, 1> {}; | 862 class AllocateDoubleAlignFlag: public BitField<bool, 0, 1> {}; |
| 849 class AllocateTargetSpace: public BitField<AllocationSpace, 1, 3> {}; | 863 class AllocateTargetSpace: public BitField<AllocationSpace, 1, 3> {}; |
| 850 | 864 |
| 851 class DeclareGlobalsEvalFlag: public BitField<bool, 0, 1> {}; | 865 class DeclareGlobalsEvalFlag: public BitField<bool, 0, 1> {}; |
| 852 class DeclareGlobalsNativeFlag: public BitField<bool, 1, 1> {}; | 866 class DeclareGlobalsNativeFlag: public BitField<bool, 1, 1> {}; |
| 853 class DeclareGlobalsLanguageMode: public BitField<LanguageMode, 2, 2> {}; | 867 class DeclareGlobalsLanguageMode: public BitField<LanguageMode, 2, 2> {}; |
| 854 | 868 |
| 855 } } // namespace v8::internal | 869 } } // namespace v8::internal |
| 856 | 870 |
| 857 #endif // V8_RUNTIME_H_ | 871 #endif // V8_RUNTIME_H_ |
| OLD | NEW |