On Thu, Feb 26, 2009 at 01:53:04PM -0500, Ward Vandewege wrote:
On Mon, Feb 23, 2009 at 09:06:01PM -0500, Kevin O'Connor wrote:
Okay - I'm at a loss to explain what's going on. I wonder if there is a compiler bug. Can you place the out/rom16.o and out/rom32.o files somewhere where I can grab them? Also, the patch below will help with debugging.
Sure:
http://ward.vandewege.net/coreboot/m2a-vm/rom16.o http://ward.vandewege.net/coreboot/m2a-vm/rom32.o
Wow, this looks like a compiler bug. When disassembling I see:
src/util.c:226 f1597: 58 popl %eax f1598: 85 ed testl %ebp,%ebp f159a: 7e 1c jle f15b8 <get_keystroke+0xe4>
But, %ebp doesn't seem to be set before this point. Further, the 'msec' parameter should be %eax at the start of the fuction, but %eax is clobbered near the top of the function.
What version of gcc are you using?
I'm currently using FC10:
$ gcc --version gcc (GCC) 4.3.2 20081105 (Red Hat 4.3.2-7) Copyright (C) 2008 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-Kevin