This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC] Status of record and replay support for arm based targets


On 09/02/2013 04:34 AM, Omair Javaid wrote:
I have been trying to investigate shortcomings in gdb's record and
replay feature support for arm based targets. I am currently writing
code to support various types of missing instructions for arm process
record including 32-bit thumb instructions for above feature.

I was wondering if someone on this mailing list who has previously
contributed in this particular area of the gdb source code may be able
to identify any to-do items other than supporting various arm
instructions.

It would be helpful if someone who has previously contributed to
support record and replay for arm based targets can provide
suggestions/feedback derived from his/her experience.

ARM record and replay was contributed by oza Pawandeep in 2001, but it
is unclear how well or completely it was tested by the testsuite,
because I didn't see test result posted in the patch review.

Beside supporting 32-bit thumb instructions, there are something we
should do,

 1. Support syscall.  AFAIK, syscall record is not supported on ARM.
 2. Fix up the testsuite.  Both proc supports_process_record and
supports_reverse in lib/gdb.exp return 0 for arm targets, which is not
expected.
 3. Fix fails in test results.  Last time, I run gdb.reverse on oza's
patches, and the result is not good.  See
https://sourceware.org/ml/gdb-patches/2011-10/msg00435.html
 4. Support record for ARM bare-metal targets by calling
set_gdbarch_process_record in arm-tdep.c instead of arm-linux-tdep.c.
See http://www.sourceware.org/ml/gdb/2013-07/msg00068.html
 5. Fix PR15518.

--
Yao (éå)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]