mirror of https://github.com/golang/go.git
50 lines
2.3 KiB
C
50 lines
2.3 KiB
C
// Copyright 2014 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
#define SIG_REGS(ctxt) (*((Sigcontext*)&((Ucontext*)(ctxt))->uc_mcontext)->regs)
|
|
|
|
#define SIG_R0(info, ctxt) (SIG_REGS(ctxt).gpr[0])
|
|
#define SIG_R1(info, ctxt) (SIG_REGS(ctxt).gpr[1])
|
|
#define SIG_R2(info, ctxt) (SIG_REGS(ctxt).gpr[2])
|
|
#define SIG_R3(info, ctxt) (SIG_REGS(ctxt).gpr[3])
|
|
#define SIG_R4(info, ctxt) (SIG_REGS(ctxt).gpr[4])
|
|
#define SIG_R5(info, ctxt) (SIG_REGS(ctxt).gpr[5])
|
|
#define SIG_R6(info, ctxt) (SIG_REGS(ctxt).gpr[6])
|
|
#define SIG_R7(info, ctxt) (SIG_REGS(ctxt).gpr[7])
|
|
#define SIG_R8(info, ctxt) (SIG_REGS(ctxt).gpr[8])
|
|
#define SIG_R9(info, ctxt) (SIG_REGS(ctxt).gpr[9])
|
|
#define SIG_R10(info, ctxt) (SIG_REGS(ctxt).gpr[10])
|
|
#define SIG_R11(info, ctxt) (SIG_REGS(ctxt).gpr[11])
|
|
#define SIG_R12(info, ctxt) (SIG_REGS(ctxt).gpr[12])
|
|
#define SIG_R13(info, ctxt) (SIG_REGS(ctxt).gpr[13])
|
|
#define SIG_R14(info, ctxt) (SIG_REGS(ctxt).gpr[14])
|
|
#define SIG_R15(info, ctxt) (SIG_REGS(ctxt).gpr[15])
|
|
#define SIG_R16(info, ctxt) (SIG_REGS(ctxt).gpr[16])
|
|
#define SIG_R17(info, ctxt) (SIG_REGS(ctxt).gpr[17])
|
|
#define SIG_R18(info, ctxt) (SIG_REGS(ctxt).gpr[18])
|
|
#define SIG_R19(info, ctxt) (SIG_REGS(ctxt).gpr[19])
|
|
#define SIG_R20(info, ctxt) (SIG_REGS(ctxt).gpr[20])
|
|
#define SIG_R21(info, ctxt) (SIG_REGS(ctxt).gpr[21])
|
|
#define SIG_R22(info, ctxt) (SIG_REGS(ctxt).gpr[22])
|
|
#define SIG_R23(info, ctxt) (SIG_REGS(ctxt).gpr[23])
|
|
#define SIG_R24(info, ctxt) (SIG_REGS(ctxt).gpr[24])
|
|
#define SIG_R25(info, ctxt) (SIG_REGS(ctxt).gpr[25])
|
|
#define SIG_R26(info, ctxt) (SIG_REGS(ctxt).gpr[26])
|
|
#define SIG_R27(info, ctxt) (SIG_REGS(ctxt).gpr[27])
|
|
#define SIG_R28(info, ctxt) (SIG_REGS(ctxt).gpr[28])
|
|
#define SIG_R29(info, ctxt) (SIG_REGS(ctxt).gpr[29])
|
|
#define SIG_R30(info, ctxt) (SIG_REGS(ctxt).gpr[30])
|
|
#define SIG_R31(info, ctxt) (SIG_REGS(ctxt).gpr[31])
|
|
|
|
#define SIG_SP(info, ctxt) (SIG_REGS(ctxt).gpr[1])
|
|
#define SIG_PC(info, ctxt) (SIG_REGS(ctxt).nip)
|
|
#define SIG_TRAP(info, ctxt) (SIG_REGS(ctxt).trap)
|
|
#define SIG_CTR(info, ctxt) (SIG_REGS(ctxt).ctr)
|
|
#define SIG_LINK(info, ctxt) (SIG_REGS(ctxt).link)
|
|
#define SIG_XER(info, ctxt) (SIG_REGS(ctxt).xer)
|
|
#define SIG_CCR(info, ctxt) (SIG_REGS(ctxt).ccr)
|
|
|
|
#define SIG_CODE0(info, ctxt) ((uintptr)(info)->si_code)
|
|
#define SIG_FAULT(info, ctxt) (SIG_REGS(ctxt).dar)
|