Skip to content
Commit f90ea4f2 authored by Andrew Pinski's avatar Andrew Pinski
Browse files

Handle ILP32 AARCH64 correctly for 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: default avatarAndrew Pinski <apinski@cavium.com>
parent 65f976c1
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment