Update disted generated orc backup files
authorTim-Philipp Müller <tim@centricular.com>
Sat, 4 Jul 2020 11:13:14 +0000 (12:13 +0100)
committerTim-Philipp Müller <tim@centricular.com>
Sat, 4 Jul 2020 13:01:56 +0000 (14:01 +0100)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/734>

gst/compositor/compositororc-dist.c

index a931b4d..b57e75d 100644 (file)
@@ -957,82 +957,79 @@ compositor_orc_source_argb (guint8 * ORC_RESTRICT d1, int d1_stride,
   orc_union32 var40;
 #endif
   orc_union32 var41;
-  orc_union32 var42;
-  orc_union16 var43;
-  orc_int8 var44;
-  orc_union32 var45;
+  orc_union16 var42;
+  orc_int8 var43;
+  orc_union32 var44;
+  orc_union64 var45;
   orc_union64 var46;
   orc_union64 var47;
-  orc_union64 var48;
+  orc_union32 var48;
   orc_union32 var49;
   orc_union32 var50;
   orc_union32 var51;
-  orc_union32 var52;
 
   for (j = 0; j < m; j++) {
     ptr0 = ORC_PTR_OFFSET (d1, d1_stride * j);
     ptr4 = ORC_PTR_OFFSET (s1, s1_stride * j);
 
-    /* 6: loadpw */
+    /* 5: loadpw */
     var38.x4[0] = p1;
     var38.x4[1] = p1;
     var38.x4[2] = p1;
     var38.x4[3] = p1;
-    /* 9: loadpl */
+    /* 8: loadpl */
     var39.i = 0xffffff00;       /* -256 or 2.122e-314f */
-    /* 12: loadpl */
+    /* 11: loadpl */
     var40.i = 0x000000ff;       /* 255 or 1.25987e-321f */
 
     for (i = 0; i < n; i++) {
       /* 0: loadl */
       var41 = ptr4[i];
-      /* 1: shrul */
-      var42.i = ((orc_uint32) var41.i) >> 24;
-      /* 2: convlw */
-      var43.i = var42.i;
-      /* 3: convwb */
-      var44 = var43.i;
-      /* 4: splatbl */
-      var45.i =
-          ((((orc_uint32) var44) & 0xff) << 24) | ((((orc_uint32) var44) & 0xff)
-          << 16) | ((((orc_uint32) var44) & 0xff) << 8) | (((orc_uint32) var44)
+      /* 1: convlw */
+      var42.i = var41.i;
+      /* 2: convwb */
+      var43 = var42.i;
+      /* 3: splatbl */
+      var44.i =
+          ((((orc_uint32) var43) & 0xff) << 24) | ((((orc_uint32) var43) & 0xff)
+          << 16) | ((((orc_uint32) var43) & 0xff) << 8) | (((orc_uint32) var43)
           & 0xff);
-      /* 5: convubw */
-      var46.x4[0] = (orc_uint8) var45.x4[0];
-      var46.x4[1] = (orc_uint8) var45.x4[1];
-      var46.x4[2] = (orc_uint8) var45.x4[2];
-      var46.x4[3] = (orc_uint8) var45.x4[3];
-      /* 7: mullw */
-      var47.x4[0] = (var46.x4[0] * var38.x4[0]) & 0xffff;
-      var47.x4[1] = (var46.x4[1] * var38.x4[1]) & 0xffff;
-      var47.x4[2] = (var46.x4[2] * var38.x4[2]) & 0xffff;
-      var47.x4[3] = (var46.x4[3] * var38.x4[3]) & 0xffff;
-      /* 8: div255w */
-      var48.x4[0] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[0] + 128)) +
-              (((orc_uint16) (var47.x4[0] + 128)) >> 8))) >> 8;
-      var48.x4[1] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[1] + 128)) +
-              (((orc_uint16) (var47.x4[1] + 128)) >> 8))) >> 8;
-      var48.x4[2] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[2] + 128)) +
-              (((orc_uint16) (var47.x4[2] + 128)) >> 8))) >> 8;
-      var48.x4[3] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[3] + 128)) +
-              (((orc_uint16) (var47.x4[3] + 128)) >> 8))) >> 8;
-      /* 10: andl */
-      var49.i = var41.i & var39.i;
-      /* 11: convwb */
-      var50.x4[0] = var48.x4[0];
-      var50.x4[1] = var48.x4[1];
-      var50.x4[2] = var48.x4[2];
-      var50.x4[3] = var48.x4[3];
-      /* 13: andl */
-      var51.i = var50.i & var40.i;
-      /* 14: orl */
-      var52.i = var49.i | var51.i;
-      /* 15: storel */
-      ptr0[i] = var52;
+      /* 4: convubw */
+      var45.x4[0] = (orc_uint8) var44.x4[0];
+      var45.x4[1] = (orc_uint8) var44.x4[1];
+      var45.x4[2] = (orc_uint8) var44.x4[2];
+      var45.x4[3] = (orc_uint8) var44.x4[3];
+      /* 6: mullw */
+      var46.x4[0] = (var45.x4[0] * var38.x4[0]) & 0xffff;
+      var46.x4[1] = (var45.x4[1] * var38.x4[1]) & 0xffff;
+      var46.x4[2] = (var45.x4[2] * var38.x4[2]) & 0xffff;
+      var46.x4[3] = (var45.x4[3] * var38.x4[3]) & 0xffff;
+      /* 7: div255w */
+      var47.x4[0] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[0] + 128)) +
+              (((orc_uint16) (var46.x4[0] + 128)) >> 8))) >> 8;
+      var47.x4[1] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[1] + 128)) +
+              (((orc_uint16) (var46.x4[1] + 128)) >> 8))) >> 8;
+      var47.x4[2] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[2] + 128)) +
+              (((orc_uint16) (var46.x4[2] + 128)) >> 8))) >> 8;
+      var47.x4[3] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[3] + 128)) +
+              (((orc_uint16) (var46.x4[3] + 128)) >> 8))) >> 8;
+      /* 9: andl */
+      var48.i = var41.i & var39.i;
+      /* 10: convwb */
+      var49.x4[0] = var47.x4[0];
+      var49.x4[1] = var47.x4[1];
+      var49.x4[2] = var47.x4[2];
+      var49.x4[3] = var47.x4[3];
+      /* 12: andl */
+      var50.i = var49.i & var40.i;
+      /* 13: orl */
+      var51.i = var48.i | var50.i;
+      /* 14: storel */
+      ptr0[i] = var51;
     }
   }
 
