2006-03-21  David Schleef  <ds@schleef.org>

	* configure.ac: version 0.3.8
	* doc/tmpl/liboildebug.sgml: gtk-doc wanted to change these
	* doc/tmpl/liboilimpl-unstable.sgml:

2006-03-21  David Schleef  <ds@schleef.org>

	* liboil/i386/wavelet.c: add mmx/mmxext flag to impls

2006-03-20  David Schleef  <ds@schleef.org>

	* examples/Makefile.am: add oil-bugreport
	* examples/oil-bugreport.c:
	* liboil/liboildebug.c:

2006-03-20  David Schleef  <ds@schleef.org>

	* liboil/fb/fbmmx.c: Disabling fbCompositeSolid_nx8888mmx().
	  I'm tired of it being randomly broken.
	* liboil/liboilcpu.c: Changes some of the debug messages to
	  produce a coherent story at OIL_DEBUG=3.
	* liboil/liboilfunction.c: same

2006-03-20  David Schleef  <ds@schleef.org>

	* liboil/liboilfunction.c: (oil_impl_is_runnable): Check if
	  impl is disabled.

2006-03-20  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: Disable fb/ if SSE2 instrinsics aren't
	  present.  Rather harsh, but it's uncommon and people should
	  really be using a decent toolchain.  (Fixes #6067)

2006-03-20  David Schleef  <ds@schleef.org>

	* liboil/i386/mt19937.c: Add MMXEXT flag to functions that
	  require it.  (Fixes #6060)

2006-03-20  David Schleef  <ds@schleef.org>

	* liboil/liboilprofile.c: Detect what kind of ARM processor
	  is being run on and select the correct profile function.
	  (Fixes parts of #6077).  Fix s390 assembly (fixes #5822)

2006-03-20  David Schleef  <ds@schleef.org>

	* liboil/liboilprofile.c: Fix misspelling of XScale profile
	  function (fixes #6076)

2006-03-04  David Schleef  <ds@schleef.org>

	* liboil/i386/Makefile.am:
	* liboil/liboilclasses.h:
	* liboil/liboilfuncs-04.h:
	* liboil/liboilfuncs.h:
	* liboil/liboilmarshal.c:
	* liboil/liboiltrampolines.c:
	* liboil/ref/Makefile.am:
	  Reenable wavelet code.

2006-02-18  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/liboilcpu.c: (get_proc_cpuinfo), (oil_cpu_i386_getflags):
	Disable linux-only code on non-linux to pacify Werror.

2006-02-15  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am:
	  Require SSE2 intrinsics for sse/.  It likely only affects gcc-3.3
	  although it should be fixed some day.
	* liboil/i386/copy_i386.c:
	  Disable some code that's being bad.
	* m4/as-intrinsics.m4:
	  Check for an intrinsic that's buggy in gcc-3.3.

2006-02-03  David Schleef  <ds@schleef.org>

	* liboil/conv/conv_bitstuff.c: Disable impl that is busted
	  on powerpc.

2006-02-03  David Schleef  <ds@schleef.org>

	* liboil/powerpc/conv.c: Fix compile failure on powerpc.

2006-02-02  David Schleef  <ds@schleef.org>

	* configure.ac: version bump

=== 0.3.7 ===

2006-02-02  David Schleef  <ds@schleef.org>

	* liboil/i386/wavelet.c:
	* liboil/liboilclasses.h:
	* liboil/liboilfuncs-04.h:
	* liboil/liboilfuncs.h:
	* liboil/liboilmarshal.c:
	* liboil/liboiltrampolines.c:
	* liboil/ref/Makefile.am:
	* liboil/ref/wavelet.c:
	  Revert wavelet stuff for release.
	* testsuite/instruction/list-impls.c:
	  Fixes for HAVE_arch macros from a few days ago.

2006-01-30  David Schleef  <ds@schleef.org>

	* testsuite/mmx_engine.c: Add SSE2

2006-01-30  David Schleef  <ds@schleef.org>

	* configure.ac:
	* m4/as-host-defines.m4:
	* liboil/Makefile.am:
	* liboil/motovec/Makefile.am:
	* doc/liboil-sections.txt:
	* doc/tmpl/liboil-unused.sgml:
	* doc/tmpl/liboilimpl-unstable.sgml:
	* examples/oil-inspect.c:
	* testsuite/instruction/Makefile.am:
	  Rewrite macros/defines for cpu selection.  HAVE_${arch} is
	  the define for cpu architecture, HAVE_GCC_ASM is the define
	  for GCC inline assembly.
	* liboil/liboilfunction.h:
	  Make implementation flags all part of the same enum, making
	  flags unique across all architectures.  This makes it easier
	  to turn flags into feature names platform-independently.

	* liboil/liboilclasses.h: update
	* liboil/liboilfuncs-04.h:
	* liboil/liboilfuncs.h:
	* liboil/liboiltrampolines.c:

	* liboil/liboilrandom.c: Fix documentation.
	* liboil/liboiltest.c: same
	* liboil/liboilrandom.h: remove config.h

	* license_block: new year

	* COPYING: Add copyright for mt19937
	* examples/Makefile.am:
	* examples/oil-mt19937.c:
	* liboil/ref/Makefile.am:
	* liboil/ref/mt19937ar.c:
	* liboil/i386/Makefile.am:
	* liboil/i386/mt19937.c:
	  Add mt19937 and example.

	* testsuite/Makefile.am:
	* testsuite/mmx_engine.c:
	  A little thingy for testing the features of an MMX engine.

2006-01-28  David Schleef  <ds@schleef.org>

	* liboil/i386/composite_i386.c:
	* liboil/i386/resample.c:
	  Fixes for SSE2 code

2006-01-28  David Schleef  <ds@schleef.org>

	* liboil/i386/composite_i386.c:
	* liboil/i386/copy_i386.c:
	* liboil/i386/resample.c:
	* testsuite/instruction/check-instructions.pl:
	* testsuite/instruction/list-impls.c:
	  Fix the instruction lists in check-instructions.pl and fix
	  all the crap it found.

2006-01-28  David Schleef  <ds@schleef.org>

	* examples/oil-suggest.c: cleanup
	* liboil/Makefile.am: clean liboil-stdint.h
	* liboil/liboilclasses.h: add splat_u16_ns
	* liboil/ref/splat.c: same
	* liboil/liboilfuncs-04.h: same
	* liboil/liboilfuncs.h: same
	* liboil/liboiltrampolines.c: same

2006-01-20  David Schleef  <ds@schleef.org>

	* configure.ac: Add LIBOIL_OLD_MAJORMINOR
	* liboil/Makefile.am: Use LIBOIL_OLD_MAJORMINOR and link liboiltmp.c
	  into liboiltmp, so that it doesn't have unresolved symbols.
	* liboil/liboiltmp.c: new

2006-01-18  David Schleef  <ds@schleef.org>

	* liboil/ref/convert.c:
	  new classes
	* liboil/sse/clamp_sse.c:
	  compile fix

2006-01-18  David Schleef  <ds@schleef.org>

	* liboil/ref/Makefile.am:
	* liboil/ref/wavelet.c:
	* liboil/c/Makefile.am:
	* liboil/c/wavelet.c:
	* liboil/i386/wavelet.c:
	  add some new wavelet code
	* liboil/liboilclasses.h:
	* liboil/liboilfuncs-04.h:
	* liboil/liboilfuncs.h:
	* liboil/liboilmarshal.c:
	* liboil/liboiltrampolines.c:
	  updates

2006-01-06  David Schleef  <ds@schleef.org>

	* liboil/build_prototypes.c:
	* liboil/build_prototypes_04.c:
	* liboil/build_trampolines.c:
	* liboil/liboilfunction.c:
	  Replace strdup() calls with a local function. Fixes #5515

2006-01-05  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/jpeg/zigzag8x8_c.c: (unzigzag8x8_s16_unroll):
	Add an unrolled unzigzag8x8_s16, just like zigzag8x8_s16 has.
	Performance improvement is similar at over 6x.

2006-01-05  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/math/Makefile.am:
	Minor distcheck fix.

2006-01-05  David Schleef  <ds@schleef.org>

	* liboil/liboilcpu.c:
	  Fix a memleak if /proc/cpuinfo doesn't exist.  (Fixes
	  #5513)  Also fix an fd leak.  Reenable SSE on OS's that
	  don't support it, since there's no SSE detection for
	  Windows, but Windows 2000+ does support it. 

2005-12-27  David Schleef  <ds@schleef.org>

	* configure.ac:
	  If --enable-new-abi is selected, use 0.4
	* liboil/Makefile.am:
	* liboil/build_prototypes.c:
	* liboil/build_prototypes_04.c:
	* liboil/build_trampolines.c:
	  Misc changes for making it easy to switch betwen 0.3 and 0.4
	  ABIs.
	* liboil/i386/Makefile.am:
	* liboil/liboilfuncs-04.h:
	* liboil/liboiltrampolines.c:
	* liboil/simdpack/Makefile.am:
	  Disable impls for deprecated classes if --enable-new-abi is
	  used.
	* liboil/deprecated/.cvsignore:
	* liboil/deprecated/Makefile.am:
	* liboil/deprecated/abs.c:
	* liboil/deprecated/average2_u8.c:
	* liboil/deprecated/clip_ref.c:
	* liboil/deprecated/conv.c:
	* liboil/deprecated/permute.c:
	* liboil/deprecated/scalaradd.c:
	* liboil/deprecated/scalarmult.c:
	* liboil/deprecated/tablelookup.c:
	* liboil/deprecated/vectoradd_f64.c:
	* liboil/deprecated/vectoradd_s.c:
	* liboil/ref/Makefile.am:
	* liboil/ref/abs.c:
	* liboil/ref/average2_u8.c:
	* liboil/ref/clip_ref.c:
	* liboil/ref/conv.c:
	* liboil/ref/permute.c:
	* liboil/ref/scalaradd.c:
	* liboil/ref/scalarmult.c:
	* liboil/ref/tablelookup.c:
	* liboil/ref/vectoradd_f64.c:
	* liboil/ref/vectoradd_s.c:
	  Move a bunch of reference functions because they're now
	  deprecated.

2005-12-26  Eric Anholt  <anholt@FreeBSD.org>

	* examples/.cvsignore:
	* examples/Makefile.am:
	* examples/printcpu.c: (string_append), (oil_cpu_flags_to_string),
	(main):
	Add an example program to pretty-print the set of cpu flags.  To be used
	by the tinderbox for reporting about the cpu it's running on.

2005-12-26  David Schleef  <ds@schleef.org>

	* liboil/c/Makefile.am:
	* liboil/c/ag_clamp.c:
	* liboil/c/generate_clamp.pl:
	  Some autogenerated C implementations for clamp.
	* liboil/i386/Makefile.am:
	* liboil/i386/clamp.c:
	  Some implementations.
	* liboil/i386/conv_3dnow.c:
	  Disable a slightly broken impl.
	* liboil/ref/clamp.c:
	  Fix some silliness in the prototypes for the clamp functions.
	  I'm surprised it even worked at all.

2005-12-25  David Schleef  <ds@schleef.org>

	* liboil/i386/Makefile.am: add resample.c
	* liboil/i386/conv_3dnow.c: Fix impl
	* liboil/i386/conv_sse.c: New impl
	* liboil/i386/idct8x8_i386.c: disable impls
	* liboil/i386/swab.c: fix impl
	* liboil/i386/resample.c: new impls
	* liboil/liboilclasses.h: update
	* liboil/liboilfuncs.h: update
	* liboil/liboilfunction.c: Call srand() at startup.  At some
	  point, we need a self-contained random number generator.
	* liboil/liboiltrampolines.c: update
	* liboil/ref/resample.c: add new class: merge_linear_u8
	* testsuite/instruction/check-instructions.pl: fix misspelling

2005-12-23  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/i386/copy_i386.c: (copy_u8_i386_mmx),
	(splat_u8_ns_i386_mmx):
	* liboil/i386/splat_i386.c: (splat_u32_ns_i386_mmx):
	* liboil/mmx/copy_mmx.c: (copy_u8_mmx), (copy_u8_mmx_unroll4):
	* liboil/mmx/splat_mmx.c: (splat_u32_ns_mmx),
	(splat_u32_ns_mmx_unroll4), (splat_u8_ns_mmx),
	(splat_u8_ns_mmx_unroll4):
	Rename some i386 mmx implementations to not collide with mmx intrinsics
	implementations.  And don't forget the _mm_empty()s in the new mmx code.

2005-12-23  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/mmx/Makefile.am:
	* liboil/mmx/copy_mmx.c: (copy_u8_mmx), (copy_u8_mmx_unroll4):
	* liboil/sse/Makefile.am:
	* liboil/sse/copy_sse.c: (copy_u8_sse), (copy_u8_sse_unroll2):
	Add MMX/SSE2 copy implementations.  MMX wins on my desktop, but I'm
	leaving SSE2 in just in case (note: both of them beat out the previous
	winner).

2005-12-23  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/sse/Makefile.am:
	Correct the splat_sse.c filename, which I botched at the last minute
	while splitting up commits.

2005-12-23  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/mmx/Makefile.am:
	* liboil/mmx/splat_mmx.c: (splat_u32_ns_mmx),
	(splat_u32_ns_mmx_unroll4), (splat_u8_ns_mmx),
	(splat_u8_ns_mmx_unroll4):
	* liboil/sse/Makefile.am:
	* liboil/sse/splat_sse.c: (splat_u32_ns_sse),
	(splat_u32_ns_sse_unroll2), (splat_u8_ns_sse),
	(splat_u8_ns_sse_unroll2):
	Add some MMX/SSE2 splat_ns implementations.

2005-12-23  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/sse/clamp_sse.c: (clamp_u8_sse), (clamp_s16_sse),
	(clamplow_u8_sse), (clamplow_s16_sse), (clamphigh_u8_sse),
	(clamphigh_s16_sse):
	Add a few more easy-to-write clamp implementations for SSE2.

2005-12-23  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/sse/Makefile.am:
	* liboil/sse/sad8x8_sse.c: (sad8x8_u8_sse):
	Add an SSE2 sad8x8 implementation that's way faster than _ref.

2005-12-23  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/i386/Makefile.am:
	Disable fdct8x8theora_mmx, since it produces garbage results for me.

2005-12-23  Eric Anholt  <anholt@FreeBSD.org>

	* testsuite/Makefile.am:
	Move list_impls to a noinst_PROGRAMS variable, so that it gets build
	rules that give it the usual cflags, fixing the build here.

2005-12-23  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/c/Makefile.am:
	* liboil/c/composite.c: (composite_in_argb_fast),
	(composite_in_argb_const_src_fast),
	(composite_in_argb_const_mask_fast), (composite_over_argb_fast),
	(composite_over_argb_const_src_fast), (composite_add_argb_fast),
	(composite_add_argb_const_src_fast), (composite_in_over_argb_fast),
	(composite_in_over_argb_const_src_fast),
	(composite_in_over_argb_const_mask_fast), (composite_add_u8_fast),
	(composite_add_u8_const_src_fast), (composite_over_u8_fast):
	Add fast C implementations of composite classes, operating on two
	channels at a time in a uint32_t.  Inspired by fbpict.h's FbByte*
	macros.  oil-inspect says they generally take about 2/3 the cycles of
	_ref.

2005-12-22  David Schleef  <ds@schleef.org>

	* liboil/mmx/Makefile.am:
	* liboil/mmx/fbmmx.c:
	  Oops, duplicate of fb/fbmmx.c

2005-12-22  David Schleef  <ds@schleef.org>

	* .cvsignore:
	* BUGS:
	* doc/.cvsignore:
	* liboil/mmx/Makefile.am:
	* liboil/mmx/fbmmx.c:
	* patches/divide.c:
	* patches/nr_mmx_R8G8B8A8_P_EMPTY_A8_RGBAP.S:
	* patches/nr_mmx_R8G8B8A8_P_R8G8B8A8_P_A8_RGBAP.S:
	* patches/nr_mmx_R8G8B8A8_P_R8G8B8A8_P_R8G8B8A8_N_TRANSFORM.S:
	* patches/nr_mmx_R8G8B8_R8G8B8_R8G8B8A8_P.S:
	* patches/patch-small-lib-2:
	* testsuite/Makefile.am:
	* testsuite/list_impls.c:
	  Clean up local source tree.  Put spare files in the place where
	  spare files go.

2005-12-22  David Schleef  <ds@schleef.org>

	* doc/tmpl/liboil-unused.sgml:
	* doc/tmpl/liboilprofile.sgml:
	* liboil/liboilfunction.c: init_no_optimize() should agree with
	  oil_init() that the library has been initialized.  Also stop
	  using oil_profile_stamp_gtod()
	* liboil/liboilprofile.c:
	* liboil/liboilprofile.h: Move all the inline profile functions
	  to liboilprofile.c.  Remove oil_profile_stamp_gtod().  Also
	  fix the s390 timestamp function.
	* liboil/copy/splat_ref.c: More impls.
	* liboil/i386/copy_i386.c: More impls.

2005-12-22  David Schleef  <ds@schleef.org>

	* examples/jpeg/jpeg_rgb_decoder.c: Use new colorspace_argb
	  class.
	* liboil/colorspace/Makefile.am: remove ayuv2argb.c (broken)
	* liboil/colorspace/ayuv2argb.c: remove (broken)
	* liboil/i386/ayuv2argb_i386.c: remove broken impls, add mmx
	  for colorspace_argb
	* liboil/jpeg/yuv2rgb_c.c: disable broken impls
	* liboil/liboilclasses.h: new class
	* liboil/liboilfuncs.h: new class
	* liboil/liboiltrampolines.c: new class
	* liboil/ref/ayuv2argb.c: add colorspace_argb reference

2005-12-21  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/sse/composite_sse.c: (composite_add_u8_sse),
	(composite_add_u8_const_src_sse):
	Don't forget to increment the source pointer in composite_add_u8_sse,
	and also be careful about getting some types promoted, to prevent
	overflow.  Fixes testsuite errors.

2005-12-21  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/utf8/utf8_fast.c: (utf8_validate_fast2),
	(utf8_validate_fast3), (utf8_validate_lookup):
	Check for overflows in fast utf8 functions where truncated wide
	characters would result in reads past the end of the buffer.  Fixes
	testsuite failures.

2005-12-20  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/i386/recon8x8_i386.c: (recon8x8_intra_i386_mmx),
	(recon8x8_inter_i386_mmx), (recon8x8_inter2_i386_mmx):
	* liboil/mmx/Makefile.am:
	* liboil/mmx/recon8x8_mmx.c: (recon8x8_intra_mmx),
	(recon8x8_inter_mmx), (recon8x8_inter2_mmx):
	Add a set of MMX-intrinsics implementations of recon8x8_*.  Disable the
	two i386 recon8x8_inter* implementations that didn't respect the
	strides.

2005-12-21  David Schleef  <ds@schleef.org>

	* m4/as-unaligned-access.m4: New macro.

2005-12-21  David Schleef  <ds@schleef.org>

	* configure.ac: Check whether we can do unaligned access.
	* liboil/c/Makefile.am: Add copy.c
	* liboil/c/copy.c: Some impls
	* liboil/i386/Makefile.am: add swab.c
	* liboil/i386/swab.c: Add some swabbing code.  asm, MMX, SSE2.
	* liboil/i386/error8x8_i386.c: Fix impl.  pavgb sucks.
	* liboil/i386/sad8x8avg_i386.c: same
	* liboil/ref/copy.c: fix doc
	* liboil/ref/swab.c: Doh! stupid mistake in reference function
	* liboil/c/swab.c: same

2005-12-21  David Schleef  <ds@schleef.org>

	* liboil/dct/idct8x8theora_ref.c: Fix stupid bug in reference
	  implementation.

2005-12-20  David Schleef  <ds@schleef.org>

	* examples/oil-test.c: Print out the correct values for
	  the test results.

2005-12-20  David Schleef  <ds@schleef.org>

	* liboil/dct/idct8x8_c.c: Add a test function.
	* liboil/i386/fdct8x8theora_i386.c: Compile fix on gcc-4.1.
	* liboil/liboilfunction.h: wrap a macro arg in ()
	* liboil/liboiltest.c: Doh!  Maybe we should compare values
	  in the actual data region rather than the header.  This
	  shows lots of additional breakage.

2005-12-20  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/sse/Makefile.am:
	* liboil/sse/composite_sse.c: (composite_add_argb_sse),
	(composite_add_argb_const_src_sse), (composite_add_u8_sse),
	(composite_add_u8_const_src_sse):
	* liboil/sse/composite_sse_2pix.c: (argb_A_sse2),
	(muldiv_255_sse2), (negate_argb_sse2), (load_argb_sse2),
	(set1_argb_sse2), (load_u8_mask), (set1_u8_mask),
	(store_argb_sse2), (over_argb_sse2), (composite_in_argb_sse_2pix),
	(composite_in_argb_const_src_sse_2pix),
	(composite_in_argb_const_mask_sse_2pix),
	(composite_over_argb_sse_2pix),
	(composite_over_argb_const_src_sse_2pix),
	(composite_in_over_argb_sse_2pix),
	(composite_in_over_argb_const_src_sse_2pix),
	(composite_in_over_argb_const_mask_sse_2pix),
	(composite_over_u8_sse_2pix):
	* liboil/sse/composite_sse_4pix.c: (argb_A_sse2),
	(inner_muldiv_255_sse2), (muldiv_255_sse2), (negate_argb_sse2),
	(load_argb_sse2), (set1_argb_sse2), (load_u8_mask), (set1_u8_mask),
	(store_argb_sse2), (over_argb_sse2), (composite_in_argb_sse),
	(composite_in_argb_const_src_sse),
	(composite_in_argb_const_mask_sse), (composite_over_argb_sse),
	(composite_over_argb_const_src_sse), (composite_in_over_argb_sse),
	(composite_in_over_argb_const_src_sse),
	(composite_in_over_argb_const_mask_sse), (composite_over_u8_sse):
	Add more SSE2-intrinsics composite code.  There are actually 2 copies,
	unless we can figure out if 2pix is always slower.  The 4pix version
	operates on registers with 4 packed pixels, and does unpacking for the
	purposes of the muldiv stage.  On the other hand, the 2pix version works
	on registers containing 2 unpacked pixels.  Speeds are similar, and
	generally around 25 to 50% the ticks of _ref, according to oil-inspect.
	It's not very pretty code, but I've been staring at it for too long and
	want to get it committed.

2005-12-19  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/sse/Makefile.am:
	Add an SSE2 implementation of composite_add_u8_const_src.

2005-12-19  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/Makefile.am:
	Enable building of mmx intrinsics code on amd64.

2005-12-19  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/liboilclasses.h:
	* liboil/liboilfuncs.h:
	* liboil/liboilmarshal.c: (_oil_test_marshal_function):
	* liboil/liboiltrampolines.c: (oil_clamp_f32), (oil_clamp_f64),
	(oil_clamp_s16), (oil_clamp_s32), (oil_clamp_s8), (oil_clamp_u16),
	(oil_clamp_u32), (oil_clamp_u8), (oil_clamphigh_f32),
	(oil_clamphigh_f64), (oil_clamphigh_s16), (oil_clamphigh_s32),
	(oil_clamphigh_s8), (oil_clamphigh_u16), (oil_clamphigh_u32),
	(oil_clamphigh_u8), (oil_clamplow_f32), (oil_clamplow_f64),
	(oil_clamplow_s16), (oil_clamplow_s32), (oil_clamplow_s8),
	(oil_clamplow_u16), (oil_clamplow_u32), (oil_clamplow_u8):
	* liboil/ref/Makefile.am:
	* liboil/ref/clamp.c:
	* liboil/sse/Makefile.am:
	* liboil/sse/clamp_sse.c: (clamp_f32_sse), (clamp_f64_sse),
	(clamplow_f32_sse), (clamplow_f64_sse), (clamphigh_f32_sse),
	(clamphigh_f64_sse):
	Add a ref and sse implementation of a new group of "clamp" functions.
	They behave like clip, but unstrided, and renamed to something people
	might expect more than "clip".  Also offered are clamplow/high, which
	perform clamping on only one side.  SSE implementations are about half
	the ticks of the ref funtions on this amd64.

2005-12-19  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/Makefile.am:
	* liboil/liboilclasses.h:
	* liboil/liboilfuncs.h:
	* liboil/liboiltrampolines.c: (oil_composite_add_u8_const_src):
	* liboil/mmx/.cvsignore:
	* liboil/mmx/Makefile.am:
	* liboil/mmx/composite_mmx.c: (composite_add_u8_const_src_mmx):
	* liboil/ref/composite.c: (composite_add_u8_const_src_ref):
	Add a ref and mmx implementation of composite_add_u8_const_src, like
	composite_add_argb_const_src.  This may prove useful for trapezoid
	rasterization in cairo.

2005-12-19  David Schleef  <ds@schleef.org>

	* doc/Makefile.am:
	* doc/liboil-sections.txt:
	* doc/tmpl/liboil-unused.sgml:
	* doc/tmpl/liboilfuncs-copy.sgml:
	* doc/tmpl/liboilparameter.sgml:
	* doc/tmpl/liboilprototype.sgml:
	* doc/tmpl/liboilrandom.sgml:
	* doc/tmpl/liboiltest.sgml:
	* doc/tmpl/liboiltypes.sgml:
	  Documentation updates.
	* examples/Makefile.am:
	* examples/oil-test.c: Add an -n option and fix printing u8.
	* examples/oil-suggest.c: A proggy for recommending stuff to
	  work on.
	* examples/taylor/example1.c: Random minor changes.
	* liboil/conv/conv_c.c: Disable lrint stuff for u32, because it
	  can't possibly work.
	* liboil/i386/conv_3dnow.c: (conv_s32_f32_3dnow): Fix.
	* liboil/i386/md5_i386.c: (md5_asm1), (md5_asm2): Fix.
	* liboil/liboilparameter.h: Add oil_type_is_floating_point();
	* liboil/liboiltest.c: Add OilTest::tolerance for setting the
	  tolerance on dest arrays.
	* liboil/liboiltest.h:
	* liboil/ref/conv.c: (conv_test): Implement a test function for
	  floating point to integer conversions (to test the entire range).
	* testsuite/align.c: (check_class_with_alignment), (check_class):
	  Rearrange some code here and rely on the internal testing stuff
	  to work.
	* testsuite/n_impls.c: (oil_class_get_n_impls), (main): New test
	  to make sure we don't accidentally delete implementations between
	  versions.

2005-12-18  David Schleef  <ds@schleef.org>

	* liboil/utf8/utf8.c: (utf8_validate_test), (utf8_validate_ref):
	* liboil/utf8/utf8_fast.c: (utf8_validate_fast),
	(utf8_validate_fast2), (utf8_validate_fast3),
	(utf8_validate_lookup):
	  Some utf8 hacking.  At least it works now.

2005-12-17  David Schleef  <ds@schleef.org>

	* liboil/liboilparameter.h:
	* liboil/liboilprototype.c: (oil_param_get_source_data):
	* liboil/liboiltest.c: (oil_test_get_value):
	* liboil/liboiltest.h:
	  New functions for getting values common in test setup functions.
	* liboil/dct/idct8x8theora_ref.c:
	* liboil/ref/clip_ref.c:
	* liboil/ref/composite.c:
	* liboil/ref/permute.c:
	* liboil/ref/resample.c:
	* liboil/utf8/utf8.c:
	  Use new functions.

2005-12-17  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: Add librandom.c
	* liboil/liboilcolorspace.h:
	* liboil/liboilrandom.c: Some C code to write arrays of random
	  numbers.
	* liboil/liboilrandom.h: Add prototypes from above, remove a
	  bunch of macros that aren't used.
	* liboil/liboiltest.c: Use array functions instead of macros.
	* liboil/liboiltest.h: Add oil_test_get_source_data()
	* liboil/liboiltypes.h: Add 64-bit types.
	* liboil/i386/composite_i386.c: Add simple mmx implementations
	  for all the composite functions.

 2005-12-16  David Schleef  <ds@schleef.org>

	* liboil/conv/conv_bitstuff.c:
	* liboil/conv/conv_c.c:
	* liboil/conv/conv_misc.c:
	* liboil/copy/copy.c:
	* liboil/copy/copy8x8.c:
	* liboil/copy/splat_ref.c:
	* liboil/copy/trans8x8_c.c:
	* liboil/dct/dct12_f32.c:
	* liboil/dct/dct36_f32.c:
	* liboil/dct/fdct8_f64.c:
	* liboil/dct/fdct8x8_f64.c:
	* liboil/dct/fdct8x8s_s16.c:
	* liboil/dct/fdct8x8theora.c:
	* liboil/dct/idct8_f64.c:
	* liboil/dct/idct8x8_c.c:
	* liboil/dct/idct8x8theora_ref.c:
	* liboil/dct/imdct32_f32.c:
	  Put const in all the right places in implementation prototypes.

2005-12-15  David Schleef  <ds@schleef.org>

	* liboil/c/swab.c: swabbing functions
	* liboil/liboilclasses.h:
	* liboil/liboilfuncs.h:
	* liboil/ref/copy.c: some new classes.

2005-12-15  David Schleef  <ds@schleef.org>

	* doc/liboil-sections.txt:
	* doc/tmpl/liboil-unused.sgml:
	* doc/tmpl/liboiltypes.sgml:
	* liboil/conv/conv_c.c:
	* liboil/liboilprototype.c:
	* liboil/liboiltypes.h:
	* liboil/ref/clip_ref.c:
	* liboil/ref/conv.c:
	* liboil/ref/multsum.c:
	* liboil/ref/permute.c:
	* liboil/ref/scalaradd.c:
	* liboil/ref/scalarmult.c:
	* liboil/ref/trans8x8.c:
	* liboil/ref/vectoradd_f64.c:
	* liboil/ref/vectoradd_s.c:
	* liboil/simdpack/scalaradd.c:
	* liboil/simdpack/scalarmult.c:
	  Global change from type_* to oil_type_*

2005-12-15  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/jpeg/zigzag8x8_c.c: (zigzag8x8_s16_unroll):
	* testsuite/Makefile.am:
	Fix an issue in the unrolled zigzag function where the src and dst
	offsets were swapped.  Add a testsuite entry to check that the process
	of zigzagging and unzigzagging results in the original data.

2005-12-15  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/fb/fbmmx.c: (pix_multiply):
	Fix an off-by-one reported by the align test (reported as a much larger
	error, since the pixels get represented as ints) by fixing an ordering
	issue of instructions in the rounding code.  This is also reflected in
	current upstream sources.

2005-12-15  David Schleef  <ds@schleef.org>

	* liboil/liboilcolorspace.h:  Fix doc on oil_divide_255().

2005-12-15  David Schleef  <ds@schleef.org>

	* configure.ac:
	* liboil/Makefile.am:
	* liboil/build_prototypes.c:
	* liboil/build_trampolines.c:
	* liboil/liboiltrampolines.c:
	  Add a configure option --enable-new-abi, which compiles liboil
	  with an experimental (and incompatible) ABI.  You need to run
	  'make; make update; make' to get it to build correctly, and
	  remember to not check in the files autogenerated for the new
	  ABI.

2005-12-15  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am:
	* liboil/build_trampolines.c:
	* liboil/liboilprototype.c:
	* liboil/liboilprototype.h:
	* liboil/liboiltrampolines.c:
	  Some C code to generate trampolines for every class in C.  For
	  possible use in the 0.4 ABI.

2005-12-15  David Schleef  <ds@schleef.org>

	* liboil/sse/Makefile.am:
	* liboil/sse/conv_sse.c: Remove this, since I'm not sure of its
	  provenance and a bug (GNOME #324069) complained it's broken.

2005-12-14  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/sse/math_sse.c: (scalaradd_f32_ns_sse),
	(scalarmultiply_f32_ns_sse):
	* liboil/sse/math_sse_unroll2.c: (scalaradd_f32_ns_sse_unroll2),
	(scalarmultiply_f32_ns_sse_unroll2):
	Use _mm_load_ps1 to avoid manually expanding the constant fp value into
	a temporary array and doing _mm_loadu_ps.  The resulting assembly also
	looks a decent bit better.  Suggested by Stephane Fillod.

2005-12-14  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/Makefile.am:
	* liboil/amd64/Makefile.am:
	* liboil/amd64/scalarmult_amd64.c:
	* liboil/dct/idct8x8theora_ref.c: (idct8theora_s16_test),
	(idct8x8theora_s16_test):
	* liboil/i386/Makefile.am:
	* liboil/i386/scalarmult_i386.c:
	* liboil/liboilparameter.h:
	* liboil/liboiltest.c: (oil_test_new), (oil_test_set_test_header),
	(oil_test_set_test_footer), (oil_test_check_function),
	(oil_test_check_impl), (init_parameter):
	* liboil/liboiltest.h:
	* liboil/ref/clip_ref.c:
	* liboil/ref/composite.c: (composite_test):
	* liboil/ref/permute.c: (permute_test):
	* liboil/ref/resample.c: (resample_linear_u8_test),
	(resample_linear_argb_test), (merge_linear_argb_test):
	* liboil/utf8/utf8.c: (utf8_validate_test):
	* testsuite/.cvsignore:
	* testsuite/Makefile.am:
	* testsuite/align.c: (dump_array), (dump_source), (dump_dest_ref),
	(test_difference), (check_test), (check_class), (main):
	Make the guard header/footer size configurable at test runtime.  Use
	this to make a test of implementation invariance with respect to the
	alignment of arguments (offsetting arguments by 0 to 3 times the size of
	their type).  The align test also varies the length of arguments, to
	catch issues with fixups at the end of unrolled loops.  Note that its
	tests of the results are stricter than oil's internal tests, resulting
	in some failures due to accuracy, that should probably be examined.
	Remove scalarmult_f32_sse which is hopelessly broken (and when fixed,
	is much slower than ref).

2005-12-14  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/fb/fbmmx.c: (store8888), (fbCompositeSolid_nx8888mmx):
	Fix a write past the end of the buffer when doing a short alignment
	fixup or odd-length fixup in fbCompositeSolid_nx8888mmx.  Probably saves
	some work, as well.

2005-12-14  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/utf8/utf8_fast.c: (utf8_validate_fast):
	For (n % 4) != 0, utf8_validate_fast would read up to 3 bytes beyond the
	end of the buffer and could return a value greater than n if the bytes
	read happened to not have their highest bits set.

2005-12-13  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/amd64/Makefile.am:
	* liboil/amd64/math_amd64.c:
	* liboil/sse/math_sse.c: (add_f32_sse), (subtract_f32_sse),
	(multiply_f32_sse), (divide_f32_sse), (minimum_f32_sse),
	(maximum_f32_sse), (inverse_f32_sse), (negative_f32_sse),
	(scalaradd_f32_ns_sse), (scalarmultiply_f32_ns_sse):
	* liboil/sse/math_sse_unroll2.c: (add_f32_sse_unroll2),
	(subtract_f32_sse_unroll2), (multiply_f32_sse_unroll2),
	(divide_f32_sse_unroll2), (minimum_f32_sse_unroll2),
	(maximum_f32_sse_unroll2), (inverse_f32_sse_unroll2),
	(negative_f32_sse_unroll2), (scalaradd_f32_ns_sse_unroll2),
	(scalarmultiply_f32_ns_sse_unroll2):
	Fix SSE intrinsics code in the presence of un-SSE-alignment of the dest
	pointer, detected by hardcoding a new value of OIL_TEST_HEADER.  Remove
	the AMD64 SSE inline asm code for being broken in the same way but not
	caring enough to fix it (inline asm version might be useful for older
	GCC on i386, but probably not on amd64 where we'll have intrinsics).

2005-12-13  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/simdpack/multsum.c: (multsum_f32_unroll2):
	Implement multsum_f32_unroll2 as I think it was meant to be implemented
	(previous implementation looked bogus).  Fixes a make check failure
	for me.

2005-12-12  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/amd64/math_amd64.c: (add_f32_amd64), (subtract_f32_amd64),
	(multiply_f32_amd64), (divide_f32_amd64), (negative_f32_amd64),
	(scalaradd_f32_ns_amd64), (scalarmultiply_f32_ns_amd64):
	* liboil/sse/Makefile.am:
	* liboil/sse/math_sse.c: (add_f32_sse), (subtract_f32_sse),
	(multiply_f32_sse), (divide_f32_sse), (minimum_f32_sse),
	(maximum_f32_sse), (inverse_f32_sse), (negative_f32_sse),
	(scalaradd_f32_ns_sse), (scalarmultiply_f32_ns_sse):
	* liboil/sse/math_sse_unroll2.c: (add_f32_sse_unroll2),
	(subtract_f32_sse_unroll2), (multiply_f32_sse_unroll2),
	(divide_f32_sse_unroll2), (minimum_f32_sse_unroll2),
	(maximum_f32_sse_unroll2), (inverse_f32_sse_unroll2),
	(negative_f32_sse_unroll2), (scalaradd_f32_ns_sse_unroll2),
	(scalarmultiply_f32_ns_sse_unroll2):
	* testsuite/.cvsignore:
	* testsuite/Makefile.am:
	* testsuite/math.c: (dump_array), (dump_source), (test_difference),
	(check_test), (check_class), (main):
	Add SSE intrinsics code doing what math_amd64.c does, but working for
	both amd64 and i386, and with a couple more functions.  Performance is
	generally equivalent to math_amd64.c but better in some cases.  Renames
	math_amd64.c functions to avoid clashes with intrinsics code.  Also add
	an unrolled-once version of this code that's around a 2-10% improvement
	in the tests I've done with oil-test.

2005-12-12  David Schleef  <ds@schleef.org>

	* liboil/liboilcpu.c: (get_cpuid): Revert the broken change to
	i386 cpu detection. (oops)

2005-12-12  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/amd64/math_amd64.c:
	Note: New code doesn't work well if you leave in the #if 0 you used for
	turning it off for final performance tests.

2005-12-12  Eric Anholt  <anholt@FreeBSD.org>

	* configure.ac:
	* liboil/Makefile.am:
	* liboil/amd64/Makefile.am:
	* liboil/amd64/math_amd64.c: (add_f32_sse), (subtract_f32_sse),
	(multiply_f32_sse), (divide_f32_sse), (negative_f32_sse),
	(scalaradd_f32_ns_sse), (scalarmultiply_f32_ns_sse):
	* liboil/amd64/scalarmult_amd64.c: (scalarmult_f32_sse):
	* liboil/liboilcpu.c: (get_cpuid),
	(oil_cpu_i386_kernel_restrict_flags), (_oil_cpu_init):
	Add support for detecting amd64 capabilities, and add the existing SSE
	intrinsics and fbmmx code for it.  Add a set of simple math
	implementations using SSE that could use some tuning, but have provided
	my app a 10.5% +/- 1.0% performance improvement in the case I'm testing.

2005-12-10  David Schleef  <ds@schleef.org>

	* m4/ax_create_stdint_h.m4: New macro.

2005-12-10  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am:
	* liboil/liboil.h:
	* liboil/liboilgcc.h:
	* liboil/liboilprofile.h:
	* liboil/liboiltypes.h:
	  Use generated stdint.h file.

2005-12-09  David Schleef  <ds@schleef.org>

	* configure.ac:
	* examples/oil-test.c: (dump_array), (help), (main):
	* m4/pkg.m4:
	  Check for inttypes.h header.  Use PRIx8 and friends in
	  oil-test.c to print stuff correctly on 64-bit platforms.
	  Also add new -x option to print in hex.  (Fixes: #5042)

2005-12-06  David Schleef  <ds@schleef.org>

	* liboil/fb/fbmmx.c:
	* liboil/sse/conv_sse.c: (conv_f32_s32_sse): And make sure that
	  it works with gcc.

2005-12-06  David Schleef  <ds@schleef.org>

	* liboil/fb/fbmmx.c:
	* liboil/sse/conv_sse.c: Compilation fixes for icc.  configure
	  still thinks it's ok to use -Werror with icc, which is a
	  problem, so turn it off manually.

2005-12-06  David Schleef  <ds@schleef.org>

	* liboil/c/swab.c: Disable the i386 asm, 'cuz it's in the
	  wrong place.

2005-12-04  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: Fix build dependencies for update target
	  (Fixes: #5121)

2005-12-04  David Schleef  <ds@schleef.org>

	* testsuite/stride.c: (main):  Fix crash with -v. (Fixes: #5162)

2005-12-04  David Schleef  <ds@schleef.org>

	* configure.ac:
	* m4/as-gcc-inline-assembly.m4:
	* liboil/powerpc/clip.c:
	* liboil/powerpc/conv.c:
	  Add HAVE_GCC_ASM_POWERPC_FPU and use it if -fsoft-float is
	  specified.

2005-12-04  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am:
	* liboil/c/Makefile.am:
	* liboil/c/swab.c:
	* liboil/liboilclasses.h:
	* liboil/liboilfuncs.h:
	* liboil/ref/Makefile.am:
	* liboil/ref/swab.c: (swab_u16_ref), (swab_u32_ref):
	  Add swabbing functions.

2005-12-04  David Schleef  <ds@schleef.org>

	* doc/Makefile.am:
	  Add a sync target to encourage me to upload docs.
	* examples/Makefile.am:
	* examples/oil-graph.c: (test), (main):
	  New program to print out time v. N results easily graphable.
	* liboil/liboilfunction.c: (oil_class_optimize):
	* liboil/liboiltest.c: (oil_test_check_function),
	(oil_test_check_impl):
	* liboil/liboiltest.h:
	  Add ave/std members to OilProfile and use them.
	* liboil/fb/fbmmx.c:
	  This requires MMXEXT.
	* testsuite/instruction/check-instructions.pl:
	  Fix regexp.
	* testsuite/instruction/list-impls.c: (main):
	  Architecture test switched to HAVE_GCC_I386.

2005-11-30  David Schleef  <ds@schleef.org>

	* doc/liboil-sections.txt:
	* doc/tmpl/liboilfuncs-math.sgml:
	* liboil/liboilclasses.h:
	* liboil/liboilfuncs.h:
	* liboil/ref/squaresum_f64.c: (squaresum_shifted_s16_ref):
	  New class for thomasvs.

2005-11-23  David Schleef  <ds@schleef.org>

	* configure.ac:
	* liboil/3dnow/Makefile.am:
	* liboil/Makefile.am:
	* liboil/c/Makefile.am:
	* liboil/mmx/Makefile.am:

2005-11-18  David Schleef  <ds@schleef.org>

	* liboil/math/Makefile.am: Autogenerated implementations.  Doesn't
	  get better than this!
	* liboil/math/ag_math.c:
	* liboil/math/generate_math.pl:
	* liboil/math/math.c:

2005-11-16  David Schleef  <ds@schleef.org>

	* liboil/copy/copy.c: (copy_u8_llints), (copy_u8_llints_duff):
	* liboil/copy/copy8x8.c: (copy8x8_u8_ints_unrolled):
	  Some implementations from Adam Moss

2005-11-14  David Schleef  <ds@schleef.org>

	* configure.ac: return version to nano=1

=== 0.3.5 ===

2005-11-14  David Schleef  <ds@schleef.org>

	* configure.ac: version bump

2005-11-13  David Schleef  <ds@schleef.org>

	* doc/tmpl/conv.sgml:  Remove old template files.
	* doc/tmpl/convert.sgml:
	* doc/tmpl/dct.sgml:
	* doc/tmpl/jpeg.sgml:
	* doc/tmpl/liboilgcc.sgml:
	* doc/tmpl/md5.sgml:
	* doc/tmpl/simdpack.sgml:
	* doc/tmpl/utf8.sgml:

2005-11-13  David Schleef  <ds@schleef.org>

	* doc/liboil-docs.sgml: Clean up documentation, document
	  remaining functions.  Up to 96% coverage, woohoo!
	* doc/liboil-overrides.txt:
	* doc/liboil-sections.txt:
	* doc/tmpl/liboil-unused.sgml:
	* doc/tmpl/liboilclass-unstable.sgml:
	* doc/tmpl/liboildebug.sgml:
	* doc/tmpl/liboilfunction.sgml:
	* doc/tmpl/liboilimpl-unstable.sgml:
	* doc/tmpl/liboilinit-unstable.sgml:
	* doc/tmpl/liboilinit.sgml:
	* doc/tmpl/liboiljunk.sgml:
	* doc/tmpl/liboilmacros.sgml:
	* doc/tmpl/liboilparameter.sgml:
	* doc/tmpl/liboilprofile.sgml:
	* doc/tmpl/liboilprototype.sgml:
	* doc/tmpl/liboilrandom.sgml:
	* doc/tmpl/liboiltest.sgml:
	* doc/tmpl/liboiltypes.sgml:
	* liboil/liboil.h:
	* liboil/liboildebug.h:
	* liboil/liboilfunction.c:
	* liboil/liboilfunction.h:
	* liboil/liboilprofile.h:
	* liboil/liboiltest.h:
	* liboil/liboiltypes.h:

2005-11-13  David Schleef  <ds@schleef.org>

	* doc/liboil-sections.txt: Clean up documentation.
	* doc/tmpl/liboil.sgml:
	* doc/tmpl/liboilcpu.sgml:
	* doc/tmpl/liboildebug.sgml:
	* doc/tmpl/liboilfuncs-conv.sgml:
	* doc/tmpl/liboilfuncs-copy.sgml:
	* doc/tmpl/liboilfuncs-dct.sgml:
	* doc/tmpl/liboilfuncs-doc.sgml:
	* doc/tmpl/liboilfuncs-math.sgml:
	* doc/tmpl/liboilfuncs-math8x8.sgml:
	* doc/tmpl/liboilfuncs-pixel.sgml:
	* doc/tmpl/liboilfunction.sgml:
	* doc/tmpl/liboilparameter.sgml:
	* doc/tmpl/liboilprofile.sgml:
	* doc/tmpl/liboilprototype.sgml:
	* doc/tmpl/liboilrandom.sgml:
	* doc/tmpl/liboiltest.sgml:
	* doc/tmpl/liboiltypes.sgml:
	* liboil/dct/fdct8x8s_s16.c:
	* liboil/dct/idct8x8_c.c:
	* liboil/liboilcpu.c:
	* liboil/liboildebug.c:
	* liboil/liboildebug.h:
	* liboil/liboilfunction.c:
	* liboil/liboilfunction.h:
	* liboil/liboilprofile.c:
	* liboil/liboilprofile.h:
	* liboil/liboilprototype.c:
	* liboil/liboilrandom.h:
	* liboil/liboiltest.c:
	* liboil/ref/clip_ref.c:
	* liboil/ref/composite.c:
	* liboil/ref/conv.c:
	* liboil/ref/copy.c:
	* liboil/ref/generate-conv:
	* liboil/ref/math.c:

2005-11-13  David Schleef  <ds@schleef.org>

	* doc/Makefile.am: Write a little bit of documentation.
	* doc/liboil-overrides.txt:
	* doc/liboil-sections.txt:
	* doc/tmpl/liboil-unused.sgml:
	* doc/tmpl/liboil.sgml:
	* doc/tmpl/liboilfuncs-conv.sgml:
	* doc/tmpl/liboilfuncs-copy.sgml:
	* doc/tmpl/liboilfuncs-dct.sgml:
	* doc/tmpl/liboilfuncs-doc.sgml:
	* doc/tmpl/liboilfuncs-math.sgml:
	* doc/tmpl/liboilfuncs-math8x8.sgml:
	* doc/tmpl/liboilfuncs-pixel.sgml:
	* doc/tmpl/liboilfunction.sgml:
	* doc/tmpl/liboilparameter.sgml:
	* doc/tmpl/liboilprofile.sgml:
	* doc/tmpl/liboiltest.sgml:
	* doc/tmpl/liboiltypes.sgml:
	* liboil/dct/dct12_f32.c:
	* liboil/dct/dct36_f32.c:
	* liboil/dct/fdct8_f64.c:
	* liboil/dct/fdct8x8_f64.c:
	* liboil/dct/fdct8x8s_s16.c:
	* liboil/dct/fdct8x8theora.c:
	* liboil/dct/idct8_f64.c:
	* liboil/dct/idct8x8_c.c:
	* liboil/dct/idct8x8theora_ref.c:
	* liboil/dct/imdct32_f32.c:
	* liboil/jpeg/convert8x8_c.c:
	* liboil/jpeg/jpeg_rgb_decoder.c:
	* liboil/jpeg/quantize8x8_c.c:
	* liboil/jpeg/zigzag8x8_c.c:
	* liboil/liboilclasses.h:
	* liboil/liboilcolorspace.h:
	* liboil/liboilcpu.c: (oil_cpu_fault_check_enable):
	* liboil/liboildebug.c:
	* liboil/liboildebug.h:
	* liboil/liboilfuncs.h:
	* liboil/liboilfunction.c:
	* liboil/liboilfunction.h:
	* liboil/liboilparameter.h:
	* liboil/liboilprofile.c:
	* liboil/liboilprofile.h:
	* liboil/liboilprototype.c: (oil_prototype_to_string),
	(oil_prototype_from_string):
	* liboil/liboilprototype.h:
	* liboil/liboilrandom.h:
	* liboil/liboiltest.c:
	* liboil/liboiltest.h:
	* liboil/liboiltypes.h:
	* liboil/md5/md5.c:
	* liboil/null.c:
	* liboil/ref/average2_u8.c:
	* liboil/ref/clip_ref.c:
	* liboil/ref/composite.c:
	* liboil/ref/conv.c:
	* liboil/ref/copy.c:
	* liboil/ref/copy8x8.c:
	* liboil/ref/diff8x8.c:
	* liboil/ref/diffsquaresum_f64.c:
	* liboil/ref/error8x8.c:
	* liboil/ref/math.c:
	* liboil/ref/mix_u8.c:
	* liboil/ref/mult8x8_s16.c:
	* liboil/ref/multsum.c:
	* liboil/ref/permute.c:
	* liboil/ref/recon8x8.c:
	* liboil/ref/resample.c:
	* liboil/ref/rowcolsad8x8.c:
	* liboil/ref/sad8x8.c:
	* liboil/ref/sad8x8_broken.c:
	* liboil/ref/sad8x8avg.c:
	* liboil/ref/scalaradd.c:
	* liboil/ref/scalarmult.c:
	* liboil/ref/sincos_f64.c:
	* liboil/ref/splat.c:
	* liboil/ref/squaresum_f64.c:
	* liboil/ref/sum_f64.c:
	* liboil/ref/tablelookup.c:
	* liboil/ref/trans8x8.c:
	* liboil/ref/vectoradd_f64.c:
	* liboil/ref/vectoradd_s.c:
	* liboil/utf8/utf8.c:

2005-11-13  David Schleef  <ds@schleef.org>

	* liboil/i386/fdct8x8theora_i386.c: (fdct8x8theora_mmx):
	* liboil/i386/recon8x8_i386.c: (recon8x8_intra_mmx):
	  Fix some asm code that accesses global variables from asm
	  code in a very incorrect manner.  (#5032)

2005-11-12  David Schleef  <ds@schleef.org>

	* liboil/math/math.c: split math.c into ref/ and math/ versions.
	* liboil/ref/Makefile.am:
	* liboil/ref/math.c:

2005-11-11  David Schleef  <ds@schleef.org>

	* doc/liboil-sections.txt: Documentation?  Is he MAD?
	* doc/tmpl/liboil-unused.sgml:
	* doc/tmpl/liboilfuncs-math.sgml:
	* liboil/jpeg/yuv2rgb_c.c:
	* liboil/liboilfunction.c:
	* liboil/ref/abs.c:
	* liboil/ref/argb_paint.c:
	* liboil/ref/ayuv2argb.c:
	* liboil/ref/composite.c:
	* liboil/ref/resample.c:
	* liboil/ref/rgb.c:
	* liboil/ref/yuv.c:

2005-11-06  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: Fix more stuff and reenable MMX
	* liboil/conv/Makefile.am:
	* liboil/conv/conv_3dnow.c: move
	* liboil/conv/conv_sse.c: move
	* liboil/fb/Makefile.am:
	* liboil/i386/Makefile.am:
	* liboil/i386/conv_3dnow.c: move
	* liboil/i386/conv_sse.c: move

2005-11-04  David Schleef  <ds@schleef.org>

	* configure.ac: version bump

2005-11-04  David Schleef  <ds@schleef.org>

	* configure.ac: version bump
	* liboil/Makefile.am: Don't install liboiltmp1.la.  This change
	  actually made it into the release.

=== 0.3.4 ===

2005-11-03  David Schleef  <ds@schleef.org>

	* liboil/sse/Makefile.am: Clean up sse building

2005-11-03  David Schleef  <ds@schleef.org>

	* configure.ac: Turn of asm-blocks, becuase it doesn't compile
	  on OS/X.

2005-11-02  David Schleef  <ds@schleef.org>

	* configure.ac: revert to -Wa,-mregnames
	* liboil/powerpc/md5.c: fixes
	* liboil/powerpc/zigzag8x8.c: fixes
	* liboil/powerpc/Makefile.am: move fdct8x8theora_altivec.c
	* liboil/powerpc/fdct8x8theora_altivec.c: from here
	* liboil/powerpc_asm_blocks/fdct8x8theora_altivec.c: to here
	* liboil/powerpc_asm_blocks/Makefile.am:
	* m4/as-intrinsics.m4: fix altivec test

2005-11-02  David Schleef  <ds@schleef.org>

	* configure.ac: Use AC_CANONICAL_HOST
	* liboil/powerpc/Makefile.am: fix dist

2005-10-28  David Schleef  <ds@schleef.org>

	* configure.ac: Use AC_LIBTOOL_WIN32_DLL
	* liboil/Makefile.am: Fix sed patterns for extracting symbols
	  from libtool .exp files to handle different format on windows
	  targets.  Move sse directory to a conditional.
	* liboil/README: new file
	* liboil/liboiltest.h: remove // comment
	* liboil/powerpc_asm_blocks/Makefile.am: name ltlibrary correctly
	* m4/as-intrinsics.m4: Fix SSE2 test

2005-10-28  David Schleef  <ds@schleef.org>

	* liboil/i386/diff8x8_i386.c: (diff8x8_const128_s16_u8_mmx):
	  Fix problem pulling in global constant.

2005-10-27  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: Fixups from conflicts in previous commit.
	* liboil/conv/Makefile.am:
	* liboil/powerpc/recon8x8_altivec.c:
	* liboil/powerpc/recon8x8_ppc.c:

	* liboil/powerpc_asm_blocks/Makefile.am: Move asm-blocks stuff
	  to a separate directory, since it requires different CPU flags.
	* liboil/powerpc_asm_blocks/recon8x8_altivec.c:
	* liboil/powerpc_asm_blocks/recon8x8_ppc.c:

2005-10-27  David Schleef  <ds@schleef.org>

	* autogen.sh: Refactor how we check for intrinsics and flags.
	  Remove hard-coded CFLAGS that don't work on Forte.  This is
	  not complete, specifically, some of the makefiles aren't up
	  to the new order.
	* configure.ac:
	* liboil/Makefile.am:
	* liboil/conv/Makefile.am:
	* liboil/fb/Makefile.am:
	* liboil/i386/Makefile.am:
	* liboil/math/Makefile.am:
	* liboil/motovec/Makefile.am:
	* liboil/powerpc/Makefile.am:
	* liboil/sse/Makefile.am:
	* liboil/utf8/Makefile.am:
	* m4/as-gcc-inline-assembly.m4:
	* m4/as-intrinsics.m4:
	* testsuite/instruction/Makefile.am:

2005-10-17  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/liboilcpu.c: (oil_cpu_i386_kernel_restrict_flags),
	(oil_cpu_i386_getflags):
	Disable SSE on versions of FreeBSD with no kernel support for it.  On
	non-FreeBSD, non-Linux kernels, disable it until we learn to check
	whether the operating system supports SSE.

2005-10-17  Eric Anholt  <anholt@FreeBSD.org>

	* liboil/powerpc/Makefile.am:
	Don't attempt to build powerpc files on non-powerpcs, where the altivec
	flags break the compile.

2005-10-17  David Schleef  <ds@schleef.org>

	* configure.ac: Check for -masm-blocks before using the feature
	* liboil/powerpc/Makefile.am:

2005-10-10  David Schleef  <ds@schleef.org>

	* liboil/powerpc/clip.c: Move more files around
	* liboil/ref/Makefile.am:
	* liboil/ref/abs.c:
	* liboil/ref/average2_u8.c:
	* liboil/ref/clip_ref.c:
	* liboil/ref/diffsquaresum_f64.c:
	* liboil/ref/mix_u8.c:
	* liboil/ref/mult8x8_s16.c:
	* liboil/ref/multsum.c:
	* liboil/ref/sad8x8.c:
	* liboil/ref/sad8x8_broken.c:
	* liboil/ref/scalaradd.c:
	* liboil/ref/scalarmult.c:
	* liboil/ref/sincos_f64.c:
	* liboil/ref/squaresum_f64.c:
	* liboil/ref/sum_f64.c:
	* liboil/ref/vectoradd_f64.c:
	* liboil/ref/vectoradd_s.c:
	* liboil/simdpack/Makefile.am:
	* liboil/simdpack/abs.c:
	* liboil/simdpack/average2_u8.c:
	* liboil/simdpack/clip_ref.c:
	* liboil/simdpack/diffsquaresum_f64.c:
	* liboil/simdpack/mix_u8.c:
	* liboil/simdpack/mult8x8_s16.c:
	* liboil/simdpack/multsum.c:
	* liboil/simdpack/sad8x8.c:
	* liboil/simdpack/sad8x8_broken.c:
	* liboil/simdpack/scalaradd.c:
	* liboil/simdpack/scalarmult.c:
	* liboil/simdpack/sincos_f64.c:
	* liboil/simdpack/squaresum_f64.c:
	* liboil/simdpack/sum_f64.c:
	* liboil/simdpack/vectoradd_f64.c:
	* liboil/simdpack/vectoradd_s.c:

2005-10-10  David Schleef  <ds@schleef.org>

	* m4/ltdl.m4:  Seems Debian's new libtool package doesn't
	  have a good definition of AC_LTDL_SYMBOL_USCORE

2005-10-10  David Schleef  <ds@schleef.org>

	* liboil/i386/abs_i386.c: Move more files.
	* liboil/i386/argb_paint_i386.c:
	* liboil/i386/ayuv2argb_i386.c:
	* liboil/i386/composite_i386.c:
	* liboil/i386/copy8x8_i386.c:
	* liboil/i386/copy_i386.c:
	* liboil/i386/fdct8x8theora_i386.c:
	* liboil/i386/idct8x8_i386.c:
	* liboil/i386/md5_i386.c:
	* liboil/i386/mult8x8_i386.c:
	* liboil/i386/scalarmult_i386.c:
	* liboil/i386/splat_i386.c:
	* liboil/i386/trans8x8_i386.c:
	* liboil/i386/vectoradd_s_i386.c:

2005-10-01  David Schleef  <ds@schleef.org>

	What have I done?!?  Move files around.
	* liboil/colorspace/Makefile.am:
	* liboil/colorspace/argb_paint.c:
	* liboil/colorspace/argb_paint_i386.c:
	* liboil/colorspace/ayuv2argb.c:
	* liboil/colorspace/ayuv2argb_i386.c:
	* liboil/colorspace/composite.c:
	* liboil/colorspace/composite_i386.c:
	* liboil/colorspace/resample.c:
	* liboil/colorspace/resample_powerpc.c:
	* liboil/colorspace/rgb2bgr.c:
	* liboil/colorspace/rgb2bgr_powerpc.c:
	* liboil/colorspace/rgb2rgba.c:
	* liboil/colorspace/rgb2rgba_powerpc.c:
	* liboil/colorspace/yuv.c:
	* liboil/conv/Makefile.am:
	* liboil/conv/conv_powerpc.c:
	* liboil/conv/conv_ref.c:
	* liboil/copy/Makefile.am:
	* liboil/copy/copy.c:
	* liboil/copy/copy8x8.c:
	* liboil/copy/copy8x8_i386.c:
	* liboil/copy/copy_i386.c:
	* liboil/copy/copy_powerpc.c:
	* liboil/copy/permute.c:
	* liboil/copy/splat_i386.c:
	* liboil/copy/splat_powerpc.c:
	* liboil/copy/splat_ref.c:
	* liboil/copy/tablelookup_ref.c:
	* liboil/copy/trans8x8.c:
	* liboil/copy/trans8x8_i386.c:
	* liboil/dct/Makefile.am:
	* liboil/dct/fdct8x8theora_i386.c:
	* liboil/dct/idct8x8_i386.c:
	* liboil/i386/Makefile.am:
	* liboil/jpeg/Makefile.am:
	* liboil/jpeg/zigzag8x8_powerpc.c:
	* liboil/md5/Makefile.am:
	* liboil/md5/md5_i386.c:
	* liboil/md5/md5_powerpc.c:
	* liboil/powerpc/Makefile.am:
	* liboil/powerpc/abs.c: (abs_u16_s16_a16_altivec):
	* liboil/powerpc/clip.c: (clip_s16_ppcasm), (clip_s16_ppcasm2),
	(clip_s16_ppcasm3):
	* liboil/powerpc/conv.c: (_sl_clipconv_S8_F32__powerpc_altivec),
	(_sl_clipconv_S16_F32__powerpc_altivec),
	(_sl_clipconvert_S32_F32__powerpc_altivec),
	(convert_s16_f64__powerpc), (_sl_convert_S16_F32__powerpc),
	(conv_f64_s16_altivec), (clipconv_s16_f64_ppcasm):
	* liboil/powerpc/copy.c: (copy_u8_altivec), (copy_u8_altivec2):
	* liboil/powerpc/md5.c: (md5_asm1), (md5_asm2), (md5_asm3):
	* liboil/powerpc/mix.c: (mix_u8_a16_altivec):
	* liboil/powerpc/multsum.c: (multsum_f32_ppcasm):
	* liboil/powerpc/resample.c: (__attribute__),
	(merge_linear_argb_powerpc):
	* liboil/powerpc/rgb2bgr.c: (rgb2bgr_ppc), (rgb2bgr_ppc2),
	(rgb2bgr_ppc3), (rgb2bgr_ppc4):
	* liboil/powerpc/rgb2rgba.c: (rgb2rgba_powerpcasm):
	* liboil/powerpc/sad8x8.c: (sad8x8_s16_a16_altivec),
	(sad8x8_s16_l15_a16_altivec):
	* liboil/powerpc/splat.c: (splat_u8_ns_altivec),
	(splat_u8_ns_altivec2), (splat_u32_ns_altivec):
	* liboil/powerpc/zigzag8x8.c: (__attribute__),
	(zigzag8x8_s16_a16_altivec):
	* liboil/ref/Makefile.am:
	* liboil/ref/argb_paint.c: (argb_paint_u8_ref):
	* liboil/ref/ayuv2argb.c: (ayuv2argb_u8_ref):
	* liboil/ref/composite.c: (composite_test),
	(composite_in_argb_ref), (composite_in_argb_const_src_ref),
	(composite_in_argb_const_mask_ref), (composite_over_argb_ref),
	(composite_over_argb_const_src_ref), (composite_add_argb_ref),
	(composite_add_argb_const_src_ref), (composite_in_over_argb_ref),
	(composite_in_over_argb_const_src_ref),
	(composite_in_over_argb_const_mask_ref), (composite_add_u8_ref),
	(composite_over_u8_ref):
	* liboil/ref/conv.c:
	* liboil/ref/copy.c: (copy_u8_ref):
	* liboil/ref/copy8x8.c: (copy8x8_u8_ref):
	* liboil/ref/permute.c: (permute_test):
	* liboil/ref/resample.c: (resample_linear_u8_test),
	(resample_linear_argb_test), (resample_linear_u8_ref),
	(resample_linear_argb_ref), (merge_linear_argb_test),
	(merge_linear_argb_ref):
	* liboil/ref/rgb.c: (rgb2bgr_ref), (rgb2rgba_ref):
	* liboil/ref/splat.c: (splat_u8_ref), (splat_u32_ref),
	(splat_u8_ns_ref), (splat_u32_ns_ref):
	* liboil/ref/tablelookup.c: (tablelookup_u8_ref):
	* liboil/ref/trans8x8.c:
	* liboil/ref/yuv.c: (yuyv2ayuv_ref), (yvyu2ayuv_ref),
	(uyvy2ayuv_ref), (ayuv2yuyv_ref), (ayuv2yvyu_ref), (ayuv2uyvy_ref):
	* liboil/simdpack/Makefile.am:
	* liboil/simdpack/abs_i386.c:
	* liboil/simdpack/abs_powerpc.c:
	* liboil/simdpack/clip_powerpc.c:
	* liboil/simdpack/mix_powerpc.c:
	* liboil/simdpack/mult8x8_i386.c:
	* liboil/simdpack/multsum_powerpc.c:
	* liboil/simdpack/sad8x8_powerpc.c:
	* liboil/simdpack/scalarmult_i386.c:
	* liboil/simdpack/vectoradd_s_i386.c:

2005-10-01  David Schleef  <ds@schleef.org>

	* configure.ac: nano back to 1

=== 0.3.3 ===

2005-09-30  David Schleef  <ds@schleef.org>

	* doc/liboil-sections.txt: remove old functions

2005-09-30  David Schleef  <ds@schleef.org>

	* configure.ac: version bump
	* doc/liboil-overrides.txt: doc fixes
	* doc/liboil-sections.txt:
	* doc/tmpl/liboilrandom.sgml:

2005-09-29  David Schleef  <ds@schleef.org>

	* liboil/colorspace/rgb2bgr_powerpc.c: Fix impl

2005-09-28  David Schleef  <ds@schleef.org>

	* doc/tmpl/liboil-unused.sgml:
	* doc/tmpl/liboil.sgml:
	* doc/tmpl/liboilcpu.sgml:
	* doc/tmpl/liboildebug.sgml:
	* doc/tmpl/liboilfuncs-conv.sgml:
	* doc/tmpl/liboilfuncs-copy.sgml:
	* doc/tmpl/liboilfuncs-dct.sgml:
	* doc/tmpl/liboilfuncs-doc.sgml:
	* doc/tmpl/liboilfuncs-math.sgml:
	* doc/tmpl/liboilfuncs-math8x8.sgml:
	* doc/tmpl/liboilfuncs-pixel.sgml:
	* doc/tmpl/liboilfunction.sgml:
	* doc/tmpl/liboilgcc.sgml:
	* doc/tmpl/liboilparameter.sgml:
	* doc/tmpl/liboilprofile.sgml:
	* doc/tmpl/liboilprototype.sgml:
	* doc/tmpl/liboilrandom.sgml:
	* doc/tmpl/liboiltest.sgml:
	* doc/tmpl/liboiltypes.sgml:
	  documentation update.

2005-09-15  David Schleef  <ds@schleef.org>

	* examples/oil-test.c: Add 64-bit types
	* liboil/liboilparameter.h: same
	* liboil/liboilprototype.c: same
	* liboil/liboilrandom.h: same
	* liboil/liboiltest.c: same
	* liboil/Makefile.am: fix windows build
	* liboil/simdpack/sincos_f64.c: minor change

2005-09-13  David Schleef  <ds@schleef.org>

	* liboil/simdpack/sincos_f64.c: (sincos_f64_sincos): Add impl
	using sincos()

2005-08-15  David Schleef  <ds@schleef.org>

	GCC complains on solaris when isspace() is called with a
	char argument.  Rather than argue about such stupidity,
	I'll play along.
	* liboil/liboilprototype.c: (oil_prototype_from_string),
	(parse_string), (oil_param_from_string):
	* testsuite/introspect.c: (parse_type), (parse_size),
	(parse_string), (parse_prototype):
	* testsuite/proto3.c: (check_param):

2005-08-15  David Schleef  <ds@schleef.org>

	* liboil/powerpc/Makefile.am: disable fdct8x8theora_altivec.c,
	because it doesn't compile.
	* liboil/powerpc/recon8x8_ppc.c: (recon8x8_inter_ppc),
	(recon8x8_inter2_ppc): disable functions, because they cause
	bus errors.
	* liboil/simdpack/clip_fast.c: (clip_s16_fast2): Fix endpoint
	problem.
	* testsuite/Makefile.am: remove unused GLIB flags

2005-08-15  David Schleef  <ds@schleef.org>

	* liboil/i386/Makefile.am: compile empty file on non-i386
	* liboil/motovec/motovec.c: get underscore conditional correctly

2005-08-15  David Schleef  <ds@schleef.org>

	* testsuite/abs.c: (test), (main): remove glib usage in testsuite
	* testsuite/copy.c: (test), (main):
	* testsuite/md5.c: (test), (main):
	* testsuite/md5_profile.c: (test), (main):
	* testsuite/trans.c: (test), (main):

2005-08-15  David Schleef  <ds@schleef.org>

	* configure.ac: Add some altivec theora code
	* liboil/Makefile.am:
	* liboil/powerpc/Makefile.am:
	* liboil/powerpc/fdct8x8theora_altivec.c: (fdct8x8theora_altivec):
	* liboil/powerpc/recon8x8_altivec.c: (recon8x8_intra_altivec),
	(recon8x8_inter_altivec), (recon8x8_inter2_altivec):
	* liboil/powerpc/recon8x8_ppc.c: (recon8x8_intra_ppc),
	(recon8x8_inter_ppc), (recon8x8_inter2_ppc):

	* liboil/colorspace/composite.c: Fix bug in ADD operator.
	* liboil/dct/fdct8x8theora_i386.c:
	* liboil/simdpack/average2_u8.c: (average2_u8_trick),
	(average2_u8_unroll4): Fix n%4!=0 problems noticed by thomasvs.
	* liboil/simdpack/scalarmult_i386.c: (scalarmult_f32_sse): Fix
	n%4!=0 problems.
	* testsuite/stride.c: (main): use a random n to test possible
	endpoint problems.

2005-08-15  David Schleef  <ds@schleef.org>

	* liboil/liboilcpu.c: (oil_cpu_i386_getflags_cpuinfo): SSE2
	implies MMXEXT in both codepaths.

2005-08-13  David Schleef  <ds@schleef.org>

	* configure.ac: use macro for gtk-doc checking
	* doc/tmpl/liboil-unused.sgml: update
	* doc/tmpl/liboilfuncs-conv.sgml:
	* doc/tmpl/liboilfuncs-copy.sgml:
	* doc/tmpl/liboilfuncs-dct.sgml:
	* doc/tmpl/liboilfuncs-doc.sgml:
	* doc/tmpl/liboilfuncs-math.sgml:
	* doc/tmpl/liboilfuncs-math8x8.sgml:
	* doc/tmpl/liboilfuncs-pixel.sgml:
	* liboil/simdpack/Makefile.am: AMD64 fix
	* m4/gtk-doc.m4: enable gtk-doc by default
	* patches/patch-remove-indirection: update
	* testsuite/instruction/Makefile.am: don't run by default
	* testsuite/stride.c: (main): add some random striding

2005-08-08  David Schleef  <ds@schleef.org>

	* liboil/null.c: MMX isn't really portable

2005-08-04  David Schleef  <ds@schleef.org>

	* liboil/colorspace/Makefile.am: Disable some code on amd64.
	* liboil/copy/Makefile.am:
	* liboil/dct/Makefile.am:

2005-08-02  David Schleef  <ds@schleef.org>

	* doc/Makefile.am: updates
	* doc/liboil-docs.sgml:
	* doc/liboil-sections.txt:
	* doc/tmpl/liboil-unused.sgml:
	* doc/tmpl/liboilcpu.sgml:
	* doc/tmpl/liboilfuncs-doc.sgml:
	* doc/tmpl/liboilfunction.sgml:
	* doc/tmpl/liboiltest.sgml:
	* testsuite/instruction/check-instructions.pl: minor opcode fixes

2005-08-02  David Schleef  <ds@schleef.org>

	* liboil/fb/fbpict.h: oops, need this

2005-08-02  David Schleef  <ds@schleef.org>

	* liboil/simdpack/scalarmult.c:  Readd some implementations,
	since they're unbroken now.  (They still suck.)

2005-08-02  David Schleef  <ds@schleef.org>

	* HACKING: some notes
	* configure.ac: readd _GNU_SOURCE
	* liboil/Makefile.am: add new dirs, create decls header
	* liboil/build_class_decls.c: create decls header
	* liboil/liboilclasses.h: new decls header
	* liboil/liboilinternal.h: general internal header
	* liboil/fb/.cvsignore: cvsignore
	* liboil/i386/.cvsignore:
	* liboil/math/.cvsignore:
	* liboil/motovec/.cvsignore:
	* liboil/ref/.cvsignore:
	* liboil/sse/.cvsignore:
	* liboil/utf8/.cvsignore:
	* testsuite/instruction/check-instructions.pl: minor opcode fixes

2005-08-02  David Schleef  <ds@schleef.org>

	Patch from Wim Taymans adding a bunch of classes and MMX
	implementations for libtheora.  Heavily modified by ds.
	* Makefile.am:
	* liboil-uninstalled.pc.in:
	* liboil/copy/Makefile.am:
	* liboil/copy/copy.c:
	* liboil/copy/copy8x8.c:
	* liboil/copy/copy8x8_i386.c:
	* liboil/dct/Makefile.am:
	* liboil/dct/fdct8x8theora.c:
	* liboil/dct/fdct8x8theora_i386.c:
	* liboil/i386/Makefile.am:
	* liboil/i386/diff8x8_i386.c:
	* liboil/i386/error8x8_i386.c:
	* liboil/i386/recon8x8_i386.c:
	* liboil/i386/rowcolsad8x8_i386.c:
	* liboil/i386/sad8x8_i386.c:
	* liboil/i386/sad8x8avg_i386.c:
	* liboil/ref/Makefile.am:
	* liboil/ref/diff8x8.c:
	* liboil/ref/error8x8.c:
	* liboil/ref/recon8x8.c:
	* liboil/ref/rowcolsad8x8.c:
	* liboil/ref/sad8x8avg.c:

2005-08-02  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: add libcolorspace.h
	* liboil/build_marshal.c: (main): use oil_init_no_optimize() to
	save us from horrible build problems (like what happened today)
	* liboil/build_prototypes.c: (main): same
	* liboil/build_prototypes_doc.c: (main): same
	* liboil/liboilfunction.h: same
	* liboil/liboilfunction.c: (oil_init_no_optimize): same
	* liboil/liboilmarshal.c: (_oil_test_marshal_function): some new
	marshal cases needed by wim's code.
	* liboil/null.c: (null_mmx): add mmx impl
	* liboil/colorspace/argb_paint.c: prototype fixes
	* liboil/colorspace/ayuv2argb.c:
	* liboil/colorspace/composite.c:
	* liboil/colorspace/rgb2bgr.c:
	* liboil/colorspace/rgb2rgba.c:
	* liboil/fb/Makefile.am: add headers
	* liboil/fb/fbmmx.c: hacking
	* liboil/liboilfuncs.h: update

2005-08-02  David Schleef  <ds@schleef.org>

	* configure.ac: Define HAVE_LD_UNDERSCORE to indicate whether
	or not an underscore is prepended to C symbols.
	* liboil/motovec/motovec.c:

2005-08-01  David Schleef  <ds@schleef.org>

	* configure.ac: use BSD_SOURCE instead of POSIX_C_SOURCE, because
	POSIX_C_SOURCE causes symbols that we'd like to use to be hidden.

2005-08-01  David Schleef  <ds@schleef.org>

	* configure.ac: Changes to make amd64 not suck
	* liboil/colorspace/Makefile.am:
	* liboil/conv/Makefile.am:
	* liboil/copy/Makefile.am:
	* liboil/dct/Makefile.am:
	* liboil/fb/Makefile.am:
	* liboil/liboilprofile.h:
	* liboil/md5/Makefile.am:
	* liboil/simdpack/Makefile.am:
	* liboil/simdpack/scalarmult.c:
	* liboil/sse/Makefile.am:
	* liboil/utf8/Makefile.am:

2005-08-01  David Schleef  <ds@schleef.org>

	* m4/gtk-doc.m4: this is useful

2005-08-01  David Schleef  <ds@schleef.org>

	* configure.ac: add -D_BSD_SOURCE

2005-08-01  David Schleef  <ds@schleef.org>

	* liboil/colorspace/composite_i386.c: (composite_over_argb_sse2_3):
	minor improvement

2005-08-01  David Schleef  <ds@schleef.org>

	* Makefile.am: add 'foreign' to automake flags
	* configure.ac: add some dirs
	* examples/Makefile.am: same
	* examples/memcpy-speed.c: (main): change back to gromit's cpu
	* examples/oil-inspect.c: (oil_print_impl): Don't run non-runnable
	implementations.
	* examples/oil-test.c: (dump_array), (main): minor fixes
	* examples/taylor/Makefile.am: new
	* examples/taylor/example1.c: new
	* liboil/Makefile.am: add dirs
	* liboil/colorspace/composite.c: (composite_over_argb_noclamp_2):
	alternate clamping version
	* liboil/simdpack/scalarmult.c: add unrolled impls
	* testsuite/instruction/check-instructions.pl: fixes
	* liboil/fb/Makefile.am: new
	* liboil/fb/fbmmx.h: new
	* liboil/fb/fbmmx.c: new

2005-08-01  David Schleef  <ds@schleef.org>

	* liboil/colorspace/composite_i386.c: (composite_over_argb_sse2_2),
	(composite_over_argb_sse2_3): hacking
	* liboil/liboilcpu.c: (oil_cpu_i386_getflags_cpuid): Intel's SSE2
	implies MMXEXT

2005-07-31  David Schleef  <ds@schleef.org>

	* liboil/colorspace/composite_i386.c: (composite_over_argb_mmx_4),
	(composite_over_argb_mmx_5), (composite_over_argb_sse2): hacking

2005-07-30  David Schleef  <ds@schleef.org>

	* liboil/colorspace/composite_i386.c: (composite_over_argb_mmx),
	(composite_over_argb_mmx_2), (composite_over_argb_mmx_3),
	(composite_over_argb_mmx_4), (composite_over_argb_sse2): some
	new implementations

2005-07-30  David Schleef  <ds@schleef.org>

	* examples/report.c: (oil_print_class): Fix printing
	* liboil/colorspace/Makefile.am:
	* liboil/colorspace/composite.c: use colorspace header
	* liboil/colorspace/composite_i386.c: new
	* liboil/liboil.h: remove prefetch, it was a bad idea
	* liboil/liboilcolorspace.h: new header
	* liboil/liboilcpu.c: (oil_cpu_get_ticks_per_second):
	* liboil/liboilcpu.h:
	* liboil/liboiltest.c: (oil_test_init), (oil_test_check_function):
	  add oil_test_init() and reshuffle code
	* liboil/liboiltest.h: ditto

2005-07-26  David Schleef  <ds@schleef.org>

	* configure.ac: oops, compile fix

2005-07-26  David Schleef  <ds@schleef.org>

	* doc/liboil-sections.txt: Add some recent new prototypes.
	* doc/tmpl/liboilfuncs-math.sgml:
	* doc/tmpl/liboilfuncs-pixel.sgml:
	* examples/report.c: (get_n_impls), (oil_print_class):
	* liboil/Makefile.am: add math subdir
	* liboil/colorspace/composite.c: (composite_in_argb_ref),
	(composite_in_argb_const_src_ref),
	(composite_in_argb_const_mask_ref), (composite_over_argb_ref),
	(composite_over_argb_const_src_ref), (composite_add_argb_ref),
	(composite_add_argb_const_src_ref), (composite_in_over_argb_ref),
	(composite_in_over_argb_const_src_ref),
	(composite_in_over_argb_const_mask_ref): Fix OVER operator, and
	rename compose to composite everywhere.
	* liboil/liboilfuncs.h: new math functions
	* liboil/liboiltest.c: (oil_test_new): change size of test array
	back to 100, because 1000 is wrong and slow
	* liboil/math/Makefile.am: new math code
	* liboil/math/math.c: 

2005-07-26  David Schleef  <ds@schleef.org>

	* CVS_HAS_MOVED:  Revert last change in new repository
	* autogen.sh:
	* configure.ac:
	* cvs-changeroot:

2005-07-26  David Schleef  <ds@schleef.org>

	* CVS_HAS_MOVED: disable CVS, pointing to new location
	* autogen.sh:
	* configure.ac:
	* cvs-changeroot:

2005-07-20  Andy Wingo  <wingo@pobox.com>

	* liboil/liboilprototype.c: (oil_arg_type_name): Implement.

	* liboil/liboilfunction.c: (oil_class_optimize): Log what
	implementation we chose.

	* liboil/liboildebug.h: (OIL_FUNCTION): Make sure we get
	PRETTY_FUNCTION with gcc.

2005-06-18  David Schleef  <ds@schleef.org>

	* configure.ac: add compiler flag for powerpc
	* examples/memcpy-speed.c: (main): only run runnable functions
	* liboil/colorspace/Makefile.am: add yuv.c
	* liboil/colorspace/yuv.c: (yuyv2ayuv_ref), (yvyu2ayuv_ref),
	(uyvy2ayuv_ref), (ayuv2yuyv_ref), (ayuv2yvyu_ref), (ayuv2uyvy_ref):
	New classes
	* liboil/liboilfunction.c: include stdlib for malloc
	* liboil/motovec/vec_memcpy.S: change .global to .globl, add
	  initial underscore
	* liboil/motovec/vec_memset.S: same
	* liboil/sse/Makefile.am: compile empty.c if nothing else is
	  available

2005-06-17  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: create a tmpfile for liboilarray.c to
	  avoid unnecessary building of liboil-0.3.la
	* liboil/colorspace/Makefile.am: add resample_powerpc.c
	* liboil/colorspace/resample.c: (merge_linear_argb_test): add test
	  function, since one parameter needs to be in the range [0,256]
	* liboil/colorspace/resample_powerpc.c: (merge_linear_argb_powerpc):
	  altivec impl
	* liboil/colorspace/rgb2rgba_powerpc.c: (rgb2rgba_powerpcasm):
	  Improve the asm
	* liboil/copy/Makefile.am: new file
	* liboil/copy/splat_powerpc.c: (splat_u8_ns_altivec),
	(splat_u8_ns_altivec2), (splat_u32_ns_altivec): some altivec impls

2005-06-17  David Schleef  <ds@schleef.org>

	* liboil/copy/copy_powerpc.c: (copy_u8_altivec),
	(copy_u8_altivec2): Rewrite so that they actually work.
	* liboil/motovec/Makefile.am: Fix up motovec stuff
	* liboil/motovec/motovec.c: (copy_u8_motovec),
	(splat_u8_ns_motovec): same

2005-06-17  David Schleef  <ds@schleef.org>

	* configure.ac: snarf LIBMOTOVEC because it has a compatible
	license.
	* COPYING:
	* liboil/Makefile.am:
	* liboil/motovec/Makefile.am:
	* liboil/motovec/README:
	* liboil/motovec/checksum_vec.S:
	* liboil/motovec/string_vec.S:
	* liboil/motovec/vec_csum.S:
	* liboil/motovec/vec_memcmp.S:
	* liboil/motovec/vec_memcpy.S:
	* liboil/motovec/vec_memset.S:
	* liboil/motovec/vec_strcpy.S:

2005-06-17  David Schleef  <ds@schleef.org>

	* liboil/colorspace/Makefile.am: new files
	* liboil/colorspace/argb_paint.c: remove temporary classes
	* liboil/colorspace/composite.c: new
	* liboil/colorspace/resample.c: new
	* liboil/liboilfuncs.h: update
	* liboil/liboilmarshal.c: (_oil_test_marshal_function): update

2005-06-16  David Schleef  <ds@schleef.org>

	* liboil/conv/conv_sse.c:
	* liboil/sse/Makefile.am: Fix flags
	* liboil/sse/conv_sse.c: (conv_f32_s32_sse): Remove emms, since it's
	not MMX code, and remove MMX flag.
	* testsuite/instruction/Makefile.am: convert to check program
	* testsuite/instruction/check-instructions.pl: add list of
	instructions that are both mmx and sse2, and differentiate based
	on usage of %xmm registers.

2005-06-16  David Schleef  <ds@schleef.org>

	* testsuite/instruction/Makefile.am:
	* testsuite/instruction/check-instructions.pl: Add sse2 instructions

2005-06-15  David Schleef  <ds@schleef.org>

	* configure.ac: Add instruction checker
	* testsuite/Makefile.am:
	* testsuite/instruction/Makefile.am:
	* testsuite/instruction/check-instructions.pl:
	* testsuite/instruction/list-impls.c: (main):

	* liboil/colorspace/argb_paint_i386.c: Fix flags based on advice of
	the instruction checker
	* liboil/colorspace/ayuv2argb_i386.c:
	* liboil/conv/conv_3dnow.c:
	* liboil/conv/conv_sse.c:
	* liboil/copy/trans8x8_i386.c:
	* liboil/dct/idct8x8_i386.c:
	* liboil/sse/conv_sse.c:

	* liboil/liboilfuncs.h: update
	* liboil/liboilmarshal.c: (_oil_test_marshal_function): update
	* liboil/liboiltest.c: (oil_test_new), (oil_test_check_function):
	regenerate inplace data for every test iteration.  Bump default
	n to 1000 to force memcpy to choose a good function. (lame hack)
	* liboil/copy/copy_i386.c: (copy_u8_mmx3), (copy_u8_mmx4),
	(copy_u8_mmx5): new implementation, fix others
	* liboil/copy/splat_i386.c: (splat_u32_ns_mmx): make faster
	* liboil/copy/splat_ref.c: (splat_u8_ns_int): fix bug
	* liboil/colorspace/argb_paint.c: (argb_splat_u8_ref),
	(rgba_splat_u8_ref): New functions
	* liboil/simdpack/average2_u8.c: (average2_u8_ref),
	(average2_u8_trick), (average2_u8_fast), (average2_u8_unroll4):
	Implementations really need to follow stride rules.
	* liboil/Makefile.am: Don't use SSE flags, because people on
	powerpc don't appreciate it.
	* examples/memcpy-speed.c: (main): only go to 1<<24 bytes

2005-06-02  David Schleef  <ds@schleef.org>

	* examples/Makefile.am:
	* examples/memcpy-speed.c: (main):
	  New memory speed test program
	* examples/oil-test.c: (main):
	  Use n=100 for test.
	* liboil/copy/Makefile.am:
	* liboil/copy/copy_i386.c: (copy_u8_mmx3):
	  movntq based copy
	* liboil/copy/splat_i386.c: (splat_u32_ns_mmx):
	  movntq based splat

2005-05-26  David Schleef  <ds@schleef.org>

	* liboil/liboil.h:
	* liboil/liboilcpu.c: (oil_memory_prefetch_local),
	(oil_memory_prefetch_transient): Add prefetch functions.

2005-05-26  David Schleef  <ds@schleef.org>

	* liboil/colorspace/argb_paint_i386.c: (argb_paint_u8_mmx):
	  fix asm contraints that gcc-4.0 doesn't like
	* liboil/conv/conv_3dnow.c: (conv_f32_s16_3dnow),
	(conv_s32_f32_3dnow): remove mm0 constraint, it's irrelevant
	* liboil/conv/conv_sse.c: (conv_f32_s32_sse), (conv_s32_f64_sse):
	* liboil/copy/splat_ref.c: (splat_u32_ns_unroll4): add another
	  unroll
	* liboil/liboilfunction.h: parentheses are good

	* liboil/sse/Makefile.am: add a separate directory for SSE
	  intrinsics, since they need to be compiled with special flags.
	* liboil/sse/conv_sse.c: (conv_f32_s32_sse):
	* liboil/Makefile.am: add sse directory
	* configure.ac: cleanup

2005-05-08  David Schleef  <ds@schleef.org>

	* patches/patch-remove-indirection: Some patches that might get
	applied in 0.4 transition.
	* patches/patch-small-lib:

2005-05-08  David Schleef  <ds@schleef.org>

	* configure.ac: version bump
	* liboil/liboilprofile.h: disable broken MIPS code

	These are autogenerated.
	* doc/xml/liboil-doc.bottom:
	* doc/xml/liboil.xml:
	* doc/xml/liboilcpu.xml:
	* doc/xml/liboildebug.xml:
	* doc/xml/liboilfuncs-doc.xml:
	* doc/xml/liboilfunction.xml:
	* doc/xml/liboilparameter.xml:
	* doc/xml/liboilprofile.xml:
	* doc/xml/liboilprototype.xml:
	* doc/xml/liboilrandom.xml:
	* doc/xml/liboiltest.xml:
	* doc/xml/liboiltypes.xml:
	* doc/xml/object_index.sgml:
	* doc/xml/tree_index.sgml:

=== 0.3.2 ===

2005-05-08  David Schleef  <ds@schleef.org>

	* configure.ac: version bump

2005-05-08  David Schleef  <ds@schleef.org>

	Rearrangement of docs
	* doc/liboil-docs.sgml:
	* doc/liboil-sections.txt:
	* doc/tmpl/convert.sgml:
	* doc/tmpl/liboil-unused.sgml:
	* doc/tmpl/liboil.sgml:
	* doc/tmpl/liboilfuncs-conv.sgml:
	* doc/tmpl/liboilfuncs-copy.sgml:
	* doc/tmpl/liboilfuncs-dct.sgml:
	* doc/tmpl/liboilfuncs-doc.sgml:
	* doc/tmpl/liboilfuncs-math.sgml:
	* doc/tmpl/liboilfuncs-math8x8.sgml:
	* doc/tmpl/liboilfuncs-pixel.sgml:
	* doc/tmpl/liboilgcc.sgml:
	* doc/tmpl/utf8.sgml:

2005-05-08  David Schleef  <ds@schleef.org>

	* README: cleanup
	* doc/liboil-sections.txt: add new functions for 0.3.2
	* doc/tmpl/liboilfuncs-doc.sgml: updates, plus more words
	* doc/tmpl/liboilfunction.sgml: updates

2005-05-07  David Schleef  <ds@schleef.org>

	* liboil/copy/splat_ref.c: (splat_u8_ns_int): Stupid monkey! make
	the function actually do what it's supposed to do.
	* liboil/copy/trans8x8_i386.c: (trans8x8_u16_asm2): Remove ebx
	clobbering
	* liboil/dct/idct8x8theora_ref.c: remove _REF flag for non-ref
	function.

2005-05-06  David Schleef  <ds@schleef.org>

	* examples/jpeg/jpeg.c: (jpeg_decoder_decode_entropy_segment):
	Fix gcc-4.0 warning.
	* examples/report.c: (oil_print_class): print the chosen impl name
	* liboil/conv/conv_ref.c: remove some cruft, add scaleconv classes
	* liboil/dct/idct8x8_i386.c: (idct8x8_s16_mmx): Fix usage of ebx
	* liboil/liboil.h: add macro for trans8x8_s16
	* liboil/liboilfuncs.h: update
	* liboil/md5/md5_i386.c: disable some stuff that gcc-4.0 doesn't
	like.

2005-05-06  David Schleef  <ds@schleef.org>

	* doc/xml/liboilfunction.xml: update
	* examples/report.c: (oil_print_class): print whether fastest
	implementation is due to alternate optimization flags
	* liboil/copy/splat_ref.c: (splat_u8_ns_ref), (splat_u32_ns_ref),
	(splat_u32_ns_unroll2), (splat_u8_ns_memset), (splat_u8_ns_int):
	Add new splat classes
	* liboil/copy/trans8x8_c.c: make static
	* liboil/copy/trans8x8_i386.c: make functions static
	* liboil/utf8/utf8_fast.c: make functions static
	* liboil/liboilcpu.c: (oil_cpu_i386_getflags_cpuid),
	(oil_cpu_fault_check_enable), (oil_cpu_fault_check_disable):
	fix up signal() fallback.  Allow nested calls to check_enable().
	* liboil/liboilfunction.c: (oil_optimize_all): wrap in fault
	check

2005-05-02  David Schleef  <ds@schleef.org>

	* examples/Makefile.am: add report
	* examples/report.c: Create report of classes and speedups.
	* liboil/conv/conv_3dnow.c: (conv_f32_s16_3dnow),
	(conv_s32_f32_3dnow): reindent

2005-05-02  David Schleef  <ds@schleef.org>

	* liboil/utf8/Makefile.am:
	* liboil/utf8/utf8_fast.c: Some implementations.

2005-05-02  David Schleef  <ds@schleef.org>

	* configure.ac: Check for gettimeofday and sigaction.  Define
	LIBM for linking with libm.
	* liboil/Makefile.am: Fixes for win32 building
	* liboil/conv/Makefile.am: same
	* liboil/dct/idct8x8_i386.c: (fdct8x8s_s16_mmx): save ebx properly
	* liboil/liboilcpu.c: (oil_cpu_fault_check_enable),
	(oil_cpu_fault_check_disable): conditionally use sigaction
	* liboil/liboilfunction.c: (oil_class_register_impl),
	(oil_class_register_impl_full): Add function
	* liboil/liboilfunction.h: same
	* liboil/liboilprofile.c: (oil_profile_stamp_gtod): make use
	of gettimeofday conditional.

2005-04-30  David Schleef  <ds@schleef.org>

	* liboil/copy/Makefile.am: Some cool new implementations.
	* liboil/copy/trans8x8_c.c: (trans8x8_u16_c1), (trans8x8_u16_c2),
	(trans8x8_u16_c3), (trans8x8_u16_c4):
	* liboil/copy/trans8x8_i386.c: (trans8x8_u16_asm1),
	(trans8x8_u16_asm2):

2005-04-30  David Schleef  <ds@schleef.org>

	* examples/uberopt/uberopt.c: Select 100 random sequences instead
	of generating all possible.
	* examples/uberopt/it.c: Example code

2005-04-30  David Schleef  <ds@schleef.org>

	* liboil/copy/Makefile.am:
	* liboil/copy/trans8x8_c.c: (trans8x8_u16_c1), (trans8x8_u16_c2),
	(trans8x8_u16_c3), (trans8x8_u16_c4): Some pretty fast C
	implementations.
	* liboil/copy/trans8x8_i386.c: (trans8x8_u16_asm1),
	(trans8x8_u16_asm2): asm implementations.  nearly optimal.

2005-04-29  David Schleef  <ds@schleef.org>

	* examples/Makefile.am: add oil-test
	* examples/oil-test.c: A copy of work.c modified for displaying
	test results for any class.
	* liboil/dct/Makefile.am:
	* liboil/dct/idct8x8_i386.c: (idct8x8_s16_mmx), (fdct8x8s_s16_mmx):
	Add mmx code for idct
	* liboil/dct/idct8x8theora_ref.c: Add some classes for idct8x8
	to the theora spec.
	* liboil/liboilfuncs.h: update

2005-04-28  David Schleef  <ds@schleef.org>

	Add an example huffman (variable code length) decoder
	* configure.ac:
	* examples/Makefile.am:
	* examples/huffman/Makefile.am:
	* examples/huffman/huffman.c: (huffman_new), (huffman_add_code),
	(huffman_decode_iterate), (huffman_decode_ref):
	* examples/huffman/huffman.h:
	* examples/huffman/huffman_test.c: (main):

2005-04-26  David Schleef  <ds@schleef.org>

	* configure.ac: version bump
	* doc/xml/liboilfunction.xml: update
	* liboil/Makefile.am: install a few more headers
	* liboil/build_prototypes.c: (main): Make sure we print "void" for
	oil_null() function prototype.
	* liboil/dct/fdct8x8_f64.c: (fdct8x8_f64_1d): 
	* liboil/dct/fdct8x8s_s16.c:
	* liboil/dct/idct8x8_c.c: (idct8x8_f64_ref),
	(idct8x8lim10_f64_ref), (idct8x8_s16_ref), (idct8x8lim10_s16_ref):
	* liboil/liboilcpu.c: (test_cpuid), (oil_cpu_i386_getflags_cpuid):
	remember to disable fault checking.
	* liboil/liboilfuncs.h: update
	* liboil/liboilfunction.c: (oil_class_optimize),
	(oil_class_register_impl_by_name), (oil_class_register_impl):
	Better error checking.  Allow registration by class, since we
	allow unregistered classes.
	* liboil/liboilfunction.h: same
	* liboil/liboilmarshal.c: (_oil_test_marshal_function): update
	* liboil/liboiltest.c: (oil_test_check_ref): better error checking
	* liboil/simdpack/Makefile.am: add sad8x8_broken.c
	* liboil/simdpack/clip_ref.c: Add a test function to make sure
	low < high.
	* liboil/simdpack/sad8x8.c: (sad8x8_f64_2_ref), (sad8x8_s16_2_ref),
	(sad8x8_u8_ref): Deprecate old classes, because the prototypes are
	strangely wrong.  Replace with new, correct class definitions.
	Add a new u8 class.
	* liboil/simdpack/sad8x8_broken.c: (sad8x8_f64_ref),
	(sad8x8_s16_ref): Move old classes here.

2005-03-24  David Schleef  <ds@schleef.org>

	* liboil/liboilcpu.c: (get_proc_cpuinfo),
	(oil_cpu_i386_getflags_cpuinfo), (get_cpuid),
	(oil_cpu_i386_getflags_cpuid), (oil_cpu_i386_getflags): Add
	support for getting flags from cpuid instruction directly.
	* liboil/liboilfunction.h: Add SSE3

2005-03-17  David Schleef  <ds@schleef.org>

	* configure.ac: bump version

	* doc/tmpl/liboil-unused.sgml: revert patch
	* doc/tmpl/liboilfuncs-doc.sgml:
	* doc/xml/liboilfuncs-doc.xml:
	* liboil/Makefile.am:
	* liboil/simdpack/Makefile.am:
	* liboil/simdpack/clip_ref.c:
	* liboil/simdpack/scalaradd.c:
	* liboil/simdpack/simdpack.h:

2005-03-17  David Schleef  <ds@schleef.org>

	* examples/work/Makefile.am: yet another random change
	* examples/work/work.c: (main): same
	* liboil/liboilcpu.c: (test_altivec): powerpc fixes
	* liboil/simdpack/Makefile.am: remove i386 flags

2005-03-17  David Schleef  <ds@schleef.org>

	* doc/liboil.types: add

2005-03-17  David Schleef  <ds@schleef.org>

	* examples/work/conv.c: (conv_s16_f32_asm1), (register_impls):
	add me

2005-03-17  David Schleef  <ds@schleef.org>

	* liboil/simdpack/vectoradd_s_i386.c: need this too.  part of
	the patch below.

2005-03-16  David Schleef  <ds@schleef.org>

	* gtk-doc.make: add me

2005-03-16  David Schleef  <ds@schleef.org>

	Patch from Jakub Stachowski <stachowski@hypair.net> to add a
	few classes and implementations.  They're not correct --
	requires fixage before release.

	* examples/work/Makefile.am:
	* examples/work/work.c:
	* liboil/simdpack/Makefile.am:
	* liboil/simdpack/abs_sse.c: (abs_u8_s8_sse):
	* liboil/simdpack/clip_ref.c:
	* liboil/simdpack/scalaradd.c: (scalaradd_s8_mmx):
	* liboil/simdpack/simdpack.h:
	* liboil/simdpack/vectoradd_s.c:

2005-03-16  David Schleef  <ds@schleef.org>

	* doc/liboil-sections.txt: clean up
	* liboil/Makefile.am: clean liboilfuncs-doc.h

2005-03-16  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: add liboilgcc.h, build build_prototypes_doc
	* liboil/liboilfunction.c: fix docs
	* liboil/build_prototypes_doc.c: build a file appropriate for gtk-doc
	* liboil/liboilgcc.h: File for gcc magic

2005-03-16  David Schleef  <ds@schleef.org>

	* doc/tmpl/liboil-unused.sgml: More of the same
	* doc/tmpl/liboilcpu.sgml:
	* doc/tmpl/liboilfuncs-doc.sgml:

2005-03-16  David Schleef  <ds@schleef.org>

	* Makefile.am: upgrade gtk-doc stuff, convert to XML
	* configure.ac:
	* doc/Makefile.am:
	* doc/build_prototypes_doc.c:
	* doc/liboil-docs.sgml:
	* doc/liboil-sections.txt:
	* doc/xml/liboil-doc.bottom: move sgml files here
	* doc/xml/liboil.xml:
	* doc/xml/liboilcpu.xml:
	* doc/xml/liboildebug.xml:
	* doc/xml/liboilfuncs-doc.xml:
	* doc/xml/liboilfunction.xml:
	* doc/xml/liboilparameter.xml:
	* doc/xml/liboilprofile.xml:
	* doc/xml/liboilprototype.xml:
	* doc/xml/liboilrandom.xml:
	* doc/xml/liboiltest.xml:
	* doc/xml/liboiltypes.xml:
	* doc/xml/object_index.sgml:
	* doc/xml/tree_index.sgml:

2005-03-01  David Schleef  <ds@schleef.org>

	* configure.ac: add utf8
	* examples/work/work.c: (test), (dump_array), (dump_test),
	(dump_source), (main): improve things a bit
	* liboil/Makefile.am: add utf8
	* liboil/liboilfuncs.h: add utf8
	* liboil/liboilfunction.c: (oil_class_optimize): Fix memleak.
	* liboil/utf8/Makefile.am: utf8 functions
	* liboil/utf8/utf8.c: (utf8_validate_test), (utf8_validate_ref):
	* liboil/utf8/utf8.h: same
	* testsuite/dso_check.c: (main): fix compilation

2005-02-13  David Schleef  <ds@schleef.org>

	* testsuite/dso_check.c: (main): Add

2005-02-01  David Schleef  <ds@schleef.org>

	* liboil/liboilcpu.c: (test_altivec), (oil_cpu_powerpc_getflags),
	(illegal_instruction_handler), (oil_cpu_fault_check_enable),
	(oil_cpu_fault_check_try), (oil_cpu_fault_check_disable): Add
	illegal instruction checking.
	* liboil/liboilcpu.h:
	* liboil/liboilfunction.c: (oil_init):
	* liboil/liboiltest.c: (oil_test_check_function),
	(oil_test_check_impl):

2005-01-31  David Schleef  <ds@schleef.org>

	* doc/Makefile.am: Stop abusing _LDFLAGS
	* examples/Makefile.am:
	* examples/jpeg/Makefile.am:
	* examples/md5/Makefile.am:
	* examples/uberopt/Makefile.am:
	* liboil/Makefile.am:
	* testsuite/Makefile.am:

2005-01-18  David Schleef  <ds@schleef.org>

	* Makefile.am: documentation.  woohoo.
	* configure.ac:
	* doc/Makefile.am:
	* doc/build_prototypes_doc.c: (main), (print_header),
	(print_footer):
	* doc/liboil-docs.sgml:
	* doc/liboil-sections.txt:
	* doc/tmpl/conv.sgml:
	* doc/tmpl/dct.sgml:
	* doc/tmpl/jpeg.sgml:
	* doc/tmpl/liboil-unused.sgml:
	* doc/tmpl/liboil.sgml:
	* doc/tmpl/liboilcpu.sgml:
	* doc/tmpl/liboildebug.sgml:
	* doc/tmpl/liboilfuncs-doc.sgml:
	* doc/tmpl/liboilfunction.sgml:
	* doc/tmpl/liboilparameter.sgml:
	* doc/tmpl/liboilprofile.sgml:
	* doc/tmpl/liboilprototype.sgml:
	* doc/tmpl/liboilrandom.sgml:
	* doc/tmpl/liboiltest.sgml:
	* doc/tmpl/liboiltypes.sgml:
	* doc/tmpl/md5.sgml:
	* doc/tmpl/simdpack.sgml:
	* liboil/liboil.h:
	* liboil/liboildebug.h:
	* liboil/liboilfunction.c:
	* liboil/liboilparameter.h:
	* liboil/liboiltest.c: (check_holes):
	* liboil/liboiltypes.h:

2005-01-13  David Schleef  <ds@schleef.org>

	* testsuite/Makefile.am: add proto4
	* testsuite/proto1.c: (main): fix
	* testsuite/proto4.c: (main): new

2005-01-13  David Schleef  <ds@schleef.org>

	* liboil/colorspace/rgb2rgba_powerpc.c: (rgb2rgba_ppc): fix code
	* liboil/conv/conv_powerpc.c: asm fix
	* liboil/simdpack/abs_powerpc.c: broken
	* liboil/simdpack/clip_powerpc.c: same
	* liboil/simdpack/mix_powerpc.c: same
	* liboil/simdpack/multsum_powerpc.c: same

2005-01-13  David Schleef  <ds@schleef.org>

	* Makefile.am: dist autogen.sh
	* README: add comments
	* configure.ac: bump version.  Fix ordering.  failing->broken
	* liboil.pc.in: add -lm
	* liboil/dct/dct36_f32.c: (dct36_f32_ref): still broken.  Note to
	self: only add classes that _have_ a reference implementation.
	* liboil/dct/fdct8x8_f64.c: (fdct8x8_f64_1d): fix striding
	* liboil/liboilfuncs.h: parameter name change
	* liboil/liboilparameter.h: Add guard value.
	* liboil/liboiltest.c: (oil_test_check_function), (check_guard),
	(oil_test_check_impl), (init_parameter), (check_holes): check
	interstitial regions.  Use a guard value instead of 0.
	* liboil/simdpack/abs_i386.c: (abs_u16_s16_mmx2),
	(abs_u16_s16_sse2): disable broken impls
	* liboil/simdpack/scalarmult_i386.c: (scalarmult_f32_sse): fix
	impl

2005-01-11  David Schleef  <ds@schleef.org>

	* README: additional notes
	* configure.ac: look for mmap()
	* examples/md5/md5sum.c: (main): fix for same
	* liboil/copy/trans8x8_i386.c: (trans8x8_u16_mmx): Need to be
	careful about using %ebx
	* liboil/dct/idct8x8_i386.c: (fdct8x8s_s16_mmx): same
	* liboil/simdpack/abs_i386.c: (abs_u16_s16_mmx): clobber memory

2005-01-09  David Schleef  <ds@schleef.org>

	* autogen.sh:
	* configure.ac: fix regressions.  Add some architectures.

2005-01-09  David Schleef  <ds@schleef.org>

	* INSTALL: er, no, we don't need this

2005-01-09  David Schleef  <ds@schleef.org>

	* autogen.sh: new and improved simple autogen.sh
	* configure.ac: oops, define libversion correctly

2005-01-09  David Schleef  <ds@schleef.org>

	* AUTHORS: add
	* INSTALL: add
	* Makefile.am: add ACLOCAL_FLAGS
	* NEWS: add
	* configure.ac: fix up for modern autoconf/automake
	* liboil/Makefile.am: use -version-info
	* license_block: update for 2005

2005-01-09  David Schleef  <ds@schleef.org>

	* examples/oil-inspect.c: (oil_print_impl): use "std." as abbr for
	standard
	* examples/uberopt/uberopt.c: (main): fix compile problem on ia64
	* examples/work/Makefile.am: glib fixes
	* liboil/Makefile.am: autobuild a marshalling function
	* liboil/build_marshal.c: (main), (add_pointer_mask),
	(print_header), (print_footer): same
	* liboil/liboilmarshal.c: (_oil_test_marshal_function): the
	autobuilt source
	* liboil/liboiltest.c: (oil_test_check_function): use the autobuilt
	marshalling function
	* liboil/liboiltest.h: same

2005-01-09  David Schleef  <ds@schleef.org>

	* examples/work/work.c: (test), (main): misc changes
	* liboil/conv/conv_3dnow.c: (conv_f32_s16_3dnow),
	(conv_s32_f32_3dnow): fix asm
	* liboil/conv/conv_bitstuff.c: disable brokenness
	* liboil/liboilprofile.h: fix s390 profiling
	* liboil/simdpack/Makefile.am:
	* liboil/simdpack/clip_fast.c: (clip_s16_fast), (clip_s16_fast2),
	(clip_s32_fast): merge clip_s16.c and clip_s32.c
	* liboil/simdpack/clip_s16.c: remove
	* liboil/simdpack/clip_s32.c: remove
	* testsuite/Makefile.am: glib fixes
	* testsuite/proto3.c: (check_param): fail if problem
	* testsuite/stride.c: (main): same

2005-01-09  David Schleef  <ds@schleef.org>

	* examples/uberopt/uberopt.c: (main): Use gsize
	* liboil/colorspace/rgb2bgr_powerpc.c: (rgb2bgr_ppc),
	(rgb2bgr_ppc2): Fix powerpc asm
	* liboil/colorspace/rgb2rgba_powerpc.c: (rgb2rgba_ppc): same
	* liboil/conv/conv_powerpc.c:
	(_sl_clipconv_S8_F32__powerpc_altivec): same
	* liboil/copy/copy_powerpc.c: (copy_u8_altivec),
	(copy_u8_altivec2), (copy_u8_altivec3): same
	* liboil/liboilfunction.c: (oil_impl_is_runnable),
	(oil_class_optimize): add is_runnable() function
	* liboil/liboilfunction.h: same
	* liboil/simdpack/abs_powerpc.c: (abs_u16_s16_a16_altivec): fix asm
	* liboil/simdpack/clip_powerpc.c: (clip_s16_ppcasm),
	(clip_s16_ppcasm2), (clip_s16_ppcasm3): same
	* liboil/simdpack/mix_powerpc.c: (mix_u8_a16_altivec): same
	* testsuite/copy.c: (main): use oil_impl_is_runnable()

2005-01-09  David Schleef  <ds@schleef.org>

	* liboil/colorspace/rgb2bgr_powerpc.c: (rgb2bgr_ppc),
	(rgb2bgr_ppc2), (rgb2bgr_ppc3), (rgb2bgr_ppc4): Change from NN
	notation to rNN.

2005-01-09  David Schleef  <ds@schleef.org>

	* testsuite/trans.c: (main): Disable some temporary code that
	fails on uhv.

2005-01-08  David Schleef  <ds@schleef.org>

	* examples/md5/md5sum.c: Don't use MAP_POPULATE if it's not
	defined.
	* liboil/dct/fdct8x8_f64.c: Fix pointer offsets
	* liboil/dct/fdct8x8s_s16.c: (fdct8x8s_s16_ref): same
	* liboil/simdpack/clip_s32.c: (clip_s32_fast): same
	* liboil/simdpack/sad8x8.c: (sad8x8_f64_ref), (sad8x8_s16_ref): same
	* testsuite/introspect.c: (xstrndup), (parse_string): add xstrndup()
	* liboil/liboiltest.c: (check_array): Solaris chokes on INFINITY.

2005-01-07  David Schleef  <ds@schleef.org>

	* README: add some stuff to read
	* configure.ac: check for ieee754.h header
	* liboil/colorspace/argb_paint.c: (argb_paint_u8_ref),
	(argb_paint_u8_fast): change algorithm to be more accurate
	* liboil/colorspace/argb_paint_i386.c: (argb_paint_u8_mmx): same
	* liboil/conv/conv_3dnow.c: (conv_f32_s16_3dnow), 
	(conv_s32_f32_3dnow): make these implementations actually work
	* liboil/conv/conv_bitstuff.c: compile fixes
	* liboil/conv/conv_misc.c: (conv_f64_s16_table),
	(conv_f32_s16_table): add a f32 impl
	* liboil/simdpack/diffsquaresum_f64.c: (diffsquaresum_f64_ref),
	(diffsquaresum_f64_i10_simple), (diffsquaresum_f64_i10_fast):
	fix implementation

2005-01-05  David Schleef  <ds@schleef.org>

	* testsuite/stride.c: (main), (hist): new test

2005-01-01  David Schleef  <ds@schleef.org>

	* liboil/colorspace/argb_paint_i386.c:
	* liboil/colorspace/ayuv2argb_i386.c:
	* liboil/liboilfunction.c: (oil_class_optimize): disable functions
	that fail test
	* liboil/liboiltest.c: (oil_test_new), (check_zero),
	(oil_test_check_impl), (init_parameter): Fix double-free bug, plus
	other problems with testing from applications.
	* liboil/dct/idct8x8_i386.c: pshufw apparently is not MMX
	* liboil/simdpack/abs_i386.c: (abs_u16_s16_i386asm3),
	(abs_u16_s16_mmx), (abs_u16_s16_mmxx): disable code that doesn't
	handle strides correctly.
	* liboil/simdpack/clip_s32.c: (clip_s32_fast): fix code to pass test
	* liboil/simdpack/diffsquaresum_f64.c: 
	(diffsquaresum_f64_i10_unroll4): fix prototype
	* liboil/simdpack/scalaradd.c: fix implementation
	* liboil/simdpack/scalarmult.c: fix implementation
	* testsuite/Makefile.am: add stride test

2004-12-30  David Schleef  <ds@schleef.org>

	* liboil/dct/idct8x8_i386.c: (idct8x8_s16_mmx), (fdct8x8s_s16_mmx):
	new file

2004-12-30  David Schleef  <ds@schleef.org>

	* liboil/liboilfunction.h: add DISABLED flag and reformat

2004-12-29  David Schleef  <ds@schleef.org>

	Add support for checking the output of functions and comparing
	it to the reference function.
	* examples/oil-inspect.c: (oil_print_impl), (oil_print_class):
	* examples/work/Makefile.am:
	* examples/work/work.c: (test), (main):
	* liboil/copy/permute.c: (permute_test):
	* liboil/liboilfuncs.h:
	* liboil/liboilfunction.c: (oil_class_optimize),
	(oil_class_register_impl_by_name):
	* liboil/liboilfunction.h:
	* liboil/liboilparameter.h:
	* liboil/liboilprototype.c: (oil_param_from_string):
	* liboil/liboiltest.c: (oil_test_free),
	(_oil_test_marshal_function), (oil_test_check_function),
	(oil_test_check_ref), (oil_test_check_impl), (init_parameter),
	(fill_array), (check_array):
	* liboil/liboiltest.h:
	* testsuite/test1.c: (main):

2004-12-29  David Schleef  <ds@schleef.org>

	* liboil/colorspace/Makefile.am: some new classes
	* liboil/colorspace/argb_paint.c: (argb_paint_u8_ref),
	(argb_paint_u8_fast):
	* liboil/colorspace/argb_paint_i386.c: (argb_paint_u8_mmx):
	* liboil/colorspace/ayuv2argb.c: (ayuv2argb_u8_ref),
	(ayuv2argb_u8_int):
	* liboil/colorspace/ayuv2argb_i386.c: (ayuv2argb_u8_mmx),
	(ayuv2argb_u8_mmx2), (ayuv2argb_u8_mmx3):

2004-12-27  David Schleef  <ds@schleef.org>

	* liboil/copy/copy_i386.c: (copy_u8_mmx), (copy_u8_mmx2):
	Fix bug for certain values of n.
	* liboil/liboil.h: add oil_memcpy()

2004-12-23  David Schleef  <ds@schleef.org>

	Clean up API.
	* examples/md5/md5sum.c:
	* examples/oil-inspect.c: (oil_print_impl), (oil_print_all):
	* examples/work/work.c:
	* liboil/build_prototypes.c: (main), (print_header),
	(print_footer):
	* liboil/liboil.h:
	* liboil/liboilcpu.c: (_oil_cpu_init), (oil_cpu_get_flags):
	* liboil/liboilcpu.h:
	* liboil/liboildebug.c: (_oil_debug_init),
	(oil_debug_print_valist), (_oil_debug_print),
	(oil_debug_get_level), (oil_debug_set_level),
	(oil_debug_set_print_function):
	* liboil/liboildebug.h:
	* liboil/liboilfuncs.h:
	* liboil/liboilfunction.c: (oil_optimize_all),
	(oil_class_get_n_classes), (oil_class_get_by_index),
	(oil_impl_get_by_index), (oil_class_get), (oil_class_optimize),
	(oil_init_pointers), (oil_init_structs):
	* liboil/liboilfunction.h:
	* liboil/liboilprototype.c:
	* liboil/liboiltest.c:
	* testsuite/abs.c:
	* testsuite/copy.c:
	* testsuite/introspect.c: (main):
	* testsuite/md5.c:
	* testsuite/md5_profile.c:
	* testsuite/proto1.c: (main):
	* testsuite/proto2.c: (main):
	* testsuite/test1.c: (main):
	* testsuite/trans.c:

2004-12-22  David Schleef  <ds@schleef.org>

	* configure.ac: add examples/work
	* examples/Makefile.am: same
	* examples/oil-inspect.c: (oil_flags_to_string): REQUIRES->FLAG
	* examples/work/Makefile.am: 
	* examples/work/work.c: (test), (main):
	* liboil/conv/conv_3dnow.c: REQUIRES->FLAG
	* liboil/conv/conv_sse.c: same
	* liboil/copy/copy_i386.c: same
	* liboil/copy/copy_powerpc.c: same
	* liboil/dct/dct12_f32.c: (mdct12_f64_ref), (imdct12_f64_ref),
	(mdct36_f64_ref), (imdct36_f64_ref): remove mpglib code, new
	reference implementations of mdct functions
	* liboil/jpeg/zigzag8x8_powerpc.c: REQUIRES->FLAG
	* liboil/liboilcpu.c: (oil_cpu_i386_getflags),
	(oil_cpu_powerpc_getflags): REQUIRES->FLAG
	* liboil/liboilfuncs.h: update
	* liboil/liboilfunction.h: REQUIRES->FLAG
	* liboil/liboilprototype.c: (oil_prototype_to_string): Add 'const'
	for source arrays.
	* liboil/simdpack/abs_i386.c: REQUIRES->FLAG
	* liboil/simdpack/abs_powerpc.c: REQUIRES->FLAG
	* liboil/simdpack/mix_powerpc.c: REQUIRES->FLAG
	* liboil/simdpack/mult8x8_i386.c: REQUIRES->FLAG
	* liboil/simdpack/scalarmult_i386.c: REQUIRES->FLAG

2004-12-21  David Schleef  <ds@schleef.org>

	* testsuite/copy.c: (test), (main): new test

2004-12-21  David Schleef  <ds@schleef.org>

	* examples/example1.c: more relicensing
	* examples/md5/md5sum.c:
	* examples/oil-inspect.c:
	* examples/uberopt/example.c:
	* examples/uberopt/uberopt.c:
	* testsuite/abs.c:
	* testsuite/introspect.c:
	* testsuite/md5.c:
	* testsuite/md5_profile.c:
	* testsuite/moo.c:
	* testsuite/proto1.c:
	* testsuite/proto2.c:
	* testsuite/proto3.c:
	* testsuite/test1.c:
	* testsuite/trans.c:

2004-12-21  David Schleef  <ds@schleef.org>

	* liboil/liboil_begin.c: remove, unused
	* liboil/liboil_end.c:

2004-12-21  David Schleef  <ds@schleef.org>

	Move non-relicensed code to lgpl/.  Not yet in the build.
	* liboil/lgpl/dct12_f32.c: (dct12_f32_mpglib):
	* liboil/lgpl/dct36.c: (dct36):
	* liboil/lgpl/imdct32_f32.c: (imdct32_f32_mpglib):

2004-12-21  David Schleef  <ds@schleef.org>

	Global relicensing.
	* liboil/build_prototypes.c: (print_header):
	* liboil/colorspace/rgb2bgr.c:
	* liboil/colorspace/rgb2bgr_powerpc.c:
	* liboil/colorspace/rgb2rgba.c:
	* liboil/colorspace/rgb2rgba_powerpc.c:
	* liboil/conv/conv.h:
	* liboil/conv/conv_3dnow.c:
	* liboil/conv/conv_bitstuff.c:
	* liboil/conv/conv_c.c:
	* liboil/conv/conv_misc.c:
	* liboil/conv/conv_powerpc.c:
	* liboil/conv/conv_ref.c:
	* liboil/conv/conv_sse.c:
	* liboil/copy/copy.c:
	* liboil/copy/copy_i386.c:
	* liboil/copy/copy_powerpc.c:
	* liboil/copy/permute.c:
	* liboil/copy/splat_ref.c:
	* liboil/copy/tablelookup_ref.c:
	* liboil/copy/trans8x8.c:
	* liboil/copy/trans8x8_i386.c:
	* liboil/dct/dct.h:
	* liboil/dct/dct12_f32.c:
	* liboil/dct/dct36.c:
	* liboil/dct/dct36_f32.c:
	* liboil/dct/fdct8_f64.c:
	* liboil/dct/fdct8x8_f64.c:
	* liboil/dct/fdct8x8s_s16.c:
	* liboil/dct/idct8_f64.c:
	* liboil/dct/idct8x8_c.c:
	* liboil/dct/imdct32_f32.c:
	* liboil/jpeg/convert8x8_c.c:
	* liboil/jpeg/jpeg.h:
	* liboil/jpeg/jpeg_rgb_decoder.c:
	* liboil/jpeg/quantize8x8_c.c:
	* liboil/jpeg/yuv2rgb_c.c:
	* liboil/jpeg/zigzag8x8_c.c:
	* liboil/jpeg/zigzag8x8_powerpc.c:
	* liboil/junk/conv8x8_f64_s16.c:
	* liboil/junk/conv8x8_s16x8_s8.c:
	* liboil/junk/conv_f64_s16.c:
	* liboil/junk/conv_s16_f64.c:
	* liboil/junk/downsample1x_f64.c:
	* liboil/junk/downsample2_f64.c:
	* liboil/junk/downsample2_s16.c:
	* liboil/junk/downsample2_u8.c:
	* liboil/junk/downsamplex_f64.c:
	* liboil/junk/fdct8x8_s16.c:
	* liboil/junk/get8x8_f64.c:
	* liboil/junk/idct8x8_f64.c:
	* liboil/junk/idct8x8_s16.c:
	* liboil/junk/idct8x8s_s16.c:
	* liboil/junk/trans8x8_f32.c:
	* liboil/junk/trans8x8_s16.c:
	* liboil/junk/zigzag8x8_s16.c:
	* liboil/liboil.h:
	* liboil/liboil_begin.c:
	* liboil/liboil_end.c:
	* liboil/liboilcpu.c:
	* liboil/liboilcpu.h:
	* liboil/liboildebug.c:
	* liboil/liboildebug.h:
	* liboil/liboilfuncs.h:
	* liboil/liboilfunction.c:
	* liboil/liboilfunction.h:
	* liboil/liboilparameter.h:
	* liboil/liboilprofile.c:
	* liboil/liboilprofile.h:
	* liboil/liboilprototype.c:
	* liboil/liboilprototype.h:
	* liboil/liboilrandom.h:
	* liboil/liboiltest.c:
	* liboil/liboiltest.h:
	* liboil/liboiltypes.h:
	* liboil/md5/md5.c:
	* liboil/md5/md5.h:
	* liboil/md5/md5_i386.c:
	* liboil/md5/md5_powerpc.c:
	* liboil/null.c:
	* liboil/simdpack/abs.c:
	* liboil/simdpack/abs_i386.c:
	* liboil/simdpack/abs_misc.c:
	* liboil/simdpack/abs_powerpc.c:
	* liboil/simdpack/average2_u8.c:
	* liboil/simdpack/clip_powerpc.c:
	* liboil/simdpack/clip_ref.c:
	* liboil/simdpack/clip_s16.c:
	* liboil/simdpack/clip_s32.c:
	* liboil/simdpack/diffsquaresum_f64.c:
	* liboil/simdpack/mix_powerpc.c:
	* liboil/simdpack/mix_u8.c:
	* liboil/simdpack/mult8x8_i386.c:
	* liboil/simdpack/mult8x8_s16.c:
	* liboil/simdpack/multsum.c:
	* liboil/simdpack/multsum_powerpc.c:
	* liboil/simdpack/sad8x8.c:
	* liboil/simdpack/sad8x8_powerpc.c:
	* liboil/simdpack/scalaradd.c:
	* liboil/simdpack/scalarmult.c:
	* liboil/simdpack/scalarmult_i386.c:
	* liboil/simdpack/simdpack.h:
	* liboil/simdpack/sincos_f64.c:
	* liboil/simdpack/squaresum_f64.c:
	* liboil/simdpack/sum_f64.c:
	* liboil/simdpack/vectoradd_f64.c:

2004-12-21  David Schleef  <ds@schleef.org>

	* testsuite/trans.c: (test), (main): Add test code.

2004-12-21  David Schleef  <ds@schleef.org>

	* autogen.sh: who needs static libraries
	* examples/jpeg/jpeg.c: (jpeg_decoder_decode_entropy_segment),
	(sprintbits): clean up
	* examples/jpeg/test_rgb.c: (main): clean up
	* examples/md5/md5sum.c: (main): use mmap only if available
	* examples/uberopt/Makefile.am: depends on glib
	* liboil/Makefile.am: liboilarray.c depends on Makefile
	* liboil/dct/Makefile.am: add code
	* liboil/dct/fdct8x8_f64.c: (fdct8x8_f64_ref), (fdct8x8_f64_ref2),
	(fdct8x8_f64_1d): fix code to compile
	* liboil/dct/fdct8x8s_s16.c: (fdct8x8s_s16_ref): same
	* liboil/liboildebug.c: (oil_debug_print_valist): make stuff const
	* liboil/liboilfuncs.h: random update
	* liboil/liboilprofile.h: add arm
	* liboil/liboilprototype.c: make stuff const
	* testsuite/Makefile.am: add test

2004-12-21  David Schleef  <ds@schleef.org>

	* COPYING: change to BSD license
	* license_block: license block
	* liboil/copy/copy_powerpc.c: (copy_u8_altivec2),
	(copy_u8_altivec3): new implementation
	* testsuite/Makefile.am:

2004-12-06  David Schleef  <ds@schleef.org>

	* examples/uberopt/Makefile.am: dist example.c, not it.c

2004-12-06  David Schleef  <ds@schleef.org>

	* liboil/copy/Makefile.am: add copy_i386
	* liboil/copy/copy_i386.c: (copy_u8_mmx), (copy_u8_mmx2): some mmx
	implementations
	* liboil/simdpack/Makefile.am: add _i386 sources
	* liboil/simdpack/mult8x8_i386.c: (mult8x8_s16_mmx): new impls
	* liboil/simdpack/mult8x8_s16.c: (mult8x8_s16_ref): should have
	been added earlier
	* liboil/simdpack/scalarmult_i386.c: (scalarmult_f32_sse): new
	impls

2004-12-05  David Schleef  <ds@schleef.org>

	* configure.ac: add uberopt
	* examples/Makefile.am: same
	* examples/oil-inspect.c: (impl_compare), (oil_print_class): sort
	implementations by profile_ave before printing.
	* examples/uberopt/Makefile.am: add uberopt
	* examples/uberopt/example.c: (abs_u16_s16_i386asm_UBER_INDEX):
	* examples/uberopt/uberopt.c: (main):
	* liboil/copy/Makefile.am: add trans8x8_i386.c
	* liboil/copy/copy.c: not reference functions
	* liboil/copy/trans8x8.c: fix reference function (oops!)
	* liboil/copy/trans8x8_i386.c: new.  mmx implementation
	* liboil/simdpack/abs_i386.c: (abs_u16_s16_i386asm_uber4),
	(abs_u16_s16_i386asm3): new impl created by uberopt
	* liboil/simdpack/abs_misc.c: (abs_u16_s16_unroll2),
	(abs_u16_s16_unroll4): add unroll2

2004-12-05  David Schleef  <ds@schleef.org>

	* liboil/jpeg/zigzag8x8_c.c: (zigzag8x8_s16_ref),
	(zigzag8x8_s16_unroll): new implementation
	* liboil/simdpack/mix_powerpc.c: (mix_u8_a16_altivec): Add altivec
	flag.
	* testsuite/test1.c: (main):

2004-12-05  David Schleef  <ds@schleef.org>

	* liboil/copy/Makefile.am: add copy_powerpc.c
	* liboil/copy/copy_powerpc.c: a fast altivec copy_u8
	* liboil/liboilparameter.h: add ptr field
	* liboil/liboiltest.c: (oil_test_free), (init_parameter): use
	ptr field instead of value for the allocated area, to make the
	code simpler, and also allow for a buffer area.
	* liboil/liboiltest.h: add OIL_TEST_HEADER/FOOTER

2004-12-05  David Schleef  <ds@schleef.org>

	* liboil/jpeg/Makefile.am: Add zigzag8x8_powerpc.c
	* liboil/jpeg/jpeg.h:
	* liboil/jpeg/zigzag8x8_c.c: (zigzag8x8_s16_ref),
	(unzigzag8x8_s16_ref): add zigzag function class
	* liboil/jpeg/zigzag8x8_powerpc.c: add non-working altivec
	implementation

2004-12-03  David Schleef  <ds@schleef.org>

	Compile and segfault fixes.
	* liboil/colorspace/rgb2bgr_powerpc.c: (rgb2bgr_ppc):
	* liboil/colorspace/rgb2rgba_powerpc.c:
	* liboil/conv/conv_powerpc.c:
	(_sl_clipconv_S8_F32__powerpc_altivec),
	(_sl_clipconv_S16_F32__powerpc_altivec),
	(_sl_clipconvert_S32_F32__powerpc_altivec),
	(convert_s16_f64__powerpc), (_sl_convert_S16_F32__powerpc):
	* liboil/copy/copy.c: (copy_u8_ptr), (copy_u8_ints):
	* liboil/simdpack/sad8x8_powerpc.c:

2004-12-03  David Schleef  <ds@schleef.org>

	* liboil/conv/conv_powerpc.c: (convert_s16_f64__powerpc): fix up
	some powerpc asm code.  probably doesn't compile.
	* liboil/liboilfunction.c: (oil_init): bump debugging
	* liboil/liboilfunction.h: add OIL_DEFINE_IMPL_ASM
	* liboil/md5/md5_i386.c: use it
	* liboil/md5/md5_powerpc.c:
	* liboil/colorspace/rgb2bgr_powerpc.c:
	* liboil/colorspace/rgb2rgba_powerpc.c:
	* liboil/simdpack/abs_i386.c:
	* liboil/simdpack/clip_powerpc.c:
	* liboil/simdpack/mix_powerpc.c:
	* liboil/simdpack/multsum_powerpc.c:
	* liboil/simdpack/sad8x8_powerpc.c: (sad8x8_s16_l15_a16_altivec):
	* testsuite/test1.c: (main), (hist): quiet down a bit

2004-12-03  David Schleef  <ds@schleef.org>

	Move asm code into arch-specific files.
	* liboil/colorspace/Makefile.am:
	* liboil/colorspace/rgb2bgr.c:
	* liboil/colorspace/rgb2bgr_powerpc.c:
	* liboil/colorspace/rgb2rgba.c:
	* liboil/colorspace/rgb2rgba_powerpc.c:
	* liboil/conv/conv_misc.c:
	* liboil/conv/conv_powerpc.c:
	* liboil/copy/Makefile.am:
	* liboil/dct/Makefile.am:
	* liboil/jpeg/Makefile.am:
	* liboil/md5/Makefile.am:
	* liboil/simdpack/Makefile.am:
	* liboil/simdpack/abs_i386.c:
	* liboil/simdpack/abs_misc.c:
	* liboil/simdpack/abs_powerpc.c:
	* liboil/simdpack/abs_u16_s16.c:
	* liboil/simdpack/abs_u32_s32.c:
	* liboil/simdpack/clip_powerpc.c:
	* liboil/simdpack/clip_s16.c:
	* liboil/simdpack/mix_powerpc.c:
	* liboil/simdpack/mix_u8.c:
	* liboil/simdpack/multsum.c:
	* liboil/simdpack/multsum_powerpc.c:
	* liboil/simdpack/sad8x8.c:
	* liboil/simdpack/sad8x8_powerpc.c:

2004-12-03  David Schleef  <ds@schleef.org>

	* configure.ac: move conv code to its own directory
	* liboil/Makefile.am:
	* liboil/conv.h:
	* liboil/conv/.cvsignore:
	* liboil/conv/Makefile.am:
	* liboil/conv/conv.h:
	* liboil/conv/conv_3dnow.c:
	* liboil/conv/conv_bitstuff.c:
	* liboil/conv/conv_c.c:
	* liboil/conv/conv_misc.c:
	* liboil/conv/conv_powerpc.c:
	* liboil/conv/conv_ref.c:
	* liboil/conv/conv_sse.c:
	* liboil/conv_3dnow.c:
	* liboil/conv_bitstuff.c:
	* liboil/conv_c.c:
	* liboil/conv_misc.c:
	* liboil/conv_powerpc.c:
	* liboil/conv_ref.c:
	* liboil/conv_sse.c:

2004-12-02  David Schleef  <ds@schleef.org>

	* examples/example1.c: (main): remove oil_optimize_all()
	* examples/oil-inspect.c: (oil_flags_to_string), (oil_print_impl),
	(oil_print_class), (main): fix flag and profile printing
	* liboil/liboildebug.c: remove oil_spill()
	* liboil/liboildebug.h: same
	* liboil/liboilfunction.c: (oil_init), (oil_class_get_by_index),
	(oil_impl_get_by_index), (oil_class_optimize), (oil_init_pointers):
	remove GNU_LINKER stuff.  Implement optimization.
	* liboil/liboilfunction.h: change profile info to double.  add
	ASM flag.
	* liboil/liboilprofile.c: (oil_profile_get_ave_std): add function
	to eliminate outliers in a profile measurement.
	* liboil/liboilprofile.h: same
	* liboil/liboiltest.c: (oil_test_go): use it
	* testsuite/abs.c: (main): remove oil_optimize_all()
	* testsuite/md5.c: (main): remove oil_optimize_all()
	* testsuite/md5_profile.c: (main): remove oil_optimize_all()
	* testsuite/moo.c: (main): remove oil_optimize_all()

2004-12-02  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: add null.c, libprofile.c
	* liboil/null.c: a null function
	* liboil/liboilprofile.c: profiling code
	* liboil/conv_3dnow.c: (conv_f32_s32_3dnow), (conv_s32_f32_3dnow):
	add 'emms'
	* liboil/liboilprofile.h: clean up, move some stuff to .c
	* liboil/liboiltest.c: (oil_test_go): fix for profile changes
	* liboil/simdpack/abs_u16_s16.c: (abs_u16_s16_mmx),
	(abs_u16_s16_mmxx), (abs_u16_s16_mmx2): add 'emms'
	* testsuite/md5_profile.c: (test): fix for profile changes
	* testsuite/test1.c: (main), (calc_average), (calc_std),
	(calc_std2), (calc_max), (hist): fix for profile changes.  Add
	code to get a good estimate of the average execution time,
	removing outliers.

2004-12-02  David Schleef  <ds@schleef.org>

	* liboil/copy/trans8x8_f32.c: Move unused files to junk directory
	* liboil/copy/trans8x8_s16.c:
	* liboil/dct/fdct8x8_s16.c:
	* liboil/dct/idct8x8_f64.c:
	* liboil/dct/idct8x8_s16.c:
	* liboil/dct/idct8x8s_s16.c:
	* liboil/jpeg/zigzag8x8_s16.c:
	* liboil/junk/conv8x8_f64_s16.c:
	* liboil/junk/conv8x8_s16x8_s8.c:
	* liboil/junk/conv_f64_s16.c:
	* liboil/junk/conv_s16_f64.c:
	* liboil/junk/downsample2_f64.c:
	* liboil/junk/downsample2_s16.c:
	* liboil/junk/downsample2_u8.c:
	* liboil/junk/downsamplex_f64.c:
	* liboil/junk/fdct8x8_s16.c:
	* liboil/junk/idct8x8_f64.c:
	* liboil/junk/idct8x8_s16.c:
	* liboil/junk/idct8x8s_s16.c:
	* liboil/junk/trans8x8_f32.c:
	* liboil/junk/trans8x8_s16.c:
	* liboil/junk/zigzag8x8_s16.c:
	* liboil/simdpack/conv8x8_f64_s16.c:
	* liboil/simdpack/conv8x8_s16x8_s8.c:
	* liboil/simdpack/conv_f64_s16.c:
	* liboil/simdpack/conv_s16_f64.c:
	* liboil/simdpack/downsample2_f64.c:
	* liboil/simdpack/downsample2_s16.c:
	* liboil/simdpack/downsample2_u8.c:
	* liboil/simdpack/downsamplex_f64.c:

2004-12-02  David Schleef  <ds@schleef.org>

	* liboil/liboiltest.c: (oil_test_new), (oil_test_free),
	(oil_test_go): Fix memleaks by freeing stuff properly.
	* liboil/liboiltest.h: same
	* liboil/copy/permute.c: (permute_test): implement test function
	* liboil/copy/tablelookup_ref.c: (tablelookup_u8_ref): fix
	prototype and remove test function.

2004-12-02  David Schleef  <ds@schleef.org>

	* liboil/copy/trans8x8_f32.c: Remove simdpack-ish TEST functions
	* liboil/copy/trans8x8_s16.c:
	* liboil/dct/dct12_f32.c:
	* liboil/dct/dct36_f32.c:
	* liboil/dct/fdct8_f64.c:
	* liboil/dct/fdct8x8_f64.c:
	* liboil/dct/fdct8x8_s16.c:
	* liboil/dct/fdct8x8s_s16.c:
	* liboil/dct/idct8_f64.c:
	* liboil/dct/idct8x8_f64.c:
	* liboil/dct/idct8x8_s16.c:
	* liboil/dct/idct8x8s_s16.c:
	* liboil/dct/imdct32_f32.c:
	* liboil/jpeg/zigzag8x8_s16.c:
	* liboil/junk/downsample1x_f64.c:
	* liboil/junk/get8x8_f64.c:

2004-12-02  David Schleef  <ds@schleef.org>

	* README: some notes
	* examples/.cvsignore: update some cvsignore files
	* examples/md5/.cvsignore:
	* liboil/.cvsignore:
	* liboil/colorspace/.cvsignore:
	* liboil/copy/.cvsignore:
	* liboil/md5/.cvsignore:
	* testsuite/.cvsignore:

2004-12-02  David Schleef  <ds@schleef.org>

	* configure.ac: use -fomit-frame-pointer, -funroll-all-loops and
	-Wno-unused-functions
	* liboil/colorspace/Makefile.am: create opt libs
	* liboil/copy/Makefile.am: same
	* liboil/dct/Makefile.am: same
	* liboil/jpeg/Makefile.am: same
	* liboil/md5/Makefile.am: same

2004-12-02  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: fix distcheck
	* liboil/liboilprototype.c: (oil_prototype_check_sanity): oops,
	remove debugging

2004-12-02  David Schleef  <ds@schleef.org>

	* liboil/build_prototypes.c: (main): complain if prototype parsing
	fails.
	* liboil/conv_misc.c: (conv_f64_s16_table): fix valgrind problem
	* liboil/liboilcpu.c: (_oil_cpu_init): parse OIL_CPU_FLAGS environment
	variable
	* liboil/liboilfunction.h: move stuff to liboilparameter.h
	* liboil/liboilparameter.h: new
	* liboil/liboilprototype.c: (oil_prototype_from_string),
	(oil_prototype_check_sanity), (oil_arg_type_name),
	(oil_param_from_string): implement a new style of parameter names
	* liboil/liboilprototype.h: use liboilparameter.h
	* liboil/liboiltest.c: (oil_test_new), (oil_test_go), (fill_array),
	(init_parameter), (oil_test_init_params): implement a new style of
	parameter names
	* liboil/liboiltest.h: add m
	* liboil/liboiltypes.h: move some typedefs here
	* testsuite/introspect.c: (main): check return values
	* testsuite/proto1.c: (main): same
	* testsuite/proto2.c: (main): same
	* testsuite/test1.c: (main): same

	Fixes for new style of parameter names:
	* liboil/colorspace/rgb2bgr.c:
	* liboil/colorspace/rgb2rgba.c:
	* liboil/copy/splat_ref.c:
	* liboil/copy/trans8x8.c:
	* liboil/dct/dct12_f32.c:
	* liboil/dct/dct36_f32.c: (dct36_f32_ref):
	* liboil/dct/fdct8_f64.c:
	* liboil/dct/fdct8x8_f64.c: (fdct8x8_f64_ref):
	* liboil/dct/idct8_f64.c:
	* liboil/dct/idct8x8_c.c:
	* liboil/dct/imdct32_f32.c:
	* liboil/jpeg/convert8x8_c.c:
	* liboil/jpeg/quantize8x8_c.c:
	* liboil/jpeg/yuv2rgb_c.c:
	* liboil/jpeg/zigzag8x8_c.c:
	* liboil/md5/md5.c:
	* liboil/simdpack/clip_ref.c:
	* liboil/simdpack/clip_s16.c: (clip_s16_fast2): fix bugs
	* liboil/simdpack/mult8x8_s16.c:
	* liboil/simdpack/multsum.c: (multsum_f32_unroll2):
	* liboil/simdpack/sad8x8.c:
	* liboil/simdpack/scalaradd.c:
	* liboil/simdpack/scalarmult.c:
	* liboil/simdpack/sincos_f64.c:
	* liboil/simdpack/vectoradd_f64.c:

2004-12-01  David Schleef  <ds@schleef.org>

	* liboil/simdpack/clip_s16.c: (clip_s16_ppcasm),
	(clip_s16_ppcasm2), (clip_s16_ppcasm3): Fix compile problem.
	Change asm arguments from read/write to read.  Not 100% correct,
	but we don't care, because we're not simdpack.

2004-12-01  David Schleef  <ds@schleef.org>

	* autogen.sh: add alt-opt by default
	* configure.ac: add -funroll-all-loops
	* testsuite/Makefile.am: Add proto3
	* testsuite/proto3.c: (main), (check_param), (print_param): A little
	proggy to test parsing of a new style of parameter names

2004-12-01  David Schleef  <ds@schleef.org>

	* liboil/simdpack/abs_u32_s32.c: rip out simdpack test functions
	* liboil/simdpack/average2_u8.c:
	* liboil/simdpack/conv8x8_f64_s16.c:
	* liboil/simdpack/conv8x8_s16x8_s8.c:
	* liboil/simdpack/conv_f64_s16.c:
	* liboil/simdpack/conv_s16_f64.c:
	* liboil/simdpack/diffsquaresum_f64.c:
	* liboil/simdpack/downsample2_f64.c:
	* liboil/simdpack/downsample2_s16.c:
	* liboil/simdpack/downsample2_u8.c:
	* liboil/simdpack/downsamplex_f64.c:
	* liboil/simdpack/mix_u8.c:
	* liboil/simdpack/mult8x8_s16.c:
	* liboil/simdpack/multsum.c:
	* liboil/simdpack/sad8x8.c:
	* liboil/simdpack/squaresum_f64.c:
	* liboil/simdpack/sum_f64.c:

2004-12-01  David Schleef  <ds@schleef.org>

	* configure.ac: Add --enable-prototype-checking and
	--enable-alternate-optimization.
	* liboil/Makefile.am: same
	* liboil/colorspace/Makefile.am: remove colorspace.h
	* liboil/colorspace/rgb2bgr.c: (rgb2bgr_test): temporary fix
	* liboil/colorspace/rgb2rgba.c: (rgb2rgba_test): temporary fix
	* liboil/liboilfuncs.h: update
	* liboil/liboilfunction.h: add alternate optimization stuff
	* liboil/simdpack/Makefile.am: build alt opt lib
	* liboil/simdpack/sincos_f64.c: (sincos_f64_ref),
	(sincos_f64_i20_fast): change params to pointers

2004-12-01  David Schleef  <ds@schleef.org>

	From Benjamin Otte
	* liboil/colorspace/Makefile.am:
	* liboil/colorspace/rgb2bgr.c: (rgb2bgr_ref), (rgb2bgr_ppc),
	(rgb2bgr_ppc2), (rgb2bgr_ppc3), (rgb2bgr_ppc4):
	* liboil/colorspace/rgb2rgba.c: (rgb2rgba_ref), (rgb2rgba_ppc):

2004-12-01  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: remove old begin/end stuff
	* liboil/build_prototypes.c: (main): add a typedef for functions
	* liboil/copy/permute.c: (permute_test): add comment
	* liboil/copy/tablelookup_ref.c: (tablelookup_test): same
	* liboil/liboilfuncs.h: update
	* liboil/liboilfunction.h: remove old begin/end stuff
	* liboil/liboilprototype.c: switch to OIL_ARG_PARAM1
	* liboil/liboilprototype.h: include liboilfunction.h
	* liboil/liboiltest.c: (oil_test_go), (fill_array),
	(init_src_array), (oil_test_init_src_arrays), (init_param),
	(oil_test_init_params): add support for parameters.  require
	parameters to be pointers.
	* liboil/liboiltest.h: same
	* liboil/md5/md5.c: (md5_test): add test
	* liboil/simdpack/clip_ref.c: fix prototypes and functions
	* liboil/simdpack/clip_s16.c: (clip_s16_fast), (clip_s16_fast2),
	(clip_s16_ppcasm), (clip_s16_ppcasm2), (clip_s16_ppcasm3): same
	* liboil/simdpack/clip_s32.c: (clip_s32_fast): same
	* liboil/simdpack/mix_u8.c: (mix_u8_fast2): same
	* liboil/simdpack/sad8x8.c: (sad8x8_s16_ref): same
	* liboil/simdpack/scalaradd.c: same
	* liboil/simdpack/scalarmult.c: same
	* liboil/simdpack/scalarmult_f64.c: same
	* liboil/simdpack/vectoradd_f64.c: same

2004-11-30  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: add target for rebuilding liboilfuncs.h
	* liboil/copy/Makefile.am:
	* liboil/copy/copy.c: (copy_u8_ref), (copy_u8_libc): Add a memcpy
	function.
	* liboil/copy/copy.h: remove useless header file
	* liboil/copy/splat_ref.c: same
	* liboil/copy/trans8x8.c: same
	* liboil/liboilfuncs.h: update

2004-11-30  David Schleef  <ds@schleef.org>

	* liboil/liboilcpu.c: (oil_cpu_i386_getflags), (test_altivec),
	(illegal_instruction_handler), (oil_cpu_powerpc_getflags),
	(_oil_cpu_init): Detect altivec

2004-11-30  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: add testing
	* liboil/conv_sse.c: opcodes are SSE2, not SSE (oops)
	* liboil/copy/permute.c: (permute_test): avoid generic test function
	* liboil/copy/tablelookup_ref.c: (tablelookup_test): same
	* liboil/jpeg/yuv2rgb_c.c: (yuv_test): same
	* liboil/liboilfunction.c: (oil_class_optimize): change to
	OIL_CPU_FLAG_MASK
	* liboil/liboilfunction.h: same.  Misc API adjustments
	* liboil/liboilprototype.c: (oil_type_name), (oil_arg_type_name),
	(oil_arg_type_from_string): handle parameter aliases
	* liboil/liboilprototype.h: add functions
	* liboil/liboilrandom.h: new.  #define wrapping rand() for various
	types and ranges
	* liboil/liboiltest.c: (oil_test_new), (oil_test_free),
	(oil_test_set_impl), (oil_test_set_iterations), (oil_test_go),
	(oil_test_cleanup), (init_src_array), (oil_test_init_src_arrays),
	(init_dest_array), (oil_test_init_dest_arrays): testing structure
	* liboil/liboiltest.h: same
	* liboil/simdpack/abs_u32_s32.c: (abs_u32_s32_fast): fix. previously
	ignored stride.
	* testsuite/Makefile.am: new test
	* testsuite/proto2.c: (main), (get_param_by_type): ignore this
	* testsuite/test1.c: look at this instead.  tests the new testing
	structure.

2004-11-29  David Schleef  <ds@schleef.org>

	* configure.ac: bump to 0.3 series
	* liboil/liboilfunction.h: Add types and argument types.
	* liboil/liboilprototype.c: (oil_prototype_to_string),
	(oil_prototype_from_string), (oil_prototype_free), (_strndup),
	(oil_type_sizeof), (oil_type_name), (oil_type_from_string),
	(oil_arg_type_from_string): Add stuff for types and argument types.
	* liboil/liboilprototype.h: Move some stuff to liboilfunction.h (why?)
	* testsuite/Makefile.am: Add proto2
	* testsuite/introspect.c: (main), (parse_size): remove junk
	* testsuite/proto1.c: (main): add state
	* testsuite/proto2.c: add

2004-11-29  David Schleef  <ds@schleef.org>

	From Benjamin Otte
	* liboil/Makefile.am:
	* liboil/conv_sse.c: (conv_f64_s32_sse), (conv_s32_f64_sse): Fix
	implementations.
	* liboil/conv_3dnow.c: new

2004-11-27  David Schleef  <ds@schleef.org>

	* configure.ac: version bump
	* testsuite/md5.c: (test): compile fix

2004-11-27  David Schleef  <ds@schleef.org>

	From Benjamin Otte
	* autogen.sh:
	* examples/Makefile.am: Add oil-inspect
	* examples/oil-inspect.c: (printerr), (string_append),
	(oil_flags_to_string), (oil_print_impl), (oil_print_class),
	(oil_print_all), (main):
	* liboil/liboilfunction.h:
	* liboil/md5/md5_i386.c: don't mark functions as reference

2004-11-27  David Schleef  <ds@schleef.org>

	* examples/md5/md5sum.c: (main): Fix problem with file sizes
	that are multiples of 64.

2004-11-27  David Schleef  <ds@schleef.org>

	* liboil/simdpack/clip_s16.c: (clip_s16_ppcasm3): Use r22 instead
	of r30.

2004-11-24  David Schleef  <ds@schleef.org>

	* liboil/liboilcpu.c: (get_cpuinfo), (oil_cpu_i386_getflags): Fix
	segfault if /proc/cpuinfo doesn't exist (reported by Jakub Bogusz)

=== 0.2.2 ===

2004-11-22  David Schleef  <ds@schleef.org>

	* configure.ac: version bump
	* testsuite/md5.c: (test): fix warning

2004-11-22  David Schleef  <ds@schleef.org>

	* liboil/simdpack/simdpack.h: remove defines that are automatically
	in liboilfuncs.h.

2004-11-22  David Schleef  <ds@schleef.org>

	* liboil/simdpack/clip_s16.c: compile fix.
	* liboil/simdpack/downsample2_u8.c: (downsample2_u8_ref),
	(downsample2_u8_ave), (downsample2_u8_fast),
	(downsample2_u8_trick1), (downsample2_u8_trick2),
	(downsample2_u8_trick3), (downsample2_u8_unroll4),
	(downsample2_u8_ppcasm): remove more simdpack-isms.

2004-11-22  David Schleef  <ds@schleef.org>

	* configure.ac: bump nano
	* examples/jpeg/jpeg.c: (jpeg_decoder_application0): Fix warnings
	under gcc-3.5
	* liboil/Makefile.am: Add dependency to convince automake to
	build things in the correct order (fixes build problems with -j2)
	* liboil/md5/md5_i386.c: (md5_asm1), (md5_asm2), (md5_asm3):
	Don't clobber ebx, since gcc can't handle it.
	* liboil/simdpack/average2_u8.c: remove simdpack-isms
	* liboil/simdpack/clip_s16.c: same
	* liboil/simdpack/conv_f64_s16.c: same
	* liboil/simdpack/downsample2_s16.c: (downsample2_s16_ref),
	(downsample2_s16_fast), (downsample2_s16_unroll4),
	(downsample2_s16_ppcasm): same
	* liboil/simdpack/mix_u8.c: same
	* liboil/simdpack/sad8x8.c: same

=== 0.2.1 ===

2004-11-17  David Schleef  <ds@schleef.org>

	* configure.ac: version bump
	* examples/jpeg/Makefile.am: add deps
	* examples/md5/Makefile.am:
	* examples/md5/md5sum.c: fix warning
	* liboil/md5/md5_i386.c: (md5_asm2), (md5_asm3): fix warning

2004-11-04  David Schleef  <ds@schleef.org>

	* configure.ac: add endianness check
	* examples/md5/md5sum.c: (main): endianness fixes
	* liboil/md5/md5.c: (md5_c): endianness fixes
	* liboil/md5/md5_powerpc.c: (md5_asm1), (md5_asm2), (md5_asm3): some
	asm implementations
	* testsuite/Makefile.am:
	* testsuite/md5.c: (test): endianness fixes
	* testsuite/md5_profile.c: (test), (main): Add a profiling tool
	for md5.

2004-11-01  David Schleef  <ds@schleef.org>

	* configure.ac: add md5sum example
	* examples/Makefile.am:
	* examples/md5/Makefile.am:
	* examples/md5/md5sum.c: (main):
	* liboil/md5/Makefile.am: 
	* liboil/md5/md5_i386.c: (md5_asm3): optimization
	* liboil/md5/md5_powerpc.c: (md5_asm1): stub

2004-11-01  David Schleef  <ds@schleef.org>

	* COPYING: add
	* Makefile.am: Add COPYING, fix CLEANFILES
	* configure.ac: version bump
	* examples/jpeg/Makefile.am: fix glib dep
	* liboil/Makefile.am: add md5, fix glib dep
	* liboil/copy/Makefile.am: 
	* liboil/liboilfuncs.h: update
	* liboil/liboilfunction.c: (oil_class_choose_by_name): add new
	function
	* liboil/liboilfunction.h: same
	* liboil/md5/Makefile.am: add md5 function class
	* liboil/md5/md5.c: (md5_c):
	* liboil/md5/md5.h:
	* liboil/md5/md5_i386.c: (md5_asm1), (md5_asm2):
	* testsuite/Makefile.am: add an md5 test
	* testsuite/md5.c: (test), (main):

2004-10-21  David Schleef  <ds@schleef.org>

	* configure.ac: fixes for powerpc
	* liboil/simdpack/abs_u16_s16.c:
	* liboil/simdpack/clip_ref.c:
	* liboil/simdpack/multsum.c: (multsum_f32_ppcasm):
	* liboil/simdpack/sad8x8.c:
	* testsuite/Makefile.am:

2004-09-15  David Schleef  <ds@schleef.org>

	* configure.ac:  Add jpeg library from swfdec.
	* examples/Makefile.am:
	* examples/jpeg/Makefile.am:
	* examples/jpeg/bits.h:
	* examples/jpeg/huffman.c:
	* examples/jpeg/huffman.h:
	* examples/jpeg/jpeg.c:
	* examples/jpeg/jpeg.h:
	* examples/jpeg/jpeg_debug.h:
	* examples/jpeg/jpeg_internal.h:
	* examples/jpeg/jpeg_rgb_decoder.c:
	* examples/jpeg/jpeg_rgb_decoder.h:
	* examples/jpeg/jpeg_rgb_internal.h:
	* examples/jpeg/test.c:
	* examples/jpeg/test_rgb.c:

2004-09-13  David Schleef  <ds@schleef.org>

	* examples/example1.c: (main): call optimize_all()
	* liboil/Makefile.am: remove build_lists
	* liboil/liboilfunction.h: use HAVE_GNU_LINKER
	* testsuite/Makefile.am: add test
	* testsuite/proto1.c: (main):

2004-09-13  David Schleef  <ds@schleef.org>

	* Makefile.am: Bump API version to 0.2
	* configure.ac:
	* liboil-0.1-uninstalled.pc.in:
	* liboil-0.1.pc.in:
	* liboil.pc.in:

2004-09-09  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: Hoop jumping to extract a list of symbols
	to generate into liboilarray.c
	* liboil/build_lists.c: remove
	* liboil/liboilarray.c: remove

2004-09-09  David Schleef  <ds@schleef.org>

	* liboil/build_lists.c: (main), (print_header): new

2004-09-09  David Schleef  <ds@schleef.org>

	* configure.ac: Check for GNU linker (i.e., Linux)
	* liboil/Makefile.am: Use alternate liboilarray.c if not Linux.
	* liboil/build_prototypes.c: (main), (print_header):
	* liboil/liboilarray.c: Array of classes and impls.
	* liboil/liboil_begin.c: fix API changes
	* liboil/liboil_end.c: api changes
	* liboil/liboildebug.c: (oil_spill): api changes
	* liboil/liboilfunction.c: (oil_optimize_all),
	(oil_class_get_by_index), (oil_impl_get_by_index), (oil_class_get),
	(oil_init_pointers), (oil_init_structs): Handle class and impl
	arrays if not using gnu linker.
	* liboil/liboilfunction.h: api changes
	* testsuite/proto1.c: (main): api changes

2004-09-08  David Schleef  <ds@schleef.org>

	* liboil/liboilprototype.c: (parse_string), (oil_string_free),
	(_strndup): Add strndup implementation

2004-09-08  David Schleef  <ds@schleef.org>

	* configure.ac: Use -Wa,-mregnames if possible

2004-09-08  David Schleef  <ds@schleef.org>

	* .cvsignore: Some stuff to ignore
	* examples/.cvsignore:
	* liboil/.cvsignore:
	* liboil/dct/.cvsignore:
	* liboil/jpeg/.cvsignore:
	* liboil/simdpack/.cvsignore:
	* m4/pkg.m4:
	* testsuite/.cvsignore:

2004-09-07  David Schleef  <ds@schleef.org>

	* liboil/Makefile.am: only export oil_ symbols
	* liboil/build_prototypes.c: (main): change to
	oil_function_class_ptr_%s
	* liboil/conv_c.c: same
	* liboil/conv_misc.c: same
	* liboil/conv_ref.c: same
	* liboil/conv_sse.c: same
	* liboil/copy/permute.c: same...
	* liboil/copy/splat_ref.c:
	* liboil/copy/tablelookup_ref.c:
	* liboil/copy/trans8x8.c:
	* liboil/dct/dct12_f32.c:
	* liboil/dct/dct36_f32.c:
	* liboil/dct/fdct8_f64.c:
	* liboil/dct/idct8_f64.c:
	* liboil/dct/idct8x8_c.c:
	* liboil/dct/imdct32_f32.c:
	* liboil/jpeg/convert8x8_c.c:
	* liboil/jpeg/jpeg_rgb_decoder.c:
	* liboil/jpeg/quantize8x8_c.c:
	* liboil/jpeg/yuv2rgb_c.c:
	* liboil/jpeg/zigzag8x8_c.c:
	* liboil/liboil_begin.c:
	* liboil/liboil_end.c:
	* liboil/liboilfuncs.h: update
	* liboil/liboilfunction.c: move declarations to .c files
	* liboil/liboilfunction.h: same.  Fix namespace issues.
	* liboil/simdpack/abs.c: class fixes
	* liboil/simdpack/abs_u16_s16.c: same...
	* liboil/simdpack/abs_u32_s32.c:
	* liboil/simdpack/average2_u8.c:
	* liboil/simdpack/clip_ref.c:
	* liboil/simdpack/clip_s16.c:
	* liboil/simdpack/clip_s32.c:
	* liboil/simdpack/diffsquaresum_f64.c:
	* liboil/simdpack/mix_u8.c:
	* liboil/simdpack/mult8x8_s16.c:
	* liboil/simdpack/multsum.c:
	* liboil/simdpack/sad8x8.c:
	* liboil/simdpack/scalaradd.c:
	* liboil/simdpack/scalarmult.c:
	* liboil/simdpack/sincos_f64.c:
	* liboil/simdpack/squaresum_f64.c:
	* liboil/simdpack/sum_f64.c:
	* liboil/simdpack/vectoradd_f64.c:
	* testsuite/abs.c: (main): remove usage of internal symbol
	* testsuite/moo.c: (main): same

2004-09-07  David Schleef  <ds@schleef.org>

	Global change from OIL_DEFINE_CLASS_X to OIL_DEFINE_CLASS
	* liboil/conv_ref.c:
	* liboil/copy/permute.c:
	* liboil/copy/splat_ref.c:
	* liboil/copy/tablelookup_ref.c:
	* liboil/copy/trans8x8.c:
	* liboil/dct/dct12_f32.c:
	* liboil/dct/dct36_f32.c:
	* liboil/dct/fdct8_f64.c:
	* liboil/dct/idct8_f64.c:
	* liboil/dct/idct8x8_c.c:
	* liboil/dct/imdct32_f32.c:
	* liboil/jpeg/convert8x8_c.c:
	* liboil/jpeg/jpeg_rgb_decoder.c:
	* liboil/jpeg/quantize8x8_c.c:
	* liboil/jpeg/yuv2rgb_c.c:
	* liboil/jpeg/zigzag8x8_c.c:
	* liboil/junk/downsample1x_f64.c:
	* liboil/junk/get8x8_f64.c:
	* liboil/liboilfunction.h:
	* liboil/simdpack/abs.c:
	* liboil/simdpack/average2_u8.c:
	* liboil/simdpack/clip_ref.c:
	* liboil/simdpack/diffsquaresum_f64.c:
	* liboil/simdpack/mix_u8.c:
	* liboil/simdpack/mult8x8_s16.c:
	* liboil/simdpack/multsum.c:
	* liboil/simdpack/sad8x8.c:
	* liboil/simdpack/scalaradd.c:
	* liboil/simdpack/scalarmult.c:
	* liboil/simdpack/sincos_f64.c:
	* liboil/simdpack/squaresum_f64.c:
	* liboil/simdpack/sum_f64.c:
	* liboil/simdpack/vectoradd_f64.c:

2004-09-07  David Schleef  <ds@schleef.org>

	Add oil_ prefix to all virtual functions.
	* examples/example1.c: (main):
	* liboil/build_prototypes.c: (main):
	* liboil/dct/idct8x8_c.c: (idct8x8_f64_c), (idct8x8_s16_slow):
	* liboil/liboilfuncs.h:
	* testsuite/abs.c: (test):

2004-09-07  David Schleef  <ds@schleef.org>

	* liboil/build_prototypes.c: Use new api
	* liboil/copy/permute.c: param changes
	* liboil/copy/splat_ref.c: param changes
	* liboil/copy/tablelookup_ref.c: param changes
	* liboil/jpeg/jpeg_rgb_decoder.c: param changes
	* liboil/jpeg/quantize8x8_c.c: param changes
	* liboil/jpeg/yuv2rgb_c.c: param changes
	* liboil/liboilprototype.c: bugfixes
	* liboil/simdpack/Makefile.am: remove files
	* liboil/simdpack/clip_ref.c: param changes
	* liboil/simdpack/mix_u8.c: param changes
	* liboil/simdpack/scalaradd.c: param changes
	* liboil/simdpack/scalarmult.c: param changes
	* liboil/simdpack/sincos_f64.c: param changes
	* liboil/simdpack/vectoradd_f64.c: param changes
	* testsuite/Makefile.am: new test
	* testsuite/proto1.c: prototype checker

2004-09-07  David Schleef  <ds@schleef.org>

	* liboil/junk/downsample1x_f64.c: move these
	* liboil/junk/get8x8_f64.c:
	* liboil/simdpack/downsample1x_f64.c:
	* liboil/simdpack/get8x8_f64.c:

2004-09-03  David Schleef  <ds@schleef.org>

	
	* liboil/Makefile.am: add liboilprototype.c
	* liboil/build_prototypes.c: use liboilprototype.h
	* liboil/conv_c.c: include conv.h
	* liboil/conv_misc.c: include conv.h
	* liboil/conv_sse.c: include conv.h
	* liboil/liboilfuncs.h: use pointers to classes instead of directly
	* liboil/liboilfunction.h: Add class pointer definition
	* liboil/liboilprototype.c: (oil_prototype_append_param),
	(oil_prototype_to_string), (oil_prototype_from_string),
	(parse_string), (oil_prototype_free), (oil_string_new),
	(oil_string_append), (oil_string_free): Add some prototype
	manipulation functions.
	* liboil/liboilprototype.h: ditto
	* liboil/simdpack/abs.c: (abs_f32_f32_ref), (abs_f64_f64_ref): Fix
	bug.
	* testsuite/abs.c: (test), (main): works now

2004-09-03  David Schleef  <ds@schleef.org>

	Move a bunch of files around.
	* configure.ac:
	* liboil/Makefile.am:
	* liboil/build_prototypes.c: (main):
	* liboil/copy/Makefile.am:
	* liboil/copy/copy.h:
	* liboil/copy/permute.c:
	* liboil/copy/splat_ref.c: (splat_u8_ref), (splat_u32_ref),
	(splat_u32_unroll2):
	* liboil/copy/tablelookup_ref.c: (tablelookup_u8_ref):
	* liboil/copy/trans8x8.c: (TEST_trans8x8_f64):
	* liboil/copy/trans8x8_f32.c: (trans8x8_f32_ref),
	(trans4x4_f32_a16_altivec), (trans8x8_f32_a16_altivec),
	(TEST_trans8x8_f32):
	* liboil/copy/trans8x8_s16.c: (trans8x8_s16_ref),
	(trans8x8_s16_a16_altivec), (trans8x8_s16_altivecwrap),
	(TEST_trans8x8_s16):
	* liboil/dct/Makefile.am:
	* liboil/dct/dct.h:
	* liboil/dct/dct12_f32.c: (dct12_f32_ref), (dct12_f32_ref1),
	(dct12_f32_mpglib), (TEST_dct12_f32):
	* liboil/dct/dct36.c: (dct36):
	* liboil/dct/dct36_f32.c: (dct36_f32_ref), (TEST_dct36_f32):
	* liboil/dct/fdct8_f64.c: (fdct8_f64_ref), (fdct8_f64_fast),
	(TEST_fdct8_f64):
	* liboil/dct/fdct8x8_f64.c: (fdct8x8_f64_ref), (fdct8x8_f64_ref2),
	(fdct8x8_f64_1d), (TEST_fdct8x8_f64):
	* liboil/dct/fdct8x8_s16.c: (fdct8x8_s16_ref), (TEST_fdct8x8_s16):
	* liboil/dct/fdct8x8s_s16.c: (fdct8x8s_s16_ref),
	(TEST_fdct8x8s_s16):
	* liboil/dct/idct8_f64.c: (idct8_f64_ref), (idct8_f64_fastx),
	(TEST_idct8_f64):
	* liboil/dct/idct8x8_c.c: (idct8x8_f64_slow), (idct8x8_f64_c),
	(idct8x8_s16_slow):
	* liboil/dct/idct8x8_f64.c: (idct8x8_f64_ref), (idct8x8_f64_ref2),
	(idct8x8_f64_1d), (TEST_idct8x8_f64):
	* liboil/dct/idct8x8_s16.c: (idct8x8_s16_ref), (idct8x8_s16_fast),
	(TEST_idct8x8_s16):
	* liboil/dct/idct8x8s_s16.c: (idct8x8s_s16_ref),
	(TEST_idct8x8s_s16):
	* liboil/dct/imdct32_f32.c: (imdct32_f32_ref),
	(imdct32_f32_mpglib), (TEST_imdct32_f32):
	* liboil/jpeg/Makefile.am:
	* liboil/jpeg/idct8_c.c:
	* liboil/jpeg/idct8x8_c.c:
	* liboil/jpeg/jpeg.c:
	* liboil/jpeg/jpeg.h:
	* liboil/jpeg/jpeg_rgb_decoder.c:
	* liboil/jpeg/quantize8x8_c.c:
	* liboil/jpeg/yuv2rgb_c.c:
	* liboil/jpeg/zigzag8x8_c.c:
	* liboil/liboilcpu.c: (oil_cpu_i386_getflags):
	* liboil/liboildebug.c: (oil_debug_print_valist):
	* liboil/liboilfuncs.h:
	* liboil/liboilfunction.c: (oil_class_get_by_index),
	(oil_class_optimize), (oil_init_pointers), (oil_init_structs):
	* liboil/liboilfunction.h:
	* liboil/simdpack/Makefile.am:
	* liboil/simdpack/abs.c: (abs_u8_s8_ref), (abs_u16_s16_ref),
	(abs_u32_s32_ref):
	* liboil/simdpack/abs_u32_s32.c:
	* liboil/simdpack/average2_u8.c:
	* liboil/simdpack/clip_ref.c:
	* liboil/simdpack/dct12_f32.c:
	* liboil/simdpack/dct36.c:
	* liboil/simdpack/dct36_f32.c:
	* liboil/simdpack/diffsquaresum_f64.c:
	* liboil/simdpack/downsample1x_f64.c:
	* liboil/simdpack/fdct8_f64.c:
	* liboil/simdpack/fdct8x8_f64.c:
	* liboil/simdpack/fdct8x8_s16.c:
	* liboil/simdpack/fdct8x8s_s16.c:
	* liboil/simdpack/get8x8_f64.c:
	* liboil/simdpack/idct8_f64.c:
	* liboil/simdpack/idct8x8_f64.c:
	* liboil/simdpack/idct8x8_s16.c:
	* liboil/simdpack/idct8x8s_s16.c:
	* liboil/simdpack/imdct32_f32.c:
	* liboil/simdpack/mix_u8.c:
	* liboil/simdpack/mult8x8_s16.c:
	* liboil/simdpack/multsum.c:
	* liboil/simdpack/permute.c:
	* liboil/simdpack/sad8x8.c:
	* liboil/simdpack/scalaradd.c:
	* liboil/simdpack/simdpack.c:
	* liboil/simdpack/sincos_f64.c:
	* liboil/simdpack/squaresum_f64.c:
	* liboil/simdpack/sum_f64.c:
	* liboil/simdpack/trans8x8.c:
	* liboil/simdpack/trans8x8_f32.c:
	* liboil/simdpack/trans8x8_s16.c:
	* liboil/simdpack/vectoradd_f64.c:
	* liboil/simdpack/zigzag8x8_s16.c:
	* testsuite/Makefile.am:
	* testsuite/abs.c: (test), (main):
	* testsuite/introspect.c: (main):

2004-09-02  David Schleef  <ds@schleef.org>

	* configure.ac: remove strict glib dependency
	* liboil-0.1-uninstalled.pc.in: remove glib
	* liboil-0.1.pc.in: remove glib
	* liboil/Makefile.am: remove glib dependency, make conv_sse an i386
	source
	* liboil/liboilcpu.c: handle non-Linux builds

2004-08-20  David Schleef  <ds@schleef.org>

	* m4/as-compiler-flag.m4: add

2004-08-18  David Schleef  <ds@schleef.org>

	* Makefile.am: remove liboil-lite
	* configure.ac: add -D_GNU_SOURCE to flags
	* liboil/simdpack/abs_u16_s16.c: (abs_u16_s16_i386asm2),
	(abs_u16_s16_mmxx), (abs_u16_s16_mmx2), (abs_u16_s16_sse2):
	Fix some problems with ebx usage.

2004-08-13  David Schleef  <ds@schleef.org>

	Partial port to Forte/non-gcc-compilers.  Kill me now.
	* configure.ac:
	* liboil/Makefile.am:
	* liboil/build_prototypes.c: (parse_string):
	* liboil/conv_bitstuff.c: (conv_f32_u8_bitstuff),
	(conv_f32_s8_bitstuff), (conv_f32_u16_bitstuff),
	(conv_f32_s16_bitstuff), (conv_s16_f32_bitstuff),
	(conv_f64_u8_bitstuff), (conv_f64_s8_bitstuff),
	(conv_f64_u16_bitstuff), (conv_f64_s16_bitstuff):
	* liboil/conv_c.c:
	* liboil/conv_ref.c:
	* liboil/conv_sse.c:
	* liboil/jpeg/idct8_c.c:
	* liboil/liboil_begin.c:
	* liboil/liboil_end.c:
	* liboil/liboildebug.h:
	* liboil/liboilfunction.h:
	* liboil/simdpack/abs.c: (abs_u16_s16_ref), (abs_u32_s32_ref),
	(abs_f32_f32_ref), (abs_f64_f64_ref):
	* liboil/simdpack/abs_u16_s16.c: (abs_u16_s16_ref):
	* liboil/simdpack/abs_u32_s32.c:
	* liboil/simdpack/clip_ref.c:
	* liboil/simdpack/clip_s16.c: (clip_s16_ref), (clip_s16_fast):
	* liboil/simdpack/fdct8_f64.c: (fdct8_f64_ref), (fdct8_f64_fast):
	* liboil/simdpack/fdct8x8_f64.c: (fdct8x8_f64_ref),
	(fdct8x8_f64_ref2):
	* liboil/simdpack/fdct8x8s_s16.c: (fdct8x8s_s16_ref):
	* liboil/simdpack/get8x8_f64.c: (get8x8_f64_ref):
	* liboil/simdpack/idct8_f64.c: (idct8_f64_ref), (idct8_f64_fastx):
	* liboil/simdpack/mult8x8_s16.c: (mult8x8_s16_ref):
	* liboil/simdpack/multsum.c: (multsum_f32_unroll2):
	* liboil/simdpack/permute.c:
	* liboil/simdpack/sad8x8.c: (sad8x8_f64_ref), (sad8x8_s16_ref):
	* liboil/simdpack/scalaradd.c:
	* liboil/simdpack/scalarmult.c:
	* liboil/simdpack/sum_f64.c: (sum_f64_ref), (sum_f64_i10_simple),
	(sum_f64_i10_unroll4):
	* liboil/simdpack/vectoradd_f64.c:
	* liboil/simdpack/zigzag8x8_s16.c: (zigzag8x8_s16_ref):
	* liboil/splat_ref.c: (splat_u8_ref), (splat_u32_ref),
	(splat_u32_unroll2):
	* liboil/tablelookup_ref.c: (tablelookup_u8_ref):

2004-08-12  David Schleef  <ds@schleef.org>

	* configure.ac: Check for rintf() and friends
	* liboil/conv_c.c: use check
	* liboil/simdpack/Makefile.am: enable abs_u16_s16.c
	* liboil/simdpack/abs_u16_s16.c: fix compilation
	* liboil/splat_ref.c: (splat_u32_ref), (splat_u32_unroll2):

2004-08-12  David Schleef  <ds@schleef.org>

	* m4/as-version.m4: Update from autostars

2004-08-12  David Schleef  <ds@schleef.org>

	* testsuite/abs.c: (test), (main):  Add

2004-08-12  David Schleef  <ds@schleef.org>

	Start changelog and add some random changes.
	* liboil/Makefile.am:
	* liboil/build_prototypes.c: (main), (param_free), (print_header),
	(print_footer):
	* liboil/jpeg/convert8x8_c.c:
	* liboil/jpeg/idct8_c.c:
	* liboil/jpeg/idct8x8_c.c:
	* liboil/jpeg/jpeg.c:
	* liboil/jpeg/jpeg.h:
	* liboil/jpeg/zigzag8x8_c.c:
	* liboil/liboilcpu.c: (oil_cpu_i386_getflags), (strsplit):
	* liboil/liboilfuncs.h:
	* liboil/splat_ref.c: (splat_u32_ref):

