sigcontext.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. // SPDX-License-Identifier: GPL-2.0
  2. // Copyright (C) 2005-2017 Andes Technology Corporation
  3. #ifndef _ASMNDS32_SIGCONTEXT_H
  4. #define _ASMNDS32_SIGCONTEXT_H
  5. /*
  6. * Signal context structure - contains all info to do with the state
  7. * before the signal handler was invoked. Note: only add new entries
  8. * to the end of the structure.
  9. */
  10. struct zol_struct {
  11. unsigned long nds32_lc; /* $LC */
  12. unsigned long nds32_le; /* $LE */
  13. unsigned long nds32_lb; /* $LB */
  14. };
  15. struct sigcontext {
  16. unsigned long trap_no;
  17. unsigned long error_code;
  18. unsigned long oldmask;
  19. unsigned long nds32_r0;
  20. unsigned long nds32_r1;
  21. unsigned long nds32_r2;
  22. unsigned long nds32_r3;
  23. unsigned long nds32_r4;
  24. unsigned long nds32_r5;
  25. unsigned long nds32_r6;
  26. unsigned long nds32_r7;
  27. unsigned long nds32_r8;
  28. unsigned long nds32_r9;
  29. unsigned long nds32_r10;
  30. unsigned long nds32_r11;
  31. unsigned long nds32_r12;
  32. unsigned long nds32_r13;
  33. unsigned long nds32_r14;
  34. unsigned long nds32_r15;
  35. unsigned long nds32_r16;
  36. unsigned long nds32_r17;
  37. unsigned long nds32_r18;
  38. unsigned long nds32_r19;
  39. unsigned long nds32_r20;
  40. unsigned long nds32_r21;
  41. unsigned long nds32_r22;
  42. unsigned long nds32_r23;
  43. unsigned long nds32_r24;
  44. unsigned long nds32_r25;
  45. unsigned long nds32_fp; /* $r28 */
  46. unsigned long nds32_gp; /* $r29 */
  47. unsigned long nds32_lp; /* $r30 */
  48. unsigned long nds32_sp; /* $r31 */
  49. unsigned long nds32_ipc;
  50. unsigned long fault_address;
  51. unsigned long used_math_flag;
  52. /* FPU Registers */
  53. struct zol_struct zol;
  54. };
  55. #endif