@@ -1060,82 +1057,79 @@ _backup_compositor_orc_source_argb (OrcExecutor * ORC_RESTRICT ex)
   orc_union32 var40;
 #endif
   orc_union32 var41;
-  orc_union32 var42;
-  orc_union16 var43;
-  orc_int8 var44;
-  orc_union32 var45;
+  orc_union16 var42;
+  orc_int8 var43;
+  orc_union32 var44;
+  orc_union64 var45;
   orc_union64 var46;
   orc_union64 var47;
-  orc_union64 var48;
+  orc_union32 var48;
   orc_union32 var49;
   orc_union32 var50;
   orc_union32 var51;
-  orc_union32 var52;
 
   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);
 
-    /* 6: loadpw */
+    /* 5: loadpw */
     var38.x4[0] = ex->params[24];
     var38.x4[1] = ex->params[24];
     var38.x4[2] = ex->params[24];
     var38.x4[3] = ex->params[24];
-    /* 9: loadpl */
+    /* 8: loadpl */
     var39.i = 0xffffff00;       /* -256 or 2.122e-314f */
-    /* 12: loadpl */
+    /* 11: loadpl */
     var40.i = 0x000000ff;       /* 255 or 1.25987e-321f */
 
     for (i = 0; i < n; i++) {
       /* 0: loadl */
       var41 = ptr4[i];
-      /* 1: shrul */
-      var42.i = ((orc_uint32) var41.i) >> 24;
-      /* 2: convlw */
-      var43.i = var42.i;
-      /* 3: convwb */
-      var44 = var43.i;
-      /* 4: splatbl */
-      var45.i =
-          ((((orc_uint32) var44) & 0xff) << 24) | ((((orc_uint32) var44) & 0xff)
-          << 16) | ((((orc_uint32) var44) & 0xff) << 8) | (((orc_uint32) var44)
+      /* 1: convlw */
+      var42.i = var41.i;
+      /* 2: convwb */
+      var43 = var42.i;
+      /* 3: splatbl */
+      var44.i =
+          ((((orc_uint32) var43) & 0xff) << 24) | ((((orc_uint32) var43) & 0xff)
+          << 16) | ((((orc_uint32) var43) & 0xff) << 8) | (((orc_uint32) var43)
           & 0xff);
-      /* 5: convubw */
-      var46.x4[0] = (orc_uint8) var45.x4[0];
-      var46.x4[1] = (orc_uint8) var45.x4[1];
-      var46.x4[2] = (orc_uint8) var45.x4[2];
-      var46.x4[3] = (orc_uint8) var45.x4[3];
-      /* 7: mullw */
-      var47.x4[0] = (var46.x4[0] * var38.x4[0]) & 0xffff;
-      var47.x4[1] = (var46.x4[1] * var38.x4[1]) & 0xffff;
-      var47.x4[2] = (var46.x4[2] * var38.x4[2]) & 0xffff;
-      var47.x4[3] = (var46.x4[3] * var38.x4[3]) & 0xffff;
-      /* 8: div255w */
-      var48.x4[0] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[0] + 128)) +
-              (((orc_uint16) (var47.x4[0] + 128)) >> 8))) >> 8;
-      var48.x4[1] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[1] + 128)) +
-              (((orc_uint16) (var47.x4[1] + 128)) >> 8))) >> 8;
-      var48.x4[2] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[2] + 128)) +
-              (((orc_uint16) (var47.x4[2] + 128)) >> 8))) >> 8;
-      var48.x4[3] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[3] + 128)) +
-              (((orc_uint16) (var47.x4[3] + 128)) >> 8))) >> 8;
-      /* 10: andl */
-      var49.i = var41.i & var39.i;
-      /* 11: convwb */
-      var50.x4[0] = var48.x4[0];
-      var50.x4[1] = var48.x4[1];
-      var50.x4[2] = var48.x4[2];
-      var50.x4[3] = var48.x4[3];
-      /* 13: andl */
-      var51.i = var50.i & var40.i;
-      /* 14: orl */
-      var52.i = var49.i | var51.i;
-      /* 15: storel */
-      ptr0[i] = var52;
+      /* 4: convubw */
+      var45.x4[0] = (orc_uint8) var44.x4[0];
+      var45.x4[1] = (orc_uint8) var44.x4[1];
+      var45.x4[2] = (orc_uint8) var44.x4[2];
+      var45.x4[3] = (orc_uint8) var44.x4[3];
+      /* 6: mullw */
+      var46.x4[0] = (var45.x4[0] * var38.x4[0]) & 0xffff;
+      var46.x4[1] = (var45.x4[1] * var38.x4[1]) & 0xffff;
+      var46.x4[2] = (var45.x4[2] * var38.x4[2]) & 0xffff;
+      var46.x4[3] = (var45.x4[3] * var38.x4[3]) & 0xffff;
+      /* 7: div255w */
+      var47.x4[0] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[0] + 128)) +
+              (((orc_uint16) (var46.x4[0] + 128)) >> 8))) >> 8;
+      var47.x4[1] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[1] + 128)) +
+              (((orc_uint16) (var46.x4[1] + 128)) >> 8))) >> 8;
+      var47.x4[2] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[2] + 128)) +
+              (((orc_uint16) (var46.x4[2] + 128)) >> 8))) >> 8;
+      var47.x4[3] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[3] + 128)) +
+              (((orc_uint16) (var46.x4[3] + 128)) >> 8))) >> 8;
+      /* 9: andl */
+      var48.i = var41.i & var39.i;
+      /* 10: convwb */
+      var49.x4[0] = var47.x4[0];
+      var49.x4[1] = var47.x4[1];
+      var49.x4[2] = var47.x4[2];
+      var49.x4[3] = var47.x4[3];
+      /* 12: andl */
+      var50.i = var49.i & var40.i;
+      /* 13: orl */
+      var51.i = var48.i | var50.i;
+      /* 14: storel */
+      ptr0[i] = var51;
     }
   }
 
