On 06/30/2011 10:48 AM, Sven Neumann wrote:
Hi,

I am trying to cross-compile a recent git snapshot (e09f970) and ran
into this error:

compile:  
/home/sven/git/buildroot/output/host/usr/bin/arm-unknown-linux-uclibcgnueabi-gcc
 -DHAVE_CONFIG_H -I. -I../include -I../include -I../include/tdep-arm -I. 
-D_GNU_SOURCE -DNDEBUG -O2 -pipe -O2 -g1 -D_LARGEFILE_SOURCE 
-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -fexceptions -Wall -Wsign-compare 
-MT arm/Lresume.lo -MD -MP -MF arm/.deps/Lresume.Tpo -c arm/Lresume.c  -fPIC 
-DPIC -o arm/.libs/Lresume.o
In file included from arm/Lresume.c:4:
arm/Gresume.c: In function '_ULarm_local_resume':
arm/Gresume.c:59: error: expected string literal before ')' token
arm/Gresume.c:91: error: expected string literal before ')' token
make[3]: *** [arm/Lresume.lo] Error 1


Sven

Hi Sven,

Interesting - thanks for reporting this. Which GCC version are you using? It looks like your compiler doesn't like te inline asm - the fact that the third colon is present but the clobber list is empty.

You may try something like this:
--- a/src/arm/Gresume.c
+++ b/src/arm/Gresume.c
@@ -55,7 +55,7 @@ arm_local_resume (unw_addr_space_t as, unw_cursor_t *cursor, void *arg)
        "ldmia %0, {r4-r12, lr}\n"
        "mov sp, r12\n"
        "bx lr\n"
-       : : "r" (regs) :
+       : : "r" (regs)
       );
     }
   else
@@ -87,7 +87,7 @@ arm_local_resume (unw_addr_space_t as, unw_cursor_t *cursor, void *arg)
       asm __volatile__ (
        "mov sp, %0\n"
        "bx %1\n"
-       : : "r" (c->sigcontext_sp), "r" (c->sigcontext_pc) :
+       : : "r" (c->sigcontext_sp), "r" (c->sigcontext_pc)
       );
    }
 #else

I'll prepare a proper patch later today.

Thanks
Ken

_______________________________________________
Libunwind-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/libunwind-devel

Reply via email to