| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // ------------------------------------------------------------------- | 5 // ------------------------------------------------------------------- |
| 6 | 6 |
| 7 (function(global, utils) { | 7 (function(global, utils) { |
| 8 | 8 |
| 9 %CheckIsBootstrapping(); | 9 %CheckIsBootstrapping(); |
| 10 | 10 |
| 11 // ------------------------------------------------------------------- | 11 // ------------------------------------------------------------------- |
| 12 // Imports | 12 // Imports |
| 13 | 13 |
| 14 var ArrayJoin; | 14 var ArrayJoin; |
| 15 var Bool16x8ToString; | 15 var Bool16x8ToString; |
| 16 var Bool32x4ToString; | 16 var Bool32x4ToString; |
| 17 var Bool8x16ToString; | 17 var Bool8x16ToString; |
| 18 var callSiteReceiverSymbol = | 18 var callSiteReceiverSymbol = |
| 19 utils.ImportNow("call_site_receiver_symbol"); | 19 utils.ImportNow("call_site_receiver_symbol"); |
| 20 var callSiteFunctionSymbol = | 20 var callSiteFunctionSymbol = |
| 21 utils.ImportNow("call_site_function_symbol"); | 21 utils.ImportNow("call_site_function_symbol"); |
| 22 var callSitePositionSymbol = | 22 var callSitePositionSymbol = |
| 23 utils.ImportNow("call_site_position_symbol"); | 23 utils.ImportNow("call_site_position_symbol"); |
| 24 var callSiteStrictSymbol = | 24 var callSiteStrictSymbol = |
| 25 utils.ImportNow("call_site_strict_symbol"); | 25 utils.ImportNow("call_site_strict_symbol"); |
| 26 var FLAG_harmony_tostring; | 26 var FLAG_harmony_tostring; |
| 27 var Float32x4ToString; | 27 var Float32x4ToString; |
| 28 var formattedStackTraceSymbol = | 28 var formattedStackTraceSymbol = |
| 29 utils.ImportNow("formatted_stack_trace_symbol"); | 29 utils.ImportNow("formatted_stack_trace_symbol"); |
| 30 var FunctionSourceString | |
| 31 var GlobalObject = global.Object; | 30 var GlobalObject = global.Object; |
| 32 var Int16x8ToString; | 31 var Int16x8ToString; |
| 33 var Int32x4ToString; | 32 var Int32x4ToString; |
| 34 var Int8x16ToString; | 33 var Int8x16ToString; |
| 35 var InternalArray = utils.InternalArray; | 34 var InternalArray = utils.InternalArray; |
| 36 var internalErrorSymbol = utils.ImportNow("internal_error_symbol"); | 35 var internalErrorSymbol = utils.ImportNow("internal_error_symbol"); |
| 37 var ObjectDefineProperty; | 36 var ObjectDefineProperty; |
| 38 var ObjectToString = utils.ImportNow("object_to_string"); | 37 var ObjectToString = utils.ImportNow("object_to_string"); |
| 39 var Script = utils.ImportNow("Script"); | 38 var Script = utils.ImportNow("Script"); |
| 40 var stackTraceSymbol = utils.ImportNow("stack_trace_symbol"); | 39 var stackTraceSymbol = utils.ImportNow("stack_trace_symbol"); |
| 41 var StringCharAt; | 40 var StringCharAt; |
| 42 var StringIndexOf; | 41 var StringIndexOf; |
| 43 var StringSubstring; | 42 var StringSubstring; |
| 44 var SymbolToString; | 43 var SymbolToString; |
| 45 var toStringTagSymbol = utils.ImportNow("to_string_tag_symbol"); | 44 var toStringTagSymbol = utils.ImportNow("to_string_tag_symbol"); |
| 46 var Uint16x8ToString; | 45 var Uint16x8ToString; |
| 47 var Uint32x4ToString; | 46 var Uint32x4ToString; |
| 48 var Uint8x16ToString; | 47 var Uint8x16ToString; |
| 49 | 48 |
| 50 utils.Import(function(from) { | 49 utils.Import(function(from) { |
| 51 ArrayJoin = from.ArrayJoin; | 50 ArrayJoin = from.ArrayJoin; |
| 52 Bool16x8ToString = from.Bool16x8ToString; | 51 Bool16x8ToString = from.Bool16x8ToString; |
| 53 Bool32x4ToString = from.Bool32x4ToString; | 52 Bool32x4ToString = from.Bool32x4ToString; |
| 54 Bool8x16ToString = from.Bool8x16ToString; | 53 Bool8x16ToString = from.Bool8x16ToString; |
| 55 Float32x4ToString = from.Float32x4ToString; | 54 Float32x4ToString = from.Float32x4ToString; |
| 56 FunctionSourceString = from.FunctionSourceString; | |
| 57 Int16x8ToString = from.Int16x8ToString; | 55 Int16x8ToString = from.Int16x8ToString; |
| 58 Int32x4ToString = from.Int32x4ToString; | 56 Int32x4ToString = from.Int32x4ToString; |
| 59 Int8x16ToString = from.Int8x16ToString; | 57 Int8x16ToString = from.Int8x16ToString; |
| 60 ObjectDefineProperty = from.ObjectDefineProperty; | 58 ObjectDefineProperty = from.ObjectDefineProperty; |
| 61 StringCharAt = from.StringCharAt; | 59 StringCharAt = from.StringCharAt; |
| 62 StringIndexOf = from.StringIndexOf; | 60 StringIndexOf = from.StringIndexOf; |
| 63 StringSubstring = from.StringSubstring; | 61 StringSubstring = from.StringSubstring; |
| 64 SymbolToString = from.SymbolToString; | 62 SymbolToString = from.SymbolToString; |
| 65 Uint16x8ToString = from.Uint16x8ToString; | 63 Uint16x8ToString = from.Uint16x8ToString; |
| 66 Uint32x4ToString = from.Uint32x4ToString; | 64 Uint32x4ToString = from.Uint32x4ToString; |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 113 return `${name}: ${message}`; | 111 return `${name}: ${message}`; |
| 114 } | 112 } |
| 115 | 113 |
| 116 function NoSideEffectsToString(obj) { | 114 function NoSideEffectsToString(obj) { |
| 117 if (IS_STRING(obj)) return obj; | 115 if (IS_STRING(obj)) return obj; |
| 118 if (IS_NUMBER(obj)) return %_NumberToString(obj); | 116 if (IS_NUMBER(obj)) return %_NumberToString(obj); |
| 119 if (IS_BOOLEAN(obj)) return obj ? 'true' : 'false'; | 117 if (IS_BOOLEAN(obj)) return obj ? 'true' : 'false'; |
| 120 if (IS_UNDEFINED(obj)) return 'undefined'; | 118 if (IS_UNDEFINED(obj)) return 'undefined'; |
| 121 if (IS_NULL(obj)) return 'null'; | 119 if (IS_NULL(obj)) return 'null'; |
| 122 if (IS_FUNCTION(obj)) { | 120 if (IS_FUNCTION(obj)) { |
| 123 var str = %_Call(FunctionSourceString, obj, obj); | 121 var str = %FunctionToString(obj); |
| 124 if (str.length > 128) { | 122 if (str.length > 128) { |
| 125 str = %_SubString(str, 0, 111) + "...<omitted>..." + | 123 str = %_SubString(str, 0, 111) + "...<omitted>..." + |
| 126 %_SubString(str, str.length - 2, str.length); | 124 %_SubString(str, str.length - 2, str.length); |
| 127 } | 125 } |
| 128 return str; | 126 return str; |
| 129 } | 127 } |
| 130 if (IS_SYMBOL(obj)) return %_Call(SymbolToString, obj); | 128 if (IS_SYMBOL(obj)) return %_Call(SymbolToString, obj); |
| 131 if (IS_SIMD_VALUE(obj)) { | 129 if (IS_SIMD_VALUE(obj)) { |
| 132 switch (typeof(obj)) { | 130 switch (typeof(obj)) { |
| 133 case 'float32x4': return %_Call(Float32x4ToString, obj); | 131 case 'float32x4': return %_Call(Float32x4ToString, obj); |
| (...skipping 872 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1006 utils.Export(function(to) { | 1004 utils.Export(function(to) { |
| 1007 to.ErrorToString = ErrorToString; | 1005 to.ErrorToString = ErrorToString; |
| 1008 to.MakeError = MakeError; | 1006 to.MakeError = MakeError; |
| 1009 to.MakeRangeError = MakeRangeError; | 1007 to.MakeRangeError = MakeRangeError; |
| 1010 to.MakeSyntaxError = MakeSyntaxError; | 1008 to.MakeSyntaxError = MakeSyntaxError; |
| 1011 to.MakeTypeError = MakeTypeError; | 1009 to.MakeTypeError = MakeTypeError; |
| 1012 to.MakeURIError = MakeURIError; | 1010 to.MakeURIError = MakeURIError; |
| 1013 }); | 1011 }); |
| 1014 | 1012 |
| 1015 }); | 1013 }); |
| OLD | NEW |