Commit Graph

11 Commits

Author SHA1 Message Date
Helvetix Victorinox bac9cfa083 a regression test now iterates over 8388625 pixels per pass.
* app/composite/gimp-composite-*test.c: a regression test now
	iterates over 8388625 pixels per pass.

* app/composite/gimp-composite-mmx.c
* app/composite/gimp-composite-sse.c
* app/composite/gimp-composite-sse2.c:
	Ensured that a clobbered condition code register is reflected in
	the clobbered register list for each asm() statement.
	This should FIX bug #147013.
2004-09-03 02:53:19 +00:00
Helvetix Victorinox 8a3bdf5297 app/composite/gimp-composite-sse.c More updates to accomodate the clobber
* app/composite/gimp-composite-sse.c
* app/composite/gimp-composite-sse2.c: More updates to accomodate
  the clobber registers. Additional progress against bug #147013.

* app/composite/gimp-composite-sse.h: Fixed a bug where the wrong
  manifest constant definition caused sse2 instructions to never be
  compiled.
2004-08-28 21:21:07 +00:00
Helvetix Victorinox 47b1730948 We've had trouble compiling with the Intel compiler which
identifies itself as GCC, but doesn't support the same extended
assembly features/misfeatures as GCC.  With the help of the Intel
compiler group, we've determined that the Intel compiler can be
identified at compile time by the definition of the preprocessor
variable __INTEL_COMPILER.

These changes make all of the assembly code currently written to
simply avoid the Intel compiler.

This is an interim solution to get a build working despite the
Intel compiler.  A more correct solution has been identified, see
the discussion of bug #147013 for more information.
2004-07-17 05:24:08 +00:00
Helvetix Victorinox 7b7b3c3f0c app/composite/gimp-composite.h app/composite/gimp-composite-generic.h
*	app/composite/gimp-composite.h
* app/composite/gimp-composite-generic.h
* app/composite/gimp-composite-regression.h: Reformatted to include
  argument names in function prototypes.

* app/composite/gimp-composite.c
* app/composite/gimp-composite-generic.c
* app/composite/gimp-composite-regression.c: Added gtk-doc templates for functions.

* app/composite/make-install.py: migrated to new (trimmer) code and
  removed dead code.  Some beautification for generated code.

* app/composite/gimp-composite-{mmx,sse,sse2,3dnow,altivec,vis,generic}.{c,h}:
  All init() functions are also a run-time check and now expected to
  return TRUE/FALSE if the particular set of compositing functions can
  be used.

* app/composite/gimp-composite.c: No longer has to determine if
  the particular set of compositing functions can be used.

* app/composite/gimp-composite-{mmx,sse,sse2,3dnow,altivec,vis}-{install,test}.c:
  Regenerated

* app/composite/test-composite.c: Deprecated, removed.  All tests are automatically
  generated and the code is in app/composite/gimp-composite-{mmx,sse,sse2,3dnow,altivec,vis}-test.c:

* app/composite/Makefile.am: removed unused references to test-composite.c
2003-10-12 00:10:21 +00:00
Helvetix Victorinox 7752bf9eef migrated to new (trimmer) code and removed dead code. Some beautification
* app/composite/make-install.py: migrated to new (trimmer) code and
  removed dead code.  Some beautification for generated code.

* app/composite/gimp-composite-{mmx,sse,sse2,3dnow,altivec,vis,generic}.{c,h}:
  All init() functions are also a run-time check and now expected to
  return TRUE/FALSE if the particular set of compositing functions can
  be used.

* app/composite/gimp-composite.c: No longer has to determine if
  the particular set of compositing functions can be used.

* app/composite/gimp-composite-{mmx,sse,sse2,3dnow,altivec,vis}-{install,test}.c:
  Regenerated

* app/composite/test-composite.c: Deprecated, removed.  All tests are automatically
  generated and the code is in app/composite/gimp-composite-{mmx,sse,sse2,3dnow,altivec,vis}-test.c:

