1*67588bdaSDaniel Schwierzeck /* 2*67588bdaSDaniel Schwierzeck * offset.c: Calculate pt_regs and task_struct offsets. 3*67588bdaSDaniel Schwierzeck * 4*67588bdaSDaniel Schwierzeck * Copyright (C) 1996 David S. Miller 5*67588bdaSDaniel Schwierzeck * Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003 Ralf Baechle 6*67588bdaSDaniel Schwierzeck * Copyright (C) 1999, 2000 Silicon Graphics, Inc. 7*67588bdaSDaniel Schwierzeck * 8*67588bdaSDaniel Schwierzeck * Kevin Kissell, kevink@mips.com and Carsten Langgaard, carstenl@mips.com 9*67588bdaSDaniel Schwierzeck * Copyright (C) 2000 MIPS Technologies, Inc. 10*67588bdaSDaniel Schwierzeck * 11*67588bdaSDaniel Schwierzeck * SPDX-License-Identifier: GPL-2.0+ 12*67588bdaSDaniel Schwierzeck */ 13*67588bdaSDaniel Schwierzeck 14*67588bdaSDaniel Schwierzeck #include <asm/ptrace.h> 15*67588bdaSDaniel Schwierzeck #include <linux/stddef.h> 16*67588bdaSDaniel Schwierzeck #include <linux/kbuild.h> 17*67588bdaSDaniel Schwierzeck 18*67588bdaSDaniel Schwierzeck void output_ptreg_defines(void) 19*67588bdaSDaniel Schwierzeck { 20*67588bdaSDaniel Schwierzeck COMMENT("MIPS pt_regs offsets."); 21*67588bdaSDaniel Schwierzeck OFFSET(PT_R0, pt_regs, regs[0]); 22*67588bdaSDaniel Schwierzeck OFFSET(PT_R1, pt_regs, regs[1]); 23*67588bdaSDaniel Schwierzeck OFFSET(PT_R2, pt_regs, regs[2]); 24*67588bdaSDaniel Schwierzeck OFFSET(PT_R3, pt_regs, regs[3]); 25*67588bdaSDaniel Schwierzeck OFFSET(PT_R4, pt_regs, regs[4]); 26*67588bdaSDaniel Schwierzeck OFFSET(PT_R5, pt_regs, regs[5]); 27*67588bdaSDaniel Schwierzeck OFFSET(PT_R6, pt_regs, regs[6]); 28*67588bdaSDaniel Schwierzeck OFFSET(PT_R7, pt_regs, regs[7]); 29*67588bdaSDaniel Schwierzeck OFFSET(PT_R8, pt_regs, regs[8]); 30*67588bdaSDaniel Schwierzeck OFFSET(PT_R9, pt_regs, regs[9]); 31*67588bdaSDaniel Schwierzeck OFFSET(PT_R10, pt_regs, regs[10]); 32*67588bdaSDaniel Schwierzeck OFFSET(PT_R11, pt_regs, regs[11]); 33*67588bdaSDaniel Schwierzeck OFFSET(PT_R12, pt_regs, regs[12]); 34*67588bdaSDaniel Schwierzeck OFFSET(PT_R13, pt_regs, regs[13]); 35*67588bdaSDaniel Schwierzeck OFFSET(PT_R14, pt_regs, regs[14]); 36*67588bdaSDaniel Schwierzeck OFFSET(PT_R15, pt_regs, regs[15]); 37*67588bdaSDaniel Schwierzeck OFFSET(PT_R16, pt_regs, regs[16]); 38*67588bdaSDaniel Schwierzeck OFFSET(PT_R17, pt_regs, regs[17]); 39*67588bdaSDaniel Schwierzeck OFFSET(PT_R18, pt_regs, regs[18]); 40*67588bdaSDaniel Schwierzeck OFFSET(PT_R19, pt_regs, regs[19]); 41*67588bdaSDaniel Schwierzeck OFFSET(PT_R20, pt_regs, regs[20]); 42*67588bdaSDaniel Schwierzeck OFFSET(PT_R21, pt_regs, regs[21]); 43*67588bdaSDaniel Schwierzeck OFFSET(PT_R22, pt_regs, regs[22]); 44*67588bdaSDaniel Schwierzeck OFFSET(PT_R23, pt_regs, regs[23]); 45*67588bdaSDaniel Schwierzeck OFFSET(PT_R24, pt_regs, regs[24]); 46*67588bdaSDaniel Schwierzeck OFFSET(PT_R25, pt_regs, regs[25]); 47*67588bdaSDaniel Schwierzeck OFFSET(PT_R26, pt_regs, regs[26]); 48*67588bdaSDaniel Schwierzeck OFFSET(PT_R27, pt_regs, regs[27]); 49*67588bdaSDaniel Schwierzeck OFFSET(PT_R28, pt_regs, regs[28]); 50*67588bdaSDaniel Schwierzeck OFFSET(PT_R29, pt_regs, regs[29]); 51*67588bdaSDaniel Schwierzeck OFFSET(PT_R30, pt_regs, regs[30]); 52*67588bdaSDaniel Schwierzeck OFFSET(PT_R31, pt_regs, regs[31]); 53*67588bdaSDaniel Schwierzeck OFFSET(PT_LO, pt_regs, lo); 54*67588bdaSDaniel Schwierzeck OFFSET(PT_HI, pt_regs, hi); 55*67588bdaSDaniel Schwierzeck OFFSET(PT_EPC, pt_regs, cp0_epc); 56*67588bdaSDaniel Schwierzeck OFFSET(PT_BVADDR, pt_regs, cp0_badvaddr); 57*67588bdaSDaniel Schwierzeck OFFSET(PT_STATUS, pt_regs, cp0_status); 58*67588bdaSDaniel Schwierzeck OFFSET(PT_CAUSE, pt_regs, cp0_cause); 59*67588bdaSDaniel Schwierzeck DEFINE(PT_SIZE, sizeof(struct pt_regs)); 60*67588bdaSDaniel Schwierzeck BLANK(); 61*67588bdaSDaniel Schwierzeck } 62