Hi,
with the attached fix romcc is able to compile all of auto.c for the freebios2 amd64 targets. To keep all changes clean and visible, they're encapsulated in ifdefs.
Note: This fix alone does not make LinuxBIOS compile on AMD64 completely yet. GCC and ld need the -m32 in some places at least to compile everything.
Is there any need in going 64bit for the LinuxBIOS C payload on Opteron? Since the kernel does long mode switching itself this should not be the case, but maybe there are different opinions.
Next fail I saw after romcc passed auto.c was the following: /home/stepan/freebios2/src/superio/NSC/pc87360/superio.c:61: warning: `pnp_read_enable' defined but not used /tmp/ccLriZXb.s: Assembler messages: /tmp/ccLriZXb.s:243: Error: Incorrect register `%rdx' used with `l' suffix /tmp/ccLriZXb.s:245: Error: Incorrect register `%rdx' used with `l' suffix make: *** [superio.o] Error 1
Greetings, Stefan