@@ -1160,11 +1154,11 @@ compositor_orc_source_argb (guint8 * ORC_RESTRICT d1, int d1_stride,
         1, 7, 9, 26, 99, 111, 109, 112, 111, 115, 105, 116, 111, 114, 95, 111,
         114, 99, 95, 115, 111, 117, 114, 99, 101, 95, 97, 114, 103, 98, 11, 4,
         4, 12, 4, 4, 14, 4, 255, 0, 0, 0, 14, 4, 0, 255, 255, 255,
-        14, 4, 24, 0, 0, 0, 16, 2, 20, 4, 20, 4, 20, 2, 20, 1,
-        20, 4, 20, 8, 113, 32, 4, 126, 33, 32, 18, 163, 34, 33, 157, 35,
-        34, 152, 36, 35, 21, 2, 150, 37, 36, 21, 2, 89, 37, 37, 24, 21,
-        2, 80, 37, 37, 106, 32, 32, 17, 21, 2, 157, 33, 37, 106, 33, 33,
-        16, 123, 32, 32, 33, 128, 0, 32, 2, 0,
+        16, 2, 20, 4, 20, 4, 20, 2, 20, 1, 20, 4, 20, 8, 113, 32,
+        4, 163, 34, 32, 157, 35, 34, 152, 36, 35, 21, 2, 150, 37, 36, 21,
+        2, 89, 37, 37, 24, 21, 2, 80, 37, 37, 106, 32, 32, 17, 21, 2,
+        157, 33, 37, 106, 33, 33, 16, 123, 32, 32, 33, 128, 0, 32, 2, 0,
+
       };
       p = orc_program_new_from_static_bytecode (bc);
       orc_program_set_backup_function (p, _backup_compositor_orc_source_argb);
