mirror of
https://gitlab.gnome.org/GNOME/gimp
synced 2024-10-23 13:01:42 +00:00
bac9cfa083
* 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.
54 lines
2.7 KiB
C
54 lines
2.7 KiB
C
#ifndef gimp_composite_sse_h
|
|
#define gimp_composite_sse_h
|
|
|
|
extern gboolean gimp_composite_sse_init (void);
|
|
|
|
/*
|
|
* The function gimp_composite_*_install() is defined in the code generated by make-install.py
|
|
* I hate to create a .h file just for that declaration, so I do it here (for now).
|
|
*/
|
|
extern gboolean gimp_composite_sse_install (void);
|
|
|
|
#if !defined(__INTEL_COMPILER) || defined(USE_INTEL_COMPILER_ANYWAY)
|
|
#if defined(USE_SSE)
|
|
#if defined(ARCH_X86)
|
|
#if __GNUC__ >= 3
|
|
#if defined(ARCH_X86_64) || !defined(PIC)
|
|
#define COMPILE_SSE_IS_OKAY
|
|
#endif /* defined(ARCH_X86_64) || !defined(PIC) */
|
|
#endif /* __GNUC__ >= 3 */
|
|
#endif /* */
|
|
#endif /* */
|
|
#endif /* */
|
|
|
|
#ifdef COMPILE_SSE_IS_OKAY
|
|
/*
|
|
*
|
|
*/
|
|
extern void gimp_composite_addition_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_burn_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_coloronly_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_darken_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_difference_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_dissolve_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_divide_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_dodge_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_grain_extract_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_grain_merge_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_hardlight_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_hueonly_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_lighten_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_multiply_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_overlay_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_replace_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_saturationonly_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_screen_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_softlight_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_subtract_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_swap_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_valueonly_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
extern void gimp_composite_scale_rgba8_rgba8_rgba8_sse (GimpCompositeContext *ctx);
|
|
|
|
#endif /* COMPILE_SSE_IS_OKAY */
|
|
#endif
|