github.com/varialus/godfly@v0.0.0-20130904042352-1934f9f095ab/src/pkg/runtime/signal_freebsd_arm.h (about)

     1  // Copyright 2013 The Go Authors.  All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  #define SIG_REGS(ctxt) (((Ucontext*)(ctxt))->uc_mcontext)
     6  
     7  #define SIG_R0(info, ctxt) (SIG_REGS(ctxt).__gregs[0])
     8  #define SIG_R1(info, ctxt) (SIG_REGS(ctxt).__gregs[1])
     9  #define SIG_R2(info, ctxt) (SIG_REGS(ctxt).__gregs[2])
    10  #define SIG_R3(info, ctxt) (SIG_REGS(ctxt).__gregs[3])
    11  #define SIG_R4(info, ctxt) (SIG_REGS(ctxt).__gregs[4])
    12  #define SIG_R5(info, ctxt) (SIG_REGS(ctxt).__gregs[5])
    13  #define SIG_R6(info, ctxt) (SIG_REGS(ctxt).__gregs[6])
    14  #define SIG_R7(info, ctxt) (SIG_REGS(ctxt).__gregs[7])
    15  #define SIG_R8(info, ctxt) (SIG_REGS(ctxt).__gregs[8])
    16  #define SIG_R9(info, ctxt) (SIG_REGS(ctxt).__gregs[9])
    17  #define SIG_R10(info, ctxt) (SIG_REGS(ctxt).__gregs[10])
    18  #define SIG_FP(info, ctxt) (SIG_REGS(ctxt).__gregs[11])
    19  #define SIG_IP(info, ctxt) (SIG_REGS(ctxt).__gregs[12])
    20  #define SIG_SP(info, ctxt) (SIG_REGS(ctxt).__gregs[13])
    21  #define SIG_LR(info, ctxt) (SIG_REGS(ctxt).__gregs[14])
    22  #define SIG_PC(info, ctxt) (SIG_REGS(ctxt).__gregs[15])
    23  #define SIG_CPSR(info, ctxt) (SIG_REGS(ctxt).__gregs[16])
    24  #define SIG_FAULT(info, ctxt) ((uintptr)(info)->si_addr)
    25  #define SIG_TRAP(info, ctxt) (0)
    26  #define SIG_ERROR(info, ctxt) (0)
    27  #define SIG_OLDMASK(info, ctxt) (0)
    28  #define SIG_CODE0(info, ctxt) ((uintptr)(info)->si_code)