aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorMatt Jacobson <mhjacobson@me.com>2021-12-02 21:51:28 -0500
committerJeff Law <jeffreyalaw@gmail.com>2021-12-02 21:53:13 -0500
commit711084c9450c49b372e177d94ae99fc642e1cc73 (patch)
tree7a41f2716580c89e35cca4acf0db0573640fb1d2 /gcc/config
parentea6ef320b0d7e6a9335691af8c8d1daae396d2a7 (diff)
downloadgcc-711084c9450c49b372e177d94ae99fc642e1cc73.zip
gcc-711084c9450c49b372e177d94ae99fc642e1cc73.tar.gz
gcc-711084c9450c49b372e177d94ae99fc642e1cc73.tar.bz2
build: Implement --with-multilib-list for avr target
gcc * config.gcc: For the AVR target, populate TM_MULTILIB_CONFIG. * config/avr/genmultilib.awk: Add ability to filter generated multilib list. * config/avr/t-avr: Pass TM_MULTILIB_CONFIG to genmultilib.awk. * configure.ac: Update help string for --with-multilib-list. * configure: Regenerate.
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/avr/genmultilib.awk16
-rw-r--r--gcc/config/avr/t-avr1
2 files changed, 17 insertions, 0 deletions
diff --git a/gcc/config/avr/genmultilib.awk b/gcc/config/avr/genmultilib.awk
index efe41dd..c5f6ed0 100644
--- a/gcc/config/avr/genmultilib.awk
+++ b/gcc/config/avr/genmultilib.awk
@@ -67,6 +67,16 @@ BEGIN {
dir_long_double = "long-double" (96 - with_long_double)
opt_long_double = "mlong-double=" (96 - with_long_double)
+
+ if (with_multilib_list != "")
+ {
+ split(with_multilib_list, multilib_list, ",")
+
+ for (i in multilib_list)
+ {
+ multilibs[multilib_list[i]] = 1
+ }
+ }
}
##################################################################
@@ -137,6 +147,9 @@ BEGIN {
if (core == "avr1")
next
+ if (with_multilib_list != "" && !(core in multilibs))
+ next
+
option[core] = "mmcu=" core
m_options = m_options m_sep option[core]
@@ -150,6 +163,9 @@ BEGIN {
if (core == "avr1")
next
+ if (with_multilib_list != "" && !(core in multilibs))
+ next
+
opts = option[core]
# split device specific feature list
diff --git a/gcc/config/avr/t-avr b/gcc/config/avr/t-avr
index 06a0a3a..3120b19 100644
--- a/gcc/config/avr/t-avr
+++ b/gcc/config/avr/t-avr
@@ -127,6 +127,7 @@ t-multilib-avr: $(srcdir)/config/avr/genmultilib.awk \
-v HAVE_LONG_DOUBLE64=$(HAVE_LONG_DOUBLE64) \
-v with_double=$(WITH_DOUBLE) \
-v with_long_double=$(WITH_LONG_DOUBLE) \
+ -v with_multilib_list=$(TM_MULTILIB_CONFIG) \
-f $< $< $(AVR_MCUS) > $@
include t-multilib-avr