OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #include "src/arguments.h" | 7 #include "src/arguments.h" |
8 #include "src/deoptimizer.h" | 8 #include "src/deoptimizer.h" |
9 #include "src/full-codegen.h" | 9 #include "src/full-codegen.h" |
10 #include "src/natives.h" | 10 #include "src/natives.h" |
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
229 } | 229 } |
230 | 230 |
231 | 231 |
232 // This will not allocate (flatten the string), but it may run | 232 // This will not allocate (flatten the string), but it may run |
233 // very slowly for very deeply nested ConsStrings. For debugging use only. | 233 // very slowly for very deeply nested ConsStrings. For debugging use only. |
234 RUNTIME_FUNCTION(Runtime_GlobalPrint) { | 234 RUNTIME_FUNCTION(Runtime_GlobalPrint) { |
235 SealHandleScope shs(isolate); | 235 SealHandleScope shs(isolate); |
236 DCHECK(args.length() == 1); | 236 DCHECK(args.length() == 1); |
237 | 237 |
238 CONVERT_ARG_CHECKED(String, string, 0); | 238 CONVERT_ARG_CHECKED(String, string, 0); |
239 ConsStringIteratorOp op; | 239 StringCharacterStream stream(string); |
240 StringCharacterStream stream(string, &op); | |
241 while (stream.HasMore()) { | 240 while (stream.HasMore()) { |
242 uint16_t character = stream.GetNext(); | 241 uint16_t character = stream.GetNext(); |
243 PrintF("%c", character); | 242 PrintF("%c", character); |
244 } | 243 } |
245 return string; | 244 return string; |
246 } | 245 } |
247 | 246 |
248 | 247 |
249 RUNTIME_FUNCTION(Runtime_SystemBreak) { | 248 RUNTIME_FUNCTION(Runtime_SystemBreak) { |
250 // The code below doesn't create handles, but when breaking here in GDB | 249 // The code below doesn't create handles, but when breaking here in GDB |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
402 RUNTIME_FUNCTION(Runtime_HasFixed##Type##Elements) { \ | 401 RUNTIME_FUNCTION(Runtime_HasFixed##Type##Elements) { \ |
403 CONVERT_ARG_CHECKED(JSObject, obj, 0); \ | 402 CONVERT_ARG_CHECKED(JSObject, obj, 0); \ |
404 return isolate->heap()->ToBoolean(obj->HasFixed##Type##Elements()); \ | 403 return isolate->heap()->ToBoolean(obj->HasFixed##Type##Elements()); \ |
405 } | 404 } |
406 | 405 |
407 TYPED_ARRAYS(FIXED_TYPED_ARRAYS_CHECK_RUNTIME_FUNCTION) | 406 TYPED_ARRAYS(FIXED_TYPED_ARRAYS_CHECK_RUNTIME_FUNCTION) |
408 | 407 |
409 #undef FIXED_TYPED_ARRAYS_CHECK_RUNTIME_FUNCTION | 408 #undef FIXED_TYPED_ARRAYS_CHECK_RUNTIME_FUNCTION |
410 } | 409 } |
411 } // namespace v8::internal | 410 } // namespace v8::internal |
OLD | NEW |