Commit Graph

9 Commits

Author SHA1 Message Date
Sven Neumann 8c34627a76 cosmetics.
2003-09-18  Sven Neumann  <sven@gimp.org>

	* app/composite/gimp-composite.[ch]: cosmetics.
2003-09-18 12:18:02 +00:00
Helvetix Victorinox 33e22c8fbc composite/ modularisation of the automatic compositing function "wiring"
* composite/ modularisation of the automatic compositing function
  "wiring" to construct the table of compositing functions at
  run-time instead of compile time.

  The environment variable GIMP_COMPOSITE is a hexadecimal number
  representing a bit-field used to set/reset options in the
  gimp-composite code.

* gimp-composite-altivec.[ch]: added
* gimp-composite-altivec-installer.[ch]: added
* gimp-composite-vis.[ch]: added
* gimp-composite-vis-installer.[ch]: added
* gimp-composite-mmx-installer.[ch]: added
* gimp-composite-sse-installer.[ch]: added
* gimp-composite-altivec-test.[ch]: added
* gimp-composite-vis-test.[ch]: added
* gimp-composite-mmx-test.[ch]: added
* gimp-composite-sse-test.[ch]: added
* make-installer.py: Added meta programme for generating code to
  1) construct a table of compositing functions indexed by
  operation, and the pixel formats of the sources and destination,
  and 2) generating code for regression testing of these compositing
  functions against the same functions in gimp-composite-generic.c

* gimp-composite-mmx.c (xxxgimp_composite_overlay_rgba8_rgba8_rgba8_mmx):
  removing from the current set of optimisations because it appears
  to be broken.

* Makefile.am: modified regression testing targets to now build
  gimp-composite-*-test where * is any of generic, mmx, sse,
  altivec, and vis.

* gimp-composite.c: moved in initialisation code
  gimp_composite_init() from gimp-composite-dispatch.c

* gimp-composite.c: removed gimp_composite_unsupported().

* gimp-composite.c: use cpu_accel() to determine at run-time which
  set of optimisations are to be used.

* gimp-composite.c: conditionally compile code for ARCH_X86.

* make-gimp-composite-dispatch.c: retired.  See make-installer.py

* gimp-composite-mmx.c (op_overlay): namespace cleanup, op_overlay()
  and all of the constant values are now static

* gimp-composite-mmx.c, gimp-composite-sse.c: fixed bug with the
  alpha mask being the address of the alpha mask, not the mask
  itself.

* app/paint-funcs/paint-funcs.c: Check gimp_composite_options.use
  to see if we should use the new code or the old code.
2003-08-14 07:43:34 +00:00
Helvetix Victorinox d3fc41f0c2 regenerated new code taking advantage of simplified function prototypes.
* app/composite/gimp-composite-dispatch.[ch]: regenerated new code
taking advantage of simplified function prototypes.

* app/composite/gimp-composite-test.c: New regression testing
driver.  This file is automatically generated, but it's included
in the cvs tree for expediency.

* app/composite/ns.py: hopeful checks for which OS is currently
running as a hint to what nm(1) is available.

* app/composite/gimp-composite-mmx.[ch]
* app/composite/gimp-composite-sse.[ch]
* app/composite/gimp-composite-generic.[ch]: function prototype
cleanup.

* app/composite/make-gimp-composite-dispatch.py: generates code to
test compositing functions.

* app/composite/gimp-composite-regression.[ch]: support for
automatically testing compositing functions.
2003-07-24 08:00:12 +00:00
Sven Neumann e1bdbd9fa3 gimp_composite_dispatch() doesn't have a return value, made it a void
2003-07-22  Sven Neumann  <sven@gimp.org>

	* app/composite/gimp-composite.[ch]: gimp_composite_dispatch()
	doesn't have a return value, made it a void function.
2003-07-22 09:04:10 +00:00
Helvetix Victorinox b31ae7332a big code cleanup.
* app/composite/make-gimp-composite-dispatch.py: big code cleanup.

* app/composite/Makefile.am: removed references to $(builddir)

* app/composite/test-composite.c: cleanup, preparation for transition to
automatically generated regression testing code.

* app/composite/gimp-composite.c: Clean up of typedef usage

* app/composite/gimp-composite-regression.[ch]: added foundation
for regression testing.
2003-07-21 23:49:48 +00:00
Helvetix Victorinox 9e3bd94760 app/composite/gimp-composite.[ch],
* app/composite/gimp-composite.[ch],
* app/composite/make-gimp-composite-dispatch.py
stubbed out the 32bit-per-channel pixel formats.

* app/composite/gimp-composite-sse.[ch],
* app/composite/Makefile.am
Broke-out and added the SSE versions of the MMX code.

* app/composite/gimp-composite.[ch],
* app/paint-funcs/paint-funcs.c,
* app/composite/make-gimp-composite-dispatch.py
Use of the new gimp_composite code is now turned on via the
environment variable GIMP_COMPOSITE with a non-zero value.  For
example:
% GIMP_COMPOSITE=1 gimp-1.3
2003-07-18 07:36:55 +00:00
Helvetix Victorinox 9d2b63962e app/paint-funcs/Makefile.am include files from app/composite/
app/paint-funcs/paint-funcs.c stubbed out code for using
gimp_composite.  To enable the use of gimp_composite, set the
value of gimp_composite_use_old to 0 (zero).

app/base/base.c calls gimp_composite_init() hook to initialse
all the gimp_composite "stuff."

app/composite/make-gimp-composite-dispatch.py now generates
gimp-composite-dispatch.h

app/composite/gimp-composite-dispatch.[ch] are in CVS although
they are generated files.  This is preparation for building the
table at run-time, instead of compile time.

app/composite/gimp-composite.c doesn't #include the main
dispatch table.  This is preparation for building the table at
run-time, instead of compile time.

app/composite/Makefile.am doesn't compile gimp-composite-mmx.c
(until the various remaining gcc problems and configuration issues
are worked out).
2003-07-13 15:48:41 +00:00
Sven Neumann 9bad7d216b removed ... ... and readded under a new name.
2003-07-09  Sven Neumann  <sven@gimp.org>

	* app/composite/tester.c: removed ...
	* app/composite/test-composite.c: ... and readded under a new name.

	* app/composite/Makefile.am: added a check target that builds and
	runs the test program.

	* app/composite/gimp-composite-generic.c
	* app/composite/gimp-composite-mmx.c
	* app/composite/gimp-composite-util.h
	* app/composite/gimp-composite.[ch]
	* app/composite/make-gimp-composite-dispatch.py: made it fit
	better into the GIMP source tree:
	- do not include any files from headers
	- don't use types from <sys/types.h> but use what glib provides
	- coding style ...
2003-07-09 11:52:10 +00:00
Helvetix Victorinox 45b2be990f I hate cvs.
Re-adding app/composite
2003-07-08 23:15:16 +00:00