i386: Change inline asm global symbols to local
authorGraeme Russ <graeme.russ@gmail.com>
Sun, 23 Aug 2009 02:59:46 +0000 (12:59 +1000)
committerTom Rix <Tom.Rix@windriver.com>
Sat, 3 Oct 2009 14:04:09 +0000 (09:04 -0500)
gcc 4.3.2 optimiser creates multiple copies of inline asm (who knows why)
Remove use of global names for labels to prevent 'symbol already defined'
errors

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
board/eNET/eNET.c
cpu/i386/sc520/sc520.c

index 57dd635..27dabaa 100644 (file)
@@ -51,9 +51,9 @@ void init_sc520_enet (void)
 
        /* wait at least one millisecond */
        asm("movl       $0x2000,%%ecx\n"
-           "wait_loop: pushl %%ecx\n"
+           "0: pushl %%ecx\n"
            "popl       %%ecx\n"
-           "loop wait_loop\n": : : "ecx");
+           "loop 0b\n": : : "ecx");
 
        /* turn on the SDRAM write buffer */
        write_mmcr_byte(SC520_DBCTL, 0x11);
index ae3b500..1d79210 100644 (file)
@@ -109,9 +109,9 @@ void init_sc520(void)
 
        /* wait at least one millisecond */
        asm("movl       $0x2000,%%ecx\n"
-           "wait_loop: pushl %%ecx\n"
+           "0:         pushl %%ecx\n"
            "popl       %%ecx\n"
-           "loop wait_loop\n": : : "ecx");
+           "loop 0b\n": : : "ecx");
 
        /* turn on the SDRAM write buffer */
        write_mmcr_byte(SC520_DBCTL, 0x11);