Files
bsdports/_beta/arm-eabi-gcc92/files/patch-x-gcc-config-arm-t-arm-elf
2024-01-04 23:45:38 +02:00

128 lines
5.1 KiB
Plaintext

--- ./gcc/config/arm/t-arm-elf.orig 2015-01-05 14:33:28.000000000 +0200
+++ ./gcc/config/arm/t-arm-elf 2018-03-04 23:08:01.373328000 +0200
@@ -1,90 +1,34 @@
-# Copyright (C) 1998-2015 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/>.
-
-MULTILIB_OPTIONS = marm/mthumb
-MULTILIB_DIRNAMES = arm thumb
-MULTILIB_EXCEPTIONS =
-MULTILIB_MATCHES =
-
-#MULTILIB_OPTIONS += mcpu=fa526/mcpu=fa626/mcpu=fa606te/mcpu=fa626te/mcpu=fmp626/mcpu=fa726te
-#MULTILIB_DIRNAMES += fa526 fa626 fa606te fa626te fmp626 fa726te
-#MULTILIB_EXCEPTIONS += *mthumb*/*mcpu=fa526 *mthumb*/*mcpu=fa626
-
-#MULTILIB_OPTIONS += march=armv7
-#MULTILIB_DIRNAMES += thumb2
-#MULTILIB_EXCEPTIONS += march=armv7* marm/*march=armv7*
-#MULTILIB_MATCHES += march?armv7=march?armv7-a
-#MULTILIB_MATCHES += march?armv7=march?armv7-r
-#MULTILIB_MATCHES += march?armv7=march?armv7-m
-#MULTILIB_MATCHES += march?armv7=mcpu?cortex-a8
-#MULTILIB_MATCHES += march?armv7=mcpu?cortex-r4
-#MULTILIB_MATCHES += march?armv7=mcpu?cortex-m3
-
-# Not quite true. We can support hard-vfp calling in Thumb2, but how do we
-# express that here? Also, we really need architecture v5e or later
-# (mcrr etc).
-MULTILIB_OPTIONS += mfloat-abi=hard
-MULTILIB_DIRNAMES += fpu
-MULTILIB_EXCEPTIONS += *mthumb/*mfloat-abi=hard*
-#MULTILIB_EXCEPTIONS += *mcpu=fa526/*mfloat-abi=hard*
-#MULTILIB_EXCEPTIONS += *mcpu=fa626/*mfloat-abi=hard*
-
-# MULTILIB_OPTIONS += mcpu=ep9312
-# MULTILIB_DIRNAMES += ep9312
-# MULTILIB_EXCEPTIONS += *mthumb/*mcpu=ep9312*
-#
-# MULTILIB_OPTIONS += mlittle-endian/mbig-endian
-# MULTILIB_DIRNAMES += le be
-# MULTILIB_MATCHES += mbig-endian=mbe mlittle-endian=mle
-#
-# MULTILIB_OPTIONS += mfloat-abi=hard/mfloat-abi=soft
-# MULTILIB_DIRNAMES += fpu soft
-# MULTILIB_EXCEPTIONS += *mthumb/*mfloat-abi=hard*
-#
-# MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork
-# MULTILIB_DIRNAMES += normal interwork
-#
-# MULTILIB_OPTIONS += fno-leading-underscore/fleading-underscore
-# MULTILIB_DIRNAMES += elf under
-#
-# MULTILIB_OPTIONS += mcpu=arm7
-# MULTILIB_DIRNAMES += nofmult
-# MULTILIB_EXCEPTIONS += *mthumb*/*mcpu=arm7*
-# # Note: the multilib_exceptions matches both -mthumb and
-# # -mthumb-interwork
-# #
-# # We have to match all the arm cpu variants which do not have the
-# # multiply instruction and treat them as if the user had specified
-# # -mcpu=arm7. Note that in the following the ? is interpreted as
-# # an = for the purposes of matching command line options.
-# # FIXME: There ought to be a better way to do this.
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7d
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7di
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm70
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm700
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm700i
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm710
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm710c
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7100
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7500
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7500fe
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm6
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm60
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm600
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm610
-# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm620
+# Custom multilibs for ARM
+
+MULTILIB_OPTIONS = mthumb
+MULTILIB_DIRNAMES = thumb
+
+MULTILIB_OPTIONS += march=armv6/march=armv6-m/march=armv7-a/march=armv7-r/march=armv7-m/march=armv7e-m
+MULTILIB_DIRNAMES += armv6 armv6-m armv7-a armv7-r armv7-m armv7e-m
+
+MULTILIB_OPTIONS += mfloat-abi=hard/mfloat-abi=softfp
+MULTILIB_DIRNAMES += hard softfp
+
+MULTILIB_OPTIONS += mfpu=neon/mfpu=vfpv3-d16/mfpu=fpv4-sp-d16/mfpu=fpv5-d16
+MULTILIB_DIRNAMES += neon vfpv3-d16 fpv4-sp-d16 fpv5-d16
+
+MULTILIB_EXCEPTIONS =
+MULTILIB_REQUIRED =
+
+MULTILIB_REQUIRED += mthumb/march=armv6-m
+
+MULTILIB_REQUIRED += mthumb/march=armv7-a/mfloat-abi=hard/mfpu=neon
+MULTILIB_REQUIRED += mthumb/march=armv7-a/mfloat-abi=softfp/mfpu=neon
+MULTILIB_REQUIRED += mthumb/march=armv7-a
+
+MULTILIB_REQUIRED += mthumb/march=armv7-r/mfloat-abi=hard/mfpu=vfpv3-d16
+MULTILIB_REQUIRED += mthumb/march=armv7-r
+
+MULTILIB_REQUIRED += mthumb/march=armv7-m/mfloat-abi=hard/mfpu=fpv4-sp-d16
+MULTILIB_REQUIRED += mthumb/march=armv7-m
+
+MULTILIB_REQUIRED += mthumb/march=armv7e-m/mfloat-abi=hard/mfpu=fpv4-sp-d16
+MULTILIB_REQUIRED += mthumb/march=armv7e-m/mfloat-abi=hard/mfpu=fpv5-d16
+MULTILIB_REQUIRED += mthumb/march=armv7e-m
+
+#EOF