1. 23 Oct, 2003 1 commit
    • Helvetix Victorinox's avatar
      Incorrectly reported the inverse of whether not the 3dNow instruction set · a7476d12
      Helvetix Victorinox authored
      * app/composite/gimp-composite-3dnow.c:
        Incorrectly reported the inverse of whether not the 3dNow instruction set is
      	supported by the current CPU.
      * app/composite/gimp-composite-{mmx,sse}.c:
        Removed linkage of gimp_composite_divide_*.  Something is
        inexplicably broken, and this will get people working again
        while I debug.  This should close bug #125101.
  2. 06 Oct, 2003 1 commit
    • Helvetix Victorinox's avatar
      migrated to new (trimmer) code and removed dead code. Some beautification · 7752bf9e
      Helvetix Victorinox authored
      * 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:
      * 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
  3. 01 Oct, 2003 1 commit
    • Sven Neumann's avatar
      app/composite/gimp-composite-altivec.c app/composite/gimp-composite-mmx.c · 768b34b1
      Sven Neumann authored
      2003-10-01  Sven Neumann  <sven@gimp.org>
      	* 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: moved includes out of the
      	#if __GNUC__ >= 3 to make the code compile on other compilers.
      	* app/composite/gimp-composite-3dnow.[ch]: added the same stubs here
      	for symmetry.
  4. 27 Sep, 2003 1 commit
    • Helvetix Victorinox's avatar
      app/composite/gimp-composite-altivec-test.c · 545c1985
      Helvetix Victorinox authored
      * 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:
      * 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.
  5. 20 Sep, 2003 1 commit
  6. 17 Sep, 2003 1 commit
    • Helvetix Victorinox's avatar
      Regenerated. · 9c64fde3
      Helvetix Victorinox authored
      * app/composite/gimp-composite-{mmx,sse,sse2,altivec,vis}.c: Regenerated.
      * app/composite/gimp-composite-regression.[ch]: Ensure all ints
        are now unsigned longs.
      * app/composite/gimp-composite-sse2.c (gimp_composite_addition_rgba8_rgba8_rgba8_sse2):
        Enclosed the troublesome (rather dense) asm construct in
        __OPTIMIZE__ in which case the compiler can successfully
        allocate enough registers to load up the asm()
  7. 16 Sep, 2003 2 commits
    • Sven Neumann's avatar
      app/composite/gimp-composite-generic.c app/composite/gimp-composite-mmx.c · 555038de
      Sven Neumann authored
      2003-09-16  Sven Neumann  <sven@gimp.org>
      	* app/composite/gimp-composite-generic.c
      	* app/composite/gimp-composite-mmx.c
      	* app/composite/gimp-composite-sse.c
      	* app/composite/gimp-composite-sse2.c
      	* app/config/gimpconfig-deserialize.c
      	* app/config/gimpconfig-path.c
      	* app/config/gimpconfig-serialize.c
      	* app/core/cpercep.c
      	* app/core/gimpunit.c
      	* app/gui/palette-import-dialog.c
      	* app/gui/plug-in-menus.c
      	* app/paint-funcs/paint-funcs-generic.h
      	* app/paint-funcs/paint-funcs.c
      	* app/pdb/procedural_db.c
      	* app/text/gimptextlayout-render.c
      	* app/tools/gimpfuzzyselecttool.c
      	* app/widgets/gimpcursor.c: some trivial code cleanups: avoid
      	casts that discard const qualifiers and avoid useless comparisons
      	on unsigned variables. Also reordered qualifiers in function
      	declarations (static comes before const).
    • Helvetix Victorinox's avatar
      gimp-composite-mmx-{test,installer}.c · 930d2615
      Helvetix Victorinox authored
      * 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
      * gimp-composite-x86.h: added
      * gimp-composite-{sse,mmx,sse2}.[ch]: Tightening declarations of clobbered registers.
  8. 06 Sep, 2003 1 commit
  9. 02 Sep, 2003 1 commit
  10. 01 Sep, 2003 2 commits
    • Helvetix Victorinox's avatar
      app/composite/gimp-composite-mmx.c Replaced all memory references in asm() · 7fdddadb
      Helvetix Victorinox authored
      * app/composite/gimp-composite-mmx.c
      * app/composite/gimp-composite-sse.c: Replaced all memory
        references in asm() constructs to references to "input" parameters
        to the asm().  This should take care of any name mangling issues
        (see bug #120893)
        Beautified more code to conform to the gimp style guidelines.
        No longer doing pointer math in assembly.  This should ease some
        of the issues of compiling on 64bit machines.
      * app/composite/gimp-composite-sse-installer.c
      * app/composite/gimp-composite-sse-test.c: Removed reference to
        gimp_composite_overlay_* because this code is suspect.
    • Tor Lillqvist's avatar
      Update. · cd31cdd7
      Tor Lillqvist authored
      2003-09-01  Tor Lillqvist  <tml@iki.fi>
      	* README.win32: Update.
      	* app/composite/gimp-composite-mmx.c: For some reason the gcc&gas
      	combination used on Win32 wants identifiers prefixed with
      	underscores in the asm sequences.
      	* plug-ins/common/ps.c (ps_open): [Win32] Don't write the gs
      	executable name into the indirect command line file. Do write the
      	quoted form of the filename to it.
      	(my_shell_quote): New funcion. Use instead of g_shell_quote() on
      	Windows, as g_shell_quote() always uses single quotes, which don't
      	mean anything to the Windows shell (or C runtime startup
      	code). (This might be argued to be a bug in GLib, maybe
      	g_shell_quote should behave differently accoring to platform.)
      	* etc/gimprc.win32: Remove, generate with gimpconfig-dump.
      	* */makefile.mingw.in: Remove, unmaintained.
  11. 20 Aug, 2003 1 commit
    • Helvetix Victorinox's avatar
      Regenerated installers and testers. · 9d405b60
      Helvetix Victorinox authored
      * 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.
  12. 18 Aug, 2003 1 commit
  13. 17 Aug, 2003 1 commit
    • Helvetix Victorinox's avatar
      regnerated · c86d82f0
      Helvetix Victorinox authored
      * app/composite/gimp-composite-{mmx,sse,altivec,vis}-{installer,test}.c:
      * app/composite/gimp-composite-sse.c
        (gimp_composite_overlay_rgba8_rgba8_rgba8_sse): fixed (rewrote)
      * app/composite/make-installer.py:
        command line option --iterations to set the number of iterations for a test.
        command line option --n_ixels to set the number of pixels for a test.
      * app/composite/gimp-composite-mmx.c
        (gimp_composite_grain_merge_rgba8_rgba8_rgba8_mmx): fixed (rewrote)
        (gimp_composite_overlay_rgba8_rgba8_rgba8_mmx): fixed (rewrote)
      	  new testing shows it to be broken (temporarily removed from use)
  14. 14 Aug, 2003 1 commit
    • Helvetix Victorinox's avatar
      composite/ modularisation of the automatic compositing function "wiring" · 33e22c8f
      Helvetix Victorinox authored
      * 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
      * app/paint-funcs/paint-funcs.c: Check gimp_composite_options.use
        to see if we should use the new code or the old code.
  15. 29 Jul, 2003 1 commit
    • Helvetix Victorinox's avatar
      Made the explicit target "regenerate" to regenerate the source files using · 0aad627d
      Helvetix Victorinox authored
      * app/composite/Makefile.am:
      Made the explicit target "regenerate" to regenerate the source
      files using the Python meta-generator.
      * app/composite/gimp-composite-mmx.c
      * app/composite/gimp-composite-mmx.h
      * app/composite/gimp-composite-sse.c
      * app/composite/gimp-composite-sse.h:
      Now bounded by the conditional "#if __GNUC__ >= 3".  This is a
      coarse fix to enable app/composite to build on a wider variety of
      platforms.  Ideally, this will be refined to encompass different
      versions of the compiler(s) supporting inline assembly code.
  16. 24 Jul, 2003 1 commit
    • Helvetix Victorinox's avatar
      regenerated new code taking advantage of simplified function prototypes. · d3fc41f0
      Helvetix Victorinox authored
      * 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
      * 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.
  17. 21 Jul, 2003 1 commit
    • Helvetix Victorinox's avatar
      big code cleanup. · b31ae733
      Helvetix Victorinox authored
      * 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.
  18. 18 Jul, 2003 1 commit
    • Helvetix Victorinox's avatar
      app/composite/gimp-composite.[ch], · 9e3bd947
      Helvetix Victorinox authored
      * 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
      % GIMP_COMPOSITE=1 gimp-1.3
  19. 15 Jul, 2003 1 commit
    • Helvetix Victorinox's avatar
      app/composite/gimp-composite-generic.h: Use · f5e839a3
      Helvetix Victorinox authored
      GimpCompositeFunction as the type for all compositing functions.
      app/composite/Makefile.am: gimp-composite.c is no longer
      dependant upon gimp-composite-dispatch.c
      app/composite/make-gimp-composite-dispatch.py: Fixed type
      app/composite/test-composite.c: Fixed bit-rot in not keeping up
      with the changes in the surrounding .h files.
      app/composite/gimp-composite-mmx.c: Incipient cleanup in marking
      some asm constructs as volatile.
  20. 09 Jul, 2003 2 commits
    • Sven Neumann's avatar
      only compile this code if USE_MMX is defined. · e3b560f0
      Sven Neumann authored
      2003-07-10  Sven Neumann  <sven@gimp.org>
      	* app/composite/gimp-composite-mmx.c: only compile this code if
      	USE_MMX is defined.
    • Sven Neumann's avatar
      removed ... ... and readded under a new name. · c366e257
      Sven Neumann authored
      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 ...
  21. 08 Jul, 2003 2 commits