Module Name:    src
Committed By:   matt
Date:           Mon Aug  6 00:24:14 UTC 2012

Modified Files:
        src/external/gpl3/gcc/dist/gcc/config/arm: bpabi.h netbsd-eabi.h
            t-netbsd-eabi
Added Files:
        src/external/gpl3/gcc/dist/gcc/config/arm: bpabi-netbsd.c

Log Message:
a few more fixes (make unwinding correct for EABI)
improve link spec to with fix-v4bx and emulations
Add bpabi-netbsd.c to resolve problem with bpabi.c conflicting with bpabi.S


To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 \
    src/external/gpl3/gcc/dist/gcc/config/arm/bpabi-netbsd.c
cvs rdiff -u -r1.2 -r1.3 src/external/gpl3/gcc/dist/gcc/config/arm/bpabi.h
cvs rdiff -u -r1.1 -r1.2 \
    src/external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h \
    src/external/gpl3/gcc/dist/gcc/config/arm/t-netbsd-eabi

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/gpl3/gcc/dist/gcc/config/arm/bpabi.h
diff -u src/external/gpl3/gcc/dist/gcc/config/arm/bpabi.h:1.2 src/external/gpl3/gcc/dist/gcc/config/arm/bpabi.h:1.3
--- src/external/gpl3/gcc/dist/gcc/config/arm/bpabi.h:1.2	Sun Aug  5 04:10:18 2012
+++ src/external/gpl3/gcc/dist/gcc/config/arm/bpabi.h	Mon Aug  6 00:24:13 2012
@@ -28,7 +28,10 @@
 #define TARGET_BPABI (TARGET_AAPCS_BASED)
 
 /* BPABI targets use EABI frame unwinding tables.  */
+#undef MUST_USE_SJLJ_EXCEPTIONS
 #define TARGET_UNWIND_INFO 1
+#undef ARM_EABI_UNWIND_TABLES
+#define ARM_EABI_UNWIND_TABLES 1
 
 /* Section 4.1 of the AAPCS requires the use of VFP format.  */
 #undef  FPUTYPE_DEFAULT

Index: src/external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h
diff -u src/external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h:1.1 src/external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h:1.2
--- src/external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h:1.1	Sun Aug  5 04:10:18 2012
+++ src/external/gpl3/gcc/dist/gcc/config/arm/netbsd-eabi.h	Mon Aug  6 00:24:13 2012
@@ -37,9 +37,9 @@
    config.gcc for big endian configurations.  */
 #undef  TARGET_LINKER_EMULATION
 #if TARGET_ENDIAN_DEFAULT == MASK_BIG
-#define TARGET_LINKER_EMULATION "armelfb_nbsd_eabi"
+#define TARGET_LINKER_EMULATION "-m armelfb_nbsd_eabi"
 #else
-#define TARGET_LINKER_EMULATION "armelf_nbsd_eabi"
+#define TARGET_LINKER_EMULATION "-m armelf_nbsd_eabi"
 #endif
 
 #undef MULTILIB_DEFAULTS
@@ -80,11 +80,15 @@
   { "subtarget_extra_asm_spec",	SUBTARGET_EXTRA_ASM_SPEC }, \
   { "subtarget_asm_float_spec", SUBTARGET_ASM_FLOAT_SPEC }, \
   { "netbsd_link_spec",		NETBSD_LINK_SPEC_ELF },	\
+  { "be8_link_spec",		BE8_LINK_SPEC }, \
+  { "target_fix_v4bx_spec",	TARGET_FIX_V4BX_SPEC }, \
   { "netbsd_entry_point",	NETBSD_ENTRY_POINT },
 
 #define NETBSD_ENTRY_POINT "__start"
 
 #undef LINK_SPEC
 #define LINK_SPEC \
-  "-X %{mbig-endian:-EB} %{mlittle-endian:-EL} \
+  "-X %{mbig-endian:-EB -m armelfb_nbsd_eabi} \
+   %{mlittle-endian:-EL -m armelf_nbsd_eabi} \
+   %(be8_link_spec) %(target_fix_v4bx_spec) \
    %(netbsd_link_spec)"
Index: src/external/gpl3/gcc/dist/gcc/config/arm/t-netbsd-eabi
diff -u src/external/gpl3/gcc/dist/gcc/config/arm/t-netbsd-eabi:1.1 src/external/gpl3/gcc/dist/gcc/config/arm/t-netbsd-eabi:1.2
--- src/external/gpl3/gcc/dist/gcc/config/arm/t-netbsd-eabi:1.1	Sun Aug  5 04:10:18 2012
+++ src/external/gpl3/gcc/dist/gcc/config/arm/t-netbsd-eabi	Mon Aug  6 00:24:13 2012
@@ -26,3 +26,10 @@
 #	_fixsfsi _fixunssfsi
 LIB1ASMFUNCS += \
 	_floatundisf
+
+# Add the BPABI C functions.
+LIB2FUNCS_EXTRA = $(srcdir)/config/arm/bpabi-netbsd.c \
+		  $(srcdir)/config/arm/unaligned-funcs.c
+
+# we don't have this
+LIB2FUNCS_STATIC_EXTRA = 

Added files:

Index: src/external/gpl3/gcc/dist/gcc/config/arm/bpabi-netbsd.c
diff -u /dev/null src/external/gpl3/gcc/dist/gcc/config/arm/bpabi-netbsd.c:1.1
--- /dev/null	Mon Aug  6 00:24:14 2012
+++ src/external/gpl3/gcc/dist/gcc/config/arm/bpabi-netbsd.c	Mon Aug  6 00:24:13 2012
@@ -0,0 +1 @@
+#include "bpabi.c"

Reply via email to