[RFC] Linker script updates for Toshiba MeP

Jeff Johnston jjohnstn@redhat.com
Fri Jul 13 15:58:00 GMT 2007


Yes, please go ahead.

-- Jeff J.

Kevin Buettner wrote:
> I ran into a problem with the linker from a Toshiba MeP toolchain
> overflowing the VEC region while running the GDB testsuite.  The patch
> below fixes the problems that I was seeing.
> 
> Okay to commit?
> 
> [I'm not on the newlib mailing list, so be sure to copy me on any response.]
> 
> Kevin
> 
> libgloss/ChangeLog:
> 
> 	* mep/fmax.ld, mep/gmap_default.ld, mep/min.ld, mep/simple.ld
> 	(.gcc_except_table): Add pattern for .gcc_except_table.*.
> 
> Index: libgloss/mep/fmax.ld
> ===================================================================
> RCS file: /cvs/src/src/libgloss/mep/fmax.ld,v
> retrieving revision 1.1
> diff -u -p -r1.1 fmax.ld
> --- libgloss/mep/fmax.ld	8 Feb 2007 21:22:05 -0000	1.1
> +++ libgloss/mep/fmax.ld	12 Jul 2007 22:21:57 -0000
> @@ -80,7 +80,7 @@ SECTIONS
>    } >RAM1 /* DATA-section */
>    .data1   : { *(.data1) } >RAM1 /* DATA-section */
>    .eh_frame : { KEEP (*(.eh_frame))} >RAM1 /* DATA-section */
> -  .gcc_except_table : { *(.gcc_except_table) } >RAM1 /* DATA-section */
> +  .gcc_except_table : { *(.gcc_except_table) *(.gcc_except_table.*) } >RAM1 /* DATA-section */
>    .dynamic       : { *(.dynamic) } >RAM1 /* DATA-section */
>    .ctors   : 
>    {
> Index: libgloss/mep/gmap_default.ld
> ===================================================================
> RCS file: /cvs/src/src/libgloss/mep/gmap_default.ld,v
> retrieving revision 1.1
> diff -u -p -r1.1 gmap_default.ld
> --- libgloss/mep/gmap_default.ld	8 Feb 2007 21:22:05 -0000	1.1
> +++ libgloss/mep/gmap_default.ld	12 Jul 2007 22:21:57 -0000
> @@ -92,7 +92,7 @@ SECTIONS
>    } >RAM /* DATA-section */
>    .data1   : { *(.data1) } >RAM /* DATA-section */
>    .eh_frame : { KEEP (*(.eh_frame))} >RAM /* DATA-section */
> -  .gcc_except_table : { *(.gcc_except_table) } >RAM /* DATA-section */
> +  .gcc_except_table : { *(.gcc_except_table) *(.gcc_except_table.*) } >RAM /* DATA-section */
>    .dynamic       : { *(.dynamic) } >RAM /* DATA-section */
>    .ctors   : 
>    {
> Index: libgloss/mep/min.ld
> ===================================================================
> RCS file: /cvs/src/src/libgloss/mep/min.ld,v
> retrieving revision 1.1
> diff -u -p -r1.1 min.ld
> --- libgloss/mep/min.ld	8 Feb 2007 21:22:05 -0000	1.1
> +++ libgloss/mep/min.ld	12 Jul 2007 22:21:57 -0000
> @@ -77,7 +77,7 @@ SECTIONS
>    }
>    .data1   : { *(.data1) }
>    .eh_frame : { KEEP (*(.eh_frame)) }
> -  .gcc_except_table : { *(.gcc_except_table) }
> +  .gcc_except_table : { *(.gcc_except_table) *(.gcc_except_table.*) }
>    . = ALIGN(4);
>    __tpbase = .;
>    .based : { *(.based) *(.based.*) *(.gnu.linkonce.based.*) }
> Index: libgloss/mep/simple.ld
> ===================================================================
> RCS file: /cvs/src/src/libgloss/mep/simple.ld,v
> retrieving revision 1.1
> diff -u -p -r1.1 simple.ld
> --- libgloss/mep/simple.ld	8 Feb 2007 21:22:05 -0000	1.1
> +++ libgloss/mep/simple.ld	12 Jul 2007 22:21:57 -0000
> @@ -80,7 +80,7 @@ SECTIONS
>    } >RAM1 /* DATA-section */
>    .data1   : { *(.data1) } >RAM1 /* DATA-section */
>    .eh_frame : { KEEP (*(.eh_frame))} >RAM1 /* DATA-section */
> -  .gcc_except_table : { *(.gcc_except_table) } >RAM1 /* DATA-section */
> +  .gcc_except_table : { *(.gcc_except_table) *(.gcc_except_table.*) } >RAM1 /* DATA-section */
>    .dynamic       : { *(.dynamic) } >RAM1 /* DATA-section */
>    .ctors   : 
>    {
> 



More information about the Newlib mailing list