bitwise operations on registers
Andrew Cagney
ac131313@cygnus.com
Mon Mar 11 07:35:00 GMT 2002
> On Sun, 10 Mar 2002, Andrew Morton wrote:
>
>
>> (gdb) p $esp & 4
>> Argument to arithmetic operation not a number or boolean.
>> (gdb)
>>
>> I don't seem to be able to perform the `&' and `|' arithmetic
>> operators against machine registers.
>
>
> "p $eax & 4" works for me. Doesn't it work for you?
>
> As for $esp, I think GDB knows that it's not a number, so try
>
> (gdb) p (int)$esp & 4
>
> (I don't know whether the built-in knowledge GDB has about $esp should
> prevent it from working without the cast, though.)
Yes, try:
(gdb) p (void*)0 & 4
So, this a bug?
Andrew
More information about the Gdb
mailing list