gdbserver/csky add csky gdbserver support
Add new files: gdb/arch/csky.c gdb/arch/csky.h gdb/features/cskyv2-linux.c gdbserver/linux-csky-low.cc 1. In gdb/arch/csky.c file, add function "csky_create_target_description()" for csky_target::low_arch_setup(). later, it can be used for csky native gdb. 2. In gdb/features/cskyv2-linux.c file, create target_tdesc for csky, include gprs, pc, hi, lo, float, vector and float control registers. 3. In gdbserver/linux-csky-low.cc file, using PTRACE_GET/SET_RGESET to get/set registers. The main data structures in asm/ptrace.h are: struct pt_regs { unsigned long tls; unsigned long lr; unsigned long pc; unsigned long sr; unsigned long usp; /* * a0, a1, a2, a3: * r0, r1, r2, r3 */ unsigned long orig_a0; unsigned long a0; unsigned long a1; unsigned long a2; unsigned long a3; /* * r4 ~ r13 */ unsigned long regs[10]; /* r16 ~ r30 */ unsigned long exregs[15]; unsigned long rhi; unsigned long rlo; unsigned long dcsr; }; struct user_fp { unsigned long vr[96]; unsigned long fcr; unsigned long fesr; unsigned long fid; unsigned long reserved; };
Showing
- gdb/NEWS 4 additions, 0 deletionsgdb/NEWS
- gdb/arch/csky.c 38 additions, 0 deletionsgdb/arch/csky.c
- gdb/arch/csky.h 29 additions, 0 deletionsgdb/arch/csky.h
- gdb/features/cskyv2-linux.c 127 additions, 0 deletionsgdb/features/cskyv2-linux.c
- gdbserver/Makefile.in 2 additions, 0 deletionsgdbserver/Makefile.in
- gdbserver/configure.srv 5 additions, 0 deletionsgdbserver/configure.srv
- gdbserver/linux-csky-low.cc 351 additions, 0 deletionsgdbserver/linux-csky-low.cc
Loading
Please register or sign in to comment