Kyösti Mälkki (kyosti.malkki@gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/5349
-gerrit
commit a8eadb527e793d887ba73e5478ea614734cd72b6 Author: Kyösti Mälkki kyosti.malkki@gmail.com Date: Fri Mar 7 10:40:21 2014 +0200
ROMCC: Trigger internal compiler failure and apply the workaround
These boards first failed when attempting to change print_err() from direct function call to console_tx_XX() to a code block in the form of
do { if (y) console_tx_XX(x); } while(0)
Removing the label dummy_romcc_workaround_label added here will trigger the following compiler error for the two boards:
Internal compiler error: no edge to block->last->next
Change-Id: I997adfaf586d7fa2096401dd574b07ce676d0ac6 Signed-off-by: Kyösti Mälkki kyosti.malkki@gmail.com --- src/mainboard/digitallogic/msm586seg/romstage.c | 5 +++++ src/mainboard/technologic/ts5300/romstage.c | 5 +++++ 2 files changed, 10 insertions(+)
diff --git a/src/mainboard/digitallogic/msm586seg/romstage.c b/src/mainboard/digitallogic/msm586seg/romstage.c index 9f3da08..e67ec68 100644 --- a/src/mainboard/digitallogic/msm586seg/romstage.c +++ b/src/mainboard/digitallogic/msm586seg/romstage.c @@ -169,6 +169,11 @@ static void main(unsigned long bist) print_err("HI THERE!\n"); // sizemem(); staticmem(); + +/* Void warranty when label is removed. */ +dummy_romcc_workaround_label: + do { } while (0); + print_err("c60 is "); print_err_hex16(*(unsigned short *)0xfffefc60); print_err("\n");
diff --git a/src/mainboard/technologic/ts5300/romstage.c b/src/mainboard/technologic/ts5300/romstage.c index 6806187..453cecc 100644 --- a/src/mainboard/technologic/ts5300/romstage.c +++ b/src/mainboard/technologic/ts5300/romstage.c @@ -153,6 +153,11 @@ static void main(unsigned long bist)
print_err("Technologic Systems TS5300 - http://www.embeddedx86.com/%5Cn"); staticmem(); + +/* Void warranty when label is removed. */ +dummy_romcc_workaround_label: + do { } while (0); + print_err("Memory initialized: 32MB\n");
#if 1