@@ -1177,7 +1171,6 @@ compositor_orc_source_argb (guint8 * ORC_RESTRICT d1, int d1_stride,
       orc_program_add_source (p, 4, "s1");
       orc_program_add_constant (p, 4, 0x000000ff, "c1");
       orc_program_add_constant (p, 4, 0xffffff00, "c2");
-      orc_program_add_constant (p, 4, 0x00000018, "c3");
       orc_program_add_parameter (p, 2, "p1");
       orc_program_add_temporary (p, 4, "t1");
       orc_program_add_temporary (p, 4, "t2");
@@ -1188,9 +1181,7 @@ compositor_orc_source_argb (guint8 * ORC_RESTRICT d1, int d1_stride,
 
       orc_program_append_2 (p, "loadl", 0, ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1,
           ORC_VAR_D1);
-      orc_program_append_2 (p, "shrul", 0, ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_C3,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "convlw", 0, ORC_VAR_T3, ORC_VAR_T2, ORC_VAR_D1,
+      orc_program_append_2 (p, "convlw", 0, ORC_VAR_T3, ORC_VAR_T1, ORC_VAR_D1,
           ORC_VAR_D1);
       orc_program_append_2 (p, "convwb", 0, ORC_VAR_T4, ORC_VAR_T3, ORC_VAR_D1,
           ORC_VAR_D1);
@@ -1644,82 +1635,79 @@ compositor_orc_source_bgra (guint8 * ORC_RESTRICT d1, int d1_stride,
   orc_union32 var40;
 #endif
   orc_union32 var41;
-  orc_union32 var42;
-  orc_union16 var43;
-  orc_int8 var44;
-  orc_union32 var45;
+  orc_union16 var42;
+  orc_int8 var43;
+  orc_union32 var44;
+  orc_union64 var45;
   orc_union64 var46;
   orc_union64 var47;
-  orc_union64 var48;
+  orc_union32 var48;
   orc_union32 var49;
   orc_union32 var50;
   orc_union32 var51;
-  orc_union32 var52;
 
   for (j = 0; j < m; j++) {
     ptr0 = ORC_PTR_OFFSET (d1, d1_stride * j);
     ptr4 = ORC_PTR_OFFSET (s1, s1_stride * j);
 
-    /* 6: loadpw */
+    /* 5: loadpw */
     var38.x4[0] = p1;
     var38.x4[1] = p1;
     var38.x4[2] = p1;
     var38.x4[3] = p1;
-    /* 9: loadpl */
+    /* 8: loadpl */
     var39.i = 0x00ffffff;       /* 16777215 or 8.28905e-317f */
-    /* 12: loadpl */
+    /* 11: loadpl */
     var40.i = 0xff000000;       /* -16777216 or 2.11371e-314f */
 
     for (i = 0; i < n; i++) {
       /* 0: loadl */
       var41 = ptr4[i];
-      /* 1: shrul */
-      var42.i = ((orc_uint32) var41.i) >> 24;
-      /* 2: convlw */
-      var43.i = var42.i;
-      /* 3: convwb */
-      var44 = var43.i;
-      /* 4: splatbl */
-      var45.i =
-          ((((orc_uint32) var44) & 0xff) << 24) | ((((orc_uint32) var44) & 0xff)
-          << 16) | ((((orc_uint32) var44) & 0xff) << 8) | (((orc_uint32) var44)
+      /* 1: convhlw */
+      var42.i = ((orc_uint32) var41.i) >> 16;
+      /* 2: convhwb */
+      var43 = ((orc_uint16) var42.i) >> 8;
+      /* 3: splatbl */
+      var44.i =
+          ((((orc_uint32) var43) & 0xff) << 24) | ((((orc_uint32) var43) & 0xff)
+          << 16) | ((((orc_uint32) var43) & 0xff) << 8) | (((orc_uint32) var43)
           & 0xff);
-      /* 5: convubw */
-      var46.x4[0] = (orc_uint8) var45.x4[0];
-      var46.x4[1] = (orc_uint8) var45.x4[1];
-      var46.x4[2] = (orc_uint8) var45.x4[2];
-      var46.x4[3] = (orc_uint8) var45.x4[3];
-      /* 7: mullw */
-      var47.x4[0] = (var46.x4[0] * var38.x4[0]) & 0xffff;
-      var47.x4[1] = (var46.x4[1] * var38.x4[1]) & 0xffff;
-      var47.x4[2] = (var46.x4[2] * var38.x4[2]) & 0xffff;
-      var47.x4[3] = (var46.x4[3] * var38.x4[3]) & 0xffff;
-      /* 8: div255w */
-      var48.x4[0] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[0] + 128)) +
-              (((orc_uint16) (var47.x4[0] + 128)) >> 8))) >> 8;
-      var48.x4[1] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[1] + 128)) +
-              (((orc_uint16) (var47.x4[1] + 128)) >> 8))) >> 8;
-      var48.x4[2] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[2] + 128)) +
-              (((orc_uint16) (var47.x4[2] + 128)) >> 8))) >> 8;
-      var48.x4[3] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[3] + 128)) +
-              (((orc_uint16) (var47.x4[3] + 128)) >> 8))) >> 8;
-      /* 10: andl */
-      var49.i = var41.i & var39.i;
-      /* 11: convwb */
-      var50.x4[0] = var48.x4[0];
-      var50.x4[1] = var48.x4[1];
-      var50.x4[2] = var48.x4[2];
-      var50.x4[3] = var48.x4[3];
-      /* 13: andl */
-      var51.i = var50.i & var40.i;
-      /* 14: orl */
-      var52.i = var49.i | var51.i;
-      /* 15: storel */
-      ptr0[i] = var52;
+      /* 4: convubw */
+      var45.x4[0] = (orc_uint8) var44.x4[0];
+      var45.x4[1] = (orc_uint8) var44.x4[1];
+      var45.x4[2] = (orc_uint8) var44.x4[2];
+      var45.x4[3] = (orc_uint8) var44.x4[3];
+      /* 6: mullw */
+      var46.x4[0] = (var45.x4[0] * var38.x4[0]) & 0xffff;
+      var46.x4[1] = (var45.x4[1] * var38.x4[1]) & 0xffff;
+      var46.x4[2] = (var45.x4[2] * var38.x4[2]) & 0xffff;
+      var46.x4[3] = (var45.x4[3] * var38.x4[3]) & 0xffff;
+      /* 7: div255w */
+      var47.x4[0] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[0] + 128)) +
+              (((orc_uint16) (var46.x4[0] + 128)) >> 8))) >> 8;
+      var47.x4[1] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[1] + 128)) +
+              (((orc_uint16) (var46.x4[1] + 128)) >> 8))) >> 8;
+      var47.x4[2] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[2] + 128)) +
+              (((orc_uint16) (var46.x4[2] + 128)) >> 8))) >> 8;
+      var47.x4[3] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[3] + 128)) +
+              (((orc_uint16) (var46.x4[3] + 128)) >> 8))) >> 8;
+      /* 9: andl */
+      var48.i = var41.i & var39.i;
+      /* 10: convwb */
+      var49.x4[0] = var47.x4[0];
+      var49.x4[1] = var47.x4[1];
+      var49.x4[2] = var47.x4[2];
+      var49.x4[3] = var47.x4[3];
+      /* 12: andl */
+      var50.i = var49.i & var40.i;
+      /* 13: orl */
+      var51.i = var48.i | var50.i;
+      /* 14: storel */
+      ptr0[i] = var51;
     }
   }
 
