static void _backup_orc_blend_u8 (OrcExecutor * ex) { int i; int j; int n = ex->n; int m = ex->params[ORC_VAR_A1]; orc_int8 var0; orc_int8 *ptr0; orc_int8 var4; const orc_int8 *ptr4; const orc_int8 var16 = 8; const int var24 = ex->params[24]; orc_int16 var32; orc_int16 var33; orc_int16 var34; orc_int16 var35; orc_int16 var36; orc_int16 var37; orc_int16 var38; for (j = 0; j < m; j++) { ptr0 = ORC_PTR_OFFSET (ex->arrays[0], ex->params[0] * j); ptr4 = ORC_PTR_OFFSET (ex->arrays[4], ex->params[4] * j); for (i = 0; i < n; i++) { var0 = *ptr0; var4 = *ptr4; ptr4++; /* 0: convubw */ var32 = (orc_uint8) var0; /* 1: convubw */ var33 = (orc_uint8) var4; /* 2: subw */ var34 = var33 - var32; /* 3: mullw */ var35 = (var34 * var24) & 0xffff; /* 4: shlw */ var36 = var32 << var16; /* 5: addw */ var37 = var36 + var35; /* 6: shruw */ var38 = ((orc_uint16) var37) >> var16; /* 7: convsuswb */ var0 = ORC_CLAMP_UB (var38); *ptr0 = var0; ptr0++; } } }
void orc_blend_u8 (guint8 * d1, int d1_stride, const guint8 * s1, int s1_stride, int p1, int n, int m) { int i; int j; orc_int8 var0; orc_int8 *ptr0; orc_int8 var4; const orc_int8 *ptr4; const orc_int8 var16 = 8; const int var24 = p1; orc_int16 var32; orc_int16 var33; orc_int16 var34; orc_int16 var35; orc_int16 var36; orc_int16 var37; orc_int16 var38; for (j = 0; j < m; j++) { ptr0 = ORC_PTR_OFFSET (d1, d1_stride * j); ptr4 = ORC_PTR_OFFSET (s1, s1_stride * j); for (i = 0; i < n; i++) { var0 = *ptr0; var4 = *ptr4; ptr4++; /* 0: convubw */ var32 = (orc_uint8) var0; /* 1: convubw */ var33 = (orc_uint8) var4; /* 2: subw */ var34 = var33 - var32; /* 3: mullw */ var35 = (var34 * var24) & 0xffff; /* 4: shlw */ var36 = var32 << var16; /* 5: addw */ var37 = var36 + var35; /* 6: shruw */ var38 = ((orc_uint16) var37) >> var16; /* 7: convsuswb */ var0 = ORC_CLAMP_UB (var38); *ptr0 = var0; ptr0++; } } }
void deinterlace_line_vfir (guint8 * d1, const guint8 * s1, const guint8 * s2, const guint8 * s3, const guint8 * s4, const guint8 * s5, int n) { int i; orc_int8 *ORC_RESTRICT ptr0; const orc_int8 *ORC_RESTRICT ptr4; const orc_int8 *ORC_RESTRICT ptr5; const orc_int8 *ORC_RESTRICT ptr6; const orc_int8 *ORC_RESTRICT ptr7; const orc_int8 *ORC_RESTRICT ptr8; orc_int8 var35; orc_int8 var36; orc_int8 var37; orc_int8 var38; orc_int8 var39; orc_union16 var40; orc_int8 var41; orc_union16 var42; orc_union16 var43; orc_union16 var44; orc_union16 var45; orc_union16 var46; orc_union16 var47; orc_union16 var48; orc_union16 var49; orc_union16 var50; orc_union16 var51; orc_union16 var52; orc_union16 var53; orc_union16 var54; ptr0 = (orc_int8 *) d1; ptr4 = (orc_int8 *) s1; ptr5 = (orc_int8 *) s2; ptr6 = (orc_int8 *) s3; ptr7 = (orc_int8 *) s4; ptr8 = (orc_int8 *) s5; /* 16: loadpw */ var40.i = 0x00000004; /* 4 or 1.97626e-323f */ for (i = 0; i < n; i++) { /* 0: loadb */ var35 = ptr4[i]; /* 1: convubw */ var42.i = (orc_uint8) var35; /* 2: loadb */ var36 = ptr8[i]; /* 3: convubw */ var43.i = (orc_uint8) var36; /* 4: addw */ var44.i = var42.i + var43.i; /* 5: loadb */ var37 = ptr5[i]; /* 6: convubw */ var45.i = (orc_uint8) var37; /* 7: loadb */ var38 = ptr7[i]; /* 8: convubw */ var46.i = (orc_uint8) var38; /* 9: addw */ var47.i = var45.i + var46.i; /* 10: shlw */ var48.i = var47.i << 2; /* 11: loadb */ var39 = ptr6[i]; /* 12: convubw */ var49.i = (orc_uint8) var39; /* 13: shlw */ var50.i = var49.i << 1; /* 14: subw */ var51.i = var48.i - var44.i; /* 15: addw */ var52.i = var51.i + var50.i; /* 17: addw */ var53.i = var52.i + var40.i; /* 18: shrsw */ var54.i = var53.i >> 3; /* 19: convsuswb */ var41 = ORC_CLAMP_UB (var54.i); /* 20: storeb */ ptr0[i] = var41; } }