* app/composite/Makefile.am: removed unused references to test-composite.c
2003-10-06 02:46:15 +00:00
Helvetix Victorinox 545c19854a app/composite/gimp-composite-altivec-test.c
* app/composite/gimp-composite-altivec-test.c
* app/composite/gimp-composite-mmx-test.c
* app/composite/gimp-composite-mmx-installer.c
* app/composite/gimp-composite-sse-test.c
* app/composite/gimp-composite-sse-installer.c
* app/composite/gimp-composite-sse2-test.c
* app/composite/gimp-composite-sse2-installer.c
* app/composite/gimp-composite-vis-test.c
* app/composite/gimp-composite-vis-installer.c:
  Regenerated.

* app/composite/gimp-composite-altivec.[ch]
* app/composite/gimp-composite-mmx.[ch]
* app/composite/gimp-composite-sse.[ch]
* app/composite/gimp-composite-sse2.[ch]
* app/composite/gimp-composite-vis.[ch]
* app/composite/make-installer.py:
  Make it such that when a test is run on the wrong kind of
  machine, don't fail without an explanation.
2003-09-27 03:11:46 +00:00
Helvetix Victorinox 930d261569 gimp-composite-mmx-{test,installer}.c
* gimp-composite-mmx-{test,installer}.c

* gimp-composite-sse-{test,installer}.c

* gimp-composite-sse2-{test,installer}.c

* make-installer.py: sort test output by mode name

* gimp-composite-sse2.[ch]: New compositing mode implementations
  darken
  difference
  grain_extract
  lighten

* gimp-composite-x86.h: added

* gimp-composite-{sse,mmx,sse2}.[ch]: Tightening declarations of clobbered registers.
2003-09-16 02:24:03 +00:00
Helvetix Victorinox aa196f4ebb regenerated with new functions.
* gimp-composite-sse2-installer.c, gimp-composite-sse2-test.c:
  regenerated with new functions.

* gimp-composite-sse.c, gimp-composite-sse2.c:
  Distinguish between 64bit and 128bit constants with a little
  faux hungarian notation.

* gimp-composite-sse2.[ch]: Added implementations of
  addition_rgba8_rgba8_rgba8, subtract_rgba8_rgba8_rgba8, and
  swap_rgba8_rgba8_rgba8

* gimp-composite-generic.c:
  Some formating beautification
2003-09-14 00:45:26 +00:00
Helvetix Victorinox 9d405b607c Regenerated installers and testers.
* app/composite/: Regenerated installers and testers.

* app/composite/make-install.py: increased tests of pixels to 1024*1024+1

* app/composite/gimp-composite-mmx.c (gimp_composite_overlay_rgba8_rgba8_rgba_mmx):
  Backed out of the current build.  Although the unit tests all
  pass, the emperical evidence is that something is wrong with it.
2003-08-20 02:55:46 +00:00
Helvetix Victorinox 4cae0f19ce Various beautifications, dead code removal, comment clean-up.
* app/composite:
  Various beautifications, dead code removal, comment clean-up.
2003-08-18 15:05:22 +00:00
Helvetix Victorinox 7d1f8a9686 retired and removed.
* app/composite/gimp-composite-dispatch.[ch]: retired and removed.

* app/composite/Makefile.am: The 'test' target now builds and runs
  all the tests in TESTS

  Fixed typos of mismatched parenthesis in 'regenerate' target

* app/composite/Makefile.am: TESTS now include ss2 and 3dnow
  instruction sets.

* app/composite/make-gimp-composite-dispatch.py: retired and removed.

* app/composite/gimp-composite.c: call the installers of all the
  various instruction sets supplied by x86 type processors.

* app/base/base.c (base_init): Call gimp_composite_init() *before*
  paint_funcs_setup() (preparation for retiring
  app/paint-funcs/paint-funcs.c)

* app/composite/gimp-composite-sse2.[ch]
* app/composite/gimp-composite-3dnow.[ch]
* app/composite/gimp-composite-sse2-installer.c
* app/composite/gimp-composite-3dnow-installer.c:
  Added

* app/composite/make-installer.py: generate regression test
  programmes that take the command line arguments --iterations and
  --n-pixels for the number of iterations of a set of tests, and the
  number of pixels to use in each test, respectively.

  Conditionally compile tests in order to build and run tests on
  machines that can actually perform the tests.

  Failing a regression test now causes remaining tests to be
  skipped and a non-zero exit code by the programme.
2003-08-18 01:47:10 +00:00