app/composite/gimp-composite-mmx.c app/composite/gimp-composite-sse2.c

2007-05-25  Sven Neumann  <sven@gimp.org>

	* app/composite/gimp-composite-mmx.c
	* app/composite/gimp-composite-sse2.c
	* app/composite/gimp-composite-regression.c: minor code cleanup.

svn path=/trunk/; revision=22616
This commit is contained in:
Sven Neumann 2007-05-25 12:45:32 +00:00 committed by Sven Neumann
parent 19e899c504
commit 5a8bc70c98
4 changed files with 55 additions and 56 deletions

View File

@ -1,3 +1,9 @@
2007-05-25 Sven Neumann <sven@gimp.org>
* app/composite/gimp-composite-mmx.c
* app/composite/gimp-composite-sse2.c
* app/composite/gimp-composite-regression.c: minor code cleanup.
2007-05-25 Sven Neumann <sven@gimp.org>
* app/composite/gimp-composite-sse-test.c

View File

@ -28,8 +28,6 @@
#include "config.h"
#include <stdio.h>
#include <glib-object.h>
#include "base/base-types.h"
@ -50,13 +48,13 @@ static void
debug_display_mmx(void)
{
#define mask32(x) ((x)& (unsigned long long) 0xFFFFFFFF)
#define print64(reg) { unsigned long long reg; asm("movq %%" #reg ",%0" : "=m" (reg)); printf(#reg"=%08llx %08llx", mask32(reg>>32), mask32(reg)); }
printf("--------------------------------------------\n");
print64(mm0); printf(" "); print64(mm1); printf("\n");
print64(mm2); printf(" "); print64(mm3); printf("\n");
print64(mm4); printf(" "); print64(mm5); printf("\n");
print64(mm6); printf(" "); print64(mm7); printf("\n");
printf("--------------------------------------------\n");
#define print64(reg) { unsigned long long reg; asm("movq %%" #reg ",%0" : "=m" (reg)); g_print(#reg"=%08llx %08llx", mask32(reg>>32), mask32(reg)); }
g_print("--------------------------------------------\n");
print64(mm0); g_print(" "); print64(mm1); g_print("\n");
print64(mm2); g_print(" "); print64(mm3); g_print("\n");
print64(mm4); g_print(" "); print64(mm5); g_print("\n");
print64(mm6); g_print(" "); print64(mm7); g_print("\n");
g_print("--------------------------------------------\n");
}
#endif

View File

