]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - libgcc/config/csky/linux-unwind.h
Update copyright years.
[thirdparty/gcc.git] / libgcc / config / csky / linux-unwind.h
index 80f17f4260f8ba737f8dcc865e5704942c3c8a66..d5d6cbd08dcefdf944e1e1db817d83d0165e97aa 100644 (file)
@@ -1,5 +1,5 @@
 /* DWARF2 EH unwinding support for C-SKY Linux.
-   Copyright (C) 2018 Free Software Foundation, Inc.
+   Copyright (C) 2018-2024 Free Software Foundation, Inc.
    Contributed by C-SKY Microsystems and Mentor Graphics.
 
    This file is part of GCC.
@@ -47,9 +47,9 @@
 #define MOVI_R7_139_V2_PART0 0xea07
 #define MOVI_R7_139_V2_PART1 139
 
-#define sc_pt_regs(x) (sc->sc_##x)
-#define sc_pt_regs_lr (sc->sc_r15)
-#define sc_pt_regs_tls(x) (sc->sc_exregs[15])
+#define sc_pt_regs(x) (sc->sc_pt_regs.x)
+#define sc_pt_regs_lr (sc->sc_pt_regs.lr)
+#define sc_pt_regs_tls(x) sc_pt_regs(x)
 
 #define MD_FALLBACK_FRAME_STATE_FOR csky_fallback_frame_state
 
@@ -75,7 +75,7 @@ csky_fallback_frame_state (struct _Unwind_Context *context,
        siginfo_t info;
        ucontext_t uc;
       } *_rt = context->cfa;
-      sc = &(_rt->uc.uc_mcontext);
+      sc = (struct sigcontext *) &(_rt->uc.uc_mcontext);
     }
   else
     return _URC_END_OF_STACK;
@@ -85,28 +85,28 @@ csky_fallback_frame_state (struct _Unwind_Context *context,
   fs->regs.cfa_reg = STACK_POINTER_REGNUM;
   fs->regs.cfa_offset = new_cfa - (_Unwind_Ptr) context->cfa;
 
-  fs->regs.reg[0].how = REG_SAVED_OFFSET;
+  fs->regs.how[0] = REG_SAVED_OFFSET;
   fs->regs.reg[0].loc.offset = (_Unwind_Ptr) & sc_pt_regs (a0) - new_cfa;
 
-  fs->regs.reg[1].how = REG_SAVED_OFFSET;
+  fs->regs.how[1] = REG_SAVED_OFFSET;
   fs->regs.reg[1].loc.offset = (_Unwind_Ptr) & sc_pt_regs (a1) - new_cfa;
 
-  fs->regs.reg[2].how = REG_SAVED_OFFSET;
+  fs->regs.how[2] = REG_SAVED_OFFSET;
   fs->regs.reg[2].loc.offset = (_Unwind_Ptr) & sc_pt_regs (a2) - new_cfa;
 
-  fs->regs.reg[3].how = REG_SAVED_OFFSET;
+  fs->regs.how[3] = REG_SAVED_OFFSET;
   fs->regs.reg[3].loc.offset = (_Unwind_Ptr) & sc_pt_regs (a3) - new_cfa;
 
   for (i = 4; i < 14; i++)
     {
-      fs->regs.reg[i].how = REG_SAVED_OFFSET;
+      fs->regs.how[i] = REG_SAVED_OFFSET;
       fs->regs.reg[i].loc.offset =
        (_Unwind_Ptr) & sc_pt_regs (regs[i - 4]) - new_cfa;
     }
 
   for (i = 16; i < 31; i++)
     {
-      fs->regs.reg[i].how = REG_SAVED_OFFSET;
+      fs->regs.how[i] = REG_SAVED_OFFSET;
       fs->regs.reg[i].loc.offset =
        (_Unwind_Ptr) & sc_pt_regs (exregs[i - 16]) - new_cfa;
     }
@@ -114,10 +114,10 @@ csky_fallback_frame_state (struct _Unwind_Context *context,
   fs->regs.reg[31].loc.offset =
     (_Unwind_Ptr) & sc_pt_regs_tls (tls) - new_cfa;
   /* FIXME : hi lo ? */
-  fs->regs.reg[15].how = REG_SAVED_OFFSET;
+  fs->regs.how[15] = REG_SAVED_OFFSET;
   fs->regs.reg[15].loc.offset = (_Unwind_Ptr) & sc_pt_regs_lr - new_cfa;
 
-  fs->regs.reg[32].how = REG_SAVED_OFFSET;
+  fs->regs.how[32] = REG_SAVED_OFFSET;
   fs->regs.reg[32].loc.offset = (_Unwind_Ptr) & sc_pt_regs (pc) - new_cfa;
   fs->retaddr_column = 32;
   fs->signal_frame = 1;