forked from Imagelibrary/binutils-gdb
gdbserver: Add GNU/Linux support for ARC
This gdbserver implementation supports ARC ABI v3 and v4 (older ARC ABI versions are not supported by other modern GNU tools or Linux itself). Gdbserver supports inspection of ARC HS registers R30, R58 and R59 - feature that has been added to Linux 4.12. Whether gdbserver build will actually support this feature depends on the version of Linux headers used to build the server. v2 [1]: - Use "this->read_memory ()" instead of "the_target->read_memory ()". - Remove the unnecessary "arch-arc.o:" target from the "Makefile.in". - Got rid of "ntohs()" function and added lots of comments about endianness. - Clarify why "pc" value is read from and saved to different fields in user regs struct. - In function "is_reg_name_available_p()", use a range-based iterator to loop over the registers. - Removed mentioning of issue number that was not related to sourceware. - A few typo's fixed. [1] Remarks https://sourceware.org/pipermail/gdb-patches/2020-September/171911.html https://sourceware.org/pipermail/gdb-patches/2020-September/171919.html gdbserver/ChangeLog: * configure.srv: Support ARC architecture. * Makefile.in: Add linux-arc-low.cc and arch/arc.o. * linux-arc-low.cc: New file.
This commit is contained in:
committed by
Shahab Vahedi
parent
e4bd363f99
commit
6d2d7c5668
@@ -67,6 +67,17 @@ case "${gdbserver_host}" in
|
||||
srv_tgtobj="${srv_tgtobj} nat/netbsd-nat.o"
|
||||
srv_tgtobj="${srv_tgtobj} arch/aarch64-insn.o arch/aarch64.o"
|
||||
;;
|
||||
arc*-*-linux*)
|
||||
srv_regobj=""
|
||||
srv_tgtobj="linux-arc-low.o arch/arc.o $srv_linux_obj"
|
||||
srv_xmlfiles="arc/v1-core.xml"
|
||||
srv_xmlfiles="${srv_xmlfiles} arc/v1-aux.xml"
|
||||
srv_xmlfiles="${srv_xmlfiles} arc/v2-core.xml"
|
||||
srv_xmlfiles="${srv_xmlfiles} arc/v2-aux.xml"
|
||||
srv_linux_regsets=yes
|
||||
srv_linux_usrregs=yes
|
||||
srv_linux_thread_db=yes
|
||||
;;
|
||||
arm*-*-linux*) srv_tgtobj="$srv_linux_obj linux-arm-low.o"
|
||||
srv_tgtobj="$srv_tgtobj linux-arm-tdesc.o"
|
||||
srv_tgtobj="$srv_tgtobj linux-aarch32-low.o"
|
||||
|
||||
Reference in New Issue
Block a user