Re: [RFC] setting the raw content of a register

Jerome Guitton
2012-05-23T15:42:48Z

Doug Evans (dje@google.com):

> On Tue, May 22, 2012 at 9:31 AM, Pedro Alves <palves@redhat.com> wrote:
> > On 05/22/2012 04:24 PM, Jerome Guitton wrote:
> >
> >> Pedro Alves (palves@redhat.com):
> >>
> >>> What about :
> >>>
> >>> Â  p $f14 = {double} {0xFFF0000000000050}
> >>
> >> I've been testing with a bareboard PPC, and this needs malloc;
> >
> >
> > Hmm, looks like you're right. Â I was almost certain there was a way
> > to avoid the malloc if the cast/conversion is done to a type of
> > the exact same size as the source array, but it's escaping me now
> > how.
>
> IWBN to solve this without adding a new command, the problem is more
> general than just assigning values to registers. I may want to use
> the value in an expression, for example.

I can have a look.

Still, we will have the problem that I was mentioning for cross
targets: we sometimes lose the sign of the NaN. e.g. when debugging a
ppc-elf target from a x86-linux host, {double} {0xFFF0000000000050}
probably evaluates to NaN(0x100000001) instead of
-NaN(0x000000050). Same kind of issue for denorms. We may improve the
precision of the evaluation here, but I fear that it will take some
time to catch all the possible cases. A new command would give a work
around to anyone hitting such a precision loss.