diff options
Diffstat (limited to 'gcc-4.4.3/gcc/config/arm')
-rw-r--r-- | gcc-4.4.3/gcc/config/arm/arm.h | 4 | ||||
-rw-r--r-- | gcc-4.4.3/gcc/config/arm/eabi.h | 132 | ||||
-rw-r--r-- | gcc-4.4.3/gcc/config/arm/eabi.opt | 23 | ||||
-rw-r--r-- | gcc-4.4.3/gcc/config/arm/linux-eabi.h | 25 | ||||
-rw-r--r-- | gcc-4.4.3/gcc/config/arm/t-arm-elf | 4 | ||||
-rw-r--r-- | gcc-4.4.3/gcc/config/arm/t-linux-androideabi | 10 | ||||
-rw-r--r-- | gcc-4.4.3/gcc/config/arm/t-mlib-armv7a | 4 | ||||
-rw-r--r-- | gcc-4.4.3/gcc/config/arm/t-mlib-mandroid | 5 |
8 files changed, 36 insertions, 171 deletions
diff --git a/gcc-4.4.3/gcc/config/arm/arm.h b/gcc-4.4.3/gcc/config/arm/arm.h index 602973828..a413dd323 100644 --- a/gcc-4.4.3/gcc/config/arm/arm.h +++ b/gcc-4.4.3/gcc/config/arm/arm.h @@ -2865,9 +2865,9 @@ enum arm_builtins ARM_BUILTIN_MAX = ARM_BUILTIN_NEON_BASE /* FIXME: Wrong! */ }; -/* Do not emit .note.GNU-stack by default. */ +/* Do emit .note.GNU-stack by default. */ #ifndef NEED_INDICATE_EXEC_STACK -#define NEED_INDICATE_EXEC_STACK 0 +#define NEED_INDICATE_EXEC_STACK 1 #endif #endif /* ! GCC_ARM_H */ diff --git a/gcc-4.4.3/gcc/config/arm/eabi.h b/gcc-4.4.3/gcc/config/arm/eabi.h deleted file mode 100644 index e312cbc65..000000000 --- a/gcc-4.4.3/gcc/config/arm/eabi.h +++ /dev/null @@ -1,132 +0,0 @@ -/* Configuration file for ARM EABI targets. - Copyright (C) 2008 - Free Software Foundation, Inc. - Contributed by Doug Kwan (dougkwan@google.com) - - This file is part of GCC. - - GCC is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 3, or (at your - option) any later version. - - GCC is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public - License for more details. - - You should have received a copy of the GNU General Public License - along with GCC; see the file COPYING3. If not see - <http://www.gnu.org/licenses/>. */ - -/* This file contains macro overrides for EABI targets. */ - -#undef TARGET_OS_CPP_BUILTINS -#define TARGET_OS_CPP_BUILTINS() \ - do \ - { \ - TARGET_BPABI_CPP_BUILTINS (); \ - if (TARGET_ANDROID) \ - builtin_define ("__ANDROID__"); \ - } \ - while (false) - -#undef SUBSUBTARGET_EXTRA_SPECS -#define SUBSUBTARGET_EXTRA_SPECS \ - { "link_android", ANDROID_LINK_SPEC }, \ - { "link_default", BPABI_LINK_SPEC }, \ - { "cc1_android", ANDROID_CC1_SPEC }, \ - { "cc1_default", CC1_DEFAULT_SPEC }, \ - { "cc1plus_android", ANDROID_CC1PLUS_SPEC }, \ - { "cc1plus_default", CC1PLUS_DEFAULT_SPEC }, \ - { "lib_android", ANDROID_LIB_SPEC }, \ - { "lib_default", LIB_DEFAULT_SPEC }, \ - { "startfile_android", ANDROID_STARTFILE_SPEC }, \ - { "startfile_default", UNKNOWN_ELF_STARTFILE_SPEC }, \ - { "endfile_android", ANDROID_ENDFILE_SPEC }, \ - { "endfile_default", UNKNOWN_ELF_ENDFILE_SPEC }, \ - -#undef ANDROID_LINK_SPEC -#define ANDROID_LINK_SPEC \ -"%{mbig-endian:-EB} %{mlittle-endian:-EL} " \ -"%{static:-Bstatic} %{shared:-shared} %{symbolic:-Bsymbolic} " \ -"%{!static:" \ - "%{shared: -Bsymbolic} " \ - "%{!shared:" \ - "-Bdynamic " \ - "%{rdynamic:-export-dynamic} " \ - "%{!dynamic-linker:-dynamic-linker /system/bin/linker}}} " \ -"-X" SUBTARGET_EXTRA_LINK_SPEC - -/* Override LINK_SPEC in bpabi.h. */ -#undef LINK_SPEC -#define LINK_SPEC \ -"%{mandroid: %(link_android) ;" \ -" : %(link_default)}" - -/* Android uses "-fno-exceptions -fpic -fno-short-enums -mthumb-interwork" by - default. -mthumb-interwork is implied by EABI. */ -#undef ANDROID_CC1_SPEC -#define ANDROID_CC1_SPEC \ -"%{!fexceptions:-fno-exceptions} " \ -"%{!fno-pic:%{!fno-PIC:-fpic}} " \ -"%{!fshort-enums:-fno-short-enums} " - -/* Default CC1_SPEC as in arm.h. */ -#undef CC1_DEFAULT_SPEC -#define CC1_DEFAULT_SPEC "" - -#undef CC1_SPEC -#define CC1_SPEC \ -"%{mandroid: %(cc1_android) ;" \ -" : %(cc1_default)}" - -/* Android uses -fno-rtti by default. */ -#undef ANDROID_CC1PLUS_SPEC -#define ANDROID_CC1PLUS_SPEC "%{!frtti:-fno-rtti}" - -/* Default CC1PLUS_SPEC as in gcc.c. */ -#undef CC1PLUS_DEFAULT_SPEC -#define CC1PLUS_DEFAULT_SPEC "" - -#undef CC1PLUS_SPEC -#define CC1PLUS_SPEC \ -"%{mandroid: %(cc1plus_android) ;" \ -" : %(cc1plus_default)}" - -#undef ANDROID_LIB_SPEC -#define ANDROID_LIB_SPEC "-lc %{!static:-ldl}" - -/* Default LIB_SPEC as in gcc.c. */ -#undef LIB_DEFAULT_SPEC -#define LIB_DEFAULT_SPEC \ -"%{!shared:%{g*:-lg} %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}}" - -#undef LIB_SPEC -#define LIB_SPEC \ -"%{mandroid: %(lib_android) ;" \ -" : %(lib_default)}" - -#undef ANDROID_STARTFILE_SPEC -#define ANDROID_STARTFILE_SPEC \ -"%{!shared:" \ - "%{static: crtbegin_static%O%s ;" \ - " : crtbegin_dynamic%O%s}}" - -/* Override STARTFILE_SPEC in unknown-elf.h. */ -#undef STARTFILE_SPEC -#define STARTFILE_SPEC \ -"%{mandroid: %(startfile_android) ;" \ -" : %(startfile_default)}" - -#undef ANDROID_ENDFILE_SPEC -#define ANDROID_ENDFILE_SPEC "%{!shared:crtend_android%O%s}" - -/* Override ENDFILE_SPEC in unknown-elf.h. */ -#undef ENDFILE_SPEC -#define ENDFILE_SPEC \ -"%{mandroid: %(endfile_android) ;" \ -" : %(endfile_default)}" - -#undef NEED_INDICATE_EXEC_STACK -#define NEED_INDICATE_EXEC_STACK 1 diff --git a/gcc-4.4.3/gcc/config/arm/eabi.opt b/gcc-4.4.3/gcc/config/arm/eabi.opt deleted file mode 100644 index 0ea58bd6e..000000000 --- a/gcc-4.4.3/gcc/config/arm/eabi.opt +++ /dev/null @@ -1,23 +0,0 @@ -; EABI specific options for ARM port of the compiler. - -; Copyright (C) 2008 Free Software Foundation, Inc. -; -; This file is part of GCC. -; -; GCC is free software; you can redistribute it and/or modify it under -; the terms of the GNU General Public License as published by the Free -; Software Foundation; either version 3, or (at your option) any later -; version. -; -; GCC is distributed in the hope that it will be useful, but WITHOUT ANY -; WARRANTY; without even the implied warranty of MERCHANTABILITY or -; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -; for more details. -; -; You should have received a copy of the GNU General Public License -; along with GCC; see the file COPYING3. If not see -; <http://www.gnu.org/licenses/>. - -mandroid -Target Report Mask(ANDROID) -Generate code for the Android operating system. diff --git a/gcc-4.4.3/gcc/config/arm/linux-eabi.h b/gcc-4.4.3/gcc/config/arm/linux-eabi.h index 4174d70db..6dd44436a 100644 --- a/gcc-4.4.3/gcc/config/arm/linux-eabi.h +++ b/gcc-4.4.3/gcc/config/arm/linux-eabi.h @@ -66,7 +66,30 @@ /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to use the GNU/Linux version, not the generic BPABI version. */ #undef LINK_SPEC -#define LINK_SPEC LINUX_TARGET_LINK_SPEC +#define LINK_SPEC \ + LINUX_OR_ANDROID_LD (LINUX_TARGET_LINK_SPEC, \ + LINUX_TARGET_LINK_SPEC " " ANDROID_LINK_SPEC) + +#undef CC1_SPEC +#define CC1_SPEC \ + LINUX_OR_ANDROID_CC (LINUX_TARGET_CC1_SPEC, \ + LINUX_TARGET_CC1_SPEC " " ANDROID_CC1_SPEC) + +#define CC1PLUS_SPEC \ + LINUX_OR_ANDROID_CC ("", ANDROID_CC1PLUS_SPEC) + +#undef LIB_SPEC +#define LIB_SPEC \ + LINUX_OR_ANDROID_LD (LINUX_TARGET_LIB_SPEC, \ + LINUX_TARGET_LIB_SPEC " " ANDROID_LIB_SPEC) + +#undef STARTFILE_SPEC +#define STARTFILE_SPEC \ + LINUX_OR_ANDROID_LD (LINUX_TARGET_STARTFILE_SPEC, ANDROID_STARTFILE_SPEC) + +#undef ENDFILE_SPEC +#define ENDFILE_SPEC \ + LINUX_OR_ANDROID_LD (LINUX_TARGET_ENDFILE_SPEC, ANDROID_ENDFILE_SPEC) /* Use the default LIBGCC_SPEC, not the version in linux-elf.h, as we do not use -lfloat. */ diff --git a/gcc-4.4.3/gcc/config/arm/t-arm-elf b/gcc-4.4.3/gcc/config/arm/t-arm-elf index b99b9ee4b..9f6068258 100644 --- a/gcc-4.4.3/gcc/config/arm/t-arm-elf +++ b/gcc-4.4.3/gcc/config/arm/t-arm-elf @@ -47,10 +47,6 @@ MULTILIB_MATCHES += $(MLMATCH_armv7a) # MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork # MULTILIB_DIRNAMES += normal interwork -MULTILIB_OPTIONS += $(MLOPT_mandroid) -MULTILIB_DIRNAMES += $(MLDIR_mandroid) -MULTILIB_EXCEPTIONS += $(MLEXCEPT_mandroid) - # MULTILIB_OPTIONS += fno-leading-underscore/fleading-underscore # MULTILIB_DIRNAMES += elf under # diff --git a/gcc-4.4.3/gcc/config/arm/t-linux-androideabi b/gcc-4.4.3/gcc/config/arm/t-linux-androideabi new file mode 100644 index 000000000..8f1307c55 --- /dev/null +++ b/gcc-4.4.3/gcc/config/arm/t-linux-androideabi @@ -0,0 +1,10 @@ +MULTILIB_OPTIONS = march=armv7-a mthumb +MULTILIB_DIRNAMES = armv7-a thumb +MULTILIB_EXCEPTIONS = +MULTILIB_MATCHES = +MULTILIB_OSDIRNAMES = + +# The "special" multilib can be used to build native applications for Android, +# as opposed to native shared libraries that are then called via JNI. +#MULTILIB_OPTIONS += tno-android-cc +#MULTILIB_DIRNAMES += special diff --git a/gcc-4.4.3/gcc/config/arm/t-mlib-armv7a b/gcc-4.4.3/gcc/config/arm/t-mlib-armv7a deleted file mode 100644 index c18407f61..000000000 --- a/gcc-4.4.3/gcc/config/arm/t-mlib-armv7a +++ /dev/null @@ -1,4 +0,0 @@ -# Config armv7-a multilib. -MLOPT_armv7a = march=armv7-a -MLDIR_armv7a = armv7a -MLMATCH_armv7a = march?armv7-a=mcpu?cortex-a8 diff --git a/gcc-4.4.3/gcc/config/arm/t-mlib-mandroid b/gcc-4.4.3/gcc/config/arm/t-mlib-mandroid deleted file mode 100644 index dd4b24344..000000000 --- a/gcc-4.4.3/gcc/config/arm/t-mlib-mandroid +++ /dev/null @@ -1,5 +0,0 @@ -# Config mandroid multilib. -# -mandroind implies -mthumb-interwork. -MLOPT_mandroid = mandroid -MLDIR_mandroid = android -MLEXCEPT_mandroid = *mthumb-interwork/*mandroid* |