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