X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Ftest%2Fmax.c;h=4ef574958460ce9e1a3344d663278df1fd963e82;hb=4032a5c080d6801aacbc352b650f8ca28edf0248;hp=a17d8c8d5615a2a19cd5005aa2ffde8e8885a583;hpb=e4691fe2e5046a9b2ae912e23e92ddcdcd2bb6e9;p=libfirm diff --git a/ir/be/test/max.c b/ir/be/test/max.c index a17d8c8d5..4ef574958 100644 --- a/ir/be/test/max.c +++ b/ir/be/test/max.c @@ -1,12 +1,25 @@ -void dequant_h263_inter_c( short * data, - const short * coeff, - const unsigned int quant) -{ +#include +#include + +#define MAX (1 << 10) +#define TRUNC 0xff +#define MAX_SHOW TRUNC + +void dump_field(short *field, int size, const char *name) { + int i; + printf("======== %s : START ========\n", name); + for(i = 0; i < size; i++){ + printf("data[%i] = %i\n", i, field[i]); + } + printf("======== %s : END ========\n", name); +} + +void dequant_h263_inter_c(short *data, const short *coeff, const unsigned int quant) { const unsigned short quant_m_2 = quant << 1; const unsigned short quant_add = (quant & 1 ? quant : quant - 1); int i; - for (i = 0; i < 64; i++) { + for (i = 0; i < MAX; i++) { short acLevel = coeff[i]; if (acLevel == 0) { @@ -21,23 +34,30 @@ void dequant_h263_inter_c( short * data, } } -#define MAX 65536 - -int main(){ +int main(int argc, char **argv){ short cur[MAX]; short ref[MAX]; - int numofruns = 10; + int numofruns = 30; int i,ii; - for (i=0;i < numofruns; i++){ + + if(argc > 1) + numofruns = atoi(argv[1]); + + for (i = 0; i < numofruns; i++){ /* Reset cache. Alles andere ist unrealistisch. */ - for(ii = 0; ii