This is the mail archive of the gdb-patches@sources.redhat.com 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: [rfa] Add cross platform i386 corefile support


On Fri, Aug 01, 2003 at 12:26:27PM -0400, Andrew Cagney wrote:
> Hello,
> 
> The attached does to the i386 what MichaelL recently did to x86-64 - 
> make the code that reads core files work cross platform.
> 
> While this change is independant of the x86-64 change, it does work 
> better when combined with that.
> 
> i386 native showed no regressions.  A cross GDB was able to read i386 
> native generated core files.
> 
> Please note that gcore doesn't work cross though - problems in 
> linux-proc.c.  I've filed a bug report.
> 
> ok?
> 6.0?

I'm not sure how cross-safe this bit is:

> +static void
> +dummy_sse_values (void)
> +{
> +  struct gdbarch_tdep *tdep = gdbarch_tdep (current_gdbarch);
> +  /* C doesn't have a syntax for NaN's, so write it out as an array of
> +     longs.  */
> +  static long dummy[4] = { 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff };
> +  static long mxcsr = 0x1f80;
> +  int reg;
> +
> +  for (reg = 0; reg < tdep->num_xmm_regs; reg++)
> +    supply_register (XMM0_REGNUM + reg, (char *) dummy);
> +  if (tdep->num_xmm_regs > 0)
> +    supply_register (MXCSR_REGNUM, (char *) &mxcsr);
> +}

Won't work on a big-endian LP64 host.  You've filled them with 0
instead of -1 if I remember my C promotions right.

Otherwise, I have some code to do the same thing, and it looks exactly
the same, which is a good sign :)  I'm too backlogged waiting for
review of things I've already posted to realistically flush the rest of
my queue, so I'm glad to see someone else save me the trouble.

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer


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