asm-offsets.c 1.9 KB

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