diff options
author | Anton Kolesov <Anton.Kolesov@synopsys.com> | 2016-07-06 20:30:29 +0300 |
---|---|---|
committer | Shahab Vahedi <shahab@synopsys.com> | 2020-10-07 17:46:23 +0200 |
commit | 6d2d7c5668f99d1fe9a8da643a43c824b104b337 (patch) | |
tree | c4679196ec31a8674c6ca02ae217daca086c1b0e /gdbserver/configure.srv | |
parent | e4bd363f994cf12017cb17dddeb2bc35698ee349 (diff) | |
download | gdb-6d2d7c5668f99d1fe9a8da643a43c824b104b337.zip gdb-6d2d7c5668f99d1fe9a8da643a43c824b104b337.tar.gz gdb-6d2d7c5668f99d1fe9a8da643a43c824b104b337.tar.bz2 |
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.
Diffstat (limited to 'gdbserver/configure.srv')
-rw-r--r-- | gdbserver/configure.srv | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gdbserver/configure.srv b/gdbserver/configure.srv index cd25b15..833ad27 100644 --- a/gdbserver/configure.srv +++ b/gdbserver/configure.srv @@ -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" |