Commit Graph

12 Commits

Author SHA1 Message Date
Sven Neumann db75625d27 Moved the CPU detection code to libgimpbase (see bug #342860):
2006-06-02  Sven Neumann  <sven@gimp.org>

	Moved the CPU detection code to libgimpbase (see bug #342860):

	* app/base/Makefile.am
	* app/base/cpu-accel.[ch]
	* app/base/test-cpu-accel.c: removed here...

	* libgimpbase/Makefile.am
	* libgimpbase/gimpbase.h
	* libgimpbase/gimpcpuaccel.[ch]

	* libgimpbase/test-cpu-accel.c: ... and added here again with
	some API changes.

	* app/composite/Makefile.am
	* app/composite/make-installer.py: changed accordingly.

	* app/composite/gimp-composite-*-installer.c: regenerated.

	* libgimp/gimp.c (gimp_main): call gimp_set_use_cpu_accel().
2006-06-02 09:58:03 +00:00
Sven Neumann b60b1372ab generate const arrays.
2006-04-19  Sven Neumann  <sven@gimp.org>

	* app/composite/make-installer.py: generate const arrays.

	* app/composite/gimp-composite-altivec-installer.c
	* app/composite/gimp-composite-generic-installer.c
	* app/composite/gimp-composite-mmx-installer.c
	* app/composite/gimp-composite-sse-installer.c
	* app/composite/gimp-composite-sse2-installer.c: regenerated.
2006-04-19 14:46:51 +00:00
Raphael Quinet 7d8998a99c automatically removed trailing whitespace from 3460 lines.
2006-01-17  Raphael Quinet  <raphael@gimp.org>

	* (about 130 *.[ch] files): automatically removed trailing
	whitespace from 3460 lines.
2006-01-17 12:43:50 +00:00
Manish Singh b55753bb21 acinclude.m4 m4macros/Makefile.am new macro: GIMP_DETECT_CFLAGS; used to
2005-07-31  Manish Singh  <yosh@gimp.org>

        * acinclude.m4
        * m4macros/Makefile.am
        * m4macros/detectcflags.m4: new macro: GIMP_DETECT_CFLAGS; used
        to detect which of a set of compiler options a compiler supports.

        * configure.in: use the above for the altivec and -fno-strict-aliasing
        flags. Also, use it to detect the presence of -mmmx and -msse, since
        those are needed to compile even MMX/SSE assembly with gcc 4.0. Define
        MMX/SSE_EXTRA_CFLAGS.

        * app/composite/Makefile.am: compile each of the composite flavors
        into their own library, so we can use automake's per-target CFLAGS.
        Use MMX/SSE/ALTIVEC_EXTRA_CFLAGS in the appropriate places. Build
        libappcomposite.a out of the resulting objects.

        * app/composite/gimp-composite-3dnow.c
        * app/composite/gimp-composite-altivec.c
        * app/composite/gimp-composite-mmx.c
        * app/composite/gimp-composite-sse.c
        * app/composite/gimp-composite-sse2.c
        * app/composite/gimp-composite-vis.c
        * app/composite/make-installer.py: move the _init functions into
        the installers, so only actually mmx/sse/etc. code gets compiled
        under the appropriate CFLAGS.

        * app/composite/gimp-composite-3dnow-installer.c
        * app/composite/gimp-composite-altivec-installer.c
        * app/composite/gimp-composite-mmx-installer.c
        * app/composite/gimp-composite-sse-installer.c
        * app/composite/gimp-composite-sse2-installer.c
        * app/composite/gimp-composite-vis-installer.c: regenerated.

        * app/composite/gimp-composite.c: remove useless cpu-accel.h include.
2005-08-01 04:45:34 +00:00
Helvetix Victorinox 54630be219 Print the list of active instruction sets if the --verbose command line
* app/composite/gimp-composite.c (gimp_composite_init): Print the
list of active instruction sets if the --verbose command line
switch is ON (via be_verbose)

* app/composite/gimp-composite-x86.h: Factored code from the mmx,
and sse implementations.

* app/composite/make-installer.py: Raised the number of test
iterations from 1 to 10.

* app/composite/gimp-composite-3dnow.[ch]
* app/composite/gimp-composite-3dnow-test.c
* app/composite/gimp-composite-3dnow-installer.c
* app/composite/gimp-composite-altivec.[ch]
* app/composite/gimp-composite-altivec-test.c
* app/composite/gimp-composite-altivec-installer.c
* app/composite/gimp-composite-mmx.[ch]
* app/composite/gimp-composite-altivec-test.c
* app/composite/gimp-composite-altivec-installer.c
* app/composite/gimp-composite-sse.[ch]
* app/composite/gimp-composite-sse-test.c
* app/composite/gimp-composite-sse-installer.c
* app/composite/gimp-composite-sse2.[ch]
* app/composite/gimp-composite-sse2-test.c
* app/composite/gimp-composite-sse2-installer.c
* app/composite/gimp-composite-vis.[ch]
* app/composite/gimp-composite-vis-test.c:
Regenerated sources via make-installer.py
2004-07-20 15:59:12 +00:00
Manish Singh 998ed9c73a Make the assembly PIC safe. Fixes #132999.
2004-01-31  Manish Singh  <yosh@gimp.org>

        * app/base/cpu-accel.c: Make the assembly PIC safe. Fixes #132999.

        * app/composite/Makefile.am
        * app/composite/gimp-composite-3dnow.c
        * app/composite/gimp-composite-mmx.c
        * app/composite/gimp-composite-sse.c
        * app/composite/gimp-composite-sse2.c: Disable code when compiling
        for PIC on ia32, since it'll barf things. These can be fixed later.

        * app/composite/gimp-composite-3dnow-test.c
        * app/composite/gimp-composite-mmx-installer.c
        * app/composite/gimp-composite-mmx-test.c
        * app/composite/gimp-composite-sse-installer.c
        * app/composite/gimp-composite-sse-test.c
        * app/composite/gimp-composite-sse2-installer.c
        * app/composite/gimp-composite-sse2-test.c: Regenerated.
2004-01-31 09:01:36 +00:00
Helvetix Victorinox 78215a79ff Added functions to print the pixels in their various formats.
* app/composite/gimp-composite-regression.c: Added functions to
  print the pixels in their various formats.

* app/composite/gimp-composite-{mmx,sse,sse2}.c: Removed the dodge
  optimisation because it has the same problem that the divide
  optimisation has.

* app/composite/make-install.py: When generating tests, use a
  pixel field of random values.
2003-10-25 06:39:00 +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 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 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