From: Andy Hutchinson Date: Mon, 7 Apr 2008 23:15:35 +0000 (+0000) Subject: PR target/34210 PR target/35508 * config.host (avr-*-*): Add avr cpu_type and avr... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=47583040f760ccfa6948622033a4835c8b747c5a;p=gcc.git 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 --- diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 589f44b5369..ad0bf65f4ed 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,10 @@ +2008-04-07 Andy Hutchinson + + 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. + 2008-03-02 Jakub Jelinek PR target/35401 diff --git a/libgcc/config.host b/libgcc/config.host index 9496842f9bb..d695b44182d 100644 --- a/libgcc/config.host +++ b/libgcc/config.host @@ -77,6 +77,9 @@ strongarm*-*-*) arm*-*-*) cpu_type=arm ;; +avr-*-*) + cpu_type=avr + ;; bfin*-*) cpu_type=bfin ;; @@ -243,6 +246,8 @@ arm*-*-kaos*) avr-*-rtems*) ;; avr-*-*) + # Make HImode functions for AVR + tmake_file=${cpu_type}/t-avr ;; bfin*-elf*) ;; diff --git a/libgcc/config/avr/t-avr b/libgcc/config/avr/t-avr new file mode 100644 index 00000000000..ee570724171 --- /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 + +