Home | History | Annotate | Download | only in ia64
      1 /* Linux-specific definitions: */
      2 
      3 /* Define various structure offsets to simplify cross-compilation.  */
      4 
      5 /* The first three 64-bit words in a signal frame contain the signal
      6    number, siginfo pointer, and sigcontext pointer passed to the
      7    signal handler.  We use this to locate the sigcontext pointer.  */
      8 
      9 #define LINUX_SIGFRAME_ARG2_OFF	0x10
     10 
     11 #define LINUX_SC_FLAGS_OFF	0x000
     12 #define LINUX_SC_NAT_OFF	0x008
     13 #define LINUX_SC_STACK_OFF	0x010
     14 #define LINUX_SC_IP_OFF		0x028
     15 #define LINUX_SC_CFM_OFF	0x030
     16 #define LINUX_SC_UM_OFF		0x038
     17 #define LINUX_SC_AR_RSC_OFF	0x040
     18 #define LINUX_SC_AR_BSP_OFF	0x048
     19 #define LINUX_SC_AR_RNAT_OFF	0x050
     20 #define LINUX_SC_AR_CCV		0x058
     21 #define LINUX_SC_AR_UNAT_OFF	0x060
     22 #define LINUX_SC_AR_FPSR_OFF	0x068
     23 #define LINUX_SC_AR_PFS_OFF	0x070
     24 #define LINUX_SC_AR_LC_OFF	0x078
     25 #define LINUX_SC_PR_OFF		0x080
     26 #define LINUX_SC_BR_OFF		0x088
     27 #define LINUX_SC_GR_OFF		0x0c8
     28 #define LINUX_SC_FR_OFF		0x1d0
     29 #define LINUX_SC_RBS_BASE_OFF	0x9d0
     30 #define LINUX_SC_LOADRS_OFF	0x9d8
     31 #define LINUX_SC_AR_CSD_OFF	0x9e0
     32 #define LINUX_SC_AR_SSD_OFF	0x9e8
     33 #define LINUX_SC_MASK		0xa50
     34 
     35 /* Layout of old Linux kernel interrupt frame (struct pt_regs).  */
     36 
     37 #define LINUX_OLD_PT_IPSR_OFF	0x000
     38 #define LINUX_OLD_PT_IIP_OFF	0x008
     39 #define LINUX_OLD_PT_IFS_OFF	0x010
     40 #define LINUX_OLD_PT_UNAT_OFF	0x018
     41 #define LINUX_OLD_PT_PFS_OFF	0x020
     42 #define LINUX_OLD_PT_RSC_OFF	0x028
     43 #define LINUX_OLD_PT_RNAT_OFF	0x030
     44 #define LINUX_OLD_PT_BSPSTORE_OFF 0x038
     45 #define LINUX_OLD_PT_PR_OFF	0x040
     46 #define LINUX_OLD_PT_B6_OFF	0x048
     47 #define LINUX_OLD_PT_LOADRS_OFF	0x050
     48 #define LINUX_OLD_PT_R1_OFF	0x058
     49 #define LINUX_OLD_PT_R2_OFF	0x060
     50 #define LINUX_OLD_PT_R3_OFF	0x068
     51 #define LINUX_OLD_PT_R12_OFF	0x070
     52 #define LINUX_OLD_PT_R13_OFF	0x078
     53 #define LINUX_OLD_PT_R14_OFF	0x080
     54 #define LINUX_OLD_PT_R15_OFF	0x088
     55 #define LINUX_OLD_PT_R8_OFF	0x090
     56 #define LINUX_OLD_PT_R9_OFF	0x098
     57 #define LINUX_OLD_PT_R10_OFF	0x0a0
     58 #define LINUX_OLD_PT_R11_OFF	0x0a8
     59 #define LINUX_OLD_PT_R16_OFF	0x0b0
     60 #define LINUX_OLD_PT_R17_OFF	0x0b8
     61 #define LINUX_OLD_PT_R18_OFF	0x0c0
     62 #define LINUX_OLD_PT_R19_OFF	0x0c8
     63 #define LINUX_OLD_PT_R20_OFF	0x0d0
     64 #define LINUX_OLD_PT_R21_OFF	0x0d8
     65 #define LINUX_OLD_PT_R22_OFF	0x0e0
     66 #define LINUX_OLD_PT_R23_OFF	0x0e8
     67 #define LINUX_OLD_PT_R24_OFF	0x0f0
     68 #define LINUX_OLD_PT_R25_OFF	0x0f8
     69 #define LINUX_OLD_PT_R26_OFF	0x100
     70 #define LINUX_OLD_PT_R27_OFF	0x108
     71 #define LINUX_OLD_PT_R28_OFF	0x110
     72 #define LINUX_OLD_PT_R29_OFF	0x118
     73 #define LINUX_OLD_PT_R30_OFF	0x120
     74 #define LINUX_OLD_PT_R31_OFF	0x128
     75 #define LINUX_OLD_PT_CCV_OFF	0x130
     76 #define LINUX_OLD_PT_FPSR_OFF	0x138
     77 #define LINUX_OLD_PT_B0_OFF	0x140
     78 #define LINUX_OLD_PT_B7_OFF	0x148
     79 #define LINUX_OLD_PT_F6_OFF	0x150
     80 #define LINUX_OLD_PT_F7_OFF	0x160
     81 #define LINUX_OLD_PT_F8_OFF	0x170
     82 #define LINUX_OLD_PT_F9_OFF	0x180
     83 
     84 /* Layout of new Linux kernel interrupt frame (struct pt_regs).  */
     85 
     86 #define LINUX_PT_B6_OFF		0
     87 #define LINUX_PT_B7_OFF		8
     88 #define LINUX_PT_CSD_OFF	16
     89 #define LINUX_PT_SSD_OFF	24
     90 #define LINUX_PT_R8_OFF		32
     91 #define LINUX_PT_R9_OFF		40
     92 #define LINUX_PT_R10_OFF	48
     93 #define LINUX_PT_R11_OFF	56
     94 #define LINUX_PT_IPSR_OFF	64
     95 #define LINUX_PT_IIP_OFF	72
     96 #define LINUX_PT_IFS_OFF	80
     97 #define LINUX_PT_UNAT_OFF	88
     98 #define LINUX_PT_PFS_OFF	96
     99 #define LINUX_PT_RSC_OFF	104
    100 #define LINUX_PT_RNAT_OFF	112
    101 #define LINUX_PT_BSPSTORE_OFF	120
    102 #define LINUX_PT_PR_OFF		128
    103 #define LINUX_PT_B0_OFF		136
    104 #define LINUX_PT_LOADRS_OFF	144
    105 #define LINUX_PT_R1_OFF		152
    106 #define LINUX_PT_R12_OFF	160
    107 #define LINUX_PT_R13_OFF	168
    108 #define LINUX_PT_FPSR_OFF	176
    109 #define LINUX_PT_R15_OFF	184
    110 #define LINUX_PT_R14_OFF	192
    111 #define LINUX_PT_R2_OFF		200
    112 #define LINUX_PT_R3_OFF		208
    113 #define LINUX_PT_R16_OFF	216
    114 #define LINUX_PT_R17_OFF	224
    115 #define LINUX_PT_R18_OFF	232
    116 #define LINUX_PT_R19_OFF	240
    117 #define LINUX_PT_R20_OFF	248
    118 #define LINUX_PT_R21_OFF	256
    119 #define LINUX_PT_R22_OFF	264
    120 #define LINUX_PT_R23_OFF	272
    121 #define LINUX_PT_R24_OFF	280
    122 #define LINUX_PT_R25_OFF	288
    123 #define LINUX_PT_R26_OFF	296
    124 #define LINUX_PT_R27_OFF	304
    125 #define LINUX_PT_R28_OFF	312
    126 #define LINUX_PT_R29_OFF	320
    127 #define LINUX_PT_R30_OFF	328
    128 #define LINUX_PT_R31_OFF	336
    129 #define LINUX_PT_CCV_OFF	344
    130 #define LINUX_PT_F6_OFF		352
    131 #define LINUX_PT_F7_OFF		368
    132 #define LINUX_PT_F8_OFF		384
    133 #define LINUX_PT_F9_OFF		400
    134 #define LINUX_PT_F10_OFF	416
    135 #define LINUX_PT_F11_OFF	432
    136 
    137 #define LINUX_PT_P_NONSYS	5	/* must match pNonSys in entry.h */
    138