diff options
author | Andrew Pinski <apinski@cavium.com> | 2016-08-26 16:31:29 -0700 |
---|---|---|
committer | Andrew Pinski <apinski@cavium.com> | 2016-08-31 13:27:54 -0700 |
commit | f90ea4f29afe8c017405e38fb21b8d5f7cb3a6f2 (patch) | |
tree | b08419e6e342e9286682d1e296720cd7bbd8e112 /gdb/features/aarch64_ilp32.xml | |
parent | 65f976c1b18dd337f9ca5cc122bcc295cbd96298 (diff) | |
download | fsf-binutils-gdb-users/apinski/gdb-ilp32-gdbserver.zip fsf-binutils-gdb-users/apinski/gdb-ilp32-gdbserver.tar.gz fsf-binutils-gdb-users/apinski/gdb-ilp32-gdbserver.tar.bz2 |
Handle ILP32 AARCH64 correctly for gdbserverusers/apinski/gdb-ilp32-gdbserver
In gdbserver, we need to send over 32bit registers
for pc/sp instead of 64bit as we do right now.
So we need another XML file for ILP32.
Tested using gdbserver with an ILP32 program and even
tested using gdbserver as an ILP32 program.
OK?
Thanks,
Andrew Pinski
ChangeLog:
* aarch64-tdep.c: Include "features/aarch64_ilp32.c".
(aarch64_gdbarch_init): Handle ilp32 correctly.
(_initialize_aarch64_tdep): Call initialize_tdesc_aarch64_ilp32
too.
* features/Makefile (WHICH): Add aarch64_ilp32.
(aarch64_ilp32-expedite): Set.
(XMLTOC): Add aarch64_ilp32.xml.
(features/aarch64_ilp32-core.xml): New file.
(features/aarch64_ilp32.xml): New file.
(features/aarch64_ilp32.c): Generate.
(regformats/aarch64_ilp32.dat): Generate.
gdbserver/ChangeLog:
* Makefile.in (clean): Remove aarch64_ilp32.c also.
(aarch64_ilp32-ipa.o): New target.
(aarch64_ilp32.c): New target.
* configure.srv (aarch64*-*-linux*): Add ilp32 files
to srv_regobj, srv_xmlfiles and ipa_obj.
* linux-aarch64-ipa.c (init_registers_aarch64_ilp32):
Declare.
(tdesc_aarch64_ilp32): Likewise.
(get_ipa_tdesc): Return tdesc_aarch64_ilp32 for ILP32.
(initialize_low_tracepoint): Call init_registers_aarch64_ilp32
for ILP32.
* linux-aarch64-low.c (init_registers_aarch64_ilp32): Declare.
(tdesc_aarch64_ilp32): Likewise.
(aarch64_linux_read_description): Return tdesc_aarch64_ilp32
for ILP32 executables.
(initialize_low_arch): Call init_registers_aarch64_ilp32.
Signed-off-by: Andrew Pinski <apinski@cavium.com>
Diffstat (limited to 'gdb/features/aarch64_ilp32.xml')
-rw-r--r-- | gdb/features/aarch64_ilp32.xml | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gdb/features/aarch64_ilp32.xml b/gdb/features/aarch64_ilp32.xml new file mode 100644 index 0000000..9c9b23a --- /dev/null +++ b/gdb/features/aarch64_ilp32.xml @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<!-- Copyright (C) 2009-2016 Free Software Foundation, Inc. + Contributed by ARM Ltd. + + Copying and distribution of this file, with or without modification, + are permitted in any medium without royalty provided the copyright + notice and this notice are preserved. --> + +<!DOCTYPE target SYSTEM "gdb-target.dtd"> +<target> + <architecture>aarch64:ilp32</architecture> + <xi:include href="aarch64_ilp32-core.xml"/> + <xi:include href="aarch64-fpu.xml"/> +</target> |