Hello all,
I could use some pointers on romcc. About ten to twelve rom-images have emanated on my workstation and the target boots as it should, but a few times (not every) the output from the emulator has contained pointers on invalid code, such as:
0002:2c5f: 00 ILLEGAL EXTENDED X86 OPCODE!
or
0000:4002: 01 ILLEGAL EXTENDED X86 OPCODE!
Now I took to the measure of testing romcc with the delivered test suite. Most unfortunately this fails as the trailing text demonstrates.
My question is this: Is it me that cannot figure things out properly regarding the use of romcc? Is it gcc-3.3 that is falling short, or does Coreboot apply tailored options to romcc, options that I did not find so far.
Best regards,
Mats Erik Andersson
---
/* Simplified output from test phase utility for romcc. */
as tests/simple_test25.S-O2-mmmx -o tests/simple_test25.o
ld -T tests/ldscript.ld tests/simple_test25.o -o tests/simple_test25.elf
export ALLOC_CHECK_=2;
./romcc -fmax-allocation-passes=8 -fdebug-live-range-conflicts \ -Itests/include -O2 -mmmx -o tests/simple_test26.S-O2-mmmx \ tests/simple_test26.c > tests/simple_test26.debug pass: 0 split_ranges 0 copy 0x80ae080 canidate: 0x80af250 copy regcm: 77c 178
....
pass: 8 split_ranges 8 copy 0x80ae080 simple_test26.c:5.32: warning: edge reg %mm7
....
<built-in>:1.0: simple_test26.c:20.26: too few registers make: *** [tests/simple_test26.S-O2-mmmx] Fel 1