diff options
| -rw-r--r-- | src/core/arm/arm_interface.h | 1 | ||||
| -rw-r--r-- | src/core/hle/kernel/thread.cpp | 2 | ||||
| -rw-r--r-- | src/core/hle/svc.cpp | 3 |
3 files changed, 6 insertions, 0 deletions
diff --git a/src/core/arm/arm_interface.h b/src/core/arm/arm_interface.h index 533067d4f..d8abe5aeb 100644 --- a/src/core/arm/arm_interface.h +++ b/src/core/arm/arm_interface.h | |||
| @@ -6,6 +6,7 @@ | |||
| 6 | 6 | ||
| 7 | #include "common/common_types.h" | 7 | #include "common/common_types.h" |
| 8 | #include "core/arm/skyeye_common/arm_regformat.h" | 8 | #include "core/arm/skyeye_common/arm_regformat.h" |
| 9 | #include "core/arm/skyeye_common/vfp/asm_vfp.h" | ||
| 9 | 10 | ||
| 10 | namespace Core { | 11 | namespace Core { |
| 11 | struct ThreadContext; | 12 | struct ThreadContext; |
diff --git a/src/core/hle/kernel/thread.cpp b/src/core/hle/kernel/thread.cpp index 68f026918..43def6146 100644 --- a/src/core/hle/kernel/thread.cpp +++ b/src/core/hle/kernel/thread.cpp | |||
| @@ -526,6 +526,8 @@ SharedPtr<Thread> SetupMainThread(u32 entry_point, s32 priority) { | |||
| 526 | 526 | ||
| 527 | SharedPtr<Thread> thread = thread_res.MoveFrom(); | 527 | SharedPtr<Thread> thread = thread_res.MoveFrom(); |
| 528 | 528 | ||
| 529 | thread->context.fpscr = FPSCR_DEFAULT_NAN | FPSCR_FLUSH_TO_ZERO | FPSCR_ROUND_TOZERO | FPSCR_IXC; // 0x03C00010 | ||
| 530 | |||
| 529 | // Run new "main" thread | 531 | // Run new "main" thread |
| 530 | SwitchContext(thread.get()); | 532 | SwitchContext(thread.get()); |
| 531 | 533 | ||
diff --git a/src/core/hle/svc.cpp b/src/core/hle/svc.cpp index 3a53126c1..2bf122a6d 100644 --- a/src/core/hle/svc.cpp +++ b/src/core/hle/svc.cpp | |||
| @@ -502,6 +502,9 @@ static ResultCode CreateThread(Handle* out_handle, s32 priority, u32 entry_point | |||
| 502 | 502 | ||
| 503 | CASCADE_RESULT(SharedPtr<Thread> thread, Kernel::Thread::Create( | 503 | CASCADE_RESULT(SharedPtr<Thread> thread, Kernel::Thread::Create( |
| 504 | name, entry_point, priority, arg, processor_id, stack_top)); | 504 | name, entry_point, priority, arg, processor_id, stack_top)); |
| 505 | |||
| 506 | thread->context.fpscr = FPSCR_DEFAULT_NAN | FPSCR_FLUSH_TO_ZERO | FPSCR_ROUND_TOZERO; // 0x03C00000 | ||
| 507 | |||
| 505 | CASCADE_RESULT(*out_handle, Kernel::g_handle_table.Create(std::move(thread))); | 508 | CASCADE_RESULT(*out_handle, Kernel::g_handle_table.Create(std::move(thread))); |
| 506 | 509 | ||
| 507 | LOG_TRACE(Kernel_SVC, "called entrypoint=0x%08X (%s), arg=0x%08X, stacktop=0x%08X, " | 510 | LOG_TRACE(Kernel_SVC, "called entrypoint=0x%08X (%s), arg=0x%08X, stacktop=0x%08X, " |