@@ -1747,82 +1735,79 @@ _backup_compositor_orc_source_bgra (OrcExecutor * ORC_RESTRICT ex)
   orc_union32 var40;
 #endif
   orc_union32 var41;
-  orc_union32 var42;
-  orc_union16 var43;
-  orc_int8 var44;
-  orc_union32 var45;
+  orc_union16 var42;
+  orc_int8 var43;
+  orc_union32 var44;
+  orc_union64 var45;
   orc_union64 var46;
   orc_union64 var47;
-  orc_union64 var48;
+  orc_union32 var48;
   orc_union32 var49;
   orc_union32 var50;
   orc_union32 var51;
-  orc_union32 var52;
 
   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);
 
-    /* 6: loadpw */
+    /* 5: loadpw */
     var38.x4[0] = ex->params[24];
     var38.x4[1] = ex->params[24];
     var38.x4[2] = ex->params[24];
     var38.x4[3] = ex->params[24];
-    /* 9: loadpl */
+    /* 8: loadpl */
     var39.i = 0x00ffffff;       /* 16777215 or 8.28905e-317f */
-    /* 12: loadpl */
+    /* 11: loadpl */
     var40.i = 0xff000000;       /* -16777216 or 2.11371e-314f */
 
     for (i = 0; i < n; i++) {
       /* 0: loadl */
       var41 = ptr4[i];
-      /* 1: shrul */
-      var42.i = ((orc_uint32) var41.i) >> 24;
-      /* 2: convlw */
-      var43.i = var42.i;
-      /* 3: convwb */
-      var44 = var43.i;
-      /* 4: splatbl */
-      var45.i =
-          ((((orc_uint32) var44) & 0xff) << 24) | ((((orc_uint32) var44) & 0xff)
-          << 16) | ((((orc_uint32) var44) & 0xff) << 8) | (((orc_uint32) var44)
+      /* 1: convhlw */
+      var42.i = ((orc_uint32) var41.i) >> 16;
+      /* 2: convhwb */
+      var43 = ((orc_uint16) var42.i) >> 8;
+      /* 3: splatbl */
+      var44.i =
+          ((((orc_uint32) var43) & 0xff) << 24) | ((((orc_uint32) var43) & 0xff)
+          << 16) | ((((orc_uint32) var43) & 0xff) << 8) | (((orc_uint32) var43)
           & 0xff);
-      /* 5: convubw */
-      var46.x4[0] = (orc_uint8) var45.x4[0];
-      var46.x4[1] = (orc_uint8) var45.x4[1];
-      var46.x4[2] = (orc_uint8) var45.x4[2];
-      var46.x4[3] = (orc_uint8) var45.x4[3];
-      /* 7: mullw */
-      var47.x4[0] = (var46.x4[0] * var38.x4[0]) & 0xffff;
-      var47.x4[1] = (var46.x4[1] * var38.x4[1]) & 0xffff;
-      var47.x4[2] = (var46.x4[2] * var38.x4[2]) & 0xffff;
-      var47.x4[3] = (var46.x4[3] * var38.x4[3]) & 0xffff;
-      /* 8: div255w */
-      var48.x4[0] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[0] + 128)) +
-              (((orc_uint16) (var47.x4[0] + 128)) >> 8))) >> 8;
-      var48.x4[1] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[1] + 128)) +
-              (((orc_uint16) (var47.x4[1] + 128)) >> 8))) >> 8;
-      var48.x4[2] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[2] + 128)) +
-              (((orc_uint16) (var47.x4[2] + 128)) >> 8))) >> 8;
-      var48.x4[3] =
-          ((orc_uint16) (((orc_uint16) (var47.x4[3] + 128)) +
-              (((orc_uint16) (var47.x4[3] + 128)) >> 8))) >> 8;
-      /* 10: andl */
-      var49.i = var41.i & var39.i;
-      /* 11: convwb */
-      var50.x4[0] = var48.x4[0];
-      var50.x4[1] = var48.x4[1];
-      var50.x4[2] = var48.x4[2];
-      var50.x4[3] = var48.x4[3];
-      /* 13: andl */
-      var51.i = var50.i & var40.i;
-      /* 14: orl */
-      var52.i = var49.i | var51.i;
-      /* 15: storel */
-      ptr0[i] = var52;
+      /* 4: convubw */
+      var45.x4[0] = (orc_uint8) var44.x4[0];
+      var45.x4[1] = (orc_uint8) var44.x4[1];
+      var45.x4[2] = (orc_uint8) var44.x4[2];
+      var45.x4[3] = (orc_uint8) var44.x4[3];
+      /* 6: mullw */
+      var46.x4[0] = (var45.x4[0] * var38.x4[0]) & 0xffff;
+      var46.x4[1] = (var45.x4[1] * var38.x4[1]) & 0xffff;
+      var46.x4[2] = (var45.x4[2] * var38.x4[2]) & 0xffff;
+      var46.x4[3] = (var45.x4[3] * var38.x4[3]) & 0xffff;
+      /* 7: div255w */
+      var47.x4[0] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[0] + 128)) +
+              (((orc_uint16) (var46.x4[0] + 128)) >> 8))) >> 8;
+      var47.x4[1] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[1] + 128)) +
+              (((orc_uint16) (var46.x4[1] + 128)) >> 8))) >> 8;
+      var47.x4[2] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[2] + 128)) +
+              (((orc_uint16) (var46.x4[2] + 128)) >> 8))) >> 8;
+      var47.x4[3] =
+          ((orc_uint16) (((orc_uint16) (var46.x4[3] + 128)) +
+              (((orc_uint16) (var46.x4[3] + 128)) >> 8))) >> 8;
+      /* 9: andl */
+      var48.i = var41.i & var39.i;
+      /* 10: convwb */
+      var49.x4[0] = var47.x4[0];
+      var49.x4[1] = var47.x4[1];
+      var49.x4[2] = var47.x4[2];
+      var49.x4[3] = var47.x4[3];
+      /* 12: andl */
+      var50.i = var49.i & var40.i;
+      /* 13: orl */
+      var51.i = var48.i | var50.i;
+      /* 14: storel */
+      ptr0[i] = var51;
     }
   }
 
