OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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/utils.h" | 5 #include "src/utils.h" |
6 | 6 |
7 #include <stdarg.h> | 7 #include <stdarg.h> |
8 #include <sys/stat.h> | 8 #include <sys/stat.h> |
9 | 9 |
10 #include "src/base/functional.h" | 10 #include "src/base/functional.h" |
(...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
380 | 380 |
381 #elif V8_OS_POSIX && V8_HOST_ARCH_ARM | 381 #elif V8_OS_POSIX && V8_HOST_ARCH_ARM |
382 void MemCopyUint16Uint8Wrapper(uint16_t* dest, const uint8_t* src, | 382 void MemCopyUint16Uint8Wrapper(uint16_t* dest, const uint8_t* src, |
383 size_t chars) { | 383 size_t chars) { |
384 uint16_t* limit = dest + chars; | 384 uint16_t* limit = dest + chars; |
385 while (dest < limit) { | 385 while (dest < limit) { |
386 *dest++ = static_cast<uint16_t>(*src++); | 386 *dest++ = static_cast<uint16_t>(*src++); |
387 } | 387 } |
388 } | 388 } |
389 | 389 |
390 | 390 V8_EXPORT_PRIVATE MemCopyUint8Function memcopy_uint8_function = |
391 MemCopyUint8Function memcopy_uint8_function = &MemCopyUint8Wrapper; | 391 &MemCopyUint8Wrapper; |
392 MemCopyUint16Uint8Function memcopy_uint16_uint8_function = | 392 MemCopyUint16Uint8Function memcopy_uint16_uint8_function = |
393 &MemCopyUint16Uint8Wrapper; | 393 &MemCopyUint16Uint8Wrapper; |
394 // Defined in codegen-arm.cc. | 394 // Defined in codegen-arm.cc. |
395 MemCopyUint8Function CreateMemCopyUint8Function(Isolate* isolate, | 395 MemCopyUint8Function CreateMemCopyUint8Function(Isolate* isolate, |
396 MemCopyUint8Function stub); | 396 MemCopyUint8Function stub); |
397 MemCopyUint16Uint8Function CreateMemCopyUint16Uint8Function( | 397 MemCopyUint16Uint8Function CreateMemCopyUint16Uint8Function( |
398 Isolate* isolate, MemCopyUint16Uint8Function stub); | 398 Isolate* isolate, MemCopyUint16Uint8Function stub); |
399 | 399 |
400 #elif V8_OS_POSIX && V8_HOST_ARCH_MIPS | 400 #elif V8_OS_POSIX && V8_HOST_ARCH_MIPS |
401 MemCopyUint8Function memcopy_uint8_function = &MemCopyUint8Wrapper; | 401 V8_EXPORT_PRIVATE MemCopyUint8Function memcopy_uint8_function = |
| 402 &MemCopyUint8Wrapper; |
402 // Defined in codegen-mips.cc. | 403 // Defined in codegen-mips.cc. |
403 MemCopyUint8Function CreateMemCopyUint8Function(Isolate* isolate, | 404 MemCopyUint8Function CreateMemCopyUint8Function(Isolate* isolate, |
404 MemCopyUint8Function stub); | 405 MemCopyUint8Function stub); |
405 #endif | 406 #endif |
406 | 407 |
407 | 408 |
408 static bool g_memcopy_functions_initialized = false; | 409 static bool g_memcopy_functions_initialized = false; |
409 | 410 |
410 | 411 |
411 void init_memcopy_functions(Isolate* isolate) { | 412 void init_memcopy_functions(Isolate* isolate) { |
(...skipping 28 matching lines...) Expand all Loading... |
440 if (u.bits.exp == 0) { | 441 if (u.bits.exp == 0) { |
441 // Detect +0, and -0 for IEEE double precision floating point. | 442 // Detect +0, and -0 for IEEE double precision floating point. |
442 if ((u.bits.man_low | u.bits.man_high) == 0) return false; | 443 if ((u.bits.man_low | u.bits.man_high) == 0) return false; |
443 } | 444 } |
444 return true; | 445 return true; |
445 } | 446 } |
446 | 447 |
447 | 448 |
448 } // namespace internal | 449 } // namespace internal |
449 } // namespace v8 | 450 } // namespace v8 |
OLD | NEW |