Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* FW: RE: gdb 6.4 not allowing me to change the value of registers like $SP,$RBP  and $RIP.
@ 2007-05-09 10:09 Kalpana Ramamurthy
  0 siblings, 0 replies; only message in thread
From: Kalpana Ramamurthy @ 2007-05-09 10:09 UTC (permalink / raw)
  To: gdb-patches


>
>On further debugging I noticed that when I comment out 
>observer_notify_target_changed () in
>the function value_assign(), my registers stay intact. Basically until this 
>point, if I try to set a
>register say $sp to some other value, the new value is reflected correctly 
>in the regcache. But
>as soon as observer_notify_target_changed() is invoked, the new value of 
>$sp is replaced back
>to its old value. This is because in register_raw_read(), the 
>target_fetch_registers() gets called which replaces all the registers from 
>my target. And my target fetches the registers from the
>panic thread.
>
>Please help.
>
>Kalpana
>===
>
>
>>From: "Kalpana Ramamurthy" <kal_pana@hotmail.com>
>>To: kal_pana@hotmail.com, gdb@sourceware.org
>>Subject: gdb 6.4 not allowing me to change the value of registers like 
>>$SP,$RBP and $RIP.
>>Date: Wed, 02 May 2007 14:10:04 +0000
>>
>>I have a core dump whose registers look like this when I say "info reg" 
>>when I give this command in gdb 6.4.
>>
>>(gdb) info reg
>>rax            0x0      0
>>rbx            0x9c960a98       2627078808
>>rcx            0x2      2
>>rdx            0x0      0
>>rsi            0x4e1    1249
>>rdi            0xfee00300       4276093696
>>rbp            0x9c960a88       0x9c960a88
>>rsp            0x9c960a50       0x9c960a50
>>r8             0x1      1
>>r9             0x3      3
>>r10            0x0      0
>>r11            0x216    534
>>r12            0x9c960be8       2627079144
>>r13            0x3      3
>>r14            0x1      1
>>r15            0x0      0
>>rip            0x16489d 0x16489d <PANIC+51>
>>eflags         0x46     70
>>cs             0x8      8
>>ss             0x0      0
>>ds             0x0      0
>>es             0x0      0
>>fs             0x0      0
>>---Type <return> to continue, or q <return> to quit---
>>gs             0x0      0
>>
>>I want to change the value of $rsp from 0x9c960a50  to 0x6d04ee0. But gdb 
>>is not allowing me
>>to do that. When I say
>>(gdb) set $sp=0x6d04ee0
>>or if I say
>>(gdb) set $rsp=0x6d04ee0
>>gdb just refuses to change the values and $sp ($rsp) stays on as 
>>0x9c960a50.
>>
>>I am using gdb 6.4. When I do the same thing as above using gdb 6.0, it 
>>works great. I am able
>>to change the values of the registers. Why does this happen only in gdb 
>>6.4 ? I am not able to write macros because of this problem. Please help - 
>>where am I going wrong ? I have been debugging gdb 6.4 source code for 3 
>>whole days now and its driving me nuts. I could see the registers in the 
>>regcache - and SP shows the new value. From the regcache onwards
>>I have no idea how gdb translates the contents of the register cache to 
>>permanent values
>>where the globals like$rsp etc get set permanently unless we change it 
>>back again.
>>
>>Any help will be really appreciated.
>>
>>Kalpana
>>====
>>
>>_________________________________________________________________
>>Sign in and get updated on all the action from Formula One 
>>http://content.msn.co.in/Sports/FormulaOne/Default
>>
>
>_________________________________________________________________
>Voice your questions and our experts will answer them 
>http://content.msn.co.in/Lifestyle/AskExpert/Default01.htm
>

_________________________________________________________________
Voice your questions and our experts will answer them 
http://content.msn.co.in/Lifestyle/AskExpert/Default01.htm


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2007-05-09 10:09 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-05-09 10:09 FW: RE: gdb 6.4 not allowing me to change the value of registers like $SP,$RBP and $RIP Kalpana Ramamurthy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox