Wed Dec  5 10:56:58 CET 2001

	* gensrc/k7InstructionSchedulingBasics.ml, gensrc/genUtil.ml:
	changed code to produce explicit loads/stores instead of pushs/pops.


Tue Dec  4 14:48:27 CET 2001	Stefan Kral <skral@complang.tuwien.ac.at>

	* gensrc/genfft.ml: added support for command-line option
	"-notwiddle-with-fixedstride N" and "notwiddleinv-with-fixedstride N".
	The options "-with-istride I" and "-with-ostride O" are also available
	for specifying strides != 1.

	* gensrc/gen_notwiddle_fixedstride.ml: new module handling generation
	of codelets with some fixed stride.

	* gensrc/k7Translate.ml: added fixedstride_complex_unparser.

	* gensrc/genUtil.ml, gensrc/genfft.ml, gensrc/k7RegisterAllocator.ml

	* gensrc/k7InstructionSchedulingBasics.ml: Lifted some restrictions,
	allowing a load-function-argument instruction to be moved beyond
	a push/pop-instruction.

	* gensrc/k7RegisterAllocator.ml: A 'Load-Store Barrier'-instruction
	now causes the all integer registers to be marked as unused. This
	way cheap registers (the ones that are not callee-saved) can be
	used more often.

	* gensrc/genUtil.ml: added code to eliminate push/pops of registers
	that are never used. (this is beneficial for fn_1, fn_2, fn_3, and
	other small codelets)

	* gensrc/gen_notwiddle.ml, gensrc/gen_twiddle.ml: changed the
	register layout a little bit.
	
	* gensrc/magic.ml: changed vectorization-limit to 100000. 
	(just to save some time during bootstrapping)


Wed Jul 25 21:42:15 CEST 2001	Stefan Kral <skral@complang.tuwien.ac.at>

	* configure.in: fixed type_prefix bug. (Thanks to Scott Ransom)

	* gensrc/vImproveSchedule.ml: eliminated bug that could cause
	errornous results in some in-order cases (for real to half-complex
	transforms only). Until now, this bug has never occurred in practice.
	(It only occurred when producing K6 code. The generated code that
	is part of the initial K7/FFTW-GEL release is not affected by this
	bug.)

	* gensrc/vK7Optimization.ml: included some tentative support for
	the AMD K6 processor. it consists of 3 rewriting rules:
		'npacc ==> chs+ppacc'
		'nnacc ==> unpckldq+unpckhdq+sub'
		'pswapd => unpckldq+unpckhdq'

	* gensrc/k7Vectorization.ml: changed code produced when storing
	two halves of a register. the code used to be 'movd, pswapd, movd'.
	now it is 'movd, unpckhdq, movq'. This works much better on the K6.
	It has no performance impact on the K7.

	* gensrc/magic.ml, gensrc/genfft.ml: 
	added flag "-magic-target-processor-k6". Setting this flag
	enables code generation for the AMD K6 processor 
	(with 3Dnow! extensions).


Tue Jul 17 14:56:47 CEST 2001	Stefan Kral <skral@complang.tuwien.ac.at>

	* gensrc/Makefile.genfft: removed cyclic dependency of module Id.
	(ocamldep did not detect this)

	* gensrc/k7Translate.ml: corrected the handling of the flag
	Magic.do_debug_output. 