@ -21,7 +21,6 @@
#include "config.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@ -106,7 +105,7 @@ gimp_composite_regression_print_vector_v8 (gimp_v8_t v[], unsigned int n_pixels)
for (i = 0; i < n_pixels; i++)
{
printf ("#%02x\n", v[i].v);
g_print ("#%02x\n", v[i].v);
}
}
@ -124,7 +123,7 @@ gimp_composite_regression_print_vector_va8 (gimp_va8_t v[], unsigned int n_pixel
for (i = 0; i < n_pixels; i++)
{
printf ("#%02x,%02X\n", v[i].v, v[i].a);
g_print ("#%02x,%02X\n", v[i].v, v[i].a);
}
}
@ -142,7 +141,7 @@ gimp_composite_regression_print_vector_rgb8 (gimp_rgb8_t v[], unsigned int n_pix
for (i = 0; i < n_pixels; i++)
{
printf ("#%02x%02x%02x\n", v[i].r, v[i].g, v[i].b);
g_print ("#%02x%02x%02x\n", v[i].r, v[i].g, v[i].b);
}
}
@ -160,7 +159,7 @@ gimp_composite_regression_print_vector_rgba8 (gimp_rgba8_t v[], unsigned int n_p
for (i = 0; i < n_pixels; i++)
{
printf ("#%02x%02x%02x,%02X\n", v[i].r, v[i].g, v[i].b, v[i].a);
g_print ("#%02x%02x%02x,%02X\n", v[i].r, v[i].g, v[i].b, v[i].a);
}
}
@ -173,8 +172,7 @@ gimp_composite_regression_print_vector_rgba8 (gimp_rgba8_t v[], unsigned int n_p
void
gimp_composite_regression_print_rgba8 (gimp_rgba8_t *rgba8)
{
printf ("#%02x%02x%02x,%02X", rgba8->r, rgba8->g, rgba8->b, rgba8->a);
fflush (stdout);
g_print ("#%02x%02x%02x,%02X", rgba8->r, rgba8->g, rgba8->b, rgba8->a);
}
/**
@ -186,8 +184,7 @@ gimp_composite_regression_print_rgba8 (gimp_rgba8_t *rgba8)
void
gimp_composite_regression_print_va8 (gimp_va8_t *va8)
{
printf ("#%02x,%02X", va8->v, va8->a);
fflush (stdout);
g_print ("#%02x,%02X", va8->v, va8->a);
}
/**
@ -207,27 +204,27 @@ gimp_composite_regression_compare_contexts (char *operation, GimpCompositeContex
case GIMP_PIXELFORMAT_ANY:
case GIMP_PIXELFORMAT_N:
default:
printf("Bad pixelformat! %d\n", ctx1->pixelformat_A);
g_print("Bad pixelformat! %d\n", ctx1->pixelformat_A);
exit(1);
break;
case GIMP_PIXELFORMAT_V8:
if (memcmp(ctx1->D, ctx2->D, ctx1->n_pixels * gimp_composite_pixel_bpp[ctx1->pixelformat_D])) {
printf("%s: failed to agree\n", operation);
g_print("%s: failed to agree\n", operation);
return (1);
}
break;
case GIMP_PIXELFORMAT_VA8:
if (memcmp(ctx1->D, ctx2->D, ctx1->n_pixels * gimp_composite_pixel_bpp[ctx1->pixelformat_D])) {
printf("%s: failed to agree\n", operation);
g_print("%s: failed to agree\n", operation);
return (1);
}
break;
case GIMP_PIXELFORMAT_RGB8:
if (memcmp(ctx1->D, ctx2->D, ctx1->n_pixels * gimp_composite_pixel_bpp[ctx1->pixelformat_D])) {
printf("%s: failed to agree\n", operation);
g_print("%s: failed to agree\n", operation);
return (1);
}
break;
@ -239,28 +236,28 @@ gimp_composite_regression_compare_contexts (char *operation, GimpCompositeContex
#if GIMP_COMPOSITE_16BIT
case GIMP_PIXELFORMAT_V16:
if (memcmp(ctx1->D, ctx2->D, ctx1->n_pixels * gimp_composite_pixel_bpp[ctx1->pixelformat_D])) {
printf("%s: failed to agree\n", operation);
g_print("%s: failed to agree\n", operation);
return (1);
}
break;
case GIMP_PIXELFORMAT_VA16:
if (memcmp(ctx1->D, ctx2->D, ctx1->n_pixels * gimp_composite_pixel_bpp[ctx1->pixelformat_D])) {
printf("%s: failed to agree\n", operation);
g_print("%s: failed to agree\n", operation);
return (1);
}
break;
case GIMP_PIXELFORMAT_RGB16:
if (memcmp(ctx1->D, ctx2->D, ctx1->n_pixels * gimp_composite_pixel_bpp[ctx1->pixelformat_D])) {
printf("%s: failed to agree\n", operation);
g_print("%s: failed to agree\n", operation);
return (1);
}
break;
case GIMP_PIXELFORMAT_RGBA16:
if (memcmp(ctx1->D, ctx2->D, ctx1->n_pixels * gimp_composite_pixel_bpp[ctx1->pixelformat_D])) {
printf("%s: failed to agree\n", operation);
g_print("%s: failed to agree\n", operation);
return (1);
}
break;
@ -269,28 +266,28 @@ gimp_composite_regression_compare_contexts (char *operation, GimpCompositeContex
#if GIMP_COMPOSITE_32BIT
case GIMP_PIXELFORMAT_V32:
if (memcmp(ctx1->D, ctx2->D, ctx1->n_pixels * gimp_composite_pixel_bpp[ctx1->pixelformat_D])) {
printf("%s: failed to agree\n", operation);
g_print("%s: failed to agree\n", operation);
return (1);
}
break;
case GIMP_PIXELFORMAT_VA32:
if (memcmp(ctx1->D, ctx2->D, ctx1->n_pixels * gimp_composite_pixel_bpp[ctx1->pixelformat_D])) {
printf("%s: failed to agree\n", operation);
g_print("%s: failed to agree\n", operation);
return (1);
}
break;
case GIMP_PIXELFORMAT_RGB32:
if (memcmp(ctx1->D, ctx2->D, ctx1->n_pixels * gimp_composite_pixel_bpp[ctx1->pixelformat_D])) {
printf("%s: failed to agree\n", operation);
g_print("%s: failed to agree\n", operation);
return (1);
}
break;
case GIMP_PIXELFORMAT_RGBA32:
if (memcmp(ctx1->D, ctx2->D, ctx1->n_pixels * gimp_composite_pixel_bpp[ctx1->pixelformat_D])) {
printf("%s: failed to agree\n", operation);
g_print("%s: failed to agree\n", operation);
return (1);
}
break;
@ -333,15 +330,15 @@ gimp_composite_regression_comp_rgba8 (char *str, gimp_rgba8_t *rgba8A, gimp_rgba
if (expected[i].a != actual[i].a) { failed = 1; }
if (failed) {
fail_count++;
printf("%s %8lu A=", str, i); gimp_composite_regression_print_rgba8(&rgba8A[i]);
g_print("%s %8lu A=", str, i); gimp_composite_regression_print_rgba8(&rgba8A[i]);
if (rgba8B != (gimp_rgba8_t *) 0) {
printf(" B="); gimp_composite_regression_print_rgba8(&rgba8B[i]);
g_print(" B="); gimp_composite_regression_print_rgba8(&rgba8B[i]);
}
printf(" expected=");
g_print(" expected=");
gimp_composite_regression_print_rgba8(&expected[i]);
printf(" actual=");
g_print(" actual=");
gimp_composite_regression_print_rgba8(&actual[i]);
printf("\n");
g_print("\n");
}
if (fail_count > 5)
break;
@ -379,14 +376,14 @@ gimp_composite_regression_comp_va8 (char *str, gimp_va8_t *va8A, gimp_va8_t *va8
if (expected[i].a != actual[i].a) { failed = 1; }
if (failed) {
fail_count++;
printf("%s %8d A=", str, i); gimp_composite_regression_print_va8(&va8A[i]);
if (va8B != (gimp_va8_t *) 0) { printf(" B="); gimp_composite_regression_print_va8(&va8B[i]); }
printf(" ");
printf("expected=");
g_print("%s %8d A=", str, i); gimp_composite_regression_print_va8(&va8A[i]);
if (va8B != (gimp_va8_t *) 0) { g_print(" B="); gimp_composite_regression_print_va8(&va8B[i]); }
g_print(" ");
g_print("expected=");
gimp_composite_regression_print_va8(&expected[i]);
printf(" actual=");
g_print(" actual=");
gimp_composite_regression_print_va8(&actual[i]);
printf("\n");
g_print("\n");
}
if (fail_count > 5)
break;
@ -408,18 +405,18 @@ gimp_composite_regression_dump_rgba8 (char *str, gimp_rgba8_t *rgba, gulong n_pi
{
int i;
printf("%s\n", str);
g_print("%s\n", str);
for (i = 0; i < n_pixels; i++) {
printf("%5d: ", i);
g_print("%5d: ", i);
gimp_composite_regression_print_rgba8(&rgba[i]);
printf("\n");
g_print("\n");
}
}
#define tv_to_secs(tv) ((double) ((tv).tv_sec) + (double) ((tv).tv_usec / 1000000.0))
#define timer_report(name,t1,t2) printf("%-32s %10.4f %10.4f %10.4f%c\n", name, tv_to_secs(t1), tv_to_secs(t2), tv_to_secs(t1)/tv_to_secs(t2), tv_to_secs(t1)/tv_to_secs(t2) > 1.0 ? ' ' : '*');
#define timer_report(name,t1,t2) g_print("%-32s %10.4f %10.4f %10.4f%c\n", name, tv_to_secs(t1), tv_to_secs(t2), tv_to_secs(t1)/tv_to_secs(t2), tv_to_secs(t1)/tv_to_secs(t2) > 1.0 ? ' ' : '*');
/**
* gimp_composite_regression_timer_report:
@ -432,7 +429,7 @@ gimp_composite_regression_dump_rgba8 (char *str, gimp_rgba8_t *rgba, gulong n_pi
void
gimp_composite_regression_timer_report (char *name, double t1, double t2)
{
printf ("%-32s %10.4f %10.4f %10.4f%c\n", name, t1, t2, t1/t2, t1/t2 > 1.0 ? ' ' : '*');
g_print ("%-32s %10.4f %10.4f %10.4f%c\n", name, t1, t2, t1/t2, t1/t2 > 1.0 ? ' ' : '*');
}
/**

View File

@ -21,8 +21,6 @@
#include "config.h"
#include <stdio.h>
#include <glib-object.h>
#include "base/base-types.h"
@ -70,15 +68,15 @@ debug_display_sse (void)
#define print128(reg) { \
unsigned long long reg[2]; \
asm("movdqu %%" #reg ",%0" : "=m" (reg)); \
printf(#reg"=%08llx %08llx", mask32(reg[0]>>32), mask32(reg[0])); \
printf(" %08llx %08llx", mask32(reg[1]>>32), mask32(reg[1])); \
g_print(#reg"=%08llx %08llx", mask32(reg[0]>>32), mask32(reg[0])); \
g_print(" %08llx %08llx", mask32(reg[1]>>32), mask32(reg[1])); \
}
printf("--------------------------------------------\n");
print128(xmm0); printf(" "); print128(xmm1); printf("\n");
print128(xmm2); printf(" "); print128(xmm3); printf("\n");
print128(xmm4); printf(" "); print128(xmm5); printf("\n");
print128(xmm6); printf(" "); print128(xmm7); printf("\n");
printf("--------------------------------------------\n");
g_print("--------------------------------------------\n");
print128(xmm0); g_print(" "); print128(xmm1); g_print("\n");
print128(xmm2); g_print(" "); print128(xmm3); g_print("\n");
print128(xmm4); g_print(" "); print128(xmm5); g_print("\n");
print128(xmm6); g_print(" "); print128(xmm7); g_print("\n");
g_print("--------------------------------------------\n");
}
#endif