[PD-cvs] SF.net SVN: pure-data: [9503] vendor
eighthave at users.sourceforge.net
eighthave at users.sourceforge.net
Fri Feb 22 19:31:10 CET 2008
Revision: 9503
http://pure-data.svn.sourceforge.net/pure-data/?rev=9503&view=rev
Author: eighthave
Date: 2008-02-22 10:31:09 -0800 (Fri, 22 Feb 2008)
Log Message:
-----------
importing fftw-3.1.2.tar.gz
Added Paths:
-----------
vendor/fftw3/
vendor/fftw3/current/
vendor/fftw3/current/AUTHORS
vendor/fftw3/current/CONVENTIONS
vendor/fftw3/current/COPYING
vendor/fftw3/current/COPYRIGHT
vendor/fftw3/current/ChangeLog
vendor/fftw3/current/INSTALL
vendor/fftw3/current/Makefile.am
vendor/fftw3/current/Makefile.in
vendor/fftw3/current/NEWS
vendor/fftw3/current/README
vendor/fftw3/current/TODO
vendor/fftw3/current/aclocal.m4
vendor/fftw3/current/api/
vendor/fftw3/current/api/Makefile.am
vendor/fftw3/current/api/Makefile.in
vendor/fftw3/current/api/api.h
vendor/fftw3/current/api/apiplan.c
vendor/fftw3/current/api/configure.c
vendor/fftw3/current/api/execute-dft-c2r.c
vendor/fftw3/current/api/execute-dft-r2c.c
vendor/fftw3/current/api/execute-dft.c
vendor/fftw3/current/api/execute-r2r.c
vendor/fftw3/current/api/execute-split-dft-c2r.c
vendor/fftw3/current/api/execute-split-dft-r2c.c
vendor/fftw3/current/api/execute-split-dft.c
vendor/fftw3/current/api/execute.c
vendor/fftw3/current/api/export-wisdom-to-file.c
vendor/fftw3/current/api/export-wisdom-to-string.c
vendor/fftw3/current/api/export-wisdom.c
vendor/fftw3/current/api/extract-reim.c
vendor/fftw3/current/api/f77api.c
vendor/fftw3/current/api/f77funcs.h
vendor/fftw3/current/api/fftw3.f
vendor/fftw3/current/api/fftw3.h
vendor/fftw3/current/api/flops.c
vendor/fftw3/current/api/forget-wisdom.c
vendor/fftw3/current/api/import-system-wisdom.c
vendor/fftw3/current/api/import-wisdom-from-file.c
vendor/fftw3/current/api/import-wisdom-from-string.c
vendor/fftw3/current/api/import-wisdom.c
vendor/fftw3/current/api/malloc.c
vendor/fftw3/current/api/map-r2r-kind.c
vendor/fftw3/current/api/mapflags.c
vendor/fftw3/current/api/mkprinter-file.c
vendor/fftw3/current/api/mktensor-iodims.c
vendor/fftw3/current/api/mktensor-rowmajor.c
vendor/fftw3/current/api/plan-dft-1d.c
vendor/fftw3/current/api/plan-dft-2d.c
vendor/fftw3/current/api/plan-dft-3d.c
vendor/fftw3/current/api/plan-dft-c2r-1d.c
vendor/fftw3/current/api/plan-dft-c2r-2d.c
vendor/fftw3/current/api/plan-dft-c2r-3d.c
vendor/fftw3/current/api/plan-dft-c2r.c
vendor/fftw3/current/api/plan-dft-r2c-1d.c
vendor/fftw3/current/api/plan-dft-r2c-2d.c
vendor/fftw3/current/api/plan-dft-r2c-3d.c
vendor/fftw3/current/api/plan-dft-r2c.c
vendor/fftw3/current/api/plan-dft.c
vendor/fftw3/current/api/plan-guru-dft-c2r.c
vendor/fftw3/current/api/plan-guru-dft-r2c.c
vendor/fftw3/current/api/plan-guru-dft.c
vendor/fftw3/current/api/plan-guru-r2r.c
vendor/fftw3/current/api/plan-guru-split-dft-c2r.c
vendor/fftw3/current/api/plan-guru-split-dft-r2c.c
vendor/fftw3/current/api/plan-guru-split-dft.c
vendor/fftw3/current/api/plan-many-dft-c2r.c
vendor/fftw3/current/api/plan-many-dft-r2c.c
vendor/fftw3/current/api/plan-many-dft.c
vendor/fftw3/current/api/plan-many-r2r.c
vendor/fftw3/current/api/plan-r2r-1d.c
vendor/fftw3/current/api/plan-r2r-2d.c
vendor/fftw3/current/api/plan-r2r-3d.c
vendor/fftw3/current/api/plan-r2r.c
vendor/fftw3/current/api/print-plan.c
vendor/fftw3/current/api/rdft2-pad.c
vendor/fftw3/current/api/the-planner.c
vendor/fftw3/current/api/version.c
vendor/fftw3/current/api/x77.h
vendor/fftw3/current/bootstrap.sh
vendor/fftw3/current/config.guess
vendor/fftw3/current/config.h.in
vendor/fftw3/current/config.sub
vendor/fftw3/current/configure
vendor/fftw3/current/configure.ac
vendor/fftw3/current/depcomp
vendor/fftw3/current/dft/
vendor/fftw3/current/dft/Makefile.am
vendor/fftw3/current/dft/Makefile.in
vendor/fftw3/current/dft/bluestein.c
vendor/fftw3/current/dft/buffered.c
vendor/fftw3/current/dft/codelet-dft.h
vendor/fftw3/current/dft/codelets/
vendor/fftw3/current/dft/codelets/Makefile.am
vendor/fftw3/current/dft/codelets/Makefile.in
vendor/fftw3/current/dft/codelets/f.h
vendor/fftw3/current/dft/codelets/n.c
vendor/fftw3/current/dft/codelets/n.h
vendor/fftw3/current/dft/codelets/q.h
vendor/fftw3/current/dft/codelets/standard/
vendor/fftw3/current/dft/codelets/standard/Makefile.am
vendor/fftw3/current/dft/codelets/standard/Makefile.in
vendor/fftw3/current/dft/codelets/standard/codlist.c
vendor/fftw3/current/dft/codelets/standard/n1_10.c
vendor/fftw3/current/dft/codelets/standard/n1_11.c
vendor/fftw3/current/dft/codelets/standard/n1_12.c
vendor/fftw3/current/dft/codelets/standard/n1_13.c
vendor/fftw3/current/dft/codelets/standard/n1_14.c
vendor/fftw3/current/dft/codelets/standard/n1_15.c
vendor/fftw3/current/dft/codelets/standard/n1_16.c
vendor/fftw3/current/dft/codelets/standard/n1_2.c
vendor/fftw3/current/dft/codelets/standard/n1_3.c
vendor/fftw3/current/dft/codelets/standard/n1_32.c
vendor/fftw3/current/dft/codelets/standard/n1_4.c
vendor/fftw3/current/dft/codelets/standard/n1_5.c
vendor/fftw3/current/dft/codelets/standard/n1_6.c
vendor/fftw3/current/dft/codelets/standard/n1_64.c
vendor/fftw3/current/dft/codelets/standard/n1_7.c
vendor/fftw3/current/dft/codelets/standard/n1_8.c
vendor/fftw3/current/dft/codelets/standard/n1_9.c
vendor/fftw3/current/dft/codelets/standard/q1_2.c
vendor/fftw3/current/dft/codelets/standard/q1_3.c
vendor/fftw3/current/dft/codelets/standard/q1_4.c
vendor/fftw3/current/dft/codelets/standard/q1_5.c
vendor/fftw3/current/dft/codelets/standard/q1_6.c
vendor/fftw3/current/dft/codelets/standard/q1_8.c
vendor/fftw3/current/dft/codelets/standard/t1_10.c
vendor/fftw3/current/dft/codelets/standard/t1_12.c
vendor/fftw3/current/dft/codelets/standard/t1_15.c
vendor/fftw3/current/dft/codelets/standard/t1_16.c
vendor/fftw3/current/dft/codelets/standard/t1_2.c
vendor/fftw3/current/dft/codelets/standard/t1_3.c
vendor/fftw3/current/dft/codelets/standard/t1_32.c
vendor/fftw3/current/dft/codelets/standard/t1_4.c
vendor/fftw3/current/dft/codelets/standard/t1_5.c
vendor/fftw3/current/dft/codelets/standard/t1_6.c
vendor/fftw3/current/dft/codelets/standard/t1_64.c
vendor/fftw3/current/dft/codelets/standard/t1_7.c
vendor/fftw3/current/dft/codelets/standard/t1_8.c
vendor/fftw3/current/dft/codelets/standard/t1_9.c
vendor/fftw3/current/dft/codelets/standard/t2_16.c
vendor/fftw3/current/dft/codelets/standard/t2_32.c
vendor/fftw3/current/dft/codelets/standard/t2_4.c
vendor/fftw3/current/dft/codelets/standard/t2_64.c
vendor/fftw3/current/dft/codelets/standard/t2_8.c
vendor/fftw3/current/dft/codelets/t.c
vendor/fftw3/current/dft/codelets/t.h
vendor/fftw3/current/dft/conf.c
vendor/fftw3/current/dft/ct.c
vendor/fftw3/current/dft/ct.h
vendor/fftw3/current/dft/ctsq.c
vendor/fftw3/current/dft/dft.h
vendor/fftw3/current/dft/dftw-direct.c
vendor/fftw3/current/dft/dftw-generic.c
vendor/fftw3/current/dft/dftw-genericbuf.c
vendor/fftw3/current/dft/direct.c
vendor/fftw3/current/dft/generic.c
vendor/fftw3/current/dft/indirect-transpose.c
vendor/fftw3/current/dft/indirect.c
vendor/fftw3/current/dft/k7/
vendor/fftw3/current/dft/k7/Makefile.am
vendor/fftw3/current/dft/k7/Makefile.in
vendor/fftw3/current/dft/k7/codelets/
vendor/fftw3/current/dft/k7/codelets/Makefile.am
vendor/fftw3/current/dft/k7/codelets/Makefile.in
vendor/fftw3/current/dft/k7/codelets/codlist.c
vendor/fftw3/current/dft/k7/codelets/f1k7_16.S
vendor/fftw3/current/dft/k7/codelets/f1k7_2.S
vendor/fftw3/current/dft/k7/codelets/f1k7_32.S
vendor/fftw3/current/dft/k7/codelets/f1k7_4.S
vendor/fftw3/current/dft/k7/codelets/f1k7_64.S
vendor/fftw3/current/dft/k7/codelets/f1k7_8.S
vendor/fftw3/current/dft/k7/codelets/f1k7i_16.S
vendor/fftw3/current/dft/k7/codelets/f1k7i_2.S
vendor/fftw3/current/dft/k7/codelets/f1k7i_32.S
vendor/fftw3/current/dft/k7/codelets/f1k7i_4.S
vendor/fftw3/current/dft/k7/codelets/f1k7i_64.S
vendor/fftw3/current/dft/k7/codelets/f1k7i_8.S
vendor/fftw3/current/dft/k7/codelets/n1k7_10.S
vendor/fftw3/current/dft/k7/codelets/n1k7_11.S
vendor/fftw3/current/dft/k7/codelets/n1k7_12.S
vendor/fftw3/current/dft/k7/codelets/n1k7_128.S
vendor/fftw3/current/dft/k7/codelets/n1k7_13.S
vendor/fftw3/current/dft/k7/codelets/n1k7_14.S
vendor/fftw3/current/dft/k7/codelets/n1k7_15.S
vendor/fftw3/current/dft/k7/codelets/n1k7_16.S
vendor/fftw3/current/dft/k7/codelets/n1k7_2.S
vendor/fftw3/current/dft/k7/codelets/n1k7_3.S
vendor/fftw3/current/dft/k7/codelets/n1k7_32.S
vendor/fftw3/current/dft/k7/codelets/n1k7_4.S
vendor/fftw3/current/dft/k7/codelets/n1k7_5.S
vendor/fftw3/current/dft/k7/codelets/n1k7_6.S
vendor/fftw3/current/dft/k7/codelets/n1k7_64.S
vendor/fftw3/current/dft/k7/codelets/n1k7_7.S
vendor/fftw3/current/dft/k7/codelets/n1k7_8.S
vendor/fftw3/current/dft/k7/codelets/n1k7_9.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_10.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_11.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_12.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_128.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_13.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_14.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_15.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_16.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_2.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_3.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_32.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_4.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_5.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_6.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_64.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_7.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_8.S
vendor/fftw3/current/dft/k7/codelets/n1k7i_9.S
vendor/fftw3/current/dft/k7/codelets/t1k7_10.S
vendor/fftw3/current/dft/k7/codelets/t1k7_12.S
vendor/fftw3/current/dft/k7/codelets/t1k7_15.S
vendor/fftw3/current/dft/k7/codelets/t1k7_16.S
vendor/fftw3/current/dft/k7/codelets/t1k7_2.S
vendor/fftw3/current/dft/k7/codelets/t1k7_3.S
vendor/fftw3/current/dft/k7/codelets/t1k7_32.S
vendor/fftw3/current/dft/k7/codelets/t1k7_4.S
vendor/fftw3/current/dft/k7/codelets/t1k7_5.S
vendor/fftw3/current/dft/k7/codelets/t1k7_6.S
vendor/fftw3/current/dft/k7/codelets/t1k7_64.S
vendor/fftw3/current/dft/k7/codelets/t1k7_7.S
vendor/fftw3/current/dft/k7/codelets/t1k7_8.S
vendor/fftw3/current/dft/k7/codelets/t1k7_9.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_10.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_12.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_15.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_16.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_2.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_3.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_32.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_4.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_5.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_6.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_64.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_7.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_8.S
vendor/fftw3/current/dft/k7/codelets/t1k7i_9.S
vendor/fftw3/current/dft/k7/k7.c
vendor/fftw3/current/dft/kdft-dif.c
vendor/fftw3/current/dft/kdft-difsq.c
vendor/fftw3/current/dft/kdft-dit.c
vendor/fftw3/current/dft/kdft.c
vendor/fftw3/current/dft/nop.c
vendor/fftw3/current/dft/plan.c
vendor/fftw3/current/dft/problem.c
vendor/fftw3/current/dft/rader.c
vendor/fftw3/current/dft/rank-geq2.c
vendor/fftw3/current/dft/simd/
vendor/fftw3/current/dft/simd/Makefile.am
vendor/fftw3/current/dft/simd/Makefile.in
vendor/fftw3/current/dft/simd/codelets/
vendor/fftw3/current/dft/simd/codelets/Makefile.am
vendor/fftw3/current/dft/simd/codelets/Makefile.in
vendor/fftw3/current/dft/simd/codelets/codlist.c
vendor/fftw3/current/dft/simd/codelets/n1bv_10.c
vendor/fftw3/current/dft/simd/codelets/n1bv_11.c
vendor/fftw3/current/dft/simd/codelets/n1bv_12.c
vendor/fftw3/current/dft/simd/codelets/n1bv_13.c
vendor/fftw3/current/dft/simd/codelets/n1bv_14.c
vendor/fftw3/current/dft/simd/codelets/n1bv_15.c
vendor/fftw3/current/dft/simd/codelets/n1bv_16.c
vendor/fftw3/current/dft/simd/codelets/n1bv_2.c
vendor/fftw3/current/dft/simd/codelets/n1bv_3.c
vendor/fftw3/current/dft/simd/codelets/n1bv_32.c
vendor/fftw3/current/dft/simd/codelets/n1bv_4.c
vendor/fftw3/current/dft/simd/codelets/n1bv_5.c
vendor/fftw3/current/dft/simd/codelets/n1bv_6.c
vendor/fftw3/current/dft/simd/codelets/n1bv_64.c
vendor/fftw3/current/dft/simd/codelets/n1bv_7.c
vendor/fftw3/current/dft/simd/codelets/n1bv_8.c
vendor/fftw3/current/dft/simd/codelets/n1bv_9.c
vendor/fftw3/current/dft/simd/codelets/n1fv_10.c
vendor/fftw3/current/dft/simd/codelets/n1fv_11.c
vendor/fftw3/current/dft/simd/codelets/n1fv_12.c
vendor/fftw3/current/dft/simd/codelets/n1fv_13.c
vendor/fftw3/current/dft/simd/codelets/n1fv_14.c
vendor/fftw3/current/dft/simd/codelets/n1fv_15.c
vendor/fftw3/current/dft/simd/codelets/n1fv_16.c
vendor/fftw3/current/dft/simd/codelets/n1fv_2.c
vendor/fftw3/current/dft/simd/codelets/n1fv_3.c
vendor/fftw3/current/dft/simd/codelets/n1fv_32.c
vendor/fftw3/current/dft/simd/codelets/n1fv_4.c
vendor/fftw3/current/dft/simd/codelets/n1fv_5.c
vendor/fftw3/current/dft/simd/codelets/n1fv_6.c
vendor/fftw3/current/dft/simd/codelets/n1fv_64.c
vendor/fftw3/current/dft/simd/codelets/n1fv_7.c
vendor/fftw3/current/dft/simd/codelets/n1fv_8.c
vendor/fftw3/current/dft/simd/codelets/n1fv_9.c
vendor/fftw3/current/dft/simd/codelets/n2bv_10.c
vendor/fftw3/current/dft/simd/codelets/n2bv_12.c
vendor/fftw3/current/dft/simd/codelets/n2bv_14.c
vendor/fftw3/current/dft/simd/codelets/n2bv_16.c
vendor/fftw3/current/dft/simd/codelets/n2bv_2.c
vendor/fftw3/current/dft/simd/codelets/n2bv_32.c
vendor/fftw3/current/dft/simd/codelets/n2bv_4.c
vendor/fftw3/current/dft/simd/codelets/n2bv_6.c
vendor/fftw3/current/dft/simd/codelets/n2bv_64.c
vendor/fftw3/current/dft/simd/codelets/n2bv_8.c
vendor/fftw3/current/dft/simd/codelets/n2fv_10.c
vendor/fftw3/current/dft/simd/codelets/n2fv_12.c
vendor/fftw3/current/dft/simd/codelets/n2fv_14.c
vendor/fftw3/current/dft/simd/codelets/n2fv_16.c
vendor/fftw3/current/dft/simd/codelets/n2fv_2.c
vendor/fftw3/current/dft/simd/codelets/n2fv_32.c
vendor/fftw3/current/dft/simd/codelets/n2fv_4.c
vendor/fftw3/current/dft/simd/codelets/n2fv_6.c
vendor/fftw3/current/dft/simd/codelets/n2fv_64.c
vendor/fftw3/current/dft/simd/codelets/n2fv_8.c
vendor/fftw3/current/dft/simd/codelets/n2sv_16.c
vendor/fftw3/current/dft/simd/codelets/n2sv_32.c
vendor/fftw3/current/dft/simd/codelets/n2sv_4.c
vendor/fftw3/current/dft/simd/codelets/n2sv_64.c
vendor/fftw3/current/dft/simd/codelets/n2sv_8.c
vendor/fftw3/current/dft/simd/codelets/q1bv_2.c
vendor/fftw3/current/dft/simd/codelets/q1bv_4.c
vendor/fftw3/current/dft/simd/codelets/q1bv_8.c
vendor/fftw3/current/dft/simd/codelets/q1fv_2.c
vendor/fftw3/current/dft/simd/codelets/q1fv_4.c
vendor/fftw3/current/dft/simd/codelets/q1fv_8.c
vendor/fftw3/current/dft/simd/codelets/t1bv_10.c
vendor/fftw3/current/dft/simd/codelets/t1bv_12.c
vendor/fftw3/current/dft/simd/codelets/t1bv_15.c
vendor/fftw3/current/dft/simd/codelets/t1bv_16.c
vendor/fftw3/current/dft/simd/codelets/t1bv_2.c
vendor/fftw3/current/dft/simd/codelets/t1bv_3.c
vendor/fftw3/current/dft/simd/codelets/t1bv_32.c
vendor/fftw3/current/dft/simd/codelets/t1bv_4.c
vendor/fftw3/current/dft/simd/codelets/t1bv_5.c
vendor/fftw3/current/dft/simd/codelets/t1bv_6.c
vendor/fftw3/current/dft/simd/codelets/t1bv_64.c
vendor/fftw3/current/dft/simd/codelets/t1bv_7.c
vendor/fftw3/current/dft/simd/codelets/t1bv_8.c
vendor/fftw3/current/dft/simd/codelets/t1bv_9.c
vendor/fftw3/current/dft/simd/codelets/t1fv_10.c
vendor/fftw3/current/dft/simd/codelets/t1fv_12.c
vendor/fftw3/current/dft/simd/codelets/t1fv_15.c
vendor/fftw3/current/dft/simd/codelets/t1fv_16.c
vendor/fftw3/current/dft/simd/codelets/t1fv_2.c
vendor/fftw3/current/dft/simd/codelets/t1fv_3.c
vendor/fftw3/current/dft/simd/codelets/t1fv_32.c
vendor/fftw3/current/dft/simd/codelets/t1fv_4.c
vendor/fftw3/current/dft/simd/codelets/t1fv_5.c
vendor/fftw3/current/dft/simd/codelets/t1fv_6.c
vendor/fftw3/current/dft/simd/codelets/t1fv_64.c
vendor/fftw3/current/dft/simd/codelets/t1fv_7.c
vendor/fftw3/current/dft/simd/codelets/t1fv_8.c
vendor/fftw3/current/dft/simd/codelets/t1fv_9.c
vendor/fftw3/current/dft/simd/codelets/t1sv_16.c
vendor/fftw3/current/dft/simd/codelets/t1sv_2.c
vendor/fftw3/current/dft/simd/codelets/t1sv_32.c
vendor/fftw3/current/dft/simd/codelets/t1sv_4.c
vendor/fftw3/current/dft/simd/codelets/t1sv_8.c
vendor/fftw3/current/dft/simd/codelets/t2bv_16.c
vendor/fftw3/current/dft/simd/codelets/t2bv_2.c
vendor/fftw3/current/dft/simd/codelets/t2bv_32.c
vendor/fftw3/current/dft/simd/codelets/t2bv_4.c
vendor/fftw3/current/dft/simd/codelets/t2bv_64.c
vendor/fftw3/current/dft/simd/codelets/t2bv_8.c
vendor/fftw3/current/dft/simd/codelets/t2fv_16.c
vendor/fftw3/current/dft/simd/codelets/t2fv_2.c
vendor/fftw3/current/dft/simd/codelets/t2fv_32.c
vendor/fftw3/current/dft/simd/codelets/t2fv_4.c
vendor/fftw3/current/dft/simd/codelets/t2fv_64.c
vendor/fftw3/current/dft/simd/codelets/t2fv_8.c
vendor/fftw3/current/dft/simd/codelets/t2sv_16.c
vendor/fftw3/current/dft/simd/codelets/t2sv_32.c
vendor/fftw3/current/dft/simd/codelets/t2sv_4.c
vendor/fftw3/current/dft/simd/codelets/t2sv_8.c
vendor/fftw3/current/dft/simd/codelets/t3bv_16.c
vendor/fftw3/current/dft/simd/codelets/t3bv_32.c
vendor/fftw3/current/dft/simd/codelets/t3bv_4.c
vendor/fftw3/current/dft/simd/codelets/t3bv_8.c
vendor/fftw3/current/dft/simd/codelets/t3fv_16.c
vendor/fftw3/current/dft/simd/codelets/t3fv_32.c
vendor/fftw3/current/dft/simd/codelets/t3fv_4.c
vendor/fftw3/current/dft/simd/codelets/t3fv_8.c
vendor/fftw3/current/dft/simd/n1b.c
vendor/fftw3/current/dft/simd/n1b.h
vendor/fftw3/current/dft/simd/n1f.c
vendor/fftw3/current/dft/simd/n1f.h
vendor/fftw3/current/dft/simd/n2b.c
vendor/fftw3/current/dft/simd/n2b.h
vendor/fftw3/current/dft/simd/n2f.c
vendor/fftw3/current/dft/simd/n2f.h
vendor/fftw3/current/dft/simd/n2s.c
vendor/fftw3/current/dft/simd/n2s.h
vendor/fftw3/current/dft/simd/q1b.c
vendor/fftw3/current/dft/simd/q1b.h
vendor/fftw3/current/dft/simd/q1f.c
vendor/fftw3/current/dft/simd/q1f.h
vendor/fftw3/current/dft/simd/t.c
vendor/fftw3/current/dft/simd/t1b.h
vendor/fftw3/current/dft/simd/t1f.h
vendor/fftw3/current/dft/simd/t2b.h
vendor/fftw3/current/dft/simd/t2f.h
vendor/fftw3/current/dft/simd/t3b.h
vendor/fftw3/current/dft/simd/t3f.h
vendor/fftw3/current/dft/simd/ts.c
vendor/fftw3/current/dft/simd/ts.h
vendor/fftw3/current/dft/solve.c
vendor/fftw3/current/dft/vrank-geq1.c
vendor/fftw3/current/dft/zero.c
vendor/fftw3/current/doc/
vendor/fftw3/current/doc/FAQ/
vendor/fftw3/current/doc/FAQ/Makefile.am
vendor/fftw3/current/doc/FAQ/Makefile.in
vendor/fftw3/current/doc/FAQ/bfnnconv.pl
vendor/fftw3/current/doc/FAQ/fftw-faq.ascii
vendor/fftw3/current/doc/FAQ/fftw-faq.bfnn
vendor/fftw3/current/doc/FAQ/fftw-faq.html/
vendor/fftw3/current/doc/FAQ/fftw-faq.html/index.html
vendor/fftw3/current/doc/FAQ/fftw-faq.html/section1.html
vendor/fftw3/current/doc/FAQ/fftw-faq.html/section2.html
vendor/fftw3/current/doc/FAQ/fftw-faq.html/section3.html
vendor/fftw3/current/doc/FAQ/fftw-faq.html/section4.html
vendor/fftw3/current/doc/FAQ/fftw-faq.html/section5.html
vendor/fftw3/current/doc/FAQ/html.refs
vendor/fftw3/current/doc/FAQ/m-ascii.pl
vendor/fftw3/current/doc/FAQ/m-html.pl
vendor/fftw3/current/doc/FAQ/m-info.pl
vendor/fftw3/current/doc/FAQ/m-lout.pl
vendor/fftw3/current/doc/FAQ/m-post.pl
vendor/fftw3/current/doc/Makefile.am
vendor/fftw3/current/doc/Makefile.in
vendor/fftw3/current/doc/equation-dft.png
vendor/fftw3/current/doc/equation-dht.png
vendor/fftw3/current/doc/equation-idft.png
vendor/fftw3/current/doc/equation-redft00.png
vendor/fftw3/current/doc/equation-redft01.png
vendor/fftw3/current/doc/equation-redft10.png
vendor/fftw3/current/doc/equation-redft11.png
vendor/fftw3/current/doc/equation-rodft00.png
vendor/fftw3/current/doc/equation-rodft01.png
vendor/fftw3/current/doc/equation-rodft10.png
vendor/fftw3/current/doc/equation-rodft11.png
vendor/fftw3/current/doc/f77_wisdom.f
vendor/fftw3/current/doc/fftw3.info
vendor/fftw3/current/doc/fftw3.pdf
vendor/fftw3/current/doc/fftw3.texi
vendor/fftw3/current/doc/html/
vendor/fftw3/current/doc/html/1d-Discrete-Hartley-Transforms-_0028DHTs_0029.html
vendor/fftw3/current/doc/html/1d-Real_002deven-DFTs-_0028DCTs_0029.html
vendor/fftw3/current/doc/html/1d-Real_002dodd-DFTs-_0028DSTs_0029.html
vendor/fftw3/current/doc/html/Acknowledgments.html
vendor/fftw3/current/doc/html/Advanced-Complex-DFTs.html
vendor/fftw3/current/doc/html/Advanced-Interface.html
vendor/fftw3/current/doc/html/Advanced-Real_002ddata-DFTs.html
vendor/fftw3/current/doc/html/Advanced-Real_002dto_002dreal-Transforms.html
vendor/fftw3/current/doc/html/Basic-Interface.html
vendor/fftw3/current/doc/html/Calling-FFTW-from-Fortran.html
vendor/fftw3/current/doc/html/Caveats-in-Using-Wisdom.html
vendor/fftw3/current/doc/html/Column_002dmajor-Format.html
vendor/fftw3/current/doc/html/Complex-DFTs.html
vendor/fftw3/current/doc/html/Complex-Multi_002dDimensional-DFTs.html
vendor/fftw3/current/doc/html/Complex-One_002dDimensional-DFTs.html
vendor/fftw3/current/doc/html/Complex-numbers.html
vendor/fftw3/current/doc/html/Concept-Index.html
vendor/fftw3/current/doc/html/Cycle-Counters.html
vendor/fftw3/current/doc/html/Data-Alignment.html
vendor/fftw3/current/doc/html/Data-Types-and-Files.html
vendor/fftw3/current/doc/html/Dynamic-Arrays-in-C.html
vendor/fftw3/current/doc/html/Dynamic-Arrays-in-C_002dThe-Wrong-Way.html
vendor/fftw3/current/doc/html/FFTW-Constants-in-Fortran.html
vendor/fftw3/current/doc/html/FFTW-Reference.html
vendor/fftw3/current/doc/html/Fixed_002dsize-Arrays-in-C.html
vendor/fftw3/current/doc/html/Forgetting-Wisdom.html
vendor/fftw3/current/doc/html/Fortran-Examples.html
vendor/fftw3/current/doc/html/Fortran_002dinterface-routines.html
vendor/fftw3/current/doc/html/Generating-your-own-code.html
vendor/fftw3/current/doc/html/Guru-Complex-DFTs.html
vendor/fftw3/current/doc/html/Guru-Execution-of-Plans.html
vendor/fftw3/current/doc/html/Guru-Interface.html
vendor/fftw3/current/doc/html/Guru-Real_002ddata-DFTs.html
vendor/fftw3/current/doc/html/Guru-Real_002dto_002dreal-Transforms.html
vendor/fftw3/current/doc/html/Guru-vector-and-transform-sizes.html
vendor/fftw3/current/doc/html/How-Many-Threads-to-Use_003f.html
vendor/fftw3/current/doc/html/Installation-and-Customization.html
vendor/fftw3/current/doc/html/Installation-and-Supported-Hardware_002fSoftware.html
vendor/fftw3/current/doc/html/Installation-on-Unix.html
vendor/fftw3/current/doc/html/Installation-on-non_002dUnix-systems.html
vendor/fftw3/current/doc/html/Interleaved-and-split-arrays.html
vendor/fftw3/current/doc/html/Introduction.html
vendor/fftw3/current/doc/html/Library-Index.html
vendor/fftw3/current/doc/html/License-and-Copyright.html
vendor/fftw3/current/doc/html/Memory-Allocation.html
vendor/fftw3/current/doc/html/More-DFTs-of-Real-Data.html
vendor/fftw3/current/doc/html/Multi_002dDimensional-DFTs-of-Real-Data.html
vendor/fftw3/current/doc/html/Multi_002ddimensional-Array-Format.html
vendor/fftw3/current/doc/html/Multi_002ddimensional-Transforms.html
vendor/fftw3/current/doc/html/Multi_002dthreaded-FFTW.html
vendor/fftw3/current/doc/html/One_002dDimensional-DFTs-of-Real-Data.html
vendor/fftw3/current/doc/html/Other-Important-Topics.html
vendor/fftw3/current/doc/html/Parallel-FFTW.html
vendor/fftw3/current/doc/html/Planner-Flags.html
vendor/fftw3/current/doc/html/Precision.html
vendor/fftw3/current/doc/html/Real-even_002fodd-DFTs-_0028cosine_002fsine-transforms_0029.html
vendor/fftw3/current/doc/html/Real_002ddata-DFT-Array-Format.html
vendor/fftw3/current/doc/html/Real_002ddata-DFTs.html
vendor/fftw3/current/doc/html/Real_002dto_002dReal-Transform-Kinds.html
vendor/fftw3/current/doc/html/Real_002dto_002dReal-Transforms.html
vendor/fftw3/current/doc/html/Row_002dmajor-Format.html
vendor/fftw3/current/doc/html/SIMD-alignment-and-fftw_005fmalloc.html
vendor/fftw3/current/doc/html/Stack-alignment-on-x86.html
vendor/fftw3/current/doc/html/The-1d-Discrete-Fourier-Transform-_0028DFT_0029.html
vendor/fftw3/current/doc/html/The-1d-Real_002ddata-DFT.html
vendor/fftw3/current/doc/html/The-Discrete-Hartley-Transform.html
vendor/fftw3/current/doc/html/The-Halfcomplex_002dformat-DFT.html
vendor/fftw3/current/doc/html/Thread-safety.html
vendor/fftw3/current/doc/html/Tutorial.html
vendor/fftw3/current/doc/html/Upgrading-from-FFTW-version-2.html
vendor/fftw3/current/doc/html/Usage-of-Multi_002dthreaded-FFTW.html
vendor/fftw3/current/doc/html/Using-Plans.html
vendor/fftw3/current/doc/html/What-FFTW-Really-Computes.html
vendor/fftw3/current/doc/html/Wisdom-Export.html
vendor/fftw3/current/doc/html/Wisdom-Import.html
vendor/fftw3/current/doc/html/Wisdom-Utilities.html
vendor/fftw3/current/doc/html/Wisdom-of-Fortran_003f.html
vendor/fftw3/current/doc/html/Wisdom.html
vendor/fftw3/current/doc/html/Words-of-Wisdom_002dSaving-Plans.html
vendor/fftw3/current/doc/html/equation-dft.png
vendor/fftw3/current/doc/html/equation-dht.png
vendor/fftw3/current/doc/html/equation-idft.png
vendor/fftw3/current/doc/html/equation-redft00.png
vendor/fftw3/current/doc/html/equation-redft01.png
vendor/fftw3/current/doc/html/equation-redft10.png
vendor/fftw3/current/doc/html/equation-redft11.png
vendor/fftw3/current/doc/html/equation-rodft00.png
vendor/fftw3/current/doc/html/equation-rodft01.png
vendor/fftw3/current/doc/html/equation-rodft10.png
vendor/fftw3/current/doc/html/equation-rodft11.png
vendor/fftw3/current/doc/html/index.html
vendor/fftw3/current/doc/html/rfftwnd.png
vendor/fftw3/current/doc/mdate-sh
vendor/fftw3/current/doc/rfftwnd.eps
vendor/fftw3/current/doc/rfftwnd.fig
vendor/fftw3/current/doc/stamp-vti
vendor/fftw3/current/doc/texinfo.tex
vendor/fftw3/current/doc/version.texi
vendor/fftw3/current/fftw.pc.in
vendor/fftw3/current/genfft/
vendor/fftw3/current/genfft/.depend
vendor/fftw3/current/genfft/Makefile.am
vendor/fftw3/current/genfft/Makefile.in
vendor/fftw3/current/genfft/algsimp.ml
vendor/fftw3/current/genfft/algsimp.mli
vendor/fftw3/current/genfft/annotate.ml
vendor/fftw3/current/genfft/annotate.mli
vendor/fftw3/current/genfft/assoctable.ml
vendor/fftw3/current/genfft/assoctable.mli
vendor/fftw3/current/genfft/c.ml
vendor/fftw3/current/genfft/c.mli
vendor/fftw3/current/genfft/complex.ml
vendor/fftw3/current/genfft/complex.mli
vendor/fftw3/current/genfft/conv.ml
vendor/fftw3/current/genfft/conv.mli
vendor/fftw3/current/genfft/dag.ml
vendor/fftw3/current/genfft/dag.mli
vendor/fftw3/current/genfft/expr.ml
vendor/fftw3/current/genfft/expr.mli
vendor/fftw3/current/genfft/fft.ml
vendor/fftw3/current/genfft/fft.mli
vendor/fftw3/current/genfft/gen_athnotw.ml
vendor/fftw3/current/genfft/gen_athtw.ml
vendor/fftw3/current/genfft/gen_conv.ml
vendor/fftw3/current/genfft/gen_hc2hc.ml
vendor/fftw3/current/genfft/gen_hc2r.ml
vendor/fftw3/current/genfft/gen_mdct.ml
vendor/fftw3/current/genfft/gen_notw.ml
vendor/fftw3/current/genfft/gen_notw_c.ml
vendor/fftw3/current/genfft/gen_r2hc.ml
vendor/fftw3/current/genfft/gen_r2r.ml
vendor/fftw3/current/genfft/gen_twiddle.ml
vendor/fftw3/current/genfft/gen_twiddle_c.ml
vendor/fftw3/current/genfft/gen_twidsq.ml
vendor/fftw3/current/genfft/gen_twidsq_c.ml
vendor/fftw3/current/genfft/genutil.ml
vendor/fftw3/current/genfft/littlesimp.ml
vendor/fftw3/current/genfft/littlesimp.mli
vendor/fftw3/current/genfft/magic.ml
vendor/fftw3/current/genfft/monads.ml
vendor/fftw3/current/genfft/number.ml
vendor/fftw3/current/genfft/number.mli
vendor/fftw3/current/genfft/oracle.ml
vendor/fftw3/current/genfft/oracle.mli
vendor/fftw3/current/genfft/schedule.ml
vendor/fftw3/current/genfft/schedule.mli
vendor/fftw3/current/genfft/simd.ml
vendor/fftw3/current/genfft/simd.mli
vendor/fftw3/current/genfft/simdmagic.ml
vendor/fftw3/current/genfft/to_alist.ml
vendor/fftw3/current/genfft/to_alist.mli
vendor/fftw3/current/genfft/trig.ml
vendor/fftw3/current/genfft/trig.mli
vendor/fftw3/current/genfft/twiddle.ml
vendor/fftw3/current/genfft/twiddle.mli
vendor/fftw3/current/genfft/unique.ml
vendor/fftw3/current/genfft/unique.mli
vendor/fftw3/current/genfft/util.ml
vendor/fftw3/current/genfft/util.mli
vendor/fftw3/current/genfft/variable.ml
vendor/fftw3/current/genfft/variable.mli
vendor/fftw3/current/genfft-k7/
vendor/fftw3/current/genfft-k7/.depend
vendor/fftw3/current/genfft-k7/Makefile.am
vendor/fftw3/current/genfft-k7/Makefile.in
vendor/fftw3/current/genfft-k7/algsimp.ml
vendor/fftw3/current/genfft-k7/algsimp.mli
vendor/fftw3/current/genfft-k7/assignmentsToVfpinstrs.ml
vendor/fftw3/current/genfft-k7/assignmentsToVfpinstrs.mli
vendor/fftw3/current/genfft-k7/assoctable.ml
vendor/fftw3/current/genfft-k7/assoctable.mli
vendor/fftw3/current/genfft-k7/balanceVfpinstrs.ml
vendor/fftw3/current/genfft-k7/balanceVfpinstrs.mli
vendor/fftw3/current/genfft-k7/complex.ml
vendor/fftw3/current/genfft-k7/complex.mli
vendor/fftw3/current/genfft-k7/expr.ml
vendor/fftw3/current/genfft-k7/expr.mli
vendor/fftw3/current/genfft-k7/fft.ml
vendor/fftw3/current/genfft-k7/fft.mli
vendor/fftw3/current/genfft-k7/genUtil.ml
vendor/fftw3/current/genfft-k7/gen_notw.ml
vendor/fftw3/current/genfft-k7/gen_twiddle.ml
vendor/fftw3/current/genfft-k7/id.ml
vendor/fftw3/current/genfft-k7/id.mli
vendor/fftw3/current/genfft-k7/k7Basics.ml
vendor/fftw3/current/genfft-k7/k7Basics.mli
vendor/fftw3/current/genfft-k7/k7ExecutionModel.ml
vendor/fftw3/current/genfft-k7/k7ExecutionModel.mli
vendor/fftw3/current/genfft-k7/k7FlatInstructionScheduling.ml
vendor/fftw3/current/genfft-k7/k7FlatInstructionScheduling.mli
vendor/fftw3/current/genfft-k7/k7InstructionSchedulingBasics.ml
vendor/fftw3/current/genfft-k7/k7InstructionSchedulingBasics.mli
vendor/fftw3/current/genfft-k7/k7RegisterAllocationBasics.ml
vendor/fftw3/current/genfft-k7/k7RegisterAllocationBasics.mli
vendor/fftw3/current/genfft-k7/k7RegisterAllocator.ml
vendor/fftw3/current/genfft-k7/k7RegisterAllocator.mli
vendor/fftw3/current/genfft-k7/k7RegisterAllocatorEATranslation.ml
vendor/fftw3/current/genfft-k7/k7RegisterAllocatorEATranslation.mli
vendor/fftw3/current/genfft-k7/k7RegisterAllocatorInit.ml
vendor/fftw3/current/genfft-k7/k7RegisterAllocatorInit.mli
vendor/fftw3/current/genfft-k7/k7RegisterReallocation.ml
vendor/fftw3/current/genfft-k7/k7RegisterReallocation.mli
vendor/fftw3/current/genfft-k7/k7Translate.ml
vendor/fftw3/current/genfft-k7/k7Translate.mli
vendor/fftw3/current/genfft-k7/k7Unparsing.ml
vendor/fftw3/current/genfft-k7/k7Unparsing.mli
vendor/fftw3/current/genfft-k7/k7Vectorization.ml
vendor/fftw3/current/genfft-k7/k7Vectorization.mli
vendor/fftw3/current/genfft-k7/littlesimp.ml
vendor/fftw3/current/genfft-k7/littlesimp.mli
vendor/fftw3/current/genfft-k7/magic.ml
vendor/fftw3/current/genfft-k7/memoMonad.ml
vendor/fftw3/current/genfft-k7/memoMonad.mli
vendor/fftw3/current/genfft-k7/monads.ml
vendor/fftw3/current/genfft-k7/nonDetMonad.ml
vendor/fftw3/current/genfft-k7/nonDetMonad.mli
vendor/fftw3/current/genfft-k7/nullVectorization.ml
vendor/fftw3/current/genfft-k7/nullVectorization.mli
vendor/fftw3/current/genfft-k7/number.ml
vendor/fftw3/current/genfft-k7/number.mli
vendor/fftw3/current/genfft-k7/oracle.ml
vendor/fftw3/current/genfft-k7/oracle.mli
vendor/fftw3/current/genfft-k7/stateMonad.ml
vendor/fftw3/current/genfft-k7/stateMonad.mli
vendor/fftw3/current/genfft-k7/to_alist.ml
vendor/fftw3/current/genfft-k7/to_alist.mli
vendor/fftw3/current/genfft-k7/twiddle.ml
vendor/fftw3/current/genfft-k7/twiddle.mli
vendor/fftw3/current/genfft-k7/util.ml
vendor/fftw3/current/genfft-k7/util.mli
vendor/fftw3/current/genfft-k7/vAnnotatedScheduler.ml
vendor/fftw3/current/genfft-k7/vAnnotatedScheduler.mli
vendor/fftw3/current/genfft-k7/vDag.ml
vendor/fftw3/current/genfft-k7/vDag.mli
vendor/fftw3/current/genfft-k7/vFpBasics.ml
vendor/fftw3/current/genfft-k7/vFpBasics.mli
vendor/fftw3/current/genfft-k7/vFpUnparsing.ml
vendor/fftw3/current/genfft-k7/vFpUnparsing.mli
vendor/fftw3/current/genfft-k7/vImproveSchedule.ml
vendor/fftw3/current/genfft-k7/vImproveSchedule.mli
vendor/fftw3/current/genfft-k7/vK7Optimization.ml
vendor/fftw3/current/genfft-k7/vK7Optimization.mli
vendor/fftw3/current/genfft-k7/vScheduler.ml
vendor/fftw3/current/genfft-k7/vScheduler.mli
vendor/fftw3/current/genfft-k7/vSimdBasics.ml
vendor/fftw3/current/genfft-k7/vSimdBasics.mli
vendor/fftw3/current/genfft-k7/vSimdIndexing.ml
vendor/fftw3/current/genfft-k7/vSimdIndexing.mli
vendor/fftw3/current/genfft-k7/vSimdUnparsing.ml
vendor/fftw3/current/genfft-k7/vSimdUnparsing.mli
vendor/fftw3/current/genfft-k7/variable.ml
vendor/fftw3/current/genfft-k7/variable.mli
vendor/fftw3/current/install-sh
vendor/fftw3/current/kernel/
vendor/fftw3/current/kernel/Makefile.am
vendor/fftw3/current/kernel/Makefile.in
vendor/fftw3/current/kernel/align.c
vendor/fftw3/current/kernel/alloc.c
vendor/fftw3/current/kernel/assert.c
vendor/fftw3/current/kernel/awake.c
vendor/fftw3/current/kernel/buffered.c
vendor/fftw3/current/kernel/cpy1d.c
vendor/fftw3/current/kernel/cpy2d-pair.c
vendor/fftw3/current/kernel/cpy2d.c
vendor/fftw3/current/kernel/ct.c
vendor/fftw3/current/kernel/cycle.h
vendor/fftw3/current/kernel/debug.c
vendor/fftw3/current/kernel/hash.c
vendor/fftw3/current/kernel/iabs.c
vendor/fftw3/current/kernel/ifftw.h
vendor/fftw3/current/kernel/kalloc.c
vendor/fftw3/current/kernel/md5-1.c
vendor/fftw3/current/kernel/md5.c
vendor/fftw3/current/kernel/minmax.c
vendor/fftw3/current/kernel/ops.c
vendor/fftw3/current/kernel/pickdim.c
vendor/fftw3/current/kernel/plan.c
vendor/fftw3/current/kernel/planner.c
vendor/fftw3/current/kernel/primes.c
vendor/fftw3/current/kernel/print.c
vendor/fftw3/current/kernel/problem.c
vendor/fftw3/current/kernel/rader.c
vendor/fftw3/current/kernel/scan.c
vendor/fftw3/current/kernel/solver.c
vendor/fftw3/current/kernel/solvtab.c
vendor/fftw3/current/kernel/stride.c
vendor/fftw3/current/kernel/tensor.c
vendor/fftw3/current/kernel/tensor1.c
vendor/fftw3/current/kernel/tensor2.c
vendor/fftw3/current/kernel/tensor4.c
vendor/fftw3/current/kernel/tensor5.c
vendor/fftw3/current/kernel/tensor7.c
vendor/fftw3/current/kernel/tensor8.c
vendor/fftw3/current/kernel/tensor9.c
vendor/fftw3/current/kernel/tile2d.c
vendor/fftw3/current/kernel/timer.c
vendor/fftw3/current/kernel/transpose.c
vendor/fftw3/current/kernel/trig.c
vendor/fftw3/current/kernel/twiddle.c
vendor/fftw3/current/libbench2/
vendor/fftw3/current/libbench2/Makefile.am
vendor/fftw3/current/libbench2/Makefile.in
vendor/fftw3/current/libbench2/aligned-main.c
vendor/fftw3/current/libbench2/allocate.c
vendor/fftw3/current/libbench2/aset.c
vendor/fftw3/current/libbench2/bench-main.c
vendor/fftw3/current/libbench2/bench-user.h
vendor/fftw3/current/libbench2/bench.h
vendor/fftw3/current/libbench2/can-do.c
vendor/fftw3/current/libbench2/caset.c
vendor/fftw3/current/libbench2/dotens2.c
vendor/fftw3/current/libbench2/info.c
vendor/fftw3/current/libbench2/main.c
vendor/fftw3/current/libbench2/mflops.c
vendor/fftw3/current/libbench2/mp.c
vendor/fftw3/current/libbench2/my-getopt.c
vendor/fftw3/current/libbench2/my-getopt.h
vendor/fftw3/current/libbench2/ovtpvt.c
vendor/fftw3/current/libbench2/pow2.c
vendor/fftw3/current/libbench2/problem.c
vendor/fftw3/current/libbench2/report.c
vendor/fftw3/current/libbench2/speed.c
vendor/fftw3/current/libbench2/tensor.c
vendor/fftw3/current/libbench2/timer.c
vendor/fftw3/current/libbench2/timer2.c
vendor/fftw3/current/libbench2/useropt.c
vendor/fftw3/current/libbench2/util.c
vendor/fftw3/current/libbench2/verify-dft.c
vendor/fftw3/current/libbench2/verify-lib.c
vendor/fftw3/current/libbench2/verify-r2r.c
vendor/fftw3/current/libbench2/verify-rdft2.c
vendor/fftw3/current/libbench2/verify.c
vendor/fftw3/current/libbench2/verify.h
vendor/fftw3/current/libbench2/zero.c
vendor/fftw3/current/ltmain.sh
vendor/fftw3/current/m4/
vendor/fftw3/current/m4/CVS/
vendor/fftw3/current/m4/CVS/Entries
vendor/fftw3/current/m4/CVS/Repository
vendor/fftw3/current/m4/CVS/Root
vendor/fftw3/current/m4/CVS/Tag
vendor/fftw3/current/m4/acx_pthread.m4
vendor/fftw3/current/m4/amx_prog_as.m4
vendor/fftw3/current/m4/ax_cc_maxopt.m4
vendor/fftw3/current/m4/ax_check_compiler_flags.m4
vendor/fftw3/current/m4/ax_compiler_vendor.m4
vendor/fftw3/current/m4/ax_gcc_aligns_stack.m4
vendor/fftw3/current/m4/ax_gcc_archflag.m4
vendor/fftw3/current/m4/ax_gcc_version.m4
vendor/fftw3/current/m4/ax_gcc_x86_cpuid.m4
vendor/fftw3/current/m4/ax_openmp.m4
vendor/fftw3/current/m4/ocaml.m4
vendor/fftw3/current/missing
vendor/fftw3/current/rdft/
vendor/fftw3/current/rdft/Makefile.am
vendor/fftw3/current/rdft/Makefile.in
vendor/fftw3/current/rdft/buffered.c
vendor/fftw3/current/rdft/buffered2.c
vendor/fftw3/current/rdft/codelet-rdft.h
vendor/fftw3/current/rdft/codelets/
vendor/fftw3/current/rdft/codelets/Makefile.am
vendor/fftw3/current/rdft/codelets/Makefile.in
vendor/fftw3/current/rdft/codelets/hb.h
vendor/fftw3/current/rdft/codelets/hc2r/
vendor/fftw3/current/rdft/codelets/hc2r/Makefile.am
vendor/fftw3/current/rdft/codelets/hc2r/Makefile.in
vendor/fftw3/current/rdft/codelets/hc2r/codlist.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_10.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_12.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_15.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_16.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_2.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_3.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_32.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_4.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_5.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_6.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_64.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_7.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_8.c
vendor/fftw3/current/rdft/codelets/hc2r/hb_9.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_10.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_12.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_15.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_16.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_2.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_3.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_32.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_4.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_5.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_6.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_64.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_7.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_8.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2rIII_9.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_10.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_11.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_12.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_128.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_13.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_14.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_15.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_16.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_3.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_32.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_4.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_5.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_6.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_64.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_7.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_8.c
vendor/fftw3/current/rdft/codelets/hc2r/hc2r_9.c
vendor/fftw3/current/rdft/codelets/hc2r.c
vendor/fftw3/current/rdft/codelets/hc2r.h
vendor/fftw3/current/rdft/codelets/hc2rIII.h
vendor/fftw3/current/rdft/codelets/hf.h
vendor/fftw3/current/rdft/codelets/hfb.c
vendor/fftw3/current/rdft/codelets/r2hc/
vendor/fftw3/current/rdft/codelets/r2hc/Makefile.am
vendor/fftw3/current/rdft/codelets/r2hc/Makefile.in
vendor/fftw3/current/rdft/codelets/r2hc/codlist.c
vendor/fftw3/current/rdft/codelets/r2hc/hf2_16.c
vendor/fftw3/current/rdft/codelets/r2hc/hf2_32.c
vendor/fftw3/current/rdft/codelets/r2hc/hf2_4.c
vendor/fftw3/current/rdft/codelets/r2hc/hf2_64.c
vendor/fftw3/current/rdft/codelets/r2hc/hf2_8.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_10.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_12.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_15.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_16.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_2.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_3.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_32.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_4.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_5.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_6.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_64.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_7.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_8.c
vendor/fftw3/current/rdft/codelets/r2hc/hf_9.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_10.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_12.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_15.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_16.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_2.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_3.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_32.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_4.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_5.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_6.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_64.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_7.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_8.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hcII_9.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_10.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_11.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_12.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_128.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_13.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_14.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_15.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_16.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_2.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_3.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_32.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_4.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_5.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_6.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_64.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_7.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_8.c
vendor/fftw3/current/rdft/codelets/r2hc/r2hc_9.c
vendor/fftw3/current/rdft/codelets/r2hc.c
vendor/fftw3/current/rdft/codelets/r2hc.h
vendor/fftw3/current/rdft/codelets/r2hcII.h
vendor/fftw3/current/rdft/codelets/r2r/
vendor/fftw3/current/rdft/codelets/r2r/Makefile.am
vendor/fftw3/current/rdft/codelets/r2r/Makefile.in
vendor/fftw3/current/rdft/codelets/r2r/codlist.c
vendor/fftw3/current/rdft/codelets/r2r/e01_8.c
vendor/fftw3/current/rdft/codelets/r2r/e10_8.c
vendor/fftw3/current/rdft/codelets/r2r.c
vendor/fftw3/current/rdft/codelets/r2r.h
vendor/fftw3/current/rdft/conf.c
vendor/fftw3/current/rdft/dft-r2hc.c
vendor/fftw3/current/rdft/dht-r2hc.c
vendor/fftw3/current/rdft/dht-rader.c
vendor/fftw3/current/rdft/direct.c
vendor/fftw3/current/rdft/direct2.c
vendor/fftw3/current/rdft/generic.c
vendor/fftw3/current/rdft/hc2hc-common.c
vendor/fftw3/current/rdft/hc2hc-direct.c
vendor/fftw3/current/rdft/hc2hc-directbuf.c
vendor/fftw3/current/rdft/hc2hc-generic.c
vendor/fftw3/current/rdft/hc2hc.c
vendor/fftw3/current/rdft/hc2hc.h
vendor/fftw3/current/rdft/indirect.c
vendor/fftw3/current/rdft/khc2hc.c
vendor/fftw3/current/rdft/khc2r.c
vendor/fftw3/current/rdft/kr2hc.c
vendor/fftw3/current/rdft/kr2r.c
vendor/fftw3/current/rdft/nop.c
vendor/fftw3/current/rdft/nop2.c
vendor/fftw3/current/rdft/plan.c
vendor/fftw3/current/rdft/plan2.c
vendor/fftw3/current/rdft/problem.c
vendor/fftw3/current/rdft/problem2.c
vendor/fftw3/current/rdft/rank-geq2-rdft2.c
vendor/fftw3/current/rdft/rank-geq2.c
vendor/fftw3/current/rdft/rank0-rdft2.c
vendor/fftw3/current/rdft/rank0.c
vendor/fftw3/current/rdft/rdft-dht.c
vendor/fftw3/current/rdft/rdft.h
vendor/fftw3/current/rdft/rdft2-inplace-strides.c
vendor/fftw3/current/rdft/rdft2-radix2.c
vendor/fftw3/current/rdft/rdft2-strides.c
vendor/fftw3/current/rdft/rdft2-tensor-max-index.c
vendor/fftw3/current/rdft/solve.c
vendor/fftw3/current/rdft/solve2.c
vendor/fftw3/current/rdft/vrank-geq1-rdft2.c
vendor/fftw3/current/rdft/vrank-geq1.c
vendor/fftw3/current/rdft/vrank3-transpose.c
vendor/fftw3/current/reodft/
vendor/fftw3/current/reodft/Makefile.am
vendor/fftw3/current/reodft/Makefile.in
vendor/fftw3/current/reodft/conf.c
vendor/fftw3/current/reodft/redft00e-r2hc-pad.c
vendor/fftw3/current/reodft/redft00e-r2hc.c
vendor/fftw3/current/reodft/reodft.h
vendor/fftw3/current/reodft/reodft00e-splitradix.c
vendor/fftw3/current/reodft/reodft010e-r2hc.c
vendor/fftw3/current/reodft/reodft11e-r2hc-odd.c
vendor/fftw3/current/reodft/reodft11e-r2hc.c
vendor/fftw3/current/reodft/reodft11e-radix2.c
vendor/fftw3/current/reodft/rodft00e-r2hc-pad.c
vendor/fftw3/current/reodft/rodft00e-r2hc.c
vendor/fftw3/current/simd/
vendor/fftw3/current/simd/Makefile.am
vendor/fftw3/current/simd/Makefile.in
vendor/fftw3/current/simd/README
vendor/fftw3/current/simd/altivec.c
vendor/fftw3/current/simd/nonportable/
vendor/fftw3/current/simd/nonportable/Makefile.am
vendor/fftw3/current/simd/nonportable/Makefile.in
vendor/fftw3/current/simd/nonportable/sse.c
vendor/fftw3/current/simd/nonportable/sse2.c
vendor/fftw3/current/simd/simd-altivec.h
vendor/fftw3/current/simd/simd-sse.h
vendor/fftw3/current/simd/simd-sse2.h
vendor/fftw3/current/simd/simd.h
vendor/fftw3/current/simd/sse.c
vendor/fftw3/current/simd/sse2.c
vendor/fftw3/current/simd/taint.c
vendor/fftw3/current/simd/x86-cpuid.h
vendor/fftw3/current/support/
vendor/fftw3/current/support/Makefile.am
vendor/fftw3/current/support/Makefile.codelets
vendor/fftw3/current/support/Makefile.in
vendor/fftw3/current/support/addchain.c
vendor/fftw3/current/support/codelet_asmprelude
vendor/fftw3/current/support/codelet_prelude.dft
vendor/fftw3/current/support/codelet_prelude.rdft
vendor/fftw3/current/support/twovers.sh
vendor/fftw3/current/tests/
vendor/fftw3/current/tests/Makefile.am
vendor/fftw3/current/tests/Makefile.in
vendor/fftw3/current/tests/README
vendor/fftw3/current/tests/bench.c
vendor/fftw3/current/tests/check.pl
vendor/fftw3/current/tests/hook.c
vendor/fftw3/current/threads/
vendor/fftw3/current/threads/Makefile.am
vendor/fftw3/current/threads/Makefile.in
vendor/fftw3/current/threads/api.c
vendor/fftw3/current/threads/conf.c
vendor/fftw3/current/threads/ct.c
vendor/fftw3/current/threads/dft-vrank-geq1.c
vendor/fftw3/current/threads/f77api.c
vendor/fftw3/current/threads/f77funcs.h
vendor/fftw3/current/threads/hc2hc.c
vendor/fftw3/current/threads/rdft-vrank-geq1.c
vendor/fftw3/current/threads/threads.c
vendor/fftw3/current/threads/threads.h
vendor/fftw3/current/threads/vrank-geq1-rdft2.c
vendor/fftw3/current/tools/
vendor/fftw3/current/tools/Makefile.am
vendor/fftw3/current/tools/Makefile.in
vendor/fftw3/current/tools/fftw-wisdom-to-conf.1
vendor/fftw3/current/tools/fftw-wisdom-to-conf.in
vendor/fftw3/current/tools/fftw-wisdom.c
vendor/fftw3/current/tools/fftw_wisdom.1.in
vendor/fftw3/current/tools/fftwf-wisdom.1
Added: vendor/fftw3/current/AUTHORS
===================================================================
--- vendor/fftw3/current/AUTHORS (rev 0)
+++ vendor/fftw3/current/AUTHORS 2008-02-22 18:31:09 UTC (rev 9503)
@@ -0,0 +1,7 @@
+Authors of FFTW (reachable at fftw at fftw.org):
+
+Matteo Frigo <athena at fftw.org>
+Stevenj G. Johnson <stevenj at alum.mit.edu>
+
+Stefan Kral <skral at fftw.org> wrote genfft-k7/*.ml*
+
Added: vendor/fftw3/current/CONVENTIONS
===================================================================
--- vendor/fftw3/current/CONVENTIONS (rev 0)
+++ vendor/fftw3/current/CONVENTIONS 2008-02-22 18:31:09 UTC (rev 9503)
@@ -0,0 +1,65 @@
+Code conventions used internally by fftw3 (not in API):
+
+LEARN FROM THE MASTERS: read Ken Thompson's C compiler in Plan 9.
+ Avoid learning from C++/Java programs.
+
+INDENTATION: K&R, 5 spaces/tab. In case of doubt, indent -kr -i5.
+
+NAMES: keep them short. Shorter than you think. The Bible was written
+ without vowels. Don't outsmart the Bible.
+
+ Common names:
+
+ R : real type, aka fftw_real
+ E : real type for local variables (possibly extra precision)
+ C : complex type
+ sz : size
+ vecsz : vector size
+ is, os : input/output stride
+ ri, ii : real/imag input (complex data)
+ ro, io : real/imag output (complex data)
+ I, O : real input/output (real data)
+ A : assert
+ CK : check
+ S : solver, defined internally to each solver file
+ P : plan, defined internally to each solver file
+ k : codelet
+ X(...) : used for mangling of external names (see below)
+ K(...) : floating-point constant, in E precision
+
+ If a name is used often and must have the form fftw_foo to avoid
+ namespace pollution, #define FOO fftw_foo and use the short name.
+
+ Leave that hungarian crap to MS. foo_t counts as hungarian: use
+ foo instead. foo is lowercase so that it does not look like a DOS
+ program. Exception: typedef struct foo_s {...} foo; instead of
+ typedef struct foo {...} foo; for C++ compatibility.
+
+NAME MANGLING: use X(foo) for external names instead of fftw_foo.
+ X(foo) expands to fftwf_foo or fftw_foo, depending on the
+ precision. (Unfortunately, this is a ugly form of hungarian
+ notation. Grrr...) Names that are not exported do not need to be
+ mangled.
+
+REPEATED CODE: favor a table. E.g., do not write
+
+ foo("xxx", 1);
+ foo("yyy", 2);
+ foo("zzz", -1);
+
+ Instead write
+
+ struct { const char *nam, int arg } footab[] = {
+ { "xxx", 1 },
+ { "yyy", 2 },
+ { "zzz", -1 }
+ };
+
+ and loop over footab. Rationale: it saves code space.
+ Similarly, replace a switch statement with a table whenever
+ possible.
+
+C++: The code should compile as a C++ program. Run the code through
+ gcc -xc++ . The extra C++ restrictions are unnecessary, of
+ course, but this will save us from a flood of complaints when
+ we release the code.
Added: vendor/fftw3/current/COPYING
===================================================================
--- vendor/fftw3/current/COPYING (rev 0)
+++ vendor/fftw3/current/COPYING 2008-02-22 18:31:09 UTC (rev 9503)
@@ -0,0 +1,340 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program 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 2 of the License, or
+ (at your option) any later version.
+
+ This program 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 this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
Added: vendor/fftw3/current/COPYRIGHT
===================================================================
--- vendor/fftw3/current/COPYRIGHT (rev 0)
+++ vendor/fftw3/current/COPYRIGHT 2008-02-22 18:31:09 UTC (rev 9503)
@@ -0,0 +1,19 @@
+/*
+ * Copyright (c) 2003, 2006 Matteo Frigo
+ * Copyright (c) 2003, 2006 Massachusetts Institute of Technology
+ *
+ * This program 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 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program 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 this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ */
Added: vendor/fftw3/current/ChangeLog
===================================================================
--- vendor/fftw3/current/ChangeLog (rev 0)
+++ vendor/fftw3/current/ChangeLog 2008-02-22 18:31:09 UTC (rev 9503)
@@ -0,0 +1,8852 @@
+2006-06-23 Steven G. Johnson <stevenj at fftw.org>
+
+ * NEWS, configure.ac, doc/FAQ/fftw-faq.bfnn, doc/fftw3.texi,
+ kernel/cycle.h, m4/acx_pthread.m4, m4/ax_cc_maxopt.m4,
+ m4/ax_gcc_archflag.m4, m4/ax_gcc_x86_cpuid.m4, threads/threads.c:
+ copy bug fixes from CVS HEAD
+
+ * api/Makefile.am: install x77.h guru.h guru64.h in pkgincludedir
+
+ * configure.ac: whitespace
+
+ * kernel/cycle.h: support cycle counter with xlc on Linux/ppc
+
+2006-06-20 Matteo Frigo <athena at fftw.org>
+
+ * tools/fftw-wisdom.c: Stylistic change.
+
+2006-06-20 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_cc_maxopt.m4: bump date
+
+ * m4/ax_cc_maxopt.m4: correct bug reported by Andrew Salamon
+ ... --enable-portable-binary was ignored (or rather, treated
+ unpredictably) due to typo, grrr
+
+2006-06-02 Steven G. Johnson <stevenj at fftw.org>
+
+ * Makefile.am, api/Makefile.am, dft/Makefile.am,
+ kernel/Makefile.am, rdft/Makefile.am, reodft/Makefile.am,
+ threads/Makefile.am: install 'internal' header files into
+ includedir/fftw3/, includedir/fftw3f/, etcetera....this will make
+ it easier to write external libraries that plug into FFTW
+ internals, e.g. to add new solvers
+
+2006-05-30 Steven G. Johnson <stevenj at fftw.org>
+
+ * threads/threads.c: bug fix, thanks to James Donald for the bug
+ report (only affects experimental semaphore stuff)
+
+ * NEWS: comment
+
+ * m4/acx_pthread.m4: whoops
+
+2006-05-27 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/acx_pthread.m4: version bump
+
+ * m4/acx_pthread.m4: only check for xlc_r/cc_r if we are not using
+ gcc
+
+2006-05-26 Steven G. Johnson <stevenj at fftw.org>
+
+ * api/fftw3.h: use ptrdiff_t (it's C89 and standard C++, hooray)
+
+ * configure.ac: version bump
+
+ * NEWS: noted 64-bit guru API
+
+ * api/fftw3.h: note that newer versions of VC++ support long long
+
+ * api/fftw3.h: try harder to get a portable 64-bit type
+
+ * api/Makefile.am, api/api.h, api/fftw3.h, api/guru.h,
+ api/guru64.h, api/mktensor-iodims.c, api/mktensor-iodims.h,
+ api/mktensor-iodims64.c, api/plan-guru-dft-c2r.c,
+ api/plan-guru-dft-c2r.h, api/plan-guru-dft-r2c.c,
+ api/plan-guru-dft-r2c.h, api/plan-guru-dft.c, api/plan-guru-dft.h,
+ api/plan-guru-r2r.c, api/plan-guru-r2r.h,
+ api/plan-guru-split-dft-c2r.c, api/plan-guru-split-dft-c2r.h,
+ api/plan-guru-split-dft-r2c.c, api/plan-guru-split-dft-r2c.h,
+ api/plan-guru-split-dft.c, api/plan-guru-split-dft.h,
+ api/plan-guru64-dft-c2r.c, api/plan-guru64-dft-r2c.c,
+ api/plan-guru64-dft.c, api/plan-guru64-r2r.c,
+ api/plan-guru64-split-dft-c2r.c, api/plan-guru64-split-dft-r2c.c,
+ api/plan-guru64-split-dft.c: added draft guru64 API
+
+2006-05-22 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/acx_pthread.m4: added FIXME note
+
+ * m4/acx_pthread.m4: check for xlc_r in addition to cc_r; thanks
+ to Guy Moebs for the bug report
+
+2006-04-21 Steven G. Johnson <stevenj at fftw.org>
+
+ * doc/FAQ/fftw-faq.bfnn: added note about gcc 4.0.1 on MacOS/Intel
+
+ * m4/ax_gcc_archflag.m4: added code for Core Duo; thanks to Eric
+ Branlund
+
+ * m4/ax_gcc_x86_cpuid.m4: fixed failure for -fPIC or for gcc-4 on
+ Apple Intel machines; thanks to Eric Branlund for the bug report
+
+2006-04-12 Matteo Frigo <athena at fftw.org>
+
+ * configure.ac: Use -maltivec when checking for altivec.h.
+
+2006-04-03 Steven G. Johnson <stevenj at fftw.org>
+
+ * doc/fftw3.texi: note planner overwriting input in planner-flags
+ reference
+
+2006-03-28 Matteo Frigo <athena at fftw.org>
+
+ * doc/FAQ/fftw-faq.bfnn: FAQ entry about --enable-k7 in 64-bit
+ mode.
+
+2006-03-28 Steven G. Johnson <stevenj at fftw.org>
+
+ * configure.ac, libbench2/report.c, tools/fftw-wisdom.c: sprintf
+ -> snprintf, to avoid (harmless) complaints by users/compilers
+
+ * kernel/align.c: silence compiler warning
+
+2006-03-17 Matteo Frigo <athena at fftw.org>
+
+ * doc/fftw3.texi: Remove dft/codelets/inplace, add
+ simd/nonportable to list of directories to be compiled on non-unix
+ systems.
+
+2006-03-04 Steven G. Johnson <stevenj at fftw.org>
+
+ * doc/fftw3.texi: whoops
+
+ * doc/fftw3.texi: note that we align the stack ourselves if
+ necessary, with gcc and icc
+
+ * doc/fftw3.texi: clearer distinction between static and automatic
+ storage in C
+
+2006-02-26 Steven G. Johnson <stevenj at fftw.org>
+
+ * libbench2/verify-lib.c: rm unused var
+
+2006-02-25 Matteo Frigo <athena at fftw.org>
+
+ * libbench2/my-getopt.c: Improved usage of goto (Dijkstra miserere
+ nostri)
+
+2006-02-25 Steven G. Johnson <stevenj at fftw.org>
+
+ * libbench2/my-getopt.h: boilerplate
+
+ * NEWS: update for upcoming 3.1.1
+
+ * tools/fftw-wisdom.c, tools/fftw_wisdom.1.in: replace obsolete
+ IMPATIENT with MEASURE
+
+ * tools/fftw-wisdom.c: corrected comment
+
+2006-02-25 Matteo Frigo <athena at fftw.org>
+
+ * tools/fftw-wisdom.c: -v does not take an argument.
+
+ * libbench2/my-getopt.c: Obey the unix convention that -ab = -a -b
+
+2006-02-25 Steven G. Johnson <stevenj at fftw.org>
+
+ * libbench2/bench-main.c, libbench2/my-getopt.c,
+ tools/fftw-wisdom.c: minor fixes (return error on unrecognized
+ option)
+
+ * tools/fftw-wisdom.c: ugh
+
+2006-02-25 Matteo Frigo <athena at fftw.org>
+
+ * libbench2/my-getopt.c: require exact match for long options.
+
+ * libbench2/my-getopt.c: better fix
+
+ * libbench2/my-getopt.c: Fix
+
+ * libbench2/Makefile.am, libbench2/bench-main.c,
+ libbench2/bench.h, libbench2/getopt-utils.c, libbench2/getopt.c,
+ libbench2/getopt.h, libbench2/getopt1.c, libbench2/my-getopt.c,
+ libbench2/my-getopt.h: nothing
+
+2006-02-20 Steven G. Johnson <stevenj at fftw.org>
+
+ * dft/indirect-transpose.c: rm transpose-indirect-inplace solver,
+ which was buggy
+
+2006-02-15 Matteo Frigo <athena at fftw.org>
+
+ * kernel/cycle.h: Comment fix.
+
+ * kernel/cycle.h: Cycle counter for Visual C++ x86-64, courtesy of
+ Dirk Michaelis
+
+2006-02-15 Steven G. Johnson <stevenj at fftw.org>
+
+ * doc/Makefile.am: rfftwnd.png is in builddir
+
+ * doc/fftw3.texi: fixed typo: --enable-portable-binary, not --with
+
+2006-02-13 Matteo Frigo <athena at fftw.org>
+
+ * dft/dftw-direct.c, rdft/hc2hc-direct.c: estimator tweaks.
+
+ * simd/simd-sse.h, simd/simd-sse2.h: sse/sse2 support for t3?v
+ codelets
+
+ * simd/simd-altivec.h: Use CEXP instead of SIN/COS.
+
+ * genfft/oracle.ml: bug in randomized cse eliminator.
+
+2006-02-12 Matteo Frigo <athena at fftw.org>
+
+ * dft/simd/Makefile.am, dft/simd/codelets/Makefile.am,
+ dft/simd/t3b.h, dft/simd/t3f.h, genfft/algsimp.ml,
+ genfft/annotate.ml, genfft/c.ml, genfft/c.mli, genfft/complex.ml,
+ genfft/complex.mli, genfft/expr.ml, genfft/expr.mli,
+ genfft/gen_athtw.ml, genfft/gen_conv.ml, genfft/gen_hc2hc.ml,
+ genfft/gen_hc2r.ml, genfft/gen_mdct.ml, genfft/gen_notw.ml,
+ genfft/gen_notw_c.ml, genfft/gen_r2hc.ml, genfft/gen_r2r.ml,
+ genfft/gen_twiddle.ml, genfft/gen_twiddle_c.ml,
+ genfft/gen_twidsq.ml, genfft/gen_twidsq_c.ml, genfft/magic.ml,
+ genfft/oracle.ml, genfft/schedule.ml, genfft/simd.ml,
+ genfft/to_alist.ml, genfft/trig.ml, genfft/twiddle.ml,
+ genfft/twiddle.mli, simd/simd-altivec.h: Added support for
+ t2-style simd codelets. This is altivec only for now; sse/sse2
+ don't even compile yet.
+
+ * dft/simd/Makefile.am, dft/simd/codelets/Makefile.am,
+ dft/simd/t1s.c, dft/simd/t1s.h, dft/simd/ts.c, dft/simd/ts.h,
+ genfft/twiddle.ml: Added support for t2-style simd split-complex
+ codelets.
+
+2006-02-10 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_openmp.m4: *** empty log message ***
+
+ * m4/ax_openmp.m4: punctuation
+
+ * api/f77api.c, api/f77funcs.h: windows DLL stuff for Fortran
+ interface
+
+2006-02-10 Matteo Frigo <athena at fftw.org>
+
+ * configure.ac: Bumped version to 3.1.1
+
+ * kernel/ifftw.h: Precompute array indices on x86-64. Speeds up
+ Pentium IV and makes no appreciable difference on AMD.
+
+2006-02-08 Matteo Frigo <athena at fftw.org>
+
+ * simd/Makefile.am, simd/sse.c, simd/sse2.c, simd/x86-cpuid.h:
+ Check whether the processor supports CPUID before issuing the
+ instruction. (Grrr...) Code contributed by Eric J. Korpela.
+
+ * kernel/cycle.h: icc supports x86_64 these days.
+
+2006-02-05 Matteo Frigo <athena at fftw.org>
+
+ * kernel/primes.c: Paranoia.
+
+2006-01-30 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/primes.c: whoops, fixed assert (y <= x)
+
+ * kernel/primes.c: note that safe_mulmod requires {x,y} < p (or at
+ least < 2p), and added assert
+
+2006-01-30 Matteo Frigo <athena at fftw.org>
+
+ * libbench2/bench-user.h, libbench2/timer.c: fixed aix/xlc lossage
+
+ * libbench2/verify-lib.c: In the impuse test, normalize the
+ impulse so that the impulse and the random vectors have roughly
+ the same L2 norm. This change reduces the number of bits that we
+ lose because of floating-point cancellation, so that we can focus
+ on the bits that we lose because of bugs.
+
+ * rdft/dht-rader.c: Compute omega in trigreal precision, as
+ opposed to R.
+
+2006-01-28 Steven G. Johnson <stevenj at fftw.org>
+
+ * Makefile.am, configure.ac, tests/Makefile.am,
+ threads/Makefile.am, tools/Makefile.am: add
+ --with-combined-threads option as workaround to Windows inability
+ to build shared libs with dependencies
+
+2006-01-27 Steven G. Johnson <stevenj at fftw.org>
+
+ * threads/Makefile.am: libfftw3_threads should *not* used
+ -no-undefined because, in fact, it is not true -- this library
+ depends on -lfftw3, and is not self-contained
+
+ * NEWS: updated
+
+2006-01-27 Matteo Frigo <athena at fftw.org>
+
+ * api/apiplan.c, dft/bluestein.c, dft/buffered.c, dft/ct.c,
+ dft/ctsq.c, dft/dftw-generic.c, dft/dftw-genericbuf.c,
+ dft/indirect-transpose.c, dft/indirect.c, dft/rader.c,
+ dft/rank-geq2.c, dft/vrank-geq1.c, kernel/ifftw.h, kernel/timer.c,
+ rdft/buffered.c, rdft/buffered2.c, rdft/dft-r2hc.c,
+ rdft/dht-r2hc.c, rdft/dht-rader.c, rdft/hc2hc-direct.c,
+ rdft/hc2hc-directbuf.c, rdft/hc2hc-generic.c, rdft/hc2hc.c,
+ rdft/indirect.c, rdft/rank-geq2-rdft2.c, rdft/rank-geq2.c,
+ rdft/rank0-rdft2.c, rdft/rdft-dht.c, rdft/rdft2-radix2.c,
+ rdft/vrank-geq1-rdft2.c, rdft/vrank-geq1.c,
+ rdft/vrank3-transpose.c, reodft/redft00e-r2hc-pad.c,
+ reodft/redft00e-r2hc.c, reodft/reodft00e-splitradix.c,
+ reodft/reodft010e-r2hc.c, reodft/reodft11e-r2hc-odd.c,
+ reodft/reodft11e-r2hc.c, reodft/reodft11e-radix2.c,
+ reodft/rodft00e-r2hc-pad.c, reodft/rodft00e-r2hc.c, tests/hook.c,
+ threads/ct.c, threads/dft-vrank-geq1.c, threads/hc2hc.c,
+ threads/rdft-vrank-geq1.c, threads/vrank-geq1-rdft2.c: Added
+ paranoid stack alignment when awaking plans. While I was at it,
+ removed obsolete, redundant AWAKE macro.
+
+ * NEWS: Updated for 3.1.
+
+ * TODO, libbench2/bench-main.c: ditched one alignment check and
+ noted that we should eliminate the rest as well
+
+2006-01-26 Matteo Frigo <athena at fftw.org>
+
+ * libbench2/bench-main.c: alignment hack
+
+ * m4/ax_gcc_archflag.m4: detect pentium M
+
+2006-01-25 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_gcc_archflag.m4: don't trust host_cpu if it claims we are
+ on i386/i486, and call cpuid anyway (if it fails we use no arch
+ flag). This is needed on FreeBSD
+
+ * kernel/kalloc.c: suggest --with-our-malloc16 in error message
+
+ * configure.ac: ditto for -no-gcc
+
+ * configure.ac: flags required for successfull compilation should
+ be added even if the user overrides CFLAGS
+
+2006-01-24 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_openmp.m4: upcoming gcc OpenMP support uses -fopenmp
+
+ * m4/ax_openmp.m4: note that PGI uses -mp as well
+
+2006-01-23 Matteo Frigo <athena at fftw.org>
+
+ * kernel/cycle.h, simd/sse.c, simd/sse2.c: my best guess at how to
+ fix the microsoft crap du jour
+
+2006-01-23 Steven G. Johnson <stevenj at fftw.org>
+
+ * configure.ac, kernel/cycle.h: use -Masmkeyword for PGI cycle
+ counter, grr
+
+2006-01-22 Matteo Frigo <athena at fftw.org>
+
+ * configure.ac: Bumped version number to 3.1.
+
+2006-01-21 Matteo Frigo <athena at fftw.org>
+
+ * configure.ac: Report that --enable-k7 is incompatible with
+ --enable-shared.
+
+ * Makefile.am: Do not use empty libraries in LIBADD, since
+ otherwise the linker fails on Solaris.
+
+2006-01-18 Steven G. Johnson <stevenj at fftw.org>
+
+ * bootstrap.sh: warn end-users away from this file
+
+2006-01-17 Matteo Frigo <athena at fftw.org>
+
+ * simd/simd-sse.h: Gcc sucks.
+
+ * tests/hook.c: Disabled checks that may turn out to be too
+ paranoid.
+
+ * tests/hook.c: Some paranoid checks.
+
+ * libbench2/ovtpvt.c: Flush stdout after printing.
+
+ * kernel/alloc.c, tests/bench.c: Run the leak detector in all
+ cases, not just when verbose > 2.
+
+ * api/mapflags.c: Eliminate calls to pow(), rint().
+
+2006-01-17 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/ifftw.h: put # in first column, for stylistic consistency
+
+2006-01-17 Matteo Frigo <athena at fftw.org>
+
+ * api/mapflags.c, kernel/ifftw.h, kernel/planner.c: Made timeout
+ part of impatience flags, in order to improve the usability of
+ wisdom. Also, fixed bogus error recovery logic in
+ planner.c:imprt().
+
+2006-01-17 Steven G. Johnson <stevenj at fftw.org>
+
+ * api/apiplan.c, api/fftw3.h, doc/fftw3.texi, kernel/planner.c:
+ make timelimit < 0 .eq. FFTW_NO_TIMELIMIT
+
+2006-01-17 Matteo Frigo <athena at fftw.org>
+
+ * api/apiplan.c, api/fftw3.h, api/the-planner.c, doc/fftw3.texi,
+ kernel/planner.c, tests/bench.c: Eliminated the FFTW_TIMELIMIT
+ flag in favor of this simpler logic: fftw_set_timelimit(0)
+ disables time limit. fftw_set_timelimit(X), X>0 sets the time
+ limit to X.
+
+2006-01-16 Matteo Frigo <athena at fftw.org>
+
+ * api/apiplan.c: Force the use of the estimator when wisdom fails
+ because of md5 collisions, otherwise the planner takes forever.
+
+ * kernel/ifftw.h: Ranted about how broken gcc-4 is.
+
+2006-01-16 Steven G. Johnson <stevenj at fftw.org>
+
+ * api/apiplan.c, api/fftw3.h, doc/fftw3.texi, tests/bench.c:
+ change fftw_timelimit global var to fftw_set_timelimit(double)
+ function, for simpler usage with shared libraries and for
+ consistency with e.g. set_numthreads
+
+2006-01-16 Matteo Frigo <athena at fftw.org>
+
+ * doc/fftw3.texi: Minor tweaks.
+
+2006-01-15 Matteo Frigo <athena at fftw.org>
+
+ * libbench2/timer.c: tweaks to make sure that time_n() is always
+ called from the same stack position.
+
+ * libbench2/bench.h, libbench2/speed.c, libbench2/timer.c,
+ libbench2/timer2.c: Major simplification of the timer calibration
+ logic. Also, use an FFT as a unit of work instead of the old
+ pointer chasing, because God knows how pointer chasing interacts
+ with the idiotic cache-hit speculation on the Pentium IV.
+
+ * kernel/align.c: Fixed broken aligment checks when sizeof(R)==12.
+
+ * libbench2/timer2.c: Manual unrolling of loop.
+
+ * libbench2/Makefile.am, libbench2/bench.h, libbench2/timer.c,
+ libbench2/timer2.c: Various improvements to timer calibration
+ routines.
+
+ * libbench2/timer.c: cygwin defines __CYGWIN__, not __WIN32__ etc.
+
+ * libbench2/bench-user.h, libbench2/speed.c, libbench2/timer.c,
+ tests/bench.c: fixed confusion between libbench and user timers
+
+2006-01-14 Steven G. Johnson <stevenj at fftw.org>
+
+ * NEWS: update
+
+2006-01-14 Matteo Frigo <athena at fftw.org>
+
+ * simd/simd-sse.h: Comment.
+
+ * simd/simd-sse.h: Workaround gcc bug.
+
+ * configure.ac: Switched to -beta2.
+
+2006-01-13 Matteo Frigo <athena at fftw.org>
+
+ * rdft/buffered.c, rdft/indirect.c, rdft/problem.c,
+ rdft/rank0-rdft2.c, rdft/rdft.h, rdft/vrank3-transpose.c: Fixed
+ technically correct but highly obfuscated use of the enum tag R2HC
+ as a null pointer.
+
+2006-01-13 Steven G. Johnson <stevenj at fftw.org>
+
+ * configure.ac: --enable-unsafe-mulmod is obsolete
+
+2006-01-13 Matteo Frigo <athena at fftw.org>
+
+ * TODO: More thoughts.
+
+ * rdft/buffered2.c: Removed loop unrolling because it slows things
+ down on at least one powerpc and it generates clumsy x86 code.
+
+2006-01-13 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/kalloc.c: tweaks
+
+2006-01-12 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/ifftw.h: MacOSX x86 ABI specifies that the stack is kept
+ 16-byte aligned
+
+2006-01-12 Matteo Frigo <athena at fftw.org>
+
+ * kernel/cycle.h: ``ret'' is a reserved word in the evil empire.
+
+ * simd/sse2.c, simd/sse.c: Changed ret => result because ret ``is
+ a reserved word'' in the evil empire.
+
+ * simd/simd-sse2.h: Workaround Visual c++ lossage.
+
+ * simd/simd-sse.h: Workaround visual c++ lossage.
+
+ * libbench2/getopt-utils.c: isprint() is guaranteed to work for
+ unsigned char + EOF only.
+
+2006-01-11 Steven G. Johnson <stevenj at fftw.org>
+
+ * rdft/vrank3-transpose.c: rm obsolete fixme
+
+ * rdft/vrank3-transpose.c: *** empty log message ***
+
+ * rdft/vrank3-transpose.c: fix comment
+
+2006-01-11 Matteo Frigo <athena at fftw.org>
+
+ * dft/bluestein.c, rdft/buffered2.c, rdft/dht-rader.c,
+ rdft/rank0-rdft2.c, reodft/rodft00e-r2hc-pad.c: Paranoid use of
+ K(x) for all constants x, to avoid runtime double->float
+ conversions on sufficiently stupid compilers.
+
+ * simd/simd-sse.h: Workaround to gcc nonsense.
+
+2006-01-10 Steven G. Johnson <stevenj at fftw.org>
+
+ * rdft/vrank3-transpose.c: bug fix: infinite loop in transpose-cut
+ planning
+
+ * api/fftw3.h: clarified comment
+
+ * tests/bench.c: more Windows decorations
+
+ * support/Makefile.codelets: added FIXME comment
+
+ * support/Makefile.codelets: 'make clean' should not delete
+ codlist.c since it is included in the dist tarball
+
+2006-01-10 Matteo Frigo <athena at fftw.org>
+
+ * dft/dftw-direct.c: Change threshold for ``large'' Cooley-Tukey
+ to 256K from 64K, since it seems to benefit the Pentium IV with
+ sse and the planning cost is not too horrible.
+
+2006-01-10 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/ifftw.h: more missing Windows DLL decorations
+
+ * rdft/dht-rader.c: remove unused var
+
+ * threads/threads.c: allow compiler threads, if enabled, to take
+ precedence over explicit threads
+
+ * api/api.h, kernel/planner.c: *** empty log message ***
+
+2006-01-10 Matteo Frigo <athena at fftw.org>
+
+ * kernel/planner.c: Fixed comment typo.
+
+ * kernel/planner.c: Rearranged timeout checks so as to eliminate
+ one of them.
+
+ * kernel/plan.c: Converted residual CK() -> A().
+
+ * kernel/planner.c: Maintain the invariant TIMED_OUT ==>
+ NEED_TIMEOUT_CHECK.
+
+ * api/mapflags.c, dft/rank-geq2.c, dft/vrank-geq1.c,
+ kernel/buffered.c, kernel/md5.c, kernel/scan.c,
+ rdft/rank-geq2-rdft2.c, rdft/rank-geq2.c, rdft/vrank-geq1-rdft2.c,
+ rdft/vrank-geq1.c, threads/dft-vrank-geq1.c,
+ threads/rdft-vrank-geq1.c, threads/vrank-geq1-rdft2.c: silence
+ some 64-bit warnings
+
+ * tests/hook.c: Assertions.
+
+2006-01-10 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/timer.c: some condensing
+
+ * api/apiplan.c, kernel/ifftw.h, kernel/planner.c, kernel/timer.c:
+ eliminate X(seconds) in favor of X(elapsed_since), in paranoia of
+ clock wrap
+
+ * kernel/timer.c: *** empty log message ***
+
+ * kernel/timer.c: hmm, a bit more pessimistic about clock wrapping
+
+2006-01-10 Matteo Frigo <athena at fftw.org>
+
+ * configure.ac, kernel/ifftw.h: Revert to md5uint = unsigned int
+ whenever possible, so as to avoid wasting space for unsigned long
+ on 64-bit machines.
+
+2006-01-10 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/timer.c: note why clock() wrap should not be a concern
+
+ * kernel/planner.c: bugfix in recent timeout changes - check for
+ case where last solver times out
+
+ * NEWS: started changes list from beta
+
+2006-01-10 Matteo Frigo <athena at fftw.org>
+
+ * api/mapflags.c: Paranoia.
+
+ * kernel/planner.c: Paranoid assertions.
+
+ * tests/hook.c: Added FIXME comment stating the 64-bit
+ uncleaniness of fftw_tensor_to_bench_tensor().
+
+ * dft/simd/t.c: Another 64-bit bug.
+
+2006-01-10 Steven G. Johnson <stevenj at fftw.org>
+
+ * api/api.h, kernel/ifftw.h, tests/hook.c: more Windows DLL
+ nonsense
+
+ * api/api.h, kernel/ifftw.h: some additional dllexport tags
+ required to build the test program, due to internal stuff called
+ by hook.c
+
+ * api/fftw3.h: *** empty log message ***
+
+ * api/fftw3.h: comment
+
+ * api/fftw3.h, api/api.h: *** empty log message ***
+
+ * api/fftw3.h: clarification
+
+ * api/api.h: define FFTW_DLL if DLL_EXPORT (defined by libtool) is
+ supplied
+
+ * api/fftw3.h: whoops
+
+ * api/fftw3.h: another stab at Windows DLL mess
+
+2006-01-10 Matteo Frigo <athena at fftw.org>
+
+ * simd/simd-altivec.h, simd/simd-sse.h, simd/simd-sse2.h: 64-bit
+ clean SIMD header file. I missed those because sparse does not
+ know vector types. Grrr...
+
+2006-01-10 Steven G. Johnson <stevenj at fftw.org>
+
+ * configure.ac: this option is called AC_DISABLE_SHARED in the
+ documentation
+
+2006-01-09 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_gcc_archflag.m4: fixed --with-gcc-arch to work when
+ cross-compiling
+
+2006-01-09 Matteo Frigo <athena at fftw.org>
+
+ * api/apiplan.c, kernel/ifftw.h, kernel/planner.c: Moved the
+ timeout check back into the search loop, sicut erat in principio.
+ This gives us a precise control over the timeout. To avoid the
+ overhead of X(seconds)(), only call X(seconds)() if some time
+ measurement was taken since the last call to X(seconds)().
+
+2006-01-09 Steven G. Johnson <stevenj at fftw.org>
+
+ * rdft/vrank3-transpose.c: comments
+
+ * rdft/vrank3-transpose.c: generalized transpose-cut routine to be
+ able to call transpose-gcd recursivly; TOMS follow-the-cycles
+ algorithm now seems to be completely superseded
+
+ * threads/threads.c: *** empty log message ***
+
+ * threads/threads.c: ignore errors from setscope -- POSIX standard
+ does not require PTHREAD_SCOPE_SYSTEM to be supported, and
+ PTHREAD_SCOPE_PROCESS is usually okay in that case
+
+2006-01-08 Steven G. Johnson <stevenj at fftw.org>
+
+ * rdft/vrank3-transpose.c: added TODO comment
+
+ * rdft/vrank3-transpose.c: whoops
+
+2006-01-08 Matteo Frigo <athena at fftw.org>
+
+ * NEWS: Boasted ``much faster altivec performance''.
+
+ * configure.ac, dft/simd/codelets/Makefile.am, genfft/annotate.ml,
+ genfft/magic.ml, genfft/schedule.ml, support/Makefile.codelets,
+ support/twovers.sh: Added a new pass to the generator to schedule
+ for the pipeline latency. (This schedule modifies the ``optimal''
+ cache-oblivious schedule and hence it uses more registers.)
+
+ This pass is currently:
+
+ * disabled for non-fma code, under the assumption that this will
+ run on a register-starved fma.
+
+ * enabled for non-simd fma code, under the assumption that this
+ will run on a processor with 32 or more FP registers. The
+ latency of 4 is conservative and does not introduce too much
+ register pressure.
+
+ * enabled for simd fma code, under the assumption that this will
+ run on altivec. The latency of 8 seems to produce the best
+ results.
+
+2006-01-08 Steven G. Johnson <stevenj at fftw.org>
+
+ * rdft/vrank3-transpose.c: fixed estimator for vrank3-transpose
+
+ * NEWS: more detail on VC++ workaround
+
+ * rdft/vrank3-transpose.c: typo
+
+ * rdft/vrank3-transpose.c: screw it, just use planner for all
+ sub-transposes in vrank3-transpose (still just use memcpy for
+ contiguous copies, though)
+
+ * kernel/tile2d.c: add an assert
+
+ * kernel/ifftw.h, rdft/rank0.c, rdft/vrank3-transpose.c:
+ vrank3-transpose now uses planner to decide whether to use cpy2d,
+ cpy2d_tiled, etc.
+
+ * kernel/primes.c: too annoying to have isqrt unexpectedly fail
+ for n==0
+
+2006-01-07 Steven G. Johnson <stevenj at fftw.org>
+
+ * NEWS, doc/fftw3.texi: clarifications
+
+ * rdft/vrank3-transpose.c: comment fix
+
+ * doc/FAQ/fftw-faq.bfnn: more faq updates
+
+ * configure.ac, doc/FAQ/fftw-faq.bfnn: enable fma on hppa, update
+ FAQ entry
+
+2006-01-07 Matteo Frigo <athena at fftw.org>
+
+ * dft/simd/t.c: Accomodate different semantics of 'const' in C and
+ C++
+
+ * NEWS: Altivec is called VMX in IBM land.
+
+ * NEWS: Noted faster altivec support.
+
+2006-01-07 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_cc_maxopt.m4: updated icc flag detection
+
+2006-01-06 Matteo Frigo <athena at fftw.org>
+
+ * TODO: Note ``memoize triggen''.
+
+ * mkdist.sh: Use --enable-threads to generate dependencies in the
+ threads/ directory.
+
+ * kernel/ifftw.h: Workaround to icc #defining __GNUC__.
+
+ * configure.ac: Switched name to 3.1-beta1.
+
+ * TODO: More thoughts.
+
+ * TODO: Note wish that (block_size % 4) == 0.
+
+ * dft/codelet-dft.h, dft/codelets/t.c, dft/ctsq.c,
+ dft/dftw-direct.c, dft/k7/k7.c, dft/simd/q1b.c, dft/simd/q1f.c,
+ dft/simd/t.c, dft/simd/t1s.c, threads/ct.c, threads/hc2hc.c: Check
+ alignment of mstart, mcount in SIMD codelets.
+
+ * bootstrap.sh: Enable threads at bootstrap time, so I get the
+ compiler warnings that I would otherwise ignore.
+
+2006-01-05 Matteo Frigo <athena at fftw.org>
+
+ * threads/dft-vrank-geq1.c, threads/rdft-vrank-geq1.c,
+ threads/vrank-geq1-rdft2.c: made compilable by c++
+
+ * kernel/twiddle.c: FIXED: incorrect twiddle_shift()
+
+ * reodft/redft00e-r2hc.c, reodft/reodft11e-r2hc.c,
+ reodft/rodft00e-r2hc.c, threads/ct.c, threads/dft-vrank-geq1.c,
+ threads/hc2hc.c, threads/rdft-vrank-geq1.c,
+ threads/vrank-geq1-rdft2.c: Replaced remnants of awake flag with
+ the new enum wakefulness type.
+
+ * kernel/planner.c: Oops---there is no need to find a free slot.
+
+ * kernel/planner.c: Assertions.
+
+ * kernel/planner.c: Commented the hash table lookup algorithm.
+
+ * kernel/planner.c: Fixed infinite loop in hashtable
+ lookup/insert. Grrr...
+
+2006-01-05 Steven G. Johnson <stevenj at fftw.org>
+
+ * COPYRIGHT, api/api.h, api/apiplan.c, api/configure.c,
+ api/execute-dft-c2r.c, api/execute-dft-r2c.c, api/execute-dft.c,
+ api/execute-r2r.c, api/execute-split-dft-c2r.c,
+ api/execute-split-dft-r2c.c, api/execute-split-dft.c,
+ api/execute.c, api/export-wisdom-to-file.c,
+ api/export-wisdom-to-string.c, api/export-wisdom.c,
+ api/extract-reim.c, api/f77api.c, api/f77funcs.h, api/fftw3.h,
+ api/flops.c, api/forget-wisdom.c, api/import-system-wisdom.c,
+ api/import-wisdom-from-file.c, api/import-wisdom-from-string.c,
+ api/import-wisdom.c, api/malloc.c, api/map-r2r-kind.c,
+ api/mapflags.c, api/mkprinter-file.c, api/mktensor-iodims.c,
+ api/mktensor-rowmajor.c, api/plan-dft-1d.c, api/plan-dft-2d.c,
+ api/plan-dft-3d.c, api/plan-dft-c2r-1d.c, api/plan-dft-c2r-2d.c,
+ api/plan-dft-c2r-3d.c, api/plan-dft-c2r.c, api/plan-dft-r2c-1d.c,
+ api/plan-dft-r2c-2d.c, api/plan-dft-r2c-3d.c, api/plan-dft-r2c.c,
+ api/plan-dft.c, api/plan-guru-dft-c2r.c, api/plan-guru-dft-r2c.c,
+ api/plan-guru-dft.c, api/plan-guru-r2r.c,
+ api/plan-guru-split-dft-c2r.c, api/plan-guru-split-dft-r2c.c,
+ api/plan-guru-split-dft.c, api/plan-many-dft-c2r.c,
+ api/plan-many-dft-r2c.c, api/plan-many-dft.c, api/plan-many-r2r.c,
+ api/plan-r2r-1d.c, api/plan-r2r-2d.c, api/plan-r2r-3d.c,
+ api/plan-r2r.c, api/print-plan.c, api/rdft2-pad.c,
+ api/the-planner.c, api/version.c, api/x77.h, dft/bluestein.c,
+ dft/buffered.c, dft/codelet-dft.h, dft/codelets/n.c,
+ dft/codelets/n.h, dft/codelets/t.c, dft/codelets/t.h, dft/conf.c,
+ dft/ct.c, dft/ct.h, dft/ctsq.c, dft/dft.h, dft/dftw-direct.c,
+ dft/dftw-generic.c, dft/dftw-genericbuf.c, dft/direct.c,
+ dft/generic.c, dft/indirect-transpose.c, dft/indirect.c,
+ dft/k7/k7.c, dft/kdft-dif.c, dft/kdft-difsq.c, dft/kdft-dit.c,
+ dft/kdft.c, dft/nop.c, dft/plan.c, dft/problem.c, dft/rader.c,
+ dft/rank-geq2.c, dft/simd/n1b.c, dft/simd/n1b.h, dft/simd/n1f.c,
+ dft/simd/n1f.h, dft/simd/n2b.c, dft/simd/n2b.h, dft/simd/n2f.c,
+ dft/simd/n2f.h, dft/simd/n2s.c, dft/simd/n2s.h, dft/simd/q1b.c,
+ dft/simd/q1b.h, dft/simd/q1f.c, dft/simd/q1f.h, dft/simd/t.c,
+ dft/simd/t1b.h, dft/simd/t1f.h, dft/simd/t1s.c, dft/simd/t1s.h,
+ dft/simd/t2b.h, dft/simd/t2f.h, dft/solve.c, dft/vrank-geq1.c,
+ dft/zero.c, doc/f77_wisdom.f, doc/fftw3.texi,
+ genfft-k7/algsimp.ml, genfft-k7/algsimp.mli,
+ genfft-k7/assoctable.ml, genfft-k7/assoctable.mli,
+ genfft-k7/complex.ml, genfft-k7/complex.mli, genfft-k7/expr.ml,
+ genfft-k7/expr.mli, genfft-k7/fft.ml, genfft-k7/gen_notw.ml,
+ genfft-k7/littlesimp.ml, genfft-k7/littlesimp.mli,
+ genfft-k7/monads.ml, genfft-k7/number.ml, genfft-k7/number.mli,
+ genfft-k7/oracle.ml, genfft-k7/oracle.mli, genfft-k7/to_alist.ml,
+ genfft-k7/to_alist.mli, genfft-k7/twiddle.ml,
+ genfft-k7/twiddle.mli, genfft-k7/vScheduler.mli,
+ genfft/algsimp.ml, genfft/algsimp.mli, genfft/annotate.ml,
+ genfft/annotate.mli, genfft/assoctable.ml, genfft/assoctable.mli,
+ genfft/c.ml, genfft/c.mli, genfft/complex.ml, genfft/complex.mli,
+ genfft/conv.ml, genfft/conv.mli, genfft/dag.ml, genfft/dag.mli,
+ genfft/expr.ml, genfft/expr.mli, genfft/fft.ml, genfft/fft.mli,
+ genfft/gen_athnotw.ml, genfft/gen_athtw.ml, genfft/gen_conv.ml,
+ genfft/gen_hc2hc.ml, genfft/gen_hc2r.ml, genfft/gen_mdct.ml,
+ genfft/gen_notw.ml, genfft/gen_notw_c.ml, genfft/gen_r2hc.ml,
+ genfft/gen_r2r.ml, genfft/gen_twiddle.ml, genfft/gen_twiddle_c.ml,
+ genfft/gen_twidsq.ml, genfft/gen_twidsq_c.ml, genfft/genutil.ml,
+ genfft/littlesimp.ml, genfft/littlesimp.mli, genfft/magic.ml,
+ genfft/monads.ml, genfft/number.ml, genfft/number.mli,
+ genfft/oracle.ml, genfft/oracle.mli, genfft/schedule.ml,
+ genfft/schedule.mli, genfft/simd.ml, genfft/simd.mli,
+ genfft/simdmagic.ml, genfft/to_alist.ml, genfft/to_alist.mli,
+ genfft/trig.ml, genfft/trig.mli, genfft/twiddle.ml,
+ genfft/twiddle.mli, genfft/unique.ml, genfft/unique.mli,
+ genfft/util.ml, genfft/util.mli, genfft/variable.ml,
+ genfft/variable.mli, kernel/align.c, kernel/alloc.c,
+ kernel/assert.c, kernel/awake.c, kernel/buffered.c,
+ kernel/cpy1d.c, kernel/cpy2d-pair.c, kernel/cpy2d.c, kernel/ct.c,
+ kernel/cycle.h, kernel/debug.c, kernel/hash.c, kernel/iabs.c,
+ kernel/ifftw.h, kernel/kalloc.c, kernel/md5-1.c, kernel/md5.c,
+ kernel/minmax.c, kernel/ops.c, kernel/pickdim.c, kernel/plan.c,
+ kernel/primes.c, kernel/print.c, kernel/problem.c, kernel/rader.c,
+ kernel/scan.c, kernel/solver.c, kernel/solvtab.c, kernel/stride.c,
+ kernel/tensor.c, kernel/tensor1.c, kernel/tensor2.c,
+ kernel/tensor4.c, kernel/tensor5.c, kernel/tensor7.c,
+ kernel/tensor8.c, kernel/tensor9.c, kernel/tile2d.c,
+ kernel/timer.c, kernel/transpose.c, kernel/trig.c,
+ kernel/twiddle.c, libbench/accopy-from.c, libbench/accopy-to.c,
+ libbench/allocate.c, libbench/bench-main.c, libbench/bench-user.h,
+ libbench/bench.h, libbench/can-do.c, libbench/ccopy-from.c,
+ libbench/ccopy-to.c, libbench/deallocate.c,
+ libbench/getopt-utils.c, libbench/info.c, libbench/main.c,
+ libbench/prime.c, libbench/problem.c, libbench/report.c,
+ libbench/speed.c, libbench/timer.c, libbench/verify.c,
+ libbench/zero.c, libbench2/aligned-main.c, libbench2/allocate.c,
+ libbench2/can-do.c, libbench2/dotens2.c, libbench2/getopt-utils.c,
+ libbench2/info.c, libbench2/main.c, libbench2/report.c,
+ libbench2/tensor.c, libbench2/useropt.c, libbench2/verify-dft.c,
+ libbench2/verify-lib.c, libbench2/verify-r2r.c,
+ libbench2/verify-rdft2.c, libbench2/verify.c, libbench2/verify.h,
+ libbench2/zero.c, m4/ax_gcc_archflag.m4, rdft/buffered.c,
+ rdft/buffered2.c, rdft/codelet-rdft.h, rdft/codelets/hb.h,
+ rdft/codelets/hc2r.c, rdft/codelets/hc2r.h,
+ rdft/codelets/hc2rIII.h, rdft/codelets/hf.h, rdft/codelets/hfb.c,
+ rdft/codelets/r2hc.c, rdft/codelets/r2hc.h,
+ rdft/codelets/r2hcII.h, rdft/codelets/r2r.c, rdft/codelets/r2r.h,
+ rdft/conf.c, rdft/dft-r2hc.c, rdft/dht-r2hc.c, rdft/dht-rader.c,
+ rdft/direct.c, rdft/direct2.c, rdft/generic.c,
+ rdft/hc2hc-common.c, rdft/hc2hc-direct.c, rdft/hc2hc-directbuf.c,
+ rdft/hc2hc-generic.c, rdft/hc2hc.c, rdft/hc2hc.h, rdft/indirect.c,
+ rdft/khc2hc.c, rdft/khc2r.c, rdft/kr2hc.c, rdft/kr2r.c,
+ rdft/nop.c, rdft/nop2.c, rdft/plan.c, rdft/plan2.c,
+ rdft/problem.c, rdft/problem2.c, rdft/rank-geq2-rdft2.c,
+ rdft/rank-geq2.c, rdft/rank0-rdft2.c, rdft/rank0.c,
+ rdft/rdft-dht.c, rdft/rdft.h, rdft/rdft2-inplace-strides.c,
+ rdft/rdft2-radix2.c, rdft/rdft2-strides.c,
+ rdft/rdft2-tensor-max-index.c, rdft/solve.c, rdft/solve2.c,
+ rdft/vrank-geq1-rdft2.c, rdft/vrank-geq1.c,
+ rdft/vrank3-transpose.c, reodft/conf.c,
+ reodft/redft00e-r2hc-pad.c, reodft/redft00e-r2hc.c,
+ reodft/reodft.h, reodft/reodft010e-r2hc.c,
+ reodft/reodft11e-r2hc-odd.c, reodft/reodft11e-r2hc.c,
+ reodft/reodft11e-radix2.c, reodft/rodft00e-r2hc-pad.c,
+ reodft/rodft00e-r2hc.c, simd/altivec.c, simd/nonportable/sse.c,
+ simd/nonportable/sse2.c, simd/simd-altivec.h, simd/simd-sse.h,
+ simd/simd-sse2.h, simd/simd.h, simd/sse.c, simd/sse2.c,
+ simd/taint.c, threads/api.c, threads/conf.c, threads/ct.c,
+ threads/dft-vrank-geq1.c, threads/f77api.c, threads/f77funcs.h,
+ threads/hc2hc.c, threads/rdft-vrank-geq1.c, threads/threads.c,
+ threads/threads.h, threads/vrank-geq1-rdft2.c,
+ tools/fftw-wisdom-to-conf.1, tools/fftw-wisdom-to-conf.in,
+ tools/fftw-wisdom.c, tools/fftw_wisdom.1.in: updated copyright
+ years to 2006
+
+ * m4/ax_gcc_archflag.m4: whoops
+
+ * m4/ax_gcc_archflag.m4: more updates for recent pentia/amd
+
+2006-01-05 Matteo Frigo <athena at fftw.org>
+
+ * TODO: Pruned TODO.
+
+ * libbench2/bench-user.h, libbench2/bench.h: Prototype of
+ problem_destroy()
+
+2006-01-05 Steven G. Johnson <stevenj at fftw.org>
+
+ * TODO: rm obsoleted TODOs
+
+2006-01-05 Matteo Frigo <athena at fftw.org>
+
+ * m4/ax_gcc_archflag.m4: Fallback to 970 if neither -mcpu=power5
+ nor -mcpu=power4 are supported.
+
+2006-01-05 Steven G. Johnson <stevenj at fftw.org>
+
+ * NEWS: NEWS updates, clarifications, and reorganization
+
+ * dft/dftw-genericbuf.c, kernel/planner.c, kernel/trig.c,
+ m4/ax_gcc_x86_cpuid.m4, rdft/dft-r2hc.c: remove some compiler
+ warnings, add an assert check, make estimator work properly for
+ nop plans
+
+2006-01-04 Matteo Frigo <athena at fftw.org>
+
+ * api/apiplan.c, api/fftw3.h, api/mapflags.c, configure.ac,
+ dft/bluestein.c, dft/buffered.c, dft/ct.c, dft/ctsq.c,
+ dft/dftw-direct.c, dft/dftw-generic.c, dft/dftw-genericbuf.c,
+ dft/direct.c, dft/generic.c, dft/indirect-transpose.c,
+ dft/indirect.c, dft/rader.c, dft/rank-geq2.c, dft/vrank-geq1.c,
+ genfft/twiddle.ml, kernel/awake.c, kernel/ifftw.h, kernel/plan.c,
+ kernel/planner.c, kernel/timer.c, kernel/trig.c, kernel/twiddle.c,
+ libbench2/bench-main.c, libbench2/bench.h, libbench2/problem.c,
+ libbench2/speed.c, rdft/buffered.c, rdft/buffered2.c,
+ rdft/dft-r2hc.c, rdft/dht-r2hc.c, rdft/dht-rader.c, rdft/direct.c,
+ rdft/direct2.c, rdft/generic.c, rdft/hc2hc-direct.c,
+ rdft/hc2hc-directbuf.c, rdft/hc2hc-generic.c, rdft/hc2hc.c,
+ rdft/indirect.c, rdft/rank-geq2-rdft2.c, rdft/rank-geq2.c,
+ rdft/rank0-rdft2.c, rdft/rdft-dht.c, rdft/rdft2-radix2.c,
+ rdft/vrank-geq1-rdft2.c, rdft/vrank-geq1.c,
+ reodft/redft00e-r2hc-pad.c, reodft/reodft00e-splitradix.c,
+ reodft/reodft010e-r2hc.c, reodft/reodft11e-r2hc-odd.c,
+ reodft/reodft11e-radix2.c, reodft/rodft00e-r2hc-pad.c,
+ tests/hook.c: Two big changes:
+
+ 1) revised the twiddle generation machinery, to avoid generating
+ twiddles when measuring, and to use a faster O(sqrt(N)) table
+ when this entails no loss of precision.
+
+ 2) implemented new ALLOW_PRUNING estimator hack.
+
+2005-12-25 Matteo Frigo <athena at fftw.org>
+
+ * dft/generic.c, rdft/generic.c: Estimator tweaks, mostly to favor
+ generic over rader for small n.
+
+2005-12-24 Matteo Frigo <athena at fftw.org>
+
+ * tests/hook.c: Grrr... missing break statement in switch.
+
+ * genfft/gen_hc2hc.ml, genfft/gen_twiddle.ml,
+ genfft/gen_twiddle_c.ml, genfft/gen_twidsq.ml,
+ genfft/gen_twidsq_c.ml, rdft/codelet-rdft.h, dft/codelet-dft.h,
+ genfft-k7/gen_twiddle.ml: Swapped fields TW and OPS in struct
+ ct_desc_s, to make k7 asm code insensitive to -malign-double. For
+ consistency, changed struct hc2hc_desc_s in the same way.
+
+ * kernel/planner.c: Wrong check for infeasible slvndx in imprt().
+
+ * kernel/planner.c: Removed obsolete function
+ invoke_solver_if_correct_kind().
+
+ * kernel/primes.c: Faster implementation of safe_mulmod(),
+ avoiding divisions altogether. Works for 0 <= p <= INT_MAX.
+
+ * api/mapflags.c: FFTW_ALLOW_LARGE_GENERIC must belong to
+ flags->l, it cannot be overridden by fftw.
+
+2005-12-24 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/primes.c: no more need for limits.h, add some explanatory
+ comments
+
+2005-12-23 Matteo Frigo <athena at fftw.org>
+
+ * dft/k7/k7.c: Paranoia.
+
+ * kernel/ifftw.h, kernel/planner.c: Fixed subtle bug involving
+ overflow of the slvndx field in flags_t.
+
+ * NEWS: Note 64-bit clean.
+
+ * threads/ct.c, threads/dft-vrank-geq1.c, threads/hc2hc.c,
+ threads/rdft-vrank-geq1.c, threads/threads.h,
+ threads/vrank-geq1-rdft2.c: Threads are now 64-bit clean
+
+ * kernel/ifftw.h: Restored the old numbering TW_NEXT=3 etc,
+ because the k7 code depends on it.
+
+ * configure.ac, kernel/ifftw.h, kernel/primes.c: Portable
+ implementation of MULMOD() and safe_mulmod(). Removed all
+ unnecessary AC_CHECK_SIZEOF() from configure.ac.
+
+2005-12-22 Matteo Frigo <athena at fftw.org>
+
+ * genfft/gen_r2r.ml: Inline the loop body in r2r codelets like we
+ do everywhere else.
+
+ * dft/conf.c: Oops.
+
+ * dft/bluestein.c, dft/dftw-generic.c, dft/dftw-genericbuf.c,
+ dft/rader.c, kernel/ifftw.h, kernel/trig.c, kernel/twiddle.c,
+ rdft/dht-rader.c: Renamed X(sin_and_cos)() to X(cexp)().
+
+ * dft/bluestein.c, dft/conf.c, dft/dftw-generic.c,
+ dft/dftw-genericbuf.c, dft/rader.c, kernel/Makefile.am,
+ kernel/ifftw.h, kernel/trig.c, kernel/trig1.c, kernel/twiddle.c,
+ rdft/dht-rader.c: Somewhat faster generation of twiddle factors.
+
+2005-12-21 Matteo Frigo <athena at fftw.org>
+
+ * kernel/md5.c: tweaks
+
+ * dft/bluestein.c, dft/buffered.c, dft/ct.c, dft/ctsq.c,
+ dft/dft.h, dft/direct.c, dft/generic.c, dft/indirect-transpose.c,
+ dft/indirect.c, dft/nop.c, dft/problem.c, dft/rader.c,
+ dft/rank-geq2.c, dft/vrank-geq1.c, kernel/ifftw.h,
+ kernel/planner.c, rdft/buffered.c, rdft/buffered2.c,
+ rdft/dft-r2hc.c, rdft/dht-r2hc.c, rdft/dht-rader.c, rdft/direct.c,
+ rdft/direct2.c, rdft/generic.c, rdft/hc2hc.c, rdft/indirect.c,
+ rdft/nop.c, rdft/nop2.c, rdft/problem.c, rdft/problem2.c,
+ rdft/rank-geq2-rdft2.c, rdft/rank-geq2.c, rdft/rank0-rdft2.c,
+ rdft/rank0.c, rdft/rdft-dht.c, rdft/rdft.h, rdft/rdft2-radix2.c,
+ rdft/vrank-geq1-rdft2.c, rdft/vrank-geq1.c,
+ rdft/vrank3-transpose.c, reodft/redft00e-r2hc-pad.c,
+ reodft/redft00e-r2hc.c, reodft/reodft00e-splitradix.c,
+ reodft/reodft010e-r2hc.c, reodft/reodft11e-r2hc-odd.c,
+ reodft/reodft11e-r2hc.c, reodft/reodft11e-radix2.c,
+ reodft/rodft00e-r2hc-pad.c, reodft/rodft00e-r2hc.c, tests/hook.c:
+ Sped up planner, esp. in estimate mode. The planner now
+ classifies all solvers into DFT, RDFT, and RDFT2, and it only
+ invokes solvers appropriate for the problem being planned.
+ Because we have several hundred solvers, the overhead of calling
+ irrelevant solvers is significant, and this modification mitigates
+ the issue somewhat.
+
+2005-12-20 Matteo Frigo <athena at fftw.org>
+
+ * kernel/print.c: Eliminated all calls to sprintf() in favor of
+ own routines, so as not to force users to link stdio and the
+ associated locale/pthreads crap.
+
+ * kernel/ifftw.h, kernel/print.c: Implemented routine to print
+ INT, removing the need for c99's %td format.
+
+2005-12-19 Matteo Frigo <athena at fftw.org>
+
+ * kernel/alloc.c: info->n is size_t
+
+2005-12-18 Matteo Frigo <athena at fftw.org>
+
+ * configure.ac, dft/problem.c, rdft/problem.c, rdft/problem2.c:
+ Explicit casts in front of pointer difference in printf() context,
+ just in case INT != ptrdiff_t.
+
+ * kernel/print.c: Forgot to add %D to print.c
+
+ * dft/bluestein.c, dft/buffered.c, dft/ct.c, dft/ctsq.c,
+ dft/dftw-direct.c, dft/dftw-generic.c, dft/dftw-genericbuf.c,
+ dft/direct.c, dft/generic.c, dft/problem.c, dft/rader.c,
+ dft/vrank-geq1.c, kernel/print.c, kernel/tensor.c,
+ rdft/buffered.c, rdft/buffered2.c, rdft/dft-r2hc.c,
+ rdft/dht-r2hc.c, rdft/dht-rader.c, rdft/direct.c, rdft/direct2.c,
+ rdft/generic.c, rdft/hc2hc-direct.c, rdft/hc2hc-directbuf.c,
+ rdft/hc2hc-generic.c, rdft/hc2hc.c, rdft/problem.c,
+ rdft/problem2.c, rdft/rank0.c, rdft/rdft-dht.c,
+ rdft/rdft2-radix2.c, rdft/vrank-geq1-rdft2.c, rdft/vrank-geq1.c,
+ rdft/vrank3-transpose.c, reodft/redft00e-r2hc-pad.c,
+ reodft/redft00e-r2hc.c, reodft/reodft00e-splitradix.c,
+ reodft/reodft010e-r2hc.c, reodft/reodft11e-r2hc-odd.c,
+ reodft/reodft11e-r2hc.c, reodft/reodft11e-radix2.c,
+ reodft/rodft00e-r2hc-pad.c, reodft/rodft00e-r2hc.c: Use %D as
+ format character for type INT.
+
+ * kernel/ifftw.h, kernel/stride.c: Changed type of
+ an_int_guaranteed_to_be_zero. Changed name as well.
+
+ * kernel/ifftw.h, kernel/planner.c, kernel/print.c: converted %o
+ -> INT
+
+ * dft/bluestein.c, dft/buffered.c, dft/codelet-dft.h,
+ dft/codelets/n.c, dft/codelets/t.c, dft/ct.c, dft/ct.h,
+ dft/ctsq.c, dft/dftw-direct.c, dft/dftw-generic.c,
+ dft/dftw-genericbuf.c, dft/direct.c, dft/generic.c,
+ dft/indirect-transpose.c, dft/problem.c, dft/rader.c,
+ dft/simd/n1b.c, dft/simd/n1f.c, dft/simd/n2b.c, dft/simd/n2f.c,
+ dft/simd/n2s.c, dft/simd/q1b.c, dft/simd/q1f.c, dft/simd/t.c,
+ dft/simd/t1s.c, dft/vrank-geq1.c, dft/zero.c, genfft/gen_hc2hc.ml,
+ genfft/gen_hc2r.ml, genfft/gen_notw.ml, genfft/gen_notw_c.ml,
+ genfft/gen_r2hc.ml, genfft/gen_r2r.ml, genfft/gen_twiddle.ml,
+ genfft/gen_twiddle_c.ml, genfft/gen_twidsq.ml,
+ genfft/gen_twidsq_c.ml, kernel/buffered.c, kernel/cpy1d.c,
+ kernel/cpy2d-pair.c, kernel/cpy2d.c, kernel/ct.c, kernel/iabs.c,
+ kernel/ifftw.h, kernel/md5-1.c, kernel/minmax.c, kernel/ops.c,
+ kernel/planner.c, kernel/primes.c, kernel/rader.c,
+ kernel/solvtab.c, kernel/stride.c, kernel/tensor.c,
+ kernel/tensor1.c, kernel/tensor2.c, kernel/tensor4.c,
+ kernel/tensor7.c, kernel/tile2d.c, kernel/transpose.c,
+ kernel/trig.c, kernel/twiddle.c, rdft/buffered.c,
+ rdft/buffered2.c, rdft/codelet-rdft.h, rdft/codelets/hc2r.c,
+ rdft/codelets/hfb.c, rdft/codelets/r2hc.c, rdft/codelets/r2r.c,
+ rdft/dft-r2hc.c, rdft/dht-r2hc.c, rdft/dht-rader.c, rdft/direct.c,
+ rdft/direct2.c, rdft/generic.c, rdft/hc2hc-common.c,
+ rdft/hc2hc-direct.c, rdft/hc2hc-directbuf.c, rdft/hc2hc-generic.c,
+ rdft/hc2hc.c, rdft/hc2hc.h, rdft/problem.c, rdft/problem2.c,
+ rdft/rank0-rdft2.c, rdft/rank0.c, rdft/rdft-dht.c, rdft/rdft.h,
+ rdft/rdft2-inplace-strides.c, rdft/rdft2-radix2.c,
+ rdft/rdft2-strides.c, rdft/rdft2-tensor-max-index.c,
+ rdft/vrank-geq1-rdft2.c, rdft/vrank-geq1.c,
+ rdft/vrank3-transpose.c, reodft/redft00e-r2hc-pad.c,
+ reodft/redft00e-r2hc.c, reodft/reodft00e-splitradix.c,
+ reodft/reodft010e-r2hc.c, reodft/reodft11e-r2hc-odd.c,
+ reodft/reodft11e-r2hc.c, reodft/reodft11e-radix2.c,
+ reodft/rodft00e-r2hc-pad.c, reodft/rodft00e-r2hc.c, simd/sse2.c,
+ simd/taint.c: Major 64-bit cleanup.
+
+2005-12-08 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/cycle.h: PGI x86-64 cycle counter, courtesy Cristiano
+ Calonaci
+
+2005-12-06 Matteo Frigo <athena at fftw.org>
+
+ * kernel/planner.c: Must insert into hash table when wisdom_state
+ == WISDOM_ONLY, otherwise wisdom does not work.
+
+2005-10-08 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/acx_pthread.m4: comment
+
+2005-10-02 Matteo Frigo <athena at fftw.org>
+
+ * api/apiplan.c, kernel/ifftw.h, kernel/planner.c: Paranoia: made
+ planner robust against MD5 collisions.
+
+2005-09-28 Matteo Frigo <athena at fftw.org>
+
+ * doc/FAQ/fftw-faq.bfnn: Note that --enable-3dnow is unsupported.
+
+ * NEWS: * Removed --enable-3dnow support.
+
+ * SIMD support for split complex arrays.
+
+ * api/version.c, configure.ac, genfft/gen_notw.ml,
+ genfft/gen_notw_c.ml, genfft/gen_twiddle.ml,
+ genfft/gen_twiddle_c.ml, genfft/gen_twidsq_c.ml, kernel/align.c,
+ kernel/ifftw.h, simd/3dnow.c, simd/Makefile.am, simd/simd-3dnow.h,
+ simd/simd-altivec.h, simd/simd-sse.h, simd/simd-sse2.h,
+ simd/simd.h: Removed --enabled-3dnow, since it is becoming useless
+ as the world moves to x86-64, and it is a pain to maintain. (We
+ should probably remove the k7 stuff as well.)
+
+ * genfft/gen_notw.ml, genfft/gen_twiddle.ml: Missing BEGIN_SIMD(),
+ END_SIMD() statements.
+
+2005-09-27 Matteo Frigo <athena at fftw.org>
+
+ * simd/simd-sse.h: Tweaks
+
+ * genfft/to_alist.ml, dft/dftw-direct.c: Fixed wrong opcount for
+ simd codelets.
+
+ * genfft/c.ml, simd/simd-altivec.h, simd/simd-sse2.h: fixed flop
+ counts
+
+ * simd/simd-sse2.h: Silence warnings
+
+ * dft/simd/Makefile.am, dft/simd/codelets/Makefile.am,
+ dft/simd/n2s.c, dft/simd/n2s.h, dft/simd/t1s.c, dft/simd/t1s.h,
+ genfft/annotate.ml, genfft/c.ml, genfft/gen_hc2hc.ml,
+ genfft/gen_notw.ml, genfft/gen_twiddle.ml,
+ genfft/gen_twiddle_c.ml, genfft/gen_twidsq_c.ml,
+ genfft/genutil.ml, genfft/simd.ml, genfft/twiddle.ml,
+ genfft/twiddle.mli, simd/simd-altivec.h, simd/simd-sse.h,
+ simd/simd-sse2.h, simd/simd.h: Implemented split-complex SIMD
+ codelets
+
+2005-09-26 Matteo Frigo <athena at fftw.org>
+
+ * dft/simd/codelets/Makefile.am, genfft/annotate.ml,
+ genfft/annotate.mli, genfft/expr.ml, genfft/expr.mli,
+ genfft/gen_notw_c.ml, genfft/simd.ml, genfft/simdmagic.ml,
+ simd/simd-3dnow.h, simd/simd-altivec.h, simd/simd-sse.h,
+ simd/simd-sse2.h: Generalized the ``store pairs'' trick (now
+ called ``store multiple'').
+
+2005-09-25 Matteo Frigo <athena at fftw.org>
+
+ * simd/simd-altivec.h: Silence some warnings.
+
+2005-09-24 Matteo Frigo <athena at fftw.org>
+
+ * simd/simd-altivec.h: Removed obsolete cruft
+
+2005-09-20 Matteo Frigo <athena at fftw.org>
+
+ * configure.ac, simd/simd-altivec.h: Re-enabled check for
+ <altivec.h> because OSX requires it.
+
+2005-09-11 Matteo Frigo <athena at fftw.org>
+
+ * configure.ac: Check for sizeof(unsigned int) unconditionally,
+ because the result is used by ifftw.h.
+
+ * dft/simd/t.c: Higher size limit for t2 codelets.
+
+ * dft/simd/Makefile.am, dft/simd/t.c, dft/simd/t1b.c,
+ dft/simd/t1f.c, dft/simd/t2b.h, dft/simd/t2f.h: Heuristic: do not
+ use t2 simd codelets for N>1024.
+
+2005-09-06 Matteo Frigo <athena at fftw.org>
+
+ * libbench2/timer.c: Larger tolerance in timer calibration
+ routine.
+
+2005-09-05 Matteo Frigo <athena at fftw.org>
+
+ * Makefile.am, configure.ac, simd/Makefile.am,
+ simd/nonportable/Makefile.am, simd/nonportable/sse.c,
+ simd/nonportable/sse2.c, simd/simd-sse.h, simd/simd-sse2.h,
+ simd/sse-aux.c, simd/sse.c, simd/sse2-aux.c, simd/sse2.c: Removed
+ SSE and SSE2 asm because it was bitrotting. Use the Intel API
+ instead, which seems to be supported by gcc >= 3.3. Moved files
+ that require -msse, -msse2 to new directory.
+
+ * m4/ax_gcc_archflag.m4: Parse cputypes of the form
+ 7447A,altivecsupported
+
+ * m4/ax_gcc_archflag.m4: Distinguish powerpc 7400 from the 7450,
+ which has a different pipeline.
+
+ * simd/simd-altivec.h: Paranoia: define RIGHT_CPU unconditionally.
+
+2005-08-12 Matteo Frigo <athena at fftw.org>
+
+ * tools/fftw-wisdom-to-conf.in: Removed obsolete name
+ fftw-wisdom2c.
+
+ * tools/fftw-wisdom-to-conf.in: Avoid creation of temporary
+ files---use cpp magic instead. This fix solves a security bug and
+ avoids nonportable tempfile creation hacks.
+
+2005-08-05 Matteo Frigo <athena at fftw.org>
+
+ * configure.ac, simd/altivec.c, simd/simd-altivec.h: Workaround
+ for with gcc-3.3 altivec bug.
+
+2005-06-16 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/acx_pthread.m4: solaris fix: check -pthreads first since gcc
+ does not like -pthread but chokes due to stubbed libc (grr)
+
+2005-06-03 Steven G. Johnson <stevenj at fftw.org>
+
+ * doc/FAQ/fftw-faq.bfnn: note that VC++ bug was fixed in 2005
+
+2005-05-30 Steven G. Johnson <stevenj at fftw.org>
+
+ * configure.ac, m4/ax_cc_maxopt.m4, m4/ax_cc_vendor.m4,
+ m4/ax_compiler_vendor.m4: generalized ax_cc_vendor to
+ ax_compiler_vendor
+
+ * m4/ax_cc_maxopt.m4: updated message
+
+ * m4/acx_pthread.m4, m4/ax_cc_maxopt.m4, m4/ax_cc_vendor.m4,
+ m4/ax_check_compiler_flags.m4, m4/ax_gcc_aligns_stack.m4,
+ m4/ax_gcc_archflag.m4, m4/ax_gcc_version.m4,
+ m4/ax_gcc_x86_cpuid.m4, m4/ax_openmp.m4: update for new AC archive
+ format
+
+2005-05-24 Steven G. Johnson <stevenj at fftw.org>
+
+ * api/fftw3.h: *** empty log message ***
+
+2005-05-23 Steven G. Johnson <stevenj at fftw.org>
+
+ * NEWS: *** empty log message ***
+
+ * NEWS: more notes
+
+ * m4/ax_cc_maxopt.m4: whoops
+
+ * doc/FAQ/fftw-faq.bfnn: note icc 8.x annoyance
+
+ * doc/FAQ/fftw-faq.bfnn: *** empty log message ***
+
+ * doc/FAQ/fftw-faq.bfnn: note gcc 3.4.[0123] bug, which is fixed
+ in gcc 3.4.4
+
+ * m4/ax_cc_maxopt.m4: added automatic detection of icc
+ architecture flag
+
+ * configure.ac: add -no-gcc to icc flags...even if it is Intel's
+ fault, I'm sick of dealing with bug reports about this
+
+ * doc/fftw3.texi: added @cindex portability
+
+ * doc/fftw3.texi: note --without-gcc-arch
+
+ * m4/ax_gcc_archflag.m4: bsd ppc detection; some odd 603 types
+
+2005-05-22 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_gcc_archflag.m4: *** empty log message ***
+
+ * m4/ax_gcc_archflag.m4: ensure no spaces in cputype
+
+ * m4/ax_gcc_archflag.m4: nevermind
+
+ * m4/ax_gcc_archflag.m4: more bsd stuff
+
+ * m4/ax_gcc_archflag.m4: added BSD cpu detection for SPARC and
+ better super/hypersparc detection
+
+ * m4/ax_gcc_archflag.m4: comment
+
+2005-05-20 Steven G. Johnson <stevenj at fftw.org>
+
+ * doc/fftw3.texi: "alternate" == "alternative" is US-centric
+
+ * doc/fftw3.texi: typo
+
+ * doc/FAQ/fftw-faq.bfnn: clarification
+
+2005-05-17 Steven G. Johnson <stevenj at fftw.org>
+
+ * tests/bench.c: print out estimate-planner time from can_do in
+ verbose>2 mode
+
+2005-05-09 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_cc_vendor.m4: comment
+
+2005-05-06 Steven G. Johnson <stevenj at fftw.org>
+
+ * Makefile.am, api/api.h, api/fftw3.h, configure.ac,
+ threads/Makefile.am: fixes for building Windows DLLs with Cygwin;
+ thanks in part to Stephane Fillod
+
+2005-04-22 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_cc_maxopt.m4: -ffast-math seems to produce code that is
+ either about the same speed or slightly faster (gcc 3.3 and 4.0,
+ x86)
+
+ * m4/ax_gcc_archflag.m4: power5 fallback to power4 sched for older
+ gcc's
+
+ * m4/ax_gcc_archflag.m4: check for power5
+
+2005-04-20 Matteo Frigo <athena at fftw.org>
+
+ * api/fftw3.h: Removed clause #3
+
+2005-04-20 Steven G. Johnson <stevenj at fftw.org>
+
+ * api/fftw3.h: license clarification
+
+2005-04-20 Matteo Frigo <athena at fftw.org>
+
+ * api/fftw3.h: Changed license of fftw3.h to X11.
+
+2005-04-11 Steven G. Johnson <stevenj at fftw.org>
+
+ * genfft/gen_conv.ml: delete fixed-input code
+
+2005-04-10 Matteo Frigo <athena at fftw.org>
+
+ * api/apiplan.c, api/fftw3.h, api/mapflags.c, dft/bluestein.c,
+ dft/buffered.c, dft/ct.c, dft/dftw-direct.c, dft/dftw-generic.c,
+ dft/generic.c, dft/indirect-transpose.c, dft/indirect.c,
+ dft/rader.c, dft/vrank-geq1.c, kernel/ifftw.h, kernel/planner.c,
+ rdft/buffered.c, rdft/buffered2.c, rdft/dft-r2hc.c,
+ rdft/dht-r2hc.c, rdft/dht-rader.c, rdft/generic.c,
+ rdft/hc2hc-generic.c, rdft/hc2hc.c, rdft/indirect.c,
+ rdft/rank-geq2-rdft2.c, rdft/rdft-dht.c, rdft/rdft2-radix2.c,
+ rdft/vrank-geq1-rdft2.c, rdft/vrank-geq1.c,
+ rdft/vrank3-transpose.c, reodft/redft00e-r2hc-pad.c,
+ reodft/redft00e-r2hc.c, reodft/reodft00e-splitradix.c,
+ reodft/reodft010e-r2hc.c, reodft/reodft11e-r2hc-odd.c,
+ reodft/reodft11e-r2hc.c, reodft/reodft11e-radix2.c,
+ reodft/rodft00e-r2hc-pad.c, reodft/rodft00e-r2hc.c, tests/bench.c,
+ tests/hook.c: joned L-U-planner branch
+
+2005-04-08 Steven G. Johnson <stevenj at fftw.org>
+
+ * reodft/reodft00e-splitradix.c: ref
+
+2005-04-07 Steven G. Johnson <stevenj at fftw.org>
+
+ * genfft/gen_r2r.ml: whoops
+
+ * genfft/complex.ml, genfft/complex.mli, genfft/fft.ml,
+ genfft/gen_athtw.ml, genfft/gen_hc2r.ml, genfft/gen_notw.ml,
+ genfft/gen_notw_c.ml, genfft/gen_r2hc.ml, genfft/gen_r2r.ml,
+ genfft/magic.ml, genfft/number.ml, genfft/number.mli: added
+ (optional) new split-radix algorithm, enabled with -newsplit; also
+ new -standalone option to omit desc; also -unitary,
+ -normalization, and -normsqr options to generate r2r codelets with
+ various normalization (to match lit. in DCT-II, use: -unitary
+ -normsqr 2)
+
+2005-04-02 Matteo Frigo <athena at fftw.org>
+
+ * reodft/redft00e-r2hc-pad.c, reodft/redft00e-r2hc.c,
+ reodft/reodft00e-splitradix.c, reodft/reodft010e-r2hc.c,
+ reodft/reodft11e-r2hc-odd.c, reodft/reodft11e-r2hc.c,
+ reodft/reodft11e-radix2.c, reodft/rodft00e-r2hc-pad.c,
+ reodft/rodft00e-r2hc.c: reodft solvers are SLOW, not UGLY
+
+ * api/fftw3.h, api/mapflags.c, dft/bluestein.c,
+ dft/dftw-generic.c, dft/generic.c, dft/rader.c, kernel/ifftw.h,
+ kernel/planner.c, rdft/dht-r2hc.c, rdft/dht-rader.c,
+ rdft/generic.c, rdft/hc2hc-generic.c, rdft/rdft-dht.c,
+ rdft/vrank3-transpose.c: Renamed SLOW_ALGORITHMS => SLOW; promoted
+ vrank3-transpose from UGLY to SLOW.
+
+ * api/mapflags.c, dft/bluestein.c, dft/dftw-generic.c,
+ dft/generic.c, dft/indirect-transpose.c, dft/rader.c,
+ kernel/ifftw.h, rdft/dht-r2hc.c, rdft/dht-rader.c, rdft/generic.c,
+ rdft/hc2hc-generic.c, rdft/rdft-dht.c: Distinguish SLOW_ALGORITHM
+ from UGLY; UGLY is never tried unless EXHAUSTIVE.
+
+2005-04-01 Matteo Frigo <athena at fftw.org>
+
+ * dft/indirect.c, kernel/planner.c, rdft/indirect.c: fixed
+ NO_BUFFERING
+
+ * api/apiplan.c, api/mapflags.c, dft/bluestein.c, dft/buffered.c,
+ dft/ct.c, dft/indirect-transpose.c, dft/indirect.c, dft/rader.c,
+ kernel/ifftw.h, kernel/planner.c, rdft/buffered.c,
+ rdft/buffered2.c, rdft/dht-r2hc.c, rdft/dht-rader.c, rdft/hc2hc.c,
+ rdft/indirect.c, rdft/rank-geq2-rdft2.c, rdft/rdft-dht.c,
+ rdft/rdft2-radix2.c, tests/bench.c, tests/hook.c: Eliminated
+ problem_flags in favor of a combination of L and U. Renamed
+ planner_flags -> flags.
+
+ * api/apiplan.c, api/fftw3.h, api/mapflags.c, dft/bluestein.c,
+ dft/ct.c, dft/dftw-direct.c, dft/dftw-generic.c,
+ dft/indirect-transpose.c, dft/indirect.c, dft/rader.c,
+ dft/vrank-geq1.c, kernel/ifftw.h, kernel/planner.c,
+ rdft/buffered.c, rdft/buffered2.c, rdft/dft-r2hc.c,
+ rdft/dht-rader.c, rdft/hc2hc.c, rdft/indirect.c,
+ rdft/vrank-geq1-rdft2.c, rdft/vrank-geq1.c: Initial creation of
+ cvs branch for new [L,U] planner
+
+2005-03-25 Matteo Frigo <athena at fftw.org>
+
+ * kernel/planner.c: Moved timeout check outside the search loop,
+ because X(seconds) is expensive.
+
+2005-03-20 Matteo Frigo <athena at fftw.org>
+
+ * dft/ct.c: Enable vector recursion for in-place problems,
+ otherwise dftw-genericbuf works only in PATIENT mode.
+
+ * dft/dftw-genericbuf.c: oops
+
+ * dft/dftw-genericbuf.c: make solver UGLY for small N
+
+ * dft/dftw-genericbuf.c, dft/Makefile.am, dft/conf.c, dft/dft.h:
+ new dftw-genericbuf solver
+
+2005-03-18 Matteo Frigo <athena at fftw.org>
+
+ * simd/sse2-aux.c: Hmm... what was I thinking?
+
+ * simd/simd-sse2.h, simd/sse2-aux.c: Workaround for a MSVC bug.
+
+2005-03-17 Matteo Frigo <athena at fftw.org>
+
+ * simd/simd-sse.h, simd/sse-aux.c: Workaround for a MSVC bug that
+ was reported by Eddie Yee.
+
+2005-03-15 Matteo Frigo <athena at fftw.org>
+
+ * rdft/rank0.c: try both contiguous input and contiguous output
+ when in doubt
+
+ * dft/codelets/standard/Makefile.am, genfft/genutil.ml,
+ genfft/magic.ml, genfft/schedule.ml, genfft/schedule.mli,
+ rdft/codelets/hc2r/Makefile.am, rdft/codelets/r2hc/Makefile.am:
+ Added genfft flag -precompute-twiddles which moves the computation
+ of the twiddle factors before the main schedule. This flag
+ produces smaller code everywhere, and slightly faster code on
+ powerpc. I observe no speed difference on x86.
+
+2005-03-15 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/kalloc.c: sp
+
+ * kernel/alloc.c: whoops, spelling error (thanks to Steve Eddins
+ for bug report)
+
+2005-03-12 Matteo Frigo <athena at fftw.org>
+
+ * dft/vrank-geq1.c, rdft/vrank-geq1-rdft2.c, rdft/vrank-geq1.c: Do
+ not approximate pcost = vl * child->pcost unless child is
+ guaranteed not to be a simple codelet.
+
+2005-03-10 Matteo Frigo <athena at fftw.org>
+
+ * dft/direct.c: Relaxed applicability conditions.
+
+2005-03-09 Matteo Frigo <athena at fftw.org>
+
+ * dft/dftw-generic.c: Minor optimization
+
+ * libbench2/problem.c: Interpret <N>K to mean <N>*1024. Similarly
+ for <N>M.
+
+ * kernel/primes.c: Hmm... somehow some previous commit got lost.
+
+ * dft/ct.c: Paranoia
+
+2005-03-07 Steven G. Johnson <stevenj at fftw.org>
+
+ * configure.ac: whoops
+
+ * configure.ac, m4/ax_cc_maxopt.m4: move fftw-specific HP/UX tweak
+ into configure.ac
+
+ * configure.ac, m4/ax_cc_family.m4, m4/ax_cc_maxopt.m4,
+ m4/ax_cc_vendor.m4: ax_cc_family -> ax_cc_vendor (vendor names are
+ easier to remember), add checks for many new compilers, use in
+ ax_cc_maxopt
+
+2005-03-07 Matteo Frigo <athena at fftw.org>
+
+ * kernel/planner.c: Count FMA as one flop in estimator when
+ HAVE_FMA
+
+ * dft/dftw-generic.c: Do not try radix-2 generic.
+
+2005-03-06 Matteo Frigo <athena at fftw.org>
+
+ * m4/ax_cc_maxopt.m4: Use -O3 for xlc now that we use -O for
+ CODELET_OPTIM
+
+ * configure.ac, m4/ax_cc_family.m4: New AX_CC_FAMILY macro, that
+ detects the compiler based on symbols that it defines (as opposed
+ to the name of the compiler). We need to start use this strategy
+ everywhere else.
+
+ * dft/direct.c: Runtime checks to guarantee small strides.
+
+ * dft/vrank-geq1.c, kernel/tensor7.c, rdft/rank0.c,
+ rdft/vrank-geq1.c: Reduced the search space for rank-0 transforms
+
+2005-03-04 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/primes.c: little assert
+
+2005-03-01 Matteo Frigo <athena at fftw.org>
+
+ * dft/dft.h, dft/dftw-direct.c, dft/direct.c, dft/kdft.c:
+ Implemented directbuf, enabled for now.
+
+ * dft/Makefile.am, dft/dftw-direct.c, dft/dftw-directbuf.c,
+ dft/kdft-dif.c, dft/kdft-dit.c: Unified dftw-direct,
+ dftw-directbuf in an attempt to tame code growth
+
+2005-02-27 Steven G. Johnson <stevenj at fftw.org>
+
+ * doc/fftw3.texi: fixed copyright
+
+2005-02-27 Matteo Frigo <athena at fftw.org>
+
+ * rdft/rank0.c: silence warnings
+
+ * rdft/rank0.c: oops
+
+ * rdft/rank0.c: Tweaking while thinking about a higher-rank
+ transposer (bitreverser)
+
+ * dft/dftw-directbuf.c: Transposed the buffer, and skewed it.
+ This allows for contiguous copy operations, and the codelet should
+ not incur associativity conflicts if the buffer is large.
+
+2005-02-26 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/tensor4.c: make tensor_max_index more reasonable (take
+ maximum of input and output max indices, computed separately)
+
+2005-02-26 Matteo Frigo <athena at fftw.org>
+
+ * rdft/vrank3-transpose.c: Use cpy2d instead of cpy2d_tiled,
+ because vl may be too large.
+
+ * genfft/annotate.ml: Fixed old bug that was introduced with
+ yesterday's changes.
+
+ * kernel/cpy1d.c: ``Interesting'' switch statement.
+
+2005-02-25 Matteo Frigo <athena at fftw.org>
+
+ * support/Makefile.codelets: Disabled -reorder-loads
+ -reorder-stores, since they seem to do nothing.
+
+2005-02-25 Steven G. Johnson <stevenj at fftw.org>
+
+ * rdft/rank-geq2.c, dft/rank-geq2.c: Because of the recent changes
+ to kernel/pickdim.c, splitrnk=0 is no longer equivalent to
+ splitrnk=1 for rnk < 4, where the latter is the FFTW2 behavior.
+ For small rnk, however, I observe the planner to pretty
+ consistently choose the FFTW2 behavior (splitrnk=1), despite its
+ not being asymptotically optimal in the cache oblivious sense.
+ So, make splitrnk=1 instead of splitrnk=0 the default in
+ FFTW_MEASURE and FFTW_ESTIMATE modes (rnk > 3 is pretty rare in
+ practice anyway).
+
+ * dft/indirect-transpose.c: tweak
+
+ * dft/indirect-transpose.c: slight relaxation
+
+ * dft/indirect-transpose.c: cruft
+
+ * dft/Makefile.am, dft/conf.c, dft/dft.h,
+ dft/indirect-transpose.c, dft/indirect.c, kernel/ifftw.h,
+ kernel/tensor4.c: added experimental indirect-transpose solver:
+ when transforming the columns of the matrix, allow us to do a
+ transpose to make the DFTs contiguous
+
+ * configure.ac: check for abort()
+
+ * kernel/assert.c: call abort() on failed assertion
+
+2005-02-25 Matteo Frigo <athena at fftw.org>
+
+ * kernel/primes.c: Forgot to change X(isqrt) -> isqrt_maybe
+
+2005-02-25 Steven G. Johnson <stevenj at fftw.org>
+
+ * rdft/rank-geq2-rdft2.c, rdft/rank-geq2.c, dft/rank-geq2.c:
+ require finite_rnk
+
+2005-02-24 Matteo Frigo <athena at fftw.org>
+
+ * support/Makefile.codelets, support/twovers.sh,
+ genfft/annotate.ml, genfft/magic.ml: Implemented reordering of
+ loads and stores so that the real and imaginary part are
+ loaded/stored together. This should improve out-of-cache
+ performance in the presence of associativity conflicts, and maybe
+ worsen in-cache performance because of worse scheduling. Enabled
+ for now, for experimental purposes.
+
+2005-02-24 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_gcc_aligns_stack.m4: fix comment
+
+ * m4/ax_gcc_aligns_stack.m4: better message
+
+ * m4/ax_gcc_aligns_stack.m4: use gcc version > 3.0 as fallback in
+ check for alignment bug
+
+ * m4/ax_gcc_aligns_stack.m4: don't use -malign-double
+ unconditionally (it is only available on x86)
+
+2005-02-24 Matteo Frigo <athena at fftw.org>
+
+ * kernel/transpose.c: Subtler selection of tilesz.
+
+ * rdft/rank0.c: Call cpy2d_tiledbuf, not cpy2d_tiled.
+
+ * kernel/cpy2d.c, kernel/transpose.c: buffer sizes were wrong :-(
+
+ * kernel/cpy2d.c, kernel/ifftw.h, kernel/tile2d.c,
+ kernel/transpose.c, rdft/rank0.c: Single function for computing
+ tile size. Eliminate spurious assertions.
+
+ * kernel/tile2d.c: Do tiling recursively.
+
+ * kernel/Makefile.am, kernel/cpy2d.c, kernel/ifftw.h,
+ kernel/tile2d.c, kernel/transpose.c, rdft/rank0.c,
+ rdft/vrank3-transpose.c: Reworked tiled transposes; provide tiling
+ with and without buffering. I can't believe that one has to waste
+ his life with this @#$%.
+
+ * kernel/pickdim.c: Clarified logic. I am not sure why the code
+ was so confusing to begin with. The computation of *dp in the
+ which_dim == 0 case was also wrong, returning e.g. *dp == -1 if
+ sz->rnk == 1.
+
+ * configure.ac: Enable aggressive inlining in codelets only, to
+ avoid code bloat.
+
+ * kernel/Makefile.am, kernel/cpy2d.c, kernel/ifftw.h,
+ kernel/primes.c, kernel/transpose-rec.c, kernel/transpose.c,
+ rdft/rank0.c, rdft/vrank3-transpose.c: Removed cache-oblivious
+ copy/transpose algorithms in favor of explicitly blocked
+ algorithms. The cache-oblivious algorithms fail if there are
+ associativity conflicts, in which case buffering is necessary, as
+ per Carter and Gatlin. Once you set the buffer size, there is no
+ point whatsoever to do the algorithm recursively, and you may as
+ well use blocking.
+
+2005-02-23 Steven G. Johnson <stevenj at fftw.org>
+
+ * configure.ac: --disable-fortran now differs from
+ --enable-fortran that fails
+
+ * api/f77api.c: comment tweak
+
+ * api/f77api.c: If a Fortran compiler was not detected, just make
+ our best guess at what wrappers to use...I'm sick of dealing with
+ user complaints from cases where wrapper detection fails for
+ whatever reason.
+
+ * api/f77funcs.h: fflush(stdout) after print_plan, in case F77
+ doesn't
+
+2005-02-23 Matteo Frigo <athena at fftw.org>
+
+ * mkdist.sh: --enable-sse is necessary after all, to generate all
+ dependencies correctly.
+
+ * dft/dftw-directbuf.c, kernel/Makefile.am, kernel/cpy2d-pair.c,
+ kernel/ifftw.h: Put cpy2d_pair into its own file, so that I can
+ experiment with buffering of nontwiddle codelets.
+
+ * doc/Makefile.am: Copy rfftwnd.png from ${srcdir}, not $PWD
+
+2005-02-22 Matteo Frigo <athena at fftw.org>
+
+ * rdft/rank0.c: Do not bother memcpy-ing complex numbers.
+
+ * kernel/cpy2d.c, kernel/transpose-rec.c: Tighther layout of
+ buffers. I am not sure it matters, but just in case...
+
+ * rdft/rank0.c: Usec cpy1d for rank-0 copies
+
+ * kernel/Makefile.am, kernel/cpy1d.c, kernel/cpy2d.c,
+ kernel/ifftw.h, kernel/transpose-rec.c, kernel/transpose.c,
+ rdft/rank0.c, rdft/vrank3-transpose.c: Implemented in-place
+ transposes with buffering. Moved copy/transposition routines into
+ own files, so that we can reuse them from multiple places. TODO:
+ merge vrank3-transpose.c with rank0.c, or rename
+ vrank3-transpose.c to rank0-fancy.c or something like that; decide
+ whether square in-place transposes should be in rank0.c or
+ vrank3-transpose.c; apply FIXME's in vrank3-transpose.c.
+
+ * kernel/print.c: Indentation should be printed after newline, not
+ at the beginning of print()
+
+2005-02-21 Matteo Frigo <athena at fftw.org>
+
+ * rdft/rank0.c: generalized in anticipation of more complicated
+ solvers.
+
+ * rdft/rank0.c: Implemented buffered recursive transpose
+
+2005-02-20 Matteo Frigo <athena at fftw.org>
+
+ * rdft/rank0.c: Fixed comment
+
+ * rdft/Makefile.am, rdft/conf.c, rdft/rank0-vrank2.c,
+ rdft/rank0.c, rdft/rdft.h: grand unification of rank0 solvers
+
+ * rdft/vrank3-transpose.c: manual tail-recursion optimization
+
+2005-02-19 Matteo Frigo <athena at fftw.org>
+
+ * libbench2/verify-lib.c, libbench2/verify-r2r.c, tests/check.pl:
+ implemented check for transpositions
+
+ * libbench2/verify-lib.c: Previous fix was wrong for rdft2
+ problems.
+
+ * rdft/dft-r2hc.c: vecsz->rnk must be finite for this solver to
+ apply.
+
+ * rdft/vrank3-transpose.c: unified the various simple''
+ transposers
+
+ * libbench2/verify-lib.c, libbench2/verify-r2r.c,
+ rdft/vrank3-transpose.c: Fixed stupid bug in rec_transpose_swap.
+ Fixed stupid verifier that did not catch the bug.
+
+ * rdft/vrank3-transpose.c: Minor cleanup of transposition
+ routines.
+
+ * dft/dftw-directbuf.c, rdft/hc2hc-directbuf.c: Make the batch
+ size B=Theta(r) instead of B=Theta(1) in buffered twiddle solvers.
+ Theory: for cache line size L, we want B = Omega(L) to utilize the
+ cache line fully. We also want B*r =O(Z), where Z is the size of
+ the cache. It is safe to assume that Z = Theta(L^2): cache
+ designers will tend to make L as large as they can get away with,
+ because they don't have to program the machines that they build,
+ and Z < Theta(L^2) will screw up the little matrix transposition
+ benchmarks that they use to design the cache. Hence, B=Theta(r)
+ is the right number.
+
+2005-02-19 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_gcc_archflag.m4: for --enable-portable-binary, only try
+ -mcpu=$arch and -m$arch on x86, since these generate non-portable
+ code on every other target (and some other targets, like Alpha,
+ don't support -mtune=$arch).
+
+2005-02-18 Matteo Frigo <athena at fftw.org>
+
+ * kernel/ifftw.h: gcc/aix defines _POWER, not __powerpc__ like the
+ rest of the world does.
+
+2005-02-17 Matteo Frigo <athena at fftw.org>
+
+ * configure.ac: enable fma for ia64, since it seems to help with
+ the hpux compiler.
+
+ * TODO: *** empty log message ***
+
+2005-02-16 Matteo Frigo <athena at fftw.org>
+
+ * simd/simd-altivec.h: Fixes for darwin
+
+ * api/apiplan.c: Made the correctness of the code more obvious.
+
+2005-02-16 Steven G. Johnson <stevenj at fftw.org>
+
+ * NEWS, m4/ax_cc_maxopt.m4:
+ s/with-portable-binary/enable-portable-binary/ to be GNUlly
+ correct; I'm sticking with --with-gcc-arch=arch, however, as
+ --enable-gcc-arch=arch has the wrong connotations for me
+
+ * api/apiplan.c: whoops
+
+ * api/apiplan.c: bless wisdom with patience used to create it
+
+ * api/apiplan.c: whoops
+
+ * NEWS, TODO, api/apiplan.c, api/fftw3.h, doc/fftw3.texi,
+ kernel/ifftw.h, kernel/planner.c, kernel/timer.c, tests/bench.c:
+ added 'timed' planner option
+
+2005-02-16 Matteo Frigo <athena at fftw.org>
+
+ * dft/simd/Makefile.am, simd/Makefile.am: Do not use SIMD_CFLAGS.
+ The theory is that if taint.c is unsafe with SIMD_CFLAGS, then all
+ files in this directory are as well. Conversely, if these files
+ require SIMD_CFLAGS because they include "simd.h", then taint.c
+ requires SIMD_CFLAGS as well, and thus we need some other hack.
+
+ * dft/codelets/standard/Makefile.am, dft/simd/Makefile.am,
+ dft/simd/codelets/Makefile.am, rdft/codelets/hc2r/Makefile.am,
+ rdft/codelets/r2hc/Makefile.am, rdft/codelets/r2r/Makefile.am,
+ support/Makefile.codelets: Do not override CFLAGS in Makefile.am.
+
+2005-02-15 Matteo Frigo <athena at fftw.org>
+
+ * configure.ac: Allow users to build long double version even if
+ sizeof(long double) == sizeof(double)
+
+ * commercialize.sh: Updated for 3.1
+
+ * api/version.c: Oops, version.h is no longer used
+
+2005-02-14 Matteo Frigo <athena at fftw.org>
+
+ * api/Makefile.am, api/version.c, configure.ac,
+ dft/codelets/standard/Makefile.am, dft/simd/codelets/Makefile.am,
+ m4/ocaml.m4, mkdist.sh, rdft/codelets/hc2r/Makefile.am,
+ rdft/codelets/r2hc/Makefile.am, rdft/codelets/r2r/Makefile.am,
+ support/Makefile.am, support/Makefile.codelets,
+ support/twovers.sh: unified fma and non-fma versions
+
+ * configure.ac: forgot to remove inplace/Makefile from
+ configure.ac
+
+ * dft/codelet-dft.h, dft/codelets/Makefile.am,
+ dft/codelets/inplace/Makefile.am,
+ dft/codelets/standard/Makefile.am, dft/conf.c, Makefile.am: Merged
+ dft/codelets/inplace with the main dft/codelets/standard
+ directory. This step makes dft codelets consistent with the rest
+ of the naming conventions, and will simplify the eventual merge of
+ fma and non-fma codelets.
+
+ * simd/altivec.c, simd/simd-altivec.h: inline altivec constants,
+ since gcc seems to generate better code this way.
+
+2005-02-13 Matteo Frigo <athena at fftw.org>
+
+ * simd/altivec.c, simd/simd-altivec.h: group altivec constants
+ into a single array, for faster access
+
+ * genfft/c.ml, genfft/c.mli, genfft/simd.ml: code cleanup
+
+ * genfft/c.ml, genfft/c.mli: removed some unused stuff
+
+ * simd/simd-3dnow.h, simd/simd-altivec.h: New twiddle scheme for
+ altivec, 3dnow
+
+ * simd/simd-sse2.h: Implemented new twiddle scheme for sse2
+
+ * dft/simd/Makefile.am, dft/simd/codelets/Makefile.am,
+ dft/simd/q1b.h, dft/simd/q1f.h, dft/simd/t1b.h, dft/simd/t1f.h,
+ dft/simd/t2b.h, dft/simd/t2f.h, simd/simd-sse.h: Implemented
+ experimental t2* codelets, which store twiddle factors in a more
+ convenient format, at the expense of twice the storage. Currently
+ only SSE works; I have to port SSE2, altivec, etc. to the new
+ scheme. After this, we will decide whether these codelets are
+ worth the price.
+
+2005-02-11 Matteo Frigo <athena at fftw.org>
+
+ * simd/simd-altivec.h: Forgot to define SIMD_STRIDE_OKPAIR
+
+ * simd/simd-3dnow.h, simd/simd-altivec.h, simd/simd-sse.h,
+ simd/simd-sse2.h: fixed sse2, 3dnow, and altivec, as promised
+
+ * simd/simd-sse.h, dft/simd/n2b.c, dft/simd/n2f.c,
+ genfft/annotate.ml, genfft/expr.ml, genfft/expr.mli,
+ genfft/simd.ml: Generate n2?v_* codelets in such a way that we may
+ or may not pair stores, depending on which mode happens to work
+ best on a particular SIMD implementation. sse2, 3dnow, and
+ altivec are currently broken---will fix soon.
+
+2005-02-10 Matteo Frigo <athena at fftw.org>
+
+ * simd/altivec.c, simd/simd-altivec.h: instantiate altivec
+ constants only once
+
+ * dft/simd/n2b.c, dft/simd/n2f.c: Fixed alignment checks for new
+ SIMD scheme
+
+ * dft/simd/codelets/Makefile.am, genfft/annotate.ml,
+ genfft/annotate.mli, genfft/expr.ml, genfft/expr.mli,
+ genfft/gen_notw_c.ml, genfft/genutil.ml, genfft/simd.ml,
+ genfft/simdmagic.ml, simd/simd-3dnow.h, simd/simd-altivec.h,
+ simd/simd-sse.h, simd/simd-sse2.h: Change n2?v_* codelets to store
+ pairs of vectors, with implicit 2x2 transposition. Works for
+ 2-way SIMD as well. Tested with sse and sse2. I haven't tried
+ altivec yet, but I observed a huge speedup when I transformed one
+ codelet by hand.
+
+2005-02-09 Matteo Frigo <athena at fftw.org>
+
+ * dft/codelets/standard/Makefile.am: Resurrected old DIF codelets
+ for experimental purposes. They are disabled for now, but I am
+ keeping the setup around for future reference.
+
+2005-02-09 Steven G. Johnson <stevenj at fftw.org>
+
+ * doc/fftw3.texi: *** empty log message ***
+
+ * doc/fftw3.texi: clarifications, document --with-portable-binary
+ and --with-gcc-arch
+
+ * NEWS: *** empty log message ***
+
+2005-02-08 Steven G. Johnson <stevenj at fftw.org>
+
+ * NEWS: more change comments
+
+ * doc/FAQ/fftw-faq.bfnn: fma is definitely beneficial on Itanium
+ with the HP/UX compiler
+
+2005-02-08 Matteo Frigo <athena at fftw.org>
+
+ * libbench2/bench-main.c: Silence warnings.
+
+2005-02-08 Steven G. Johnson <stevenj at fftw.org>
+
+ * libbench2/getopt.h: when we compile our own getopt, change
+ symbol names to avoid conflicts (e.g. avoid build failure on MacOS
+ X with --enable-shared)
+
+ * reodft/reodft00e-splitradix.c: grr, more bugfixes for in-place
+ case
+
+2005-02-08 Matteo Frigo <athena at fftw.org>
+
+ * dft/codelets/standard/Makefile.am: removed relics of FRANZ mode
+
+2005-02-07 Matteo Frigo <athena at fftw.org>
+
+ * simd/altivec.c: Somehow xlc does not like ``vector int dummy;''
+
+ * mkdist.sh: There is no need to enable sse to make the
+ distribution. This might have been true in the past but not
+ anymore.
+
+ * api/Makefile.am: Oops---included fortran file in C sources
+
+ * api/Makefile.am, api/version.c: Set version string at ``make
+ dist'' time, not at ``configure'' time, so we know whether a user
+ is using the fma version or not.
+
+2005-02-06 Matteo Frigo <athena at fftw.org>
+
+ * genfft/gen_hc2r_noinline.ml, genfft/gen_notw_noinline.ml,
+ genfft/gen_notw_noinline_c.ml, genfft/gen_r2hc_noinline.ml:
+ Removed useless files
+
+ * configure.ac, dft/codelets/standard/Makefile.am,
+ dft/simd/codelets/Makefile.am, genfft/Makefile.am, genfft/c.ml,
+ genfft/c.mli, genfft/gen_hc2hc.ml, genfft/gen_hc2r.ml,
+ genfft/gen_notw.ml, genfft/gen_notw_c.ml, genfft/gen_r2hc.ml,
+ genfft/gen_twiddle.ml, genfft/gen_twiddle_c.ml,
+ genfft/gen_twidsq.ml, genfft/gen_twidsq_c.ml, genfft/genutil.ml,
+ genfft/simd.ml, kernel/ifftw.h, kernel/stride.c,
+ rdft/codelets/hc2r/Makefile.am, rdft/codelets/r2hc/Makefile.am,
+ support/Makefile.codelets: Different (simpler?) way to prevent the
+ compiler from optimizing loop inductive variables. We now
+ explicitly corrupt stride variables by xor-ing them with another
+ variable that happens to be zero (but the compiler does not know
+ it). In this way, the compiler does not attempt to extract a
+ zillion loop indices from codelets, which would overflow the
+ register set. Set the -fno-loop-optimize flag to further help the
+ process.
+
+ Consequences: removed m* codelets. Smaller library size.
+ Slightly faster code with gcc/powerpc (including altivec). Much
+ faster code with xlc/powerpc. No changes for gcc/pentium. Maybe
+ slightly faster with icc/pentium.
+
+2005-02-05 Steven G. Johnson <stevenj at fftw.org>
+
+ * reodft/reodft00e-splitradix.c: paranoia about in-place rodft00
+ plans
+
+ * kernel/planner.c: don't believe pcost when using the
+ estimator...there is no point, and it screws up estimator hacks to
+ prefer in-codelet loops to vecloops
+
+2005-02-05 Matteo Frigo <athena at fftw.org>
+
+ * m4/ax_cc_maxopt.m4: Reduced optimization level from -O3 to -O
+ for xlc, since -O generates faster code.
+
+2005-02-05 Steven G. Johnson <stevenj at fftw.org>
+
+ * reodft/reodft00e-splitradix.c: whoops, only applicable to
+ redft00/rodft00 plans
+
+ * reodft/reodft00e-splitradix.c: fixed in-place operation, and
+ don't create size-0 sub-plans
+
+2005-02-04 Matteo Frigo <athena at fftw.org>
+
+ * simd/altivec.c: Autodetect altivec on linux. This code works
+ with gcc-3.4 and -maltivec, with or without -mabi=altivec. The
+ code *should* work with gcc-3.3 without -mabi=altivec. However,
+ disabling -mabi=altivec on gcc-3.4 produces much worse code (I
+ don't know why).
+
+2005-01-28 Steven G. Johnson <stevenj at fftw.org>
+
+ * doc/fftw3.texi: update reference
+
+2005-01-27 Steven G. Johnson <stevenj at fftw.org>
+
+ * doc/fftw3.texi: note that DCT-II/III are often called the''
+ DCT/DCT
+
+2005-01-21 Steven G. Johnson <stevenj at fftw.org>
+
+ * kernel/cycle.h: added MSVC++ for ia64 (based on information at
+ http://www.intel.com/cd/ids/developer/asmo-na/eng/19949.htm?prn=Y)
+
+ * kernel/cycle.h: vc++ defines _M_AMD64 on x86-64, apparently
+
+2005-01-19 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/acx_pthread.m4: avoid gratuitous breakage with -Werror,
+ requested by Simon Perreault
+
+2005-01-17 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_gcc_aligns_stack.m4: comment typo
+
+2005-01-15 Steven G. Johnson <stevenj at fftw.org>
+
+ * configure.ac: bumped shared-lib revision#
+
+ * api/fftw3.h, api/flops.c, kernel/ifftw.h, kernel/planner.c,
+ tests/bench.c: add X(estimate_cost) to get estimator cost, and
+ print from bench, to aid in tweaking estimator
+
+ * doc/fftw3.texi: *** empty log message ***
+
+ * doc/fftw3.texi: formatting fix
+
+ * doc/fftw3.texi, reodft/Makefile.am, reodft/conf.c: tweaks
+
+ * reodft/reodft00e-splitradix.c: use less buffer space
+
+ * doc/fftw3.texi, reodft/Makefile.am, reodft/conf.c,
+ reodft/redft00e-r2hc.c, reodft/reodft.h,
+ reodft/reodft00e-splitradix.c, reodft/rodft00e-r2hc.c: added
+ split-radix-based dct/dst I for odd n
+
+ * api/fftw3.h: *** empty log message ***
+
+ * api/fftw3.h: warn silly users who confuse CVS id with FFTW
+ version
+
+2005-01-14 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_gcc_archflag.m4: get sparc cpu type on solaris as well as
+ with linux
+
+ * m4/ax_gcc_archflag.m4: detect prescott mobile (f37)
+
+2005-01-13 Steven G. Johnson <stevenj at fftw.org>
+
+ * bootstrap.sh, m4/ax_gcc_archflag.m4: use cpuid for x86_64 as
+ well as i[56]86
+
+ * m4/ax_gcc_archflag.m4: update with x86info 1.7 and other sources
+ (identify k8, nocona, etc), handle nonzero leading bytes in eax
+
+ * m4/acx_pthread.m4: compactified check for JOINABLE; use
+ AC_DEFINE_UNQUOTED instead of AC_DEFINE for
+ PTHREAD_CREATE_JOINABLE (thanks to Oliver Niekrenz for the bug
+ report)
+
+2005-01-12 Matteo Frigo <athena at fftw.org>
+
+ * genfft/annotate.ml: The scheduler hack was incorrect because it
+ swapped instructions of the form A = *B and *B = C. Fixed.
+
+ * m4/ax_cc_maxopt.m4, m4/ax_gcc_archflag.m4: Quote expressions
+ such as ``if test $FOO = yes'' when $FOO may be empty. Also, $GCC
+ is set to either ``yes'' or empty, never to ``no''.
+
+ * TODO, configure.ac, simd/altivec.c: Hmm---somehow the previous
+ commit did not work.
+
+2005-01-11 Matteo Frigo <athena at fftw.org>
+
+ * simd/simd-altivec.h: Fixed various gcc-related problems on
+ powerpc: - gcc-3.4 becomes totally confused by expressions like
+ vec_add(a, vec_add(b, vec_add(c, ...))) The compiler uses
+ gigabytes of memory and then crashes, presumably because of the
+ exponential-time search problem involved in typing the above
+ expression (since vec_add can take either ints or floats). I
+ changed VADD and similar macros to be inline functions, thus
+ constraining the type system.
+
+ - New flags --param inline-unit-growth=1000 --param
+ large-function-growth=1000 to work around limitations of the
+ gcc-3.4 inliner.
+
+ * simd/simd-altivec.h: Check for HAVE_ALTIVEC_H
+
+ * configure.ac, simd/altivec.c, simd/simd-altivec.h: Remove
+ support for altivec using gcc builtins, since these keep changing
+ across gcc versions. These changes work on gcc-3.4/linux; I
+ haven't tried MacOS X yet. (The altivec ``spec'' differs between
+ Motorola/Apple and gcc, grrr...)
+
+2005-01-10 Matteo Frigo <athena at fftw.org>
+
+ * rdft/rank0-vrank2.c: Stylistic changes
+
+ * rdft/dft-r2hc.c: Changed incorrect ugliness condition.
+
+2005-01-10 Steven G. Johnson <stevenj at fftw.org>
+
+ * m4/ax_gcc_archflag.m4: note x86info version number that was
+ used, to make it easier to update the cpuid for changes in later
+ versions
+
+2005-01-10 Matteo Frigo <athena at fftw.org>
+
+ * rdft/dft-r2hc.c: Make dft-r2hc non-UGLY for rank-0 problems
+
+ * m4/ax_gcc_archflag.m4: Do not use -mcpu=970 on power4
+ processors, because power4 does not have altivec.
+
@@ Diff output truncated at 100000 characters. @@
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Pd-cvs
mailing list