RFA: Add weak definition of __dso_handle for FRV, IQ2000, MN10300 and V850
Jeff Johnston
jjohnstn@redhat.com
Wed May 21 11:14:00 GMT 2008
Please go ahead.
-- Jeff J.
Nick Clifton wrote:
> Hi Jeff,
>
> Please may I apply the patch below which adds a weak definition of
> the __dso_handle symbol to the FRV, IQ2000, MN10300 and V850 ports.
> This allows these ports to compile C++ programs, and in particular
> the G++ testsuite, when they are using NEWLIB rather than GLIBC.
>
> Cheers
> Nick
>
> newlib/ChangeLog
> 2008-05-20 Nick Clifton <nickc@redhat.com>
>
> * libc/sys/sysnecv850/crt0.S (___dso_handle): Define (weak).
>
> libgloss/ChangeLog
> 2008-05-20 Nick Clifton <nickc@redhat.com>
>
> * iq2000/crt0.S (__dso_handle): Define (weak).
> * frv/crt0.S (__dso_handle): Define (weak).
> * mn10300/crt0.S (___dso_handle): Define (weak).
>
> Index: newlib/libc/sys/sysnecv850/crt0.S
> ===================================================================
> RCS file: /cvs/src/src/newlib/libc/sys/sysnecv850/crt0.S,v
> retrieving revision 1.3
> diff -c -3 -p -r1.3 crt0.S
> *** newlib/libc/sys/sysnecv850/crt0.S 31 Jul 2003 16:21:20 -0000 1.3
> --- newlib/libc/sys/sysnecv850/crt0.S 20 May 2008 07:01:45 -0000
> *************** _start:
> *** 60,67 ****
> jarl _main, r31
> mov r10, r6
> jarl _exit, r31
> -
> # endif
>
> .section .stack
> _stack: .long 1
> --- 60,72 ----
> jarl _main, r31
> mov r10, r6
> jarl _exit, r31
> # endif
>
> .section .stack
> _stack: .long 1
> +
> + .section .data
> + .global ___dso_handle
> + .weak ___dso_handle
> + ___dso_handle:
> + .long 0
> Index: libgloss/frv/crt0.S
> ===================================================================
> RCS file: /cvs/src/src/libgloss/frv/crt0.S,v
> retrieving revision 1.3
> diff -c -3 -p -r1.3 crt0.S
> *** libgloss/frv/crt0.S 24 Mar 2004 01:11:24 -0000 1.3
> --- libgloss/frv/crt0.S 20 May 2008 07:01:45 -0000
> *************** EXT(__frv_fix_usrptrs):
> *** 268,270 ****
> --- 268,276 ----
> .Lret3: ret
> .Lend3:
> .size EXT(__frv_fix_usrptrs),.Lend2-EXT(__frv_fix_usrptrs)
> +
> + .section .data
> + .global __dso_handle
> + .weak __dso_handle
> + __dso_handle:
> + .long 0
> Index: libgloss/iq2000/crt0.S
> ===================================================================
> RCS file: /cvs/src/src/libgloss/iq2000/crt0.S,v
> retrieving revision 1.1
> diff -c -3 -p -r1.1 crt0.S
> *** libgloss/iq2000/crt0.S 6 Jun 2003 16:07:57 -0000 1.1
> --- libgloss/iq2000/crt0.S 20 May 2008 07:01:45 -0000
> *************** _start:
> *** 54,56 ****
> --- 54,62 ----
> xor %5,%5,%5
> jal exit # all done, no need to return or
> or %4,%0,%2 # exit with main's return value
> +
> + .section .data
> + .global __dso_handle
> + .weak __dso_handle
> + __dso_handle:
> + .long 0
> Index: libgloss/mn10300/crt0.S
> ===================================================================
> RCS file: /cvs/src/src/libgloss/mn10300/crt0.S,v
> retrieving revision 1.1
> diff -c -3 -p -r1.1 crt0.S
> *** libgloss/mn10300/crt0.S 17 Mar 2000 22:48:51 -0000 1.1
> --- libgloss/mn10300/crt0.S 20 May 2008 07:01:45 -0000
> *************** _start:
> *** 56,58 ****
> --- 56,64 ----
>
> .section .stack
> _stack: .long 1
> +
> + .section .data
> + .global ___dso_handle
> + .weak ___dso_handle
> + ___dso_handle:
> + .long 0
>
More information about the Newlib
mailing list