Hi, Attached is a re-spin for the AArch64 basic port addressing comments received here: http://www.sourceware.org/ml/gdb-patches/2013-01/msg00611.html Responses to the questions raised in that email below: >> >> >> + if (tdep->jb_pc>= 0) >> >> + set_gdbarch_get_longjmp_target (gdbarch, >> aarch64_get_longjmp_target); >> > >> > Have you answered the comment I made in my first review? I can't >> > find anything... >> >> Between the initial definition of jb_pc and this conditional is a call to gdbarch_init_osabi() both the aarch64-linux-tdep.c and aarch64-newlib-tdep.c contain an initializer that re-defines jb_pc. > > So the default, non-default-osabi implementation uses which libc? By default we are not assuming any specific libc and hence not installing a longjmp handler via set_gdbarch_get_longjmp_target. >> + >> +/* Implement the "addr_bits_remove" gdbarch method. */ >> + >> +static CORE_ADDR >> +aarch64_addr_bits_remove (struct gdbarch *gdbarch, CORE_ADDR val) >> +{ >> + /* All instructions are 4-byte aligned. */ >> + return val & ~(CORE_ADDR) 0x3; >> +} > > Excuse the ignorance, but why do you need this? Does > Aarch64 do any magic low address encoding, like arm/thumb? In the AArch64 execution state all instructions are 4 byte aligned with the least significant two bits reserved. Proposed ChangeLog: 2013-01-25 Jim MacArthur Marcus Shawcroft Nigel Stephens Yufeng Zhang * Makefile.in (ALL_64_TARGET_OBS): Add arch64-tdep.o. (HFILES_NO_SRCDIR): Add aarch64-tdep.h. (ALLDEPFILES): Add aarch64-tdep.c. * aarch64-tdep.c: New file. * aarch64-tdep.h: New file. * configure.tgt: Add AArch64. * features/Makefile (WHICH): Add aarch64 and aarch64-without-fpu. (aarch64-expedite): New definition. * features/aarch64-core.xml: New file. * features/aarch64-fpu.xml: New file. * features/aarch64-without-fpu.c: New file (generated). * features/aarch64-without-fpu.xml: New file. * features/aarch64.c: New file (generated). * features/aarch64.xml: New file. * regformats/aarch64-without-fpu.dat: New file (generated). * regformats/aarch64.dat: New file (generated). Cheers /Marcus