This is the mail archive of the gdb@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]

[help] Issues with 'g' packet and MIPS - gdb interprets the packet reply wrong


Hi all,

I am trying to implement a remote stub for a MIPS cpu (using GDB version 7.8). When GDB asks for the general registers using the 'g' packet, I reply with:

00000000000000000d01000000000000fffdffff00000000000000000080c0bf30000000f0fec0bf000000002e0000000000000000000000000000008080808000000000000000000000000000000000000000000000000000000000000000000000000000000000000001800000000000000000e8fec0bf00000000702ec0bf0000000000000000000000000000000000000000702ec0bf

As each register is 32 bits (represented by 8 hex characters), this should be all the registers up to and including the PC.

However, GDB prints this out:

info reg
          zero       at       v0       v1       a0       a1 a2       a3
R0 00000000 0000010d fffffdff 00000000 00000030 00000000 00000000 00000000
            t0       t1       t2       t3       t4       t5 t6       t7
R8 00000000 00000000 00000000 00000000 00000000 80010000 00000000 00000000
            s0       s1       s2       s3       s4       s5 s6       s7
Sending packet: $p13#d4...Ack
Packet received: 00000000
Sending packet: $p14#d5...Ack
Packet received: 00000000
Sending packet: $p15#d6...Ack
Packet received: 00000000
Sending packet: $p16#d7...Ack
Packet received: 00000000
Sending packet: $p17#d8...Ack
Packet received: 00000000
R16 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
            t8       t9       k0       k1       gp       sp s8       ra
Sending packet: $p18#d9...Ack
Packet received: 00000000
Sending packet: $p19#da...Ack
Packet received: 00000000
Sending packet: $p1a#02...Ack
Packet received: 00000180
Sending packet: $p1b#03...Ack

etc

This looks to be that it is determining the size of each register incorrectly, and is thus asking for more registers using the 'p' packet.

Is this a bug on my end or in GDB?
I use the command

set processor mips:14000

beforehand, as this is the processor we're using.

Thanks,
Chris


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