> > It's hardcoded at compile-time, and I don't think it was changed in > years... > > Signed-off-by: Christophe Fergeau <cfergeau@xxxxxxxxxx> > --- > common/quic.c | 3 --- > common/quic_rgb_tmpl.c | 55 > ++++++++------------------------------------------ > common/quic_tmpl.c | 55 > ++++++++------------------------------------------ > 3 files changed, 16 insertions(+), 97 deletions(-) > > diff --git a/common/quic.c b/common/quic.c > index b753d07..309ee75 100644 > --- a/common/quic.c > +++ b/common/quic.c > @@ -32,9 +32,6 @@ > #define RLE > #define RLE_STAT > #define PRED_1 > -//#define RLE_PRED_1 > -#define RLE_PRED_2 > -//#define RLE_PRED_3 > #define QUIC_RGB > > /* ASCII "QUIC" */ > diff --git a/common/quic_rgb_tmpl.c b/common/quic_rgb_tmpl.c > index 23dea39..cc3c045 100644 > --- a/common/quic_rgb_tmpl.c > +++ b/common/quic_rgb_tmpl.c > @@ -185,36 +185,15 @@ > correlate_row_b[index]); > > > -#ifdef RLE_PRED_1 > -#define RLE_PRED_1_IMP > \ > -if (SAME_PIXEL(&cur_row[i - 1], &prev_row[i])) { > \ > - if (run_index != i && SAME_PIXEL(&prev_row[i - 1], &prev_row[i]) && > \ > - i + 1 < end && SAME_PIXEL(&prev_row[i], > &prev_row[i + 1])) { \ > - goto do_run; > \ > - } > \ > -} > -#else > -#define RLE_PRED_1_IMP > -#endif > - > -#ifdef RLE_PRED_2 > -#define RLE_PRED_2_IMP > \ > +#ifdef RLE > +#define RLE_PRED_IMP > \ > if (SAME_PIXEL(&prev_row[i - 1], &prev_row[i])) { > \ > if (run_index != i && i > 2 && SAME_PIXEL(&cur_row[i - 1], &cur_row[i - > 2])) { \ > goto do_run; > \ > } > \ > } > #else > -#define RLE_PRED_2_IMP > -#endif > - > -#ifdef RLE_PRED_3 > -#define RLE_PRED_3_IMP > \ > -if (i > 1 && SAME_PIXEL(&cur_row[i - 1], &cur_row[i - 2]) && i != > run_index) { \ > - goto do_run; > \ > -} > -#else > -#define RLE_PRED_3_IMP > +#define RLE_PRED_IMP > #endif > > #ifdef COMPRESS_IMP > @@ -370,11 +349,7 @@ static void FNAME(compress_row_seg)(Encoder *encoder, > int i, > while (stopidx < end) { > for (; i <= stopidx; i++) { > unsigned int codeword, codewordlen; > -#ifdef RLE > - RLE_PRED_1_IMP; > - RLE_PRED_2_IMP; > - RLE_PRED_3_IMP; > -#endif > + RLE_PRED_IMP; > COMPRESS_ONE(r, i); > COMPRESS_ONE(g, i); > COMPRESS_ONE(b, i); > @@ -386,11 +361,7 @@ static void FNAME(compress_row_seg)(Encoder *encoder, > int i, > > for (; i < end; i++) { > unsigned int codeword, codewordlen; > -#ifdef RLE > - RLE_PRED_1_IMP; > - RLE_PRED_2_IMP; > - RLE_PRED_3_IMP; > -#endif > + RLE_PRED_IMP; > COMPRESS_ONE(r, i); > COMPRESS_ONE(g, i); > COMPRESS_ONE(b, i); > @@ -635,11 +606,7 @@ static void FNAME(uncompress_row_seg)(Encoder *encoder, > while (stopidx < end) { > for (; i <= stopidx; i++) { > unsigned int codewordlen; > -#ifdef RLE > - RLE_PRED_1_IMP; > - RLE_PRED_2_IMP; > - RLE_PRED_3_IMP; > -#endif > + RLE_PRED_IMP; > UNCOMPRESS_PIX_START(&cur_row[i]); > UNCOMPRESS_ONE(r); > UNCOMPRESS_ONE(g); > @@ -653,11 +620,7 @@ static void FNAME(uncompress_row_seg)(Encoder *encoder, > > for (; i < end; i++) { > unsigned int codewordlen; > -#ifdef RLE > - RLE_PRED_1_IMP; > - RLE_PRED_2_IMP; > - RLE_PRED_3_IMP; > -#endif > + RLE_PRED_IMP; > UNCOMPRESS_PIX_START(&cur_row[i]); > UNCOMPRESS_ONE(r); > UNCOMPRESS_ONE(g); > @@ -732,9 +695,7 @@ static void FNAME(uncompress_row)(Encoder *encoder, > #undef _PIXEL_B > #undef _PIXEL_C > #undef SAME_PIXEL > -#undef RLE_PRED_1_IMP > -#undef RLE_PRED_2_IMP > -#undef RLE_PRED_3_IMP > +#undef RLE_PRED_IMP > #undef UPDATE_MODEL > #undef DECORRELATE_0 > #undef DECORRELATE > diff --git a/common/quic_tmpl.c b/common/quic_tmpl.c > index 3c84791..d49a408 100644 > --- a/common/quic_tmpl.c > +++ b/common/quic_tmpl.c > @@ -50,36 +50,15 @@ > #define _PIXEL_B ((unsigned int)prev[0].a) > #define _PIXEL_C ((unsigned int)prev[-1].a) > > -#ifdef RLE_PRED_1 > -#define RLE_PRED_1_IMP > \ > -if (cur_row[i - 1].a == prev_row[i].a) { > \ > - if (run_index != i && prev_row[i - 1].a == prev_row[i].a && > \ > - i + 1 < end && prev_row[i].a == prev_row[i + 1].a) { > \ > - goto do_run; > \ > - } > \ > -} > -#else > -#define RLE_PRED_1_IMP > -#endif > - > -#ifdef RLE_PRED_2 > -#define RLE_PRED_2_IMP \ > +#ifdef RLE > +#define RLE_PRED_IMP \ > if (prev_row[i - 1].a == prev_row[i].a) { \ > if (run_index != i && i > 2 && cur_row[i - 1].a == cur_row[i - 2].a) { \ > goto do_run; \ > } \ > } > #else > -#define RLE_PRED_2_IMP > -#endif > - > -#ifdef RLE_PRED_3 > -#define RLE_PRED_3_IMP \ > -if (i > 1 && cur_row[i - 1].a == cur_row[i - 2].a && i != run_index) { \ > - goto do_run; \ > -} > -#else > -#define RLE_PRED_3_IMP > +#define RLE_PRED_IMP > #endif > > /* a */ > @@ -282,11 +261,7 @@ static void FNAME(compress_row_seg)(Encoder *encoder, > Channel *channel, int i, > while (stopidx < end) { > for (; i <= stopidx; i++) { > unsigned int codeword, codewordlen; > -#ifdef RLE > - RLE_PRED_1_IMP; > - RLE_PRED_2_IMP; > - RLE_PRED_3_IMP; > -#endif > + RLE_PRED_IMP; > decorrelate_drow[i] = FNAME(decorrelate)(&prev_row[i], > &cur_row[i], bpc_mask); > golomb_coding(decorrelate_drow[i], > find_bucket(channel, decorrelate_drow[i - > 1])->bestcode, &codeword, > @@ -301,11 +276,7 @@ static void FNAME(compress_row_seg)(Encoder *encoder, > Channel *channel, int i, > > for (; i < end; i++) { > unsigned int codeword, codewordlen; > -#ifdef RLE > - RLE_PRED_1_IMP; > - RLE_PRED_2_IMP; > - RLE_PRED_3_IMP; > -#endif > + RLE_PRED_IMP; > decorrelate_drow[i] = FNAME(decorrelate)(&prev_row[i], > &cur_row[i], bpc_mask); > golomb_coding(decorrelate_drow[i], find_bucket(channel, > decorrelate_drow[i > - 1])->bestcode, > @@ -523,11 +494,7 @@ static void FNAME(uncompress_row_seg)(Encoder *encoder, > Channel *channel, > > for (; i <= stopidx; i++) { > unsigned int codewordlen; > -#ifdef RLE > - RLE_PRED_1_IMP; > - RLE_PRED_2_IMP; > - RLE_PRED_3_IMP; > -#endif > + RLE_PRED_IMP; > pbucket = find_bucket(channel, correlate_row[i - 1]); > correlate_row[i] = (BYTE)golomb_decoding(pbucket->bestcode, > encoder->io_word, > &codewordlen); > @@ -542,11 +509,7 @@ static void FNAME(uncompress_row_seg)(Encoder *encoder, > Channel *channel, > > for (; i < end; i++) { > unsigned int codewordlen; > -#ifdef RLE > - RLE_PRED_1_IMP; > - RLE_PRED_2_IMP; > - RLE_PRED_3_IMP; > -#endif > + RLE_PRED_IMP; > correlate_row[i] = (BYTE)golomb_decoding(find_bucket(channel, > correlate_row[i > - > 1])->bestcode, > encoder->io_word, > &codewordlen); > @@ -623,9 +586,7 @@ static void FNAME(uncompress_row)(Encoder *encoder, > Channel *channel, > #undef _PIXEL_A > #undef _PIXEL_B > #undef _PIXEL_C > -#undef RLE_PRED_1_IMP > -#undef RLE_PRED_2_IMP > -#undef RLE_PRED_3_IMP > +#undef RLE_PRED_IMP > #undef golomb_coding > #undef golomb_decoding > #undef update_model Acked-by: Frediano Ziglio <fziglio@xxxxxxxxxx> Code compile to the same binary. Frediano _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel