diff options
author | Chao-ying Fu <fu@mips.com> | 2007-09-17 22:18:13 +0000 |
---|---|---|
committer | Chao-ying Fu <chaoyingfu@gcc.gnu.org> | 2007-09-17 22:18:13 +0000 |
commit | 8d2a9e0ee289edadb94f6894c677fbb3463b8332 (patch) | |
tree | b78141d7b773b125dccacd9b26b68b4b0ab15643 /libgcc/fixed-obj.mk | |
parent | 154e4a0a8d367972b61eb3fd96cc8e4bb7572ea9 (diff) | |
download | gcc-8d2a9e0ee289edadb94f6894c677fbb3463b8332.zip gcc-8d2a9e0ee289edadb94f6894c677fbb3463b8332.tar.gz gcc-8d2a9e0ee289edadb94f6894c677fbb3463b8332.tar.bz2 |
fixed-obj.mk: New file to support fine-grain fixed-point functions.
* fixed-obj.mk: New file to support fine-grain fixed-point functions.
* Makefile.in (fixed_point): Define.
Check if fixed_point is yes to build support functions.
* configure.ac: Check for fixed_point support.
* configure: Regenerated.
* gen-fixed.sh: New file to generate lists of fixed-point labels,
funcs, modes, from, to.
Co-Authored-By: Nigel Stephens <nigel@mips.com>
From-SVN: r128557
Diffstat (limited to 'libgcc/fixed-obj.mk')
-rw-r--r-- | libgcc/fixed-obj.mk | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/libgcc/fixed-obj.mk b/libgcc/fixed-obj.mk new file mode 100644 index 0000000..3c7c2f3 --- /dev/null +++ b/libgcc/fixed-obj.mk @@ -0,0 +1,31 @@ +# This file is included several times in a row, once for each element of +# $(iter-items). On each inclusion, we advance $o to the next element. +# $(iter-labels) and $(iter-from) and $(iter-to) are also advanced. + +o := $(firstword $(iter-items)) +iter-items := $(filter-out $o,$(iter-items)) + +$o-label := $(firstword $(iter-labels)) +iter-labels := $(wordlist 2,$(words $(iter-labels)),$(iter-labels)) + +$o-from := $(firstword $(iter-from)) +iter-from := $(wordlist 2,$(words $(iter-from)),$(iter-from)) + +$o-to := $(firstword $(iter-to)) +iter-to := $(wordlist 2,$(words $(iter-to)),$(iter-to)) + +ifeq ($($o-from),$($o-to)) +$o-opt := -D$($o-from)_MODE +else +$o-opt := -DFROM_$($o-from) -DTO_$($o-to) +endif + +#$(info $o$(objext): -DL$($o-label) $($o-opt)) + +$o$(objext): %$(objext): $(gcc_srcdir)/config/fixed-bit.c + $(gcc_compile) -DL$($*-label) $($*-opt) -c $(gcc_srcdir)/config/fixed-bit.c $(vis_hide) + +ifeq ($(enable_shared),yes) +$(o)_s$(objext): %_s$(objext): $(gcc_srcdir)/config/fixed-bit.c + $(gcc_s_compile) -DL$($*-label) $($*-opt) -c $(gcc_srcdir)/config/fixed-bit.c +endif |