OLD | NEW |
---|---|
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #include <setjmp.h> // NOLINT | 5 #include <setjmp.h> // NOLINT |
6 #include <stdlib.h> | 6 #include <stdlib.h> |
7 | 7 |
8 #include "vm/globals.h" | 8 #include "vm/globals.h" |
9 #if defined(TARGET_ARCH_ARM) | 9 #if defined(TARGET_ARCH_ARM) |
10 | 10 |
(...skipping 1560 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1571 double d0 = bit_cast<double, int64_t>(a0); | 1571 double d0 = bit_cast<double, int64_t>(a0); |
1572 double d1 = bit_cast<double, int64_t>(a1); | 1572 double d1 = bit_cast<double, int64_t>(a1); |
1573 d0 = target(d0, d1); | 1573 d0 = target(d0, d1); |
1574 a0 = bit_cast<int64_t, double>(d0); | 1574 a0 = bit_cast<int64_t, double>(d0); |
1575 r0 = Utils::Low32Bits(a0); | 1575 r0 = Utils::Low32Bits(a0); |
1576 r1 = Utils::High32Bits(a0); | 1576 r1 = Utils::High32Bits(a0); |
1577 set_register(R0, r0); | 1577 set_register(R0, r0); |
1578 set_register(R1, r1); | 1578 set_register(R1, r1); |
1579 } | 1579 } |
1580 } else if (redirection->call_kind() == kBootstrapNativeCall) { | 1580 } else if (redirection->call_kind() == kBootstrapNativeCall) { |
1581 ASSERT(redirection->argument_count() == 1); | |
Florian Schneider
2015/09/11 08:06:52
What about simulator_mips.cc and simulator_arm64.c
rmacnak
2015/09/12 22:29:44
Oops, uploaded another CL.
| |
1581 NativeArguments* arguments; | 1582 NativeArguments* arguments; |
1582 arguments = reinterpret_cast<NativeArguments*>(get_register(R0)); | 1583 arguments = reinterpret_cast<NativeArguments*>(get_register(R0)); |
1583 SimulatorBootstrapNativeCall target = | 1584 SimulatorBootstrapNativeCall target = |
1584 reinterpret_cast<SimulatorBootstrapNativeCall>(external); | 1585 reinterpret_cast<SimulatorBootstrapNativeCall>(external); |
1585 target(arguments); | 1586 target(arguments); |
1586 set_register(R0, icount_); // Zap result register from void function. | 1587 set_register(R0, icount_); // Zap result register from void function. |
1587 } else { | 1588 } else { |
1588 ASSERT(redirection->call_kind() == kNativeCall); | 1589 ASSERT(redirection->call_kind() == kNativeCall); |
1589 NativeArguments* arguments; | 1590 NativeArguments* arguments; |
1590 arguments = reinterpret_cast<NativeArguments*>(get_register(R0)); | 1591 arguments = reinterpret_cast<NativeArguments*>(get_register(R0)); |
(...skipping 2284 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3875 set_register(kExceptionObjectReg, bit_cast<int32_t>(raw_exception)); | 3876 set_register(kExceptionObjectReg, bit_cast<int32_t>(raw_exception)); |
3876 set_register(kStackTraceObjectReg, bit_cast<int32_t>(raw_stacktrace)); | 3877 set_register(kStackTraceObjectReg, bit_cast<int32_t>(raw_stacktrace)); |
3877 buf->Longjmp(); | 3878 buf->Longjmp(); |
3878 } | 3879 } |
3879 | 3880 |
3880 } // namespace dart | 3881 } // namespace dart |
3881 | 3882 |
3882 #endif // defined(USING_SIMULATOR) | 3883 #endif // defined(USING_SIMULATOR) |
3883 | 3884 |
3884 #endif // defined TARGET_ARCH_ARM | 3885 #endif // defined TARGET_ARCH_ARM |
OLD | NEW |