@@ -1847,11 +1832,11 @@ compositor_orc_source_bgra (guint8 * ORC_RESTRICT d1, int d1_stride,
         1, 7, 9, 26, 99, 111, 109, 112, 111, 115, 105, 116, 111, 114, 95, 111,
         114, 99, 95, 115, 111, 117, 114, 99, 101, 95, 98, 103, 114, 97, 11, 4,
         4, 12, 4, 4, 14, 4, 0, 0, 0, 255, 14, 4, 255, 255, 255, 0,
-        14, 4, 24, 0, 0, 0, 16, 2, 20, 4, 20, 4, 20, 2, 20, 1,
-        20, 4, 20, 8, 113, 32, 4, 126, 33, 32, 18, 163, 34, 33, 157, 35,
-        34, 152, 36, 35, 21, 2, 150, 37, 36, 21, 2, 89, 37, 37, 24, 21,
-        2, 80, 37, 37, 106, 32, 32, 17, 21, 2, 157, 33, 37, 106, 33, 33,
-        16, 123, 32, 32, 33, 128, 0, 32, 2, 0,
+        16, 2, 20, 4, 20, 4, 20, 2, 20, 1, 20, 4, 20, 8, 113, 32,
+        4, 164, 34, 32, 158, 35, 34, 152, 36, 35, 21, 2, 150, 37, 36, 21,
+        2, 89, 37, 37, 24, 21, 2, 80, 37, 37, 106, 32, 32, 17, 21, 2,
+        157, 33, 37, 106, 33, 33, 16, 123, 32, 32, 33, 128, 0, 32, 2, 0,
+
       };
       p = orc_program_new_from_static_bytecode (bc);
       orc_program_set_backup_function (p, _backup_compositor_orc_source_bgra);
