[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Locating mis-compilations (was: [bug #17338] GNU Mach vs. GCC 4.1)
From: |
Samuel Thibault |
Subject: |
Re: Locating mis-compilations (was: [bug #17338] GNU Mach vs. GCC 4.1) |
Date: |
Tue, 19 Sep 2006 14:36:57 +0200 |
User-agent: |
Mutt/1.5.11 |
Hi,
Thomas Schwinge, le Tue 19 Sep 2006 12:47:35 +0200, a écrit :
> On Mon, Aug 07, 2006 at 06:27:11AM +0200, Samuel Thibault wrote:
> > GCC gets smarter and smarter... When seeing this:
> >
> > [...]
>
> As there seems to be general interest: can you explain what techniques
> and tools you used to locate that problem?
>
> elfutils's elfcmp? objdump with shell script hackery? Just reading the
> source code? Pure chance?
Just like the de4x5 probe hangup: inserting things like
* (unsigned long*) 0xb8000 = 'A';
and
* (unsigned long*) 0xb8000 = 'B';
etc. spread around the kernel (+ some while(1); if the symptom is a
systematic machine reboot) and by dichotomy I could find that the
problem was gdt_init. I had it print the values, found them correct, so
as last resort, run gdb kernel, disassemble gdt_init, and then found out
the optimization.
Samuel