mirror of
https://github.com/skyline-emu/skyline.git
synced 2024-12-27 15:25:38 +03:00
Clear floating point registers on guest entry
Mesosphere does this too:
fa4a96d021/libraries/libmesosphere/source/arch/arm64/kern_k_thread_context.cpp (L135)
This commit is contained in:
parent
f381883c0b
commit
e7f880e782
@ -320,6 +320,40 @@ namespace skyline::guest {
|
||||
"MOV X27, XZR\n\t"
|
||||
"MOV X28, XZR\n\t"
|
||||
"MOV X29, XZR\n\t"
|
||||
"MSR FPSR, XZR\n\t"
|
||||
"MSR FPCR, XZR\n\t"
|
||||
"DUP V0.16B, WZR\n\t"
|
||||
"DUP V1.16B, WZR\n\t"
|
||||
"DUP V2.16B, WZR\n\t"
|
||||
"DUP V3.16B, WZR\n\t"
|
||||
"DUP V4.16B, WZR\n\t"
|
||||
"DUP V5.16B, WZR\n\t"
|
||||
"DUP V6.16B, WZR\n\t"
|
||||
"DUP V7.16B, WZR\n\t"
|
||||
"DUP V8.16B, WZR\n\t"
|
||||
"DUP V9.16B, WZR\n\t"
|
||||
"DUP V10.16B, WZR\n\t"
|
||||
"DUP V11.16B, WZR\n\t"
|
||||
"DUP V12.16B, WZR\n\t"
|
||||
"DUP V13.16B, WZR\n\t"
|
||||
"DUP V14.16B, WZR\n\t"
|
||||
"DUP V15.16B, WZR\n\t"
|
||||
"DUP V16.16B, WZR\n\t"
|
||||
"DUP V17.16B, WZR\n\t"
|
||||
"DUP V18.16B, WZR\n\t"
|
||||
"DUP V19.16B, WZR\n\t"
|
||||
"DUP V20.16B, WZR\n\t"
|
||||
"DUP V21.16B, WZR\n\t"
|
||||
"DUP V22.16B, WZR\n\t"
|
||||
"DUP V23.16B, WZR\n\t"
|
||||
"DUP V24.16B, WZR\n\t"
|
||||
"DUP V25.16B, WZR\n\t"
|
||||
"DUP V26.16B, WZR\n\t"
|
||||
"DUP V27.16B, WZR\n\t"
|
||||
"DUP V28.16B, WZR\n\t"
|
||||
"DUP V29.16B, WZR\n\t"
|
||||
"DUP V30.16B, WZR\n\t"
|
||||
"DUP V31.16B, WZR\n\t"
|
||||
"BR X9"::"r"(ctx->registers.x0), "r"(ctx->registers.x1), "r"(address) : "x0", "x1", "x9");
|
||||
|
||||
__builtin_unreachable();
|
||||
|
Loading…
Reference in New Issue
Block a user