Commit f24701b0 authored by Michael Niedermayer's avatar Michael Niedermayer

avcodec/prosumer: clean up loop end code in fill_elements()

Reviewed-by: 's avatarPaul B Mahol <onemda@gmail.com>
Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
parent 67472729
...@@ -280,36 +280,31 @@ static const uint32_t table[] = { ...@@ -280,36 +280,31 @@ static const uint32_t table[] = {
static void fill_elements(uint32_t idx, uint32_t shift, int size, uint32_t *e0, uint32_t *e1) static void fill_elements(uint32_t idx, uint32_t shift, int size, uint32_t *e0, uint32_t *e1)
{ {
uint32_t a = 1, b, g = 1, h = idx << (32 - shift); uint32_t b, h = idx << (32 - shift);
for (int i = 0; i < size; i++) { for (int i = 0; i < size; i++) {
if (!a || !g)
break;
b = 4 * (table[2 * i + 1] & 0xF); b = 4 * (table[2 * i + 1] & 0xF);
if (shift >= b && (h & (0xFFF00000u << (12 - b))) == (table[2 * i + 1] & 0xFFFF0000u)) { if (shift >= b && (h & (0xFFF00000u << (12 - b))) == (table[2 * i + 1] & 0xFFFF0000u)) {
if (table[2 * i] >> 8 == 0x80u) { if (table[2 * i] >> 8 == 0x80u) {
g = 0; return;
} else { } else {
a = 0;
*e1 = table[2 * i]; *e1 = table[2 * i];
*e0 = (*e0 & 0xFFFFFFu) | (((12 + b - shift) & 0xFFFFFFFCu | 0x40u) << 22); *e0 = (*e0 & 0xFFFFFFu) | (((12 + b - shift) & 0xFFFFFFFCu | 0x40u) << 22);
shift -= b; shift -= b;
h <<= b; h <<= b;
break;
} }
} }
} }
a = 1;
for (int i = 0; i < size; i++) { for (int i = 0; i < size; i++) {
if (!a || !g)
break;
b = 4 * (table[2 * i + 1] & 0xF); b = 4 * (table[2 * i + 1] & 0xF);
if (shift >= b && (h & (0xFFF00000u << (12 - b))) == (table[2 * i + 1] & 0xFFFF0000u)) { if (shift >= b && (h & (0xFFF00000u << (12 - b))) == (table[2 * i + 1] & 0xFFFF0000u)) {
if ((table[2 * i] >> 8) == 0x80u) { if (table[2 * i] >> 8 == 0x80u) {
g = 0; return;
} else { } else {
a = 0;
*e1 |= table[2 * i] << 16; *e1 |= table[2 * i] << 16;
*e0 = (*e0 & 0xFFFFFFu) | (((12 + b - shift) & 0xFFFFFFFCu | 0x80u) << 22); *e0 = (*e0 & 0xFFFFFFu) | (((12 + b - shift) & 0xFFFFFFFCu | 0x80u) << 22);
break;
} }
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment