package runtime
import (
)
func ( *sigctxt) {
print("rax ", hex(.rax()), "\n")
print("rbx ", hex(.rbx()), "\n")
print("rcx ", hex(.rcx()), "\n")
print("rdx ", hex(.rdx()), "\n")
print("rdi ", hex(.rdi()), "\n")
print("rsi ", hex(.rsi()), "\n")
print("rbp ", hex(.rbp()), "\n")
print("rsp ", hex(.rsp()), "\n")
print("r8 ", hex(.r8()), "\n")
print("r9 ", hex(.r9()), "\n")
print("r10 ", hex(.r10()), "\n")
print("r11 ", hex(.r11()), "\n")
print("r12 ", hex(.r12()), "\n")
print("r13 ", hex(.r13()), "\n")
print("r14 ", hex(.r14()), "\n")
print("r15 ", hex(.r15()), "\n")
print("rip ", hex(.rip()), "\n")
print("rflags ", hex(.rflags()), "\n")
print("cs ", hex(.cs()), "\n")
print("fs ", hex(.fs()), "\n")
print("gs ", hex(.gs()), "\n")
}
func ( *sigctxt) () uintptr { return uintptr(.rip()) }
func ( *sigctxt) () uintptr { return uintptr(.rsp()) }
func ( *sigctxt) () uintptr { return 0 }
func ( *sigctxt) () uintptr { return uintptr(.sigaddr()) }
func ( *sigctxt) ( uint32, *g) {
if GOOS == "darwin" && == _SIGFPE && .sigcode0 == 0 {
:= (*[4]byte)(unsafe.Pointer(.sigpc))
:= 0
if []&0xF0 == 0x40 {
++
} else if [] == 0x66 {
++
}
if [] == 0xF6 || [] == 0xF7 {
.sigcode0 = _FPE_INTDIV
}
}
:= uintptr(.rip())
:= uintptr(.rsp())
if shouldPushSigpanic(, , *(*uintptr)(unsafe.Pointer())) {
.pushCall(funcPC(sigpanic), )
} else {
.set_rip(uint64(funcPC(sigpanic)))
}
}
func ( *sigctxt) (, uintptr) {
:= uintptr(.rsp())
-= sys.PtrSize
*(*uintptr)(unsafe.Pointer()) =
.set_rsp(uint64())
.set_rip(uint64())
}