Fix to allow EABI compilation.

Make sure to DISCARD new .ARM.attributes and .ARM.ebxidx sections.
This commit is contained in:
matt 2012-08-06 02:14:15 +00:00
parent e6e9862af2
commit 14a27ff97b
10 changed files with 29 additions and 11 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: ldscript,v 1.5 2009/09/26 07:29:55 skrll Exp $ */
/* $NetBSD: ldscript,v 1.6 2012/08/06 02:14:15 matt Exp $ */
OUTPUT_ARCH(arm)
ENTRY(FLASH)
@ -14,6 +14,8 @@ SECTIONS
{
FLASH = 0x00140000;
/DISCARD/ : { *(.ARM.attributes*) *(.ARM.exidx) }
/* Read-only sections, merged into text segment: */
__text_store = FLASH;
.text :

View File

@ -1,4 +1,4 @@
# $NetBSD: Makefile,v 1.2 2008/11/10 20:30:12 cliff Exp $
# $NetBSD: Makefile,v 1.3 2012/08/06 02:14:15 matt Exp $
S= ${.CURDIR}/../../../../..
@ -12,6 +12,8 @@ CPPFLAGS+= -DCONADDR=0x42000000UL
CPPFLAGS+= -DNS16550_AX4
CPPFLAGS+= -DNS16550_FREQ=48000000
CPUFLAGS+= -march=armv4
LDSCRIPT= ${.CURDIR}/ldscript
# SRCS+= gemini.c ns16550.c gemini_mem.c

View File

@ -1,4 +1,4 @@
/* $NetBSD: ldscript,v 1.2 2009/09/26 07:29:55 skrll Exp $ */
/* $NetBSD: ldscript,v 1.3 2012/08/06 02:14:15 matt Exp $ */
OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm",
"elf32-littlearm")
@ -16,6 +16,8 @@ SECTIONS
{
GZBOOT = 0x01600000;
/DISCARD/ : { *(.ARM.attributes*) *(.ARM.exidx) }
/* Read-only sections, merged into text segment: */
__text_store = GZBOOT;
.text :

View File

@ -1,4 +1,4 @@
/* $NetBSD: ldscript,v 1.4 2009/09/26 07:29:55 skrll Exp $ */
/* $NetBSD: ldscript,v 1.5 2012/08/06 02:14:16 matt Exp $ */
OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm",
"elf32-littlearm")
@ -16,6 +16,8 @@ SECTIONS
{
FLASH = 0x80000;
/DISCARD/ : { *(.ARM.attributes*) *(.ARM.exidx) }
/* Read-only sections, merged into text segment: */
__text_store = FLASH;
.text :

View File

@ -1,4 +1,4 @@
/* $NetBSD: ldscript,v 1.7 2009/09/26 07:29:55 skrll Exp $ */
/* $NetBSD: ldscript,v 1.8 2012/08/06 02:14:16 matt Exp $ */
OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm",
"elf32-littlearm")
@ -16,6 +16,8 @@ SECTIONS
{
FLASH = 0xf0080000;
/DISCARD/ : { *(.ARM.attributes*) *(.ARM.exidx) }
/* Read-only sections, merged into text segment: */
__text_store = FLASH;
.text :

View File

@ -1,4 +1,4 @@
# $NetBSD: Makefile.gzboot,v 1.18 2012/07/20 14:59:33 matt Exp $
# $NetBSD: Makefile.gzboot,v 1.19 2012/08/06 02:14:15 matt Exp $
NOMAN= # defined
@ -90,7 +90,7 @@ cleandir distclean: .WAIT cleanlibdir
cleanlibdir:
-rm -rf lib
LDFLAGS= -M -T ${LDSCRIPT}
LDFLAGS= -M -T ${LDSCRIPT} --fix-v4bx
LIBLIST=${LIBSA} ${LIBZ} ${LIBSA} ${LIBKERN} ${LIBSA}

View File

@ -1,4 +1,4 @@
/* $NetBSD: ldscript,v 1.4 2009/09/26 07:29:55 skrll Exp $ */
/* $NetBSD: ldscript,v 1.5 2012/08/06 02:14:16 matt Exp $ */
OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm",
"elf32-littlearm")
@ -20,6 +20,8 @@ SECTIONS
FLASH = 0x00000000;
SDRAM = 0x30000000;
/DISCARD/ : { *(.ARM.attributes*) *(.ARM.exidx) }
/* Read-only sections, merged into text segment: */
/* __text_store = FLASH; */
.text :

View File

@ -1,4 +1,4 @@
/* $NetBSD: ldscript,v 1.4 2009/09/26 07:29:55 skrll Exp $ */
/* $NetBSD: ldscript,v 1.5 2012/08/06 02:14:16 matt Exp $ */
OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm",
"elf32-littlearm")
@ -20,6 +20,8 @@ SECTIONS
FLASH = 0x00000000;
SDRAM = 0x08000000;
/DISCARD/ : { *(.ARM.attributes*) *(.ARM.exidx) }
/* Read-only sections, merged into text segment: */
/* __text_store = FLASH; */
.text :

View File

@ -1,4 +1,4 @@
/* $NetBSD: ldscript,v 1.4 2009/09/26 07:29:55 skrll Exp $ */
/* $NetBSD: ldscript,v 1.5 2012/08/06 02:14:16 matt Exp $ */
OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm",
"elf32-littlearm")
@ -16,6 +16,8 @@ SECTIONS
{
FLASH = 0x100000;
/DISCARD/ : { *(.ARM.attributes*) *(.ARM.exidx) }
/* Read-only sections, merged into text segment: */
__text_store = FLASH;
.text :

View File

@ -1,4 +1,4 @@
/* $NetBSD: ldscript,v 1.3 2009/09/26 07:29:56 skrll Exp $ */
/* $NetBSD: ldscript,v 1.4 2012/08/06 02:14:16 matt Exp $ */
OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm",
"elf32-littlearm")
@ -16,6 +16,8 @@ SECTIONS
{
FLASH = 0x60660000;
/DISCARD/ : { *(.ARM.attributes*) *(.ARM.exidx) }
/* Read-only sections, merged into text segment: */
__text_store = FLASH;
.text :