aboutsummaryrefslogtreecommitdiff
path: root/libgcc/config/avr
diff options
context:
space:
mode:
authorAndy Hutchinson <hutchinsonandy@aim.com>2008-04-07 23:15:35 +0000
committerAndy Hutchinson <hutchinsonandy@gcc.gnu.org>2008-04-07 23:15:35 +0000
commit47583040f760ccfa6948622033a4835c8b747c5a (patch)
tree7d29825db664e80cfd1115e6b8f86fd735169d0d /libgcc/config/avr
parent06407e30fd47563dabeaa37e033fd99e8bc8181c (diff)
downloadgcc-47583040f760ccfa6948622033a4835c8b747c5a.zip
gcc-47583040f760ccfa6948622033a4835c8b747c5a.tar.gz
gcc-47583040f760ccfa6948622033a4835c8b747c5a.tar.bz2
PR target/34210 PR target/35508 * config.host (avr-*-*): Add avr cpu_type and avr tmake_file. * config/t-avr: New file. Build 16bit libgcc functions.
From-SVN: r133993
Diffstat (limited to 'libgcc/config/avr')
-rw-r--r--libgcc/config/avr/t-avr19
1 files changed, 19 insertions, 0 deletions
diff --git a/libgcc/config/avr/t-avr b/libgcc/config/avr/t-avr
new file mode 100644
index 0000000..ee57072
--- /dev/null
+++ b/libgcc/config/avr/t-avr
@@ -0,0 +1,19 @@
+# Extra 16-bit integer functions.
+intfuncs16 = _absvXX2 _addvXX3 _subvXX3 _mulvXX3 _negvXX2 _ffsXX2 _clzXX2 \
+ _ctzXX2 _popcountXX2 _parityXX2
+hiintfuncs16 = $(subst XX,hi,$(intfuncs16))
+siintfuncs16 = $(subst XX,si,$(intfuncs16))
+
+iter-items := $(hiintfuncs16)
+iter-labels := $(siintfuncs16)
+iter-sizes := $(patsubst %,2,$(siintfuncs16)) $(patsubst %,2,$(hiintfuncs16))
+
+
+include $(srcdir)/empty.mk $(patsubst %,$(srcdir)/siditi-object.mk,$(iter-items))
+libgcc-objects += $(patsubst %,%$(objext),$(hiintfuncs16))
+
+ifeq ($(enable_shared),yes)
+libgcc-s-objects += $(patsubst %,%_s$(objext),$(hiintfuncs16))
+endif
+
+