[<<][c][>>][..]
Sat Jun 4 16:41:20 CEST 2011

Synthetic target fix

After checking what ".type" and ".size" actually mean (they annotate a
symbol with type and size), it seems likely that what is meant here is
to just refer to the "cyg_hal_sys_restore" symbol, and not the
"__restore" symbol?  I.e. the code probably has changed at some point
to incorporate a name change, but somebody forgot to update that
directive.  It's not necessary for the code to work so it is only
detected now that binutils got stricter about it's input.

If this is the case, see the fix below

Cheers,
Tom



? synth_fix.patch
Index: syscall-i386-linux-1.0.S
===================================================================
RCS file: /cvs/ecos/ecos/packages/hal/synth/i386linux/current/src/syscall-i386-linux-1.0.S,v
retrieving revision 1.13
diff -u -8 -p -r1.13 syscall-i386-linux-1.0.S
--- syscall-i386-linux-1.0.S	23 Aug 2009 11:34:45 -0000	1.13
+++ syscall-i386-linux-1.0.S	4 Jun 2011 14:40:09 -0000
@@ -439,20 +439,20 @@ SYSCALL5(ipc)
 // via another system call.         
 
         .align 16
         .global cyg_hal_sys_restore_rt
 cyg_hal_sys_restore_rt:
         movl    $SYS_rt_sigreturn, %eax
         int     $0x80
 1:              
-        .type __restore_rt,@function
-        .size __restore_rt,1b - __restore_rt
+        .type cyg_hal_sys_restore_rt,@function
+        .size cyg_hal_sys_restore_rt,1b - cyg_hal_sys_restore_rt
                 
         .align 8
         .global cyg_hal_sys_restore
 cyg_hal_sys_restore:
         popl    %eax
         movl    $SYS_sigreturn, %eax
         int     $0x80
 1:              
-        .type __restore,@function
-        .size __restore,1b - __restore
+        .type cyg_hal_sys_restore,@function
+        .size cyg_hal_sys_restore,1b - cyg_hal_sys_restore




[Reply][About]
[<<][c][>>][..]