@@ -1864,7 +1849,6 @@ compositor_orc_source_bgra (guint8 * ORC_RESTRICT d1, int d1_stride,
       orc_program_add_source (p, 4, "s1");
       orc_program_add_constant (p, 4, 0xff000000, "c1");
       orc_program_add_constant (p, 4, 0x00ffffff, "c2");
-      orc_program_add_constant (p, 4, 0x00000018, "c3");
       orc_program_add_parameter (p, 2, "p1");
       orc_program_add_temporary (p, 4, "t1");
       orc_program_add_temporary (p, 4, "t2");
@@ -1875,11 +1859,9 @@ compositor_orc_source_bgra (guint8 * ORC_RESTRICT d1, int d1_stride,
 
       orc_program_append_2 (p, "loadl", 0, ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1,
           ORC_VAR_D1);
-      orc_program_append_2 (p, "shrul", 0, ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_C3,
+      orc_program_append_2 (p, "convhlw", 0, ORC_VAR_T3, ORC_VAR_T1, ORC_VAR_D1,
           ORC_VAR_D1);
-      orc_program_append_2 (p, "convlw", 0, ORC_VAR_T3, ORC_VAR_T2, ORC_VAR_D1,
-          ORC_VAR_D1);
-      orc_program_append_2 (p, "convwb", 0, ORC_VAR_T4, ORC_VAR_T3, ORC_VAR_D1,
+      orc_program_append_2 (p, "convhwb", 0, ORC_VAR_T4, ORC_VAR_T3, ORC_VAR_D1,
           ORC_VAR_D1);
       orc_program_append_2 (p, "splatbl", 0, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1,
           ORC_VAR_D1);