Re: 8-byte register values on a 32-bit machine

Daniel Jacobowitz
2003-03-12T19:00:13Z

On Wed, Mar 12, 2003 at 02:47:57PM -0500, Paul Koning wrote:
> >>>>> "Daniel" == Daniel Jacobowitz <drow@mvista.com> writes:
>
> Daniel> On Wed, Mar 12, 2003 at 01:29:03PM -0500, Andrew Cagney
> Daniel> wrote:
> >> > >The new code fixes some reported wrong-value-reported bugs in
> >> other >debugging >situations; one of them was reported just
> >> recently. So I don't think >'equalled the functionality of the
> >> old mechanism' is really quite fair.
> >>
> >> True. However, breaking `long long' is a serious regression. If
> >> a developer can't trust that, what can they trust?
>
> Daniel> Historically it hasn't been all that trustable anyway. I
> Daniel> don't have a testcase handy but CORE_ADDRs in GDB backtraces
> Daniel> tend to be wrong, even when they're properly saved to the
> Daniel> stack. Et cetera.
>
> I don't like the way this discussion is going. Perhaps I'm reading
> too much into the words. A quick review of the thread doesn't help
> make it clearer.
>
> We have a large body of code full of long long variables, compiled for
> MIPS using the o32 ABI. So each of those ends up in a register pair.
>
> I'm not aware of any reported problems in dealing with long long
> variables on that platform.
>
> So... if the current proposal has the side effect of breaking that
> working function, on the grounds that it "wasn't all that reliable",
> I've got to ask why that's a valid argument.

I don't know if it would break or not.

> If that's not the current proposal, could you reword it to help
> eliminate the confusion over what you intend?

No one is proposing to leave it broken. To pull up an example from
earlier in the thread, Andrew broke x86-64 when working on the frame
changes. It was an accident, and eventually fixed (by Michal Ludvig, I
might add). I apparently broke long long (in registers) in some of my
DWARF-2 support patches. I'm working to fix it. I'm only one person
and I only have so much time.

--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer