diff --git a/.gitignore b/.gitignore index cbdbad1..7b94e73 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/gst-plugins-bad-free-1.4.5.tar.xz +SOURCES/gst-plugins-bad-free-1.10.4.tar.xz diff --git a/.gstreamer1-plugins-bad-free.metadata b/.gstreamer1-plugins-bad-free.metadata index deead9f..64cb085 100644 --- a/.gstreamer1-plugins-bad-free.metadata +++ b/.gstreamer1-plugins-bad-free.metadata @@ -1 +1 @@ -441ac0f0dd8766dd821a38ee4e4d3a7ea562c008 SOURCES/gst-plugins-bad-free-1.4.5.tar.xz +3fd823f9e440dee42dc544074604d4b2a5eb88f5 SOURCES/gst-plugins-bad-free-1.10.4.tar.xz diff --git a/SOURCES/0001-bayer-update-ORC-files.patch b/SOURCES/0001-bayer-update-ORC-files.patch deleted file mode 100644 index 7babbf8..0000000 --- a/SOURCES/0001-bayer-update-ORC-files.patch +++ /dev/null @@ -1,2537 +0,0 @@ -From 0a2f24ede92501089104b77c79026d030a190c6d Mon Sep 17 00:00:00 2001 -From: Wim Taymans -Date: Mon, 22 Jun 2015 13:29:25 +0200 -Subject: [PATCH] bayer: update ORC files - -Update ORC files with newest ORC to fix backup code generation error. ---- - gst/bayer/gstbayerorc-dist.c | 1376 +++++++++++++++++++++++------------------- - 1 file changed, 760 insertions(+), 616 deletions(-) - -diff --git a/gst/bayer/gstbayerorc-dist.c b/gst/bayer/gstbayerorc-dist.c -index c9afb6a..e79862f 100644 ---- a/gst/bayer/gstbayerorc-dist.c -+++ b/gst/bayer/gstbayerorc-dist.c -@@ -667,16 +667,21 @@ bayer_orc_merge_bg_bgra (guint8 * ORC_RESTRICT d1, - orc_union16 var43; - #endif - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var45; -+#else -+ orc_union16 var45; -+#endif -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) d1; - ptr4 = (orc_union16 *) s1; -@@ -690,6 +695,9 @@ bayer_orc_merge_bg_bgra (guint8 * ORC_RESTRICT d1, - var42.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - /* 11: loadpw */ - var43.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ -+ /* 16: loadpb */ -+ var45.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var45.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -697,71 +705,71 @@ bayer_orc_merge_bg_bgra (guint8 * ORC_RESTRICT d1, - /* 1: loadw */ - var38 = ptr9[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr4[i]; - /* 4: loadw */ - var40 = ptr8[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr7[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -+ var53.i = var52.i | var51.i; - /* 14: loadw */ - var44 = ptr6[i]; - /* 15: mergebw */ - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[0]; -- _dest.x2[1] = var52.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[1] = var53.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[1]; -- _dest.x2[1] = var52.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[1] = var53.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[0]; -- _dest.x2[1] = var42.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var47.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[1]; -- _dest.x2[1] = var42.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var47.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -795,16 +803,21 @@ _backup_bayer_orc_merge_bg_bgra (OrcExecutor * ORC_RESTRICT ex) - orc_union16 var43; - #endif - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var45; -+#else -+ orc_union16 var45; -+#endif -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) ex->arrays[0]; - ptr4 = (orc_union16 *) ex->arrays[4]; -@@ -818,6 +831,9 @@ _backup_bayer_orc_merge_bg_bgra (OrcExecutor * ORC_RESTRICT ex) - var42.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - /* 11: loadpw */ - var43.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ -+ /* 16: loadpb */ -+ var45.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var45.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -825,71 +841,71 @@ _backup_bayer_orc_merge_bg_bgra (OrcExecutor * ORC_RESTRICT ex) - /* 1: loadw */ - var38 = ptr9[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr4[i]; - /* 4: loadw */ - var40 = ptr8[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr7[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -+ var53.i = var52.i | var51.i; - /* 14: loadw */ - var44 = ptr6[i]; - /* 15: mergebw */ - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[0]; -- _dest.x2[1] = var52.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[1] = var53.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[1]; -- _dest.x2[1] = var52.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[1] = var53.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[0]; -- _dest.x2[1] = var42.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var47.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[1]; -- _dest.x2[1] = var42.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var47.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -915,11 +931,12 @@ bayer_orc_merge_bg_bgra (guint8 * ORC_RESTRICT d1, - 1, 9, 23, 98, 97, 121, 101, 114, 95, 111, 114, 99, 95, 109, 101, 114, - 103, 101, 95, 98, 103, 95, 98, 103, 114, 97, 11, 8, 8, 12, 2, 2, - 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 14, -- 2, 255, 0, 0, 0, 14, 2, 0, 255, 0, 0, 20, 4, 20, 4, 20, -- 2, 20, 2, 20, 2, 21, 1, 39, 34, 5, 9, 21, 1, 39, 35, 4, -- 8, 79, 36, 7, 21, 1, 39, 35, 35, 36, 73, 35, 35, 16, 73, 36, -- 36, 17, 92, 35, 36, 35, 21, 1, 196, 33, 6, 35, 21, 1, 196, 32, -- 34, 16, 21, 1, 195, 0, 33, 32, 2, 0, -+ 2, 255, 0, 0, 0, 14, 2, 0, 255, 0, 0, 14, 1, 255, 0, 0, -+ 0, 20, 4, 20, 4, 20, 2, 20, 2, 20, 2, 21, 1, 39, 34, 5, -+ 9, 21, 1, 39, 35, 4, 8, 79, 36, 7, 21, 1, 39, 35, 35, 36, -+ 73, 35, 35, 16, 73, 36, 36, 17, 92, 35, 36, 35, 21, 1, 196, 33, -+ 6, 35, 21, 1, 196, 32, 34, 18, 21, 1, 195, 0, 33, 32, 2, 0, -+ - }; - p = orc_program_new_from_static_bytecode (bc); - orc_program_set_backup_function (p, _backup_bayer_orc_merge_bg_bgra); -@@ -936,6 +953,7 @@ bayer_orc_merge_bg_bgra (guint8 * ORC_RESTRICT d1, - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x000000ff, "c1"); - orc_program_add_constant (p, 2, 0x0000ff00, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -958,7 +976,7 @@ bayer_orc_merge_bg_bgra (guint8 * ORC_RESTRICT d1, - ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_S3, ORC_VAR_T4, - ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_T3, ORC_VAR_C1, -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_T3, ORC_VAR_C3, - ORC_VAR_D1); - orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_T1, - ORC_VAR_D1); -@@ -1021,16 +1039,21 @@ bayer_orc_merge_gr_bgra (guint8 * ORC_RESTRICT d1, - orc_union16 var43; - #endif - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var45; -+#else -+ orc_union16 var45; -+#endif -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) d1; - ptr4 = (orc_union16 *) s1; -@@ -1044,6 +1067,9 @@ bayer_orc_merge_gr_bgra (guint8 * ORC_RESTRICT d1, - var42.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ - /* 11: loadpw */ - var43.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ /* 16: loadpb */ -+ var45.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var45.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -1051,71 +1077,71 @@ bayer_orc_merge_gr_bgra (guint8 * ORC_RESTRICT d1, - /* 1: loadw */ - var38 = ptr8[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr5[i]; - /* 4: loadw */ - var40 = ptr9[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr6[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -+ var53.i = var52.i | var51.i; - /* 14: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[0]; -- _dest.x2[1] = var52.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var47.x2[0]; -+ _dest.x2[1] = var53.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[1]; -- _dest.x2[1] = var52.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var47.x2[1]; -+ _dest.x2[1] = var53.x2[1]; -+ var54.x2[1] = _dest.i; - } - /* 15: loadw */ - var44 = ptr7[i]; -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[0]; -- _dest.x2[1] = var43.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[1]; -- _dest.x2[1] = var43.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -1149,16 +1175,21 @@ _backup_bayer_orc_merge_gr_bgra (OrcExecutor * ORC_RESTRICT ex) - orc_union16 var43; - #endif - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var45; -+#else -+ orc_union16 var45; -+#endif -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) ex->arrays[0]; - ptr4 = (orc_union16 *) ex->arrays[4]; -@@ -1172,6 +1203,9 @@ _backup_bayer_orc_merge_gr_bgra (OrcExecutor * ORC_RESTRICT ex) - var42.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ - /* 11: loadpw */ - var43.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ /* 16: loadpb */ -+ var45.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var45.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -1179,71 +1213,71 @@ _backup_bayer_orc_merge_gr_bgra (OrcExecutor * ORC_RESTRICT ex) - /* 1: loadw */ - var38 = ptr8[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr5[i]; - /* 4: loadw */ - var40 = ptr9[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr6[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -+ var53.i = var52.i | var51.i; - /* 14: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[0]; -- _dest.x2[1] = var52.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var47.x2[0]; -+ _dest.x2[1] = var53.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[1]; -- _dest.x2[1] = var52.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var47.x2[1]; -+ _dest.x2[1] = var53.x2[1]; -+ var54.x2[1] = _dest.i; - } - /* 15: loadw */ - var44 = ptr7[i]; -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[0]; -- _dest.x2[1] = var43.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[1]; -- _dest.x2[1] = var43.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -1269,11 +1303,12 @@ bayer_orc_merge_gr_bgra (guint8 * ORC_RESTRICT d1, - 1, 9, 23, 98, 97, 121, 101, 114, 95, 111, 114, 99, 95, 109, 101, 114, - 103, 101, 95, 103, 114, 95, 98, 103, 114, 97, 11, 8, 8, 12, 2, 2, - 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 14, -- 2, 0, 255, 0, 0, 14, 2, 255, 0, 0, 0, 20, 4, 20, 4, 20, -- 2, 20, 2, 20, 2, 21, 1, 39, 34, 4, 8, 21, 1, 39, 35, 5, -- 9, 79, 36, 6, 21, 1, 39, 35, 35, 36, 73, 35, 35, 16, 73, 36, -- 36, 17, 92, 35, 36, 35, 21, 1, 196, 33, 34, 35, 21, 1, 196, 32, -- 7, 17, 21, 1, 195, 0, 33, 32, 2, 0, -+ 2, 0, 255, 0, 0, 14, 2, 255, 0, 0, 0, 14, 1, 255, 0, 0, -+ 0, 20, 4, 20, 4, 20, 2, 20, 2, 20, 2, 21, 1, 39, 34, 4, -+ 8, 21, 1, 39, 35, 5, 9, 79, 36, 6, 21, 1, 39, 35, 35, 36, -+ 73, 35, 35, 16, 73, 36, 36, 17, 92, 35, 36, 35, 21, 1, 196, 33, -+ 34, 35, 21, 1, 196, 32, 7, 18, 21, 1, 195, 0, 33, 32, 2, 0, -+ - }; - p = orc_program_new_from_static_bytecode (bc); - orc_program_set_backup_function (p, _backup_bayer_orc_merge_gr_bgra); -@@ -1290,6 +1325,7 @@ bayer_orc_merge_gr_bgra (guint8 * ORC_RESTRICT d1, - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x0000ff00, "c1"); - orc_program_add_constant (p, 2, 0x000000ff, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -1312,7 +1348,7 @@ bayer_orc_merge_gr_bgra (guint8 * ORC_RESTRICT d1, - ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T3, ORC_VAR_T4, - ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_S4, ORC_VAR_C2, -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_S4, ORC_VAR_C3, - ORC_VAR_D1); - orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_T1, - ORC_VAR_D1); -@@ -1374,17 +1410,22 @@ bayer_orc_merge_bg_abgr (guint8 * ORC_RESTRICT d1, - #else - orc_union16 var43; - #endif -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var44; -+#else - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#endif -+ orc_union16 var45; -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) d1; - ptr4 = (orc_union16 *) s1; -@@ -1398,6 +1439,9 @@ bayer_orc_merge_bg_abgr (guint8 * ORC_RESTRICT d1, - var42.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - /* 11: loadpw */ - var43.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ -+ /* 14: loadpb */ -+ var44.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var44.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -1405,71 +1449,71 @@ bayer_orc_merge_bg_abgr (guint8 * ORC_RESTRICT d1, - /* 1: loadw */ - var38 = ptr9[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr4[i]; - /* 4: loadw */ - var40 = ptr8[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr7[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -- /* 14: loadw */ -- var44 = ptr6[i]; -- /* 15: mergebw */ -+ var53.i = var52.i | var51.i; -+ /* 15: loadw */ -+ var45 = ptr6[i]; -+ /* 16: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var42.x2[0]; -- _dest.x2[1] = var44.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var44.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var42.x2[1]; -- _dest.x2[1] = var44.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var44.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[0]; -- _dest.x2[1] = var46.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var53.x2[0]; -+ _dest.x2[1] = var47.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[1]; -- _dest.x2[1] = var46.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var53.x2[1]; -+ _dest.x2[1] = var47.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -1502,17 +1546,22 @@ _backup_bayer_orc_merge_bg_abgr (OrcExecutor * ORC_RESTRICT ex) - #else - orc_union16 var43; - #endif -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var44; -+#else - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#endif -+ orc_union16 var45; -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) ex->arrays[0]; - ptr4 = (orc_union16 *) ex->arrays[4]; -@@ -1526,6 +1575,9 @@ _backup_bayer_orc_merge_bg_abgr (OrcExecutor * ORC_RESTRICT ex) - var42.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - /* 11: loadpw */ - var43.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ -+ /* 14: loadpb */ -+ var44.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var44.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -1533,71 +1585,71 @@ _backup_bayer_orc_merge_bg_abgr (OrcExecutor * ORC_RESTRICT ex) - /* 1: loadw */ - var38 = ptr9[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr4[i]; - /* 4: loadw */ - var40 = ptr8[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr7[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -- /* 14: loadw */ -- var44 = ptr6[i]; -- /* 15: mergebw */ -+ var53.i = var52.i | var51.i; -+ /* 15: loadw */ -+ var45 = ptr6[i]; -+ /* 16: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var42.x2[0]; -- _dest.x2[1] = var44.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var44.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var42.x2[1]; -- _dest.x2[1] = var44.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var44.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[0]; -- _dest.x2[1] = var46.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var53.x2[0]; -+ _dest.x2[1] = var47.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[1]; -- _dest.x2[1] = var46.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var53.x2[1]; -+ _dest.x2[1] = var47.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -1623,11 +1675,12 @@ bayer_orc_merge_bg_abgr (guint8 * ORC_RESTRICT d1, - 1, 9, 23, 98, 97, 121, 101, 114, 95, 111, 114, 99, 95, 109, 101, 114, - 103, 101, 95, 98, 103, 95, 97, 98, 103, 114, 11, 8, 8, 12, 2, 2, - 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 14, -- 2, 255, 0, 0, 0, 14, 2, 0, 255, 0, 0, 20, 4, 20, 4, 20, -- 2, 20, 2, 20, 2, 21, 1, 39, 34, 5, 9, 21, 1, 39, 35, 4, -- 8, 79, 36, 7, 21, 1, 39, 35, 35, 36, 73, 35, 35, 16, 73, 36, -- 36, 17, 92, 35, 36, 35, 21, 1, 196, 32, 16, 6, 21, 1, 196, 33, -- 35, 34, 21, 1, 195, 0, 32, 33, 2, 0, -+ 2, 255, 0, 0, 0, 14, 2, 0, 255, 0, 0, 14, 1, 255, 0, 0, -+ 0, 20, 4, 20, 4, 20, 2, 20, 2, 20, 2, 21, 1, 39, 34, 5, -+ 9, 21, 1, 39, 35, 4, 8, 79, 36, 7, 21, 1, 39, 35, 35, 36, -+ 73, 35, 35, 16, 73, 36, 36, 17, 92, 35, 36, 35, 21, 1, 196, 32, -+ 18, 6, 21, 1, 196, 33, 35, 34, 21, 1, 195, 0, 32, 33, 2, 0, -+ - }; - p = orc_program_new_from_static_bytecode (bc); - orc_program_set_backup_function (p, _backup_bayer_orc_merge_bg_abgr); -@@ -1644,6 +1697,7 @@ bayer_orc_merge_bg_abgr (guint8 * ORC_RESTRICT d1, - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x000000ff, "c1"); - orc_program_add_constant (p, 2, 0x0000ff00, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -1664,7 +1718,7 @@ bayer_orc_merge_bg_abgr (guint8 * ORC_RESTRICT d1, - ORC_VAR_D1); - orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, - ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C1, ORC_VAR_S3, -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C3, ORC_VAR_S3, - ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_T3, - ORC_VAR_D1); -@@ -1728,17 +1782,22 @@ bayer_orc_merge_gr_abgr (guint8 * ORC_RESTRICT d1, - #else - orc_union16 var43; - #endif -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var44; -+#else - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#endif -+ orc_union16 var45; -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) d1; - ptr4 = (orc_union16 *) s1; -@@ -1752,6 +1811,9 @@ bayer_orc_merge_gr_abgr (guint8 * ORC_RESTRICT d1, - var42.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ - /* 11: loadpw */ - var43.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ /* 14: loadpb */ -+ var44.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var44.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -1759,71 +1821,71 @@ bayer_orc_merge_gr_abgr (guint8 * ORC_RESTRICT d1, - /* 1: loadw */ - var38 = ptr8[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr5[i]; - /* 4: loadw */ - var40 = ptr9[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr6[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -- /* 14: mergebw */ -+ var53.i = var52.i | var51.i; -+ /* 15: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var43.x2[0]; -- _dest.x2[1] = var46.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var44.x2[0]; -+ _dest.x2[1] = var47.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var43.x2[1]; -- _dest.x2[1] = var46.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var44.x2[1]; -+ _dest.x2[1] = var47.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 15: loadw */ -- var44 = ptr7[i]; -- /* 16: mergebw */ -+ /* 16: loadw */ -+ var45 = ptr7[i]; -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[0]; -- _dest.x2[1] = var44.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var53.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[1]; -- _dest.x2[1] = var44.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var53.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -1856,17 +1918,22 @@ _backup_bayer_orc_merge_gr_abgr (OrcExecutor * ORC_RESTRICT ex) - #else - orc_union16 var43; - #endif -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var44; -+#else - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#endif -+ orc_union16 var45; -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) ex->arrays[0]; - ptr4 = (orc_union16 *) ex->arrays[4]; -@@ -1880,6 +1947,9 @@ _backup_bayer_orc_merge_gr_abgr (OrcExecutor * ORC_RESTRICT ex) - var42.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ - /* 11: loadpw */ - var43.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ /* 14: loadpb */ -+ var44.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var44.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -1887,71 +1957,71 @@ _backup_bayer_orc_merge_gr_abgr (OrcExecutor * ORC_RESTRICT ex) - /* 1: loadw */ - var38 = ptr8[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr5[i]; - /* 4: loadw */ - var40 = ptr9[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr6[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -- /* 14: mergebw */ -+ var53.i = var52.i | var51.i; -+ /* 15: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var43.x2[0]; -- _dest.x2[1] = var46.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var44.x2[0]; -+ _dest.x2[1] = var47.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var43.x2[1]; -- _dest.x2[1] = var46.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var44.x2[1]; -+ _dest.x2[1] = var47.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 15: loadw */ -- var44 = ptr7[i]; -- /* 16: mergebw */ -+ /* 16: loadw */ -+ var45 = ptr7[i]; -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[0]; -- _dest.x2[1] = var44.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var53.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[1]; -- _dest.x2[1] = var44.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var53.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -1977,11 +2047,12 @@ bayer_orc_merge_gr_abgr (guint8 * ORC_RESTRICT d1, - 1, 9, 23, 98, 97, 121, 101, 114, 95, 111, 114, 99, 95, 109, 101, 114, - 103, 101, 95, 103, 114, 95, 97, 98, 103, 114, 11, 8, 8, 12, 2, 2, - 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 14, -- 2, 0, 255, 0, 0, 14, 2, 255, 0, 0, 0, 20, 4, 20, 4, 20, -- 2, 20, 2, 20, 2, 21, 1, 39, 34, 4, 8, 21, 1, 39, 35, 5, -- 9, 79, 36, 6, 21, 1, 39, 35, 35, 36, 73, 35, 35, 16, 73, 36, -- 36, 17, 92, 35, 36, 35, 21, 1, 196, 32, 17, 34, 21, 1, 196, 33, -- 35, 7, 21, 1, 195, 0, 32, 33, 2, 0, -+ 2, 0, 255, 0, 0, 14, 2, 255, 0, 0, 0, 14, 1, 255, 0, 0, -+ 0, 20, 4, 20, 4, 20, 2, 20, 2, 20, 2, 21, 1, 39, 34, 4, -+ 8, 21, 1, 39, 35, 5, 9, 79, 36, 6, 21, 1, 39, 35, 35, 36, -+ 73, 35, 35, 16, 73, 36, 36, 17, 92, 35, 36, 35, 21, 1, 196, 32, -+ 18, 34, 21, 1, 196, 33, 35, 7, 21, 1, 195, 0, 32, 33, 2, 0, -+ - }; - p = orc_program_new_from_static_bytecode (bc); - orc_program_set_backup_function (p, _backup_bayer_orc_merge_gr_abgr); -@@ -1998,6 +2069,7 @@ bayer_orc_merge_gr_abgr (guint8 * ORC_RESTRICT d1, - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x0000ff00, "c1"); - orc_program_add_constant (p, 2, 0x000000ff, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -2018,7 +2090,7 @@ bayer_orc_merge_gr_abgr (guint8 * ORC_RESTRICT d1, - ORC_VAR_D1); - orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, - ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C2, ORC_VAR_T3, -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C3, ORC_VAR_T3, - ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_S4, - ORC_VAR_D1); -@@ -2083,16 +2155,21 @@ bayer_orc_merge_bg_rgba (guint8 * ORC_RESTRICT d1, - orc_union16 var43; - #endif - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var45; -+#else -+ orc_union16 var45; -+#endif -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) d1; - ptr4 = (orc_union16 *) s1; -@@ -2106,6 +2183,9 @@ bayer_orc_merge_bg_rgba (guint8 * ORC_RESTRICT d1, - var42.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - /* 11: loadpw */ - var43.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ -+ /* 16: loadpb */ -+ var45.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var45.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -2113,71 +2193,71 @@ bayer_orc_merge_bg_rgba (guint8 * ORC_RESTRICT d1, - /* 1: loadw */ - var38 = ptr9[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr4[i]; - /* 4: loadw */ - var40 = ptr8[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr7[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -+ var53.i = var52.i | var51.i; - /* 14: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[0]; -- _dest.x2[1] = var52.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var47.x2[0]; -+ _dest.x2[1] = var53.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[1]; -- _dest.x2[1] = var52.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var47.x2[1]; -+ _dest.x2[1] = var53.x2[1]; -+ var54.x2[1] = _dest.i; - } - /* 15: loadw */ - var44 = ptr6[i]; -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[0]; -- _dest.x2[1] = var42.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[1]; -- _dest.x2[1] = var42.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -2211,16 +2291,21 @@ _backup_bayer_orc_merge_bg_rgba (OrcExecutor * ORC_RESTRICT ex) - orc_union16 var43; - #endif - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var45; -+#else -+ orc_union16 var45; -+#endif -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) ex->arrays[0]; - ptr4 = (orc_union16 *) ex->arrays[4]; -@@ -2234,6 +2319,9 @@ _backup_bayer_orc_merge_bg_rgba (OrcExecutor * ORC_RESTRICT ex) - var42.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - /* 11: loadpw */ - var43.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ -+ /* 16: loadpb */ -+ var45.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var45.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -2241,71 +2329,71 @@ _backup_bayer_orc_merge_bg_rgba (OrcExecutor * ORC_RESTRICT ex) - /* 1: loadw */ - var38 = ptr9[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr4[i]; - /* 4: loadw */ - var40 = ptr8[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr7[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -+ var53.i = var52.i | var51.i; - /* 14: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[0]; -- _dest.x2[1] = var52.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var47.x2[0]; -+ _dest.x2[1] = var53.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[1]; -- _dest.x2[1] = var52.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var47.x2[1]; -+ _dest.x2[1] = var53.x2[1]; -+ var54.x2[1] = _dest.i; - } - /* 15: loadw */ - var44 = ptr6[i]; -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[0]; -- _dest.x2[1] = var42.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[1]; -- _dest.x2[1] = var42.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -2331,11 +2419,12 @@ bayer_orc_merge_bg_rgba (guint8 * ORC_RESTRICT d1, - 1, 9, 23, 98, 97, 121, 101, 114, 95, 111, 114, 99, 95, 109, 101, 114, - 103, 101, 95, 98, 103, 95, 114, 103, 98, 97, 11, 8, 8, 12, 2, 2, - 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 14, -- 2, 255, 0, 0, 0, 14, 2, 0, 255, 0, 0, 20, 4, 20, 4, 20, -- 2, 20, 2, 20, 2, 21, 1, 39, 34, 5, 9, 21, 1, 39, 35, 4, -- 8, 79, 36, 7, 21, 1, 39, 35, 35, 36, 73, 35, 35, 16, 73, 36, -- 36, 17, 92, 35, 36, 35, 21, 1, 196, 32, 34, 35, 21, 1, 196, 33, -- 6, 16, 21, 1, 195, 0, 32, 33, 2, 0, -+ 2, 255, 0, 0, 0, 14, 2, 0, 255, 0, 0, 14, 1, 255, 0, 0, -+ 0, 20, 4, 20, 4, 20, 2, 20, 2, 20, 2, 21, 1, 39, 34, 5, -+ 9, 21, 1, 39, 35, 4, 8, 79, 36, 7, 21, 1, 39, 35, 35, 36, -+ 73, 35, 35, 16, 73, 36, 36, 17, 92, 35, 36, 35, 21, 1, 196, 32, -+ 34, 35, 21, 1, 196, 33, 6, 18, 21, 1, 195, 0, 32, 33, 2, 0, -+ - }; - p = orc_program_new_from_static_bytecode (bc); - orc_program_set_backup_function (p, _backup_bayer_orc_merge_bg_rgba); -@@ -2352,6 +2441,7 @@ bayer_orc_merge_bg_rgba (guint8 * ORC_RESTRICT d1, - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x000000ff, "c1"); - orc_program_add_constant (p, 2, 0x0000ff00, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -2374,7 +2464,7 @@ bayer_orc_merge_bg_rgba (guint8 * ORC_RESTRICT d1, - ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_T3, ORC_VAR_T4, - ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_S3, ORC_VAR_C1, -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_S3, ORC_VAR_C3, - ORC_VAR_D1); - orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, - ORC_VAR_D1); -@@ -2437,16 +2527,21 @@ bayer_orc_merge_gr_rgba (guint8 * ORC_RESTRICT d1, - orc_union16 var43; - #endif - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var45; -+#else -+ orc_union16 var45; -+#endif -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) d1; - ptr4 = (orc_union16 *) s1; -@@ -2460,6 +2555,9 @@ bayer_orc_merge_gr_rgba (guint8 * ORC_RESTRICT d1, - var42.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ - /* 11: loadpw */ - var43.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ /* 16: loadpb */ -+ var45.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var45.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -2467,71 +2565,71 @@ bayer_orc_merge_gr_rgba (guint8 * ORC_RESTRICT d1, - /* 1: loadw */ - var38 = ptr8[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr5[i]; - /* 4: loadw */ - var40 = ptr9[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr6[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -+ var53.i = var52.i | var51.i; - /* 14: loadw */ - var44 = ptr7[i]; - /* 15: mergebw */ - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[0]; -- _dest.x2[1] = var52.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[1] = var53.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[1]; -- _dest.x2[1] = var52.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[1] = var53.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[0]; -- _dest.x2[1] = var43.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var47.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[1]; -- _dest.x2[1] = var43.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var47.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -2565,16 +2663,21 @@ _backup_bayer_orc_merge_gr_rgba (OrcExecutor * ORC_RESTRICT ex) - orc_union16 var43; - #endif - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var45; -+#else -+ orc_union16 var45; -+#endif -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) ex->arrays[0]; - ptr4 = (orc_union16 *) ex->arrays[4]; -@@ -2588,6 +2691,9 @@ _backup_bayer_orc_merge_gr_rgba (OrcExecutor * ORC_RESTRICT ex) - var42.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ - /* 11: loadpw */ - var43.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ /* 16: loadpb */ -+ var45.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var45.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -2595,71 +2701,71 @@ _backup_bayer_orc_merge_gr_rgba (OrcExecutor * ORC_RESTRICT ex) - /* 1: loadw */ - var38 = ptr8[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr5[i]; - /* 4: loadw */ - var40 = ptr9[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr6[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -+ var53.i = var52.i | var51.i; - /* 14: loadw */ - var44 = ptr7[i]; - /* 15: mergebw */ - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[0]; -- _dest.x2[1] = var52.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[1] = var53.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[1]; -- _dest.x2[1] = var52.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[1] = var53.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[0]; -- _dest.x2[1] = var43.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var47.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[1]; -- _dest.x2[1] = var43.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var47.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -2685,11 +2791,12 @@ bayer_orc_merge_gr_rgba (guint8 * ORC_RESTRICT d1, - 1, 9, 23, 98, 97, 121, 101, 114, 95, 111, 114, 99, 95, 109, 101, 114, - 103, 101, 95, 103, 114, 95, 114, 103, 98, 97, 11, 8, 8, 12, 2, 2, - 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 14, -- 2, 0, 255, 0, 0, 14, 2, 255, 0, 0, 0, 20, 4, 20, 4, 20, -- 2, 20, 2, 20, 2, 21, 1, 39, 34, 4, 8, 21, 1, 39, 35, 5, -- 9, 79, 36, 6, 21, 1, 39, 35, 35, 36, 73, 35, 35, 16, 73, 36, -- 36, 17, 92, 35, 36, 35, 21, 1, 196, 32, 7, 35, 21, 1, 196, 33, -- 34, 17, 21, 1, 195, 0, 32, 33, 2, 0, -+ 2, 0, 255, 0, 0, 14, 2, 255, 0, 0, 0, 14, 1, 255, 0, 0, -+ 0, 20, 4, 20, 4, 20, 2, 20, 2, 20, 2, 21, 1, 39, 34, 4, -+ 8, 21, 1, 39, 35, 5, 9, 79, 36, 6, 21, 1, 39, 35, 35, 36, -+ 73, 35, 35, 16, 73, 36, 36, 17, 92, 35, 36, 35, 21, 1, 196, 32, -+ 7, 35, 21, 1, 196, 33, 34, 18, 21, 1, 195, 0, 32, 33, 2, 0, -+ - }; - p = orc_program_new_from_static_bytecode (bc); - orc_program_set_backup_function (p, _backup_bayer_orc_merge_gr_rgba); -@@ -2706,6 +2813,7 @@ bayer_orc_merge_gr_rgba (guint8 * ORC_RESTRICT d1, - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x0000ff00, "c1"); - orc_program_add_constant (p, 2, 0x000000ff, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -2728,7 +2836,7 @@ bayer_orc_merge_gr_rgba (guint8 * ORC_RESTRICT d1, - ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_S4, ORC_VAR_T4, - ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T3, ORC_VAR_C2, -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T3, ORC_VAR_C3, - ORC_VAR_D1); - orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, - ORC_VAR_D1); -@@ -2790,17 +2898,22 @@ bayer_orc_merge_bg_argb (guint8 * ORC_RESTRICT d1, - #else - orc_union16 var43; - #endif -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var44; -+#else - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#endif -+ orc_union16 var45; -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) d1; - ptr4 = (orc_union16 *) s1; -@@ -2814,6 +2927,9 @@ bayer_orc_merge_bg_argb (guint8 * ORC_RESTRICT d1, - var42.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - /* 11: loadpw */ - var43.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ -+ /* 14: loadpb */ -+ var44.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var44.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -2821,71 +2937,71 @@ bayer_orc_merge_bg_argb (guint8 * ORC_RESTRICT d1, - /* 1: loadw */ - var38 = ptr9[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr4[i]; - /* 4: loadw */ - var40 = ptr8[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr7[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -- /* 14: mergebw */ -+ var53.i = var52.i | var51.i; -+ /* 15: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var42.x2[0]; -- _dest.x2[1] = var46.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var44.x2[0]; -+ _dest.x2[1] = var47.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var42.x2[1]; -- _dest.x2[1] = var46.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var44.x2[1]; -+ _dest.x2[1] = var47.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 15: loadw */ -- var44 = ptr6[i]; -- /* 16: mergebw */ -+ /* 16: loadw */ -+ var45 = ptr6[i]; -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[0]; -- _dest.x2[1] = var44.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var53.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[1]; -- _dest.x2[1] = var44.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var53.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -2918,17 +3034,22 @@ _backup_bayer_orc_merge_bg_argb (OrcExecutor * ORC_RESTRICT ex) - #else - orc_union16 var43; - #endif -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var44; -+#else - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#endif -+ orc_union16 var45; -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) ex->arrays[0]; - ptr4 = (orc_union16 *) ex->arrays[4]; -@@ -2942,6 +3063,9 @@ _backup_bayer_orc_merge_bg_argb (OrcExecutor * ORC_RESTRICT ex) - var42.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - /* 11: loadpw */ - var43.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ -+ /* 14: loadpb */ -+ var44.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var44.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -2949,71 +3073,71 @@ _backup_bayer_orc_merge_bg_argb (OrcExecutor * ORC_RESTRICT ex) - /* 1: loadw */ - var38 = ptr9[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr4[i]; - /* 4: loadw */ - var40 = ptr8[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr7[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -- /* 14: mergebw */ -+ var53.i = var52.i | var51.i; -+ /* 15: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var42.x2[0]; -- _dest.x2[1] = var46.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var44.x2[0]; -+ _dest.x2[1] = var47.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var42.x2[1]; -- _dest.x2[1] = var46.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var44.x2[1]; -+ _dest.x2[1] = var47.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 15: loadw */ -- var44 = ptr6[i]; -- /* 16: mergebw */ -+ /* 16: loadw */ -+ var45 = ptr6[i]; -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[0]; -- _dest.x2[1] = var44.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var53.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[1]; -- _dest.x2[1] = var44.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var53.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -3039,11 +3163,12 @@ bayer_orc_merge_bg_argb (guint8 * ORC_RESTRICT d1, - 1, 9, 23, 98, 97, 121, 101, 114, 95, 111, 114, 99, 95, 109, 101, 114, - 103, 101, 95, 98, 103, 95, 97, 114, 103, 98, 11, 8, 8, 12, 2, 2, - 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 14, -- 2, 255, 0, 0, 0, 14, 2, 0, 255, 0, 0, 20, 4, 20, 4, 20, -- 2, 20, 2, 20, 2, 21, 1, 39, 34, 5, 9, 21, 1, 39, 35, 4, -- 8, 79, 36, 7, 21, 1, 39, 35, 35, 36, 73, 35, 35, 16, 73, 36, -- 36, 17, 92, 35, 36, 35, 21, 1, 196, 32, 16, 34, 21, 1, 196, 33, -- 35, 6, 21, 1, 195, 0, 32, 33, 2, 0, -+ 2, 255, 0, 0, 0, 14, 2, 0, 255, 0, 0, 14, 1, 255, 0, 0, -+ 0, 20, 4, 20, 4, 20, 2, 20, 2, 20, 2, 21, 1, 39, 34, 5, -+ 9, 21, 1, 39, 35, 4, 8, 79, 36, 7, 21, 1, 39, 35, 35, 36, -+ 73, 35, 35, 16, 73, 36, 36, 17, 92, 35, 36, 35, 21, 1, 196, 32, -+ 18, 34, 21, 1, 196, 33, 35, 6, 21, 1, 195, 0, 32, 33, 2, 0, -+ - }; - p = orc_program_new_from_static_bytecode (bc); - orc_program_set_backup_function (p, _backup_bayer_orc_merge_bg_argb); -@@ -3060,6 +3185,7 @@ bayer_orc_merge_bg_argb (guint8 * ORC_RESTRICT d1, - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x000000ff, "c1"); - orc_program_add_constant (p, 2, 0x0000ff00, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -3080,7 +3206,7 @@ bayer_orc_merge_bg_argb (guint8 * ORC_RESTRICT d1, - ORC_VAR_D1); - orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, - ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C1, ORC_VAR_T3, -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C3, ORC_VAR_T3, - ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_S3, - ORC_VAR_D1); -@@ -3144,17 +3270,22 @@ bayer_orc_merge_gr_argb (guint8 * ORC_RESTRICT d1, - #else - orc_union16 var43; - #endif -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var44; -+#else - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#endif -+ orc_union16 var45; -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) d1; - ptr4 = (orc_union16 *) s1; -@@ -3168,6 +3299,9 @@ bayer_orc_merge_gr_argb (guint8 * ORC_RESTRICT d1, - var42.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ - /* 11: loadpw */ - var43.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ /* 14: loadpb */ -+ var44.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var44.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -3175,71 +3309,71 @@ bayer_orc_merge_gr_argb (guint8 * ORC_RESTRICT d1, - /* 1: loadw */ - var38 = ptr8[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr5[i]; - /* 4: loadw */ - var40 = ptr9[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr6[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -- /* 14: loadw */ -- var44 = ptr7[i]; -- /* 15: mergebw */ -+ var53.i = var52.i | var51.i; -+ /* 15: loadw */ -+ var45 = ptr7[i]; -+ /* 16: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var43.x2[0]; -- _dest.x2[1] = var44.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var44.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var43.x2[1]; -- _dest.x2[1] = var44.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var44.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[0]; -- _dest.x2[1] = var46.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var53.x2[0]; -+ _dest.x2[1] = var47.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[1]; -- _dest.x2[1] = var46.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var53.x2[1]; -+ _dest.x2[1] = var47.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -3272,17 +3406,22 @@ _backup_bayer_orc_merge_gr_argb (OrcExecutor * ORC_RESTRICT ex) - #else - orc_union16 var43; - #endif -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var44; -+#else - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#endif -+ orc_union16 var45; -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *) ex->arrays[0]; - ptr4 = (orc_union16 *) ex->arrays[4]; -@@ -3296,6 +3435,9 @@ _backup_bayer_orc_merge_gr_argb (OrcExecutor * ORC_RESTRICT ex) - var42.i = (int) 0x0000ff00; /* 65280 or 3.22526e-319f */ - /* 11: loadpw */ - var43.i = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ /* 14: loadpb */ -+ var44.x2[0] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ -+ var44.x2[1] = (int) 0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -3303,71 +3445,71 @@ _backup_bayer_orc_merge_gr_argb (OrcExecutor * ORC_RESTRICT ex) - /* 1: loadw */ - var38 = ptr8[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -- var46.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; -+ var47.x2[0] = ((orc_uint8) var37.x2[0] + (orc_uint8) var38.x2[0] + 1) >> 1; -+ var47.x2[1] = ((orc_uint8) var37.x2[1] + (orc_uint8) var38.x2[1] + 1) >> 1; - /* 3: loadw */ - var39 = ptr5[i]; - /* 4: loadw */ - var40 = ptr9[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -- var47.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; -+ var48.x2[0] = ((orc_uint8) var39.x2[0] + (orc_uint8) var40.x2[0] + 1) >> 1; -+ var48.x2[1] = ((orc_uint8) var39.x2[1] + (orc_uint8) var40.x2[1] + 1) >> 1; - /* 6: loadw */ - var41 = ptr6[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8) var47.x2[0] + (orc_uint8) var48.x2[0] + 1) >> 1; -- var49.x2[1] = ((orc_uint8) var47.x2[1] + (orc_uint8) var48.x2[1] + 1) >> 1; -+ var50.x2[0] = ((orc_uint8) var48.x2[0] + (orc_uint8) var49.x2[0] + 1) >> 1; -+ var50.x2[1] = ((orc_uint8) var48.x2[1] + (orc_uint8) var49.x2[1] + 1) >> 1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -- /* 14: loadw */ -- var44 = ptr7[i]; -- /* 15: mergebw */ -+ var53.i = var52.i | var51.i; -+ /* 15: loadw */ -+ var45 = ptr7[i]; -+ /* 16: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var43.x2[0]; -- _dest.x2[1] = var44.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var44.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var43.x2[1]; -- _dest.x2[1] = var44.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var44.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[0]; -- _dest.x2[1] = var46.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var53.x2[0]; -+ _dest.x2[1] = var47.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[1]; -- _dest.x2[1] = var46.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var53.x2[1]; -+ _dest.x2[1] = var47.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -3393,11 +3535,12 @@ bayer_orc_merge_gr_argb (guint8 * ORC_RESTRICT d1, - 1, 9, 23, 98, 97, 121, 101, 114, 95, 111, 114, 99, 95, 109, 101, 114, - 103, 101, 95, 103, 114, 95, 97, 114, 103, 98, 11, 8, 8, 12, 2, 2, - 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 12, 2, 2, 14, -- 2, 0, 255, 0, 0, 14, 2, 255, 0, 0, 0, 20, 4, 20, 4, 20, -- 2, 20, 2, 20, 2, 21, 1, 39, 34, 4, 8, 21, 1, 39, 35, 5, -- 9, 79, 36, 6, 21, 1, 39, 35, 35, 36, 73, 35, 35, 16, 73, 36, -- 36, 17, 92, 35, 36, 35, 21, 1, 196, 32, 17, 7, 21, 1, 196, 33, -- 35, 34, 21, 1, 195, 0, 32, 33, 2, 0, -+ 2, 0, 255, 0, 0, 14, 2, 255, 0, 0, 0, 14, 1, 255, 0, 0, -+ 0, 20, 4, 20, 4, 20, 2, 20, 2, 20, 2, 21, 1, 39, 34, 4, -+ 8, 21, 1, 39, 35, 5, 9, 79, 36, 6, 21, 1, 39, 35, 35, 36, -+ 73, 35, 35, 16, 73, 36, 36, 17, 92, 35, 36, 35, 21, 1, 196, 32, -+ 18, 7, 21, 1, 196, 33, 35, 34, 21, 1, 195, 0, 32, 33, 2, 0, -+ - }; - p = orc_program_new_from_static_bytecode (bc); - orc_program_set_backup_function (p, _backup_bayer_orc_merge_gr_argb); -@@ -3414,6 +3557,7 @@ bayer_orc_merge_gr_argb (guint8 * ORC_RESTRICT d1, - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x0000ff00, "c1"); - orc_program_add_constant (p, 2, 0x000000ff, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -3434,7 +3578,7 @@ bayer_orc_merge_gr_argb (guint8 * ORC_RESTRICT d1, - ORC_VAR_D1); - orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, - ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C2, ORC_VAR_S4, -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C3, ORC_VAR_S4, - ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_T3, - ORC_VAR_D1); --- -2.4.2 - diff --git a/SOURCES/0001-h264parse-Ensure-codec_data-has-the-required-size-wh.patch b/SOURCES/0001-h264parse-Ensure-codec_data-has-the-required-size-wh.patch deleted file mode 100644 index d57e22a..0000000 --- a/SOURCES/0001-h264parse-Ensure-codec_data-has-the-required-size-wh.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 38c20972b843f200af22ab9206b1aa64605a8a04 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= -Date: Wed, 23 Nov 2016 10:51:17 +0200 -Subject: [PATCH 1/4] h264parse: Ensure codec_data has the required size when - reading number of SPS - -https://bugzilla.gnome.org/show_bug.cgi?id=774896 ---- - gst/videoparsers/gsth264parse.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/gst/videoparsers/gsth264parse.c b/gst/videoparsers/gsth264parse.c -index 506cd61..36cfb69 100644 ---- a/gst/videoparsers/gsth264parse.c -+++ b/gst/videoparsers/gsth264parse.c -@@ -1942,6 +1942,10 @@ gst_h264_parse_set_caps (GstBaseParse * parse, GstCaps * caps) - off = nalu.offset + nalu.size; - } - -+ if (off >= size) { -+ gst_buffer_unmap (codec_data, &map); -+ goto avcc_too_small; -+ } - num_pps = data[off]; - off++; - --- -2.9.3 - diff --git a/SOURCES/0001-tests-fix-audiomixer-test-on-big-endian-systems.patch b/SOURCES/0001-tests-fix-audiomixer-test-on-big-endian-systems.patch deleted file mode 100644 index 5cd4d8d..0000000 --- a/SOURCES/0001-tests-fix-audiomixer-test-on-big-endian-systems.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 5e16c24920ed920590941ba7a994fc83d2d1b414 Mon Sep 17 00:00:00 2001 -From: Wim Taymans -Date: Thu, 30 Jul 2015 09:54:48 +0200 -Subject: [PATCH] tests: fix audiomixer test on big endian systems - ---- - tests/check/elements/audiomixer.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/tests/check/elements/audiomixer.c b/tests/check/elements/audiomixer.c -index 1d1b091..f30cccd 100644 ---- a/tests/check/elements/audiomixer.c -+++ b/tests/check/elements/audiomixer.c -@@ -86,7 +86,11 @@ GST_START_TEST (test_filter_caps) - GstPad *pad; - - filter_caps = gst_caps_new_simple ("audio/x-raw", -+#if G_BYTE_ORDER == G_BIG_ENDIAN -+ "format", G_TYPE_STRING, "F32BE", -+#else - "format", G_TYPE_STRING, "F32LE", -+#endif - "layout", G_TYPE_STRING, "interleaved", - "rate", G_TYPE_INT, 44100, "channels", G_TYPE_INT, 1, NULL); - --- -2.4.3 - diff --git a/SOURCES/0001-vmncdec-Sanity-check-width-height-before-using-it.patch b/SOURCES/0001-vmncdec-Sanity-check-width-height-before-using-it.patch deleted file mode 100644 index 5b54a66..0000000 --- a/SOURCES/0001-vmncdec-Sanity-check-width-height-before-using-it.patch +++ /dev/null @@ -1,50 +0,0 @@ -From ed4f4a0acdfc72c822c727caf1e1a1d01f7b01fe Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= -Date: Wed, 16 Nov 2016 20:41:39 +0200 -Subject: [PATCH] vmncdec: Sanity-check width/height before using it - -We will allocate a screen area of width*height*bpp bytes, however this -calculation can easily overflow if too high width or height are given -inside the stream. Nonetheless we would just assume that enough memory -was allocated, try to fill it and overwrite as much memory as wanted. - -Also allocate the screen area filled with zeroes to ensure that we start -with full-black and not any random (or not so random) data. - -https://scarybeastsecurity.blogspot.gr/2016/11/0day-poc-risky-design-decisions-in.html - -Ideally we should just remove this plugin in favour of the one in -gst-libav, which generally seems to be of better code quality. - -https://bugzilla.gnome.org/show_bug.cgi?id=774533 ---- - gst/vmnc/vmncdec.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/gst/vmnc/vmncdec.c b/gst/vmnc/vmncdec.c -index 6d33bdd..d46194c 100644 ---- a/gst/vmnc/vmncdec.c -+++ b/gst/vmnc/vmncdec.c -@@ -255,7 +255,7 @@ vmnc_handle_wmvi_rectangle (GstVMncDec * dec, struct RfbRectangle *rect, - gst_video_codec_state_unref (state); - - g_free (dec->imagedata); -- dec->imagedata = g_malloc (dec->format.width * dec->format.height * -+ dec->imagedata = g_malloc0 (dec->format.width * dec->format.height * - dec->format.bytes_per_pixel); - GST_DEBUG_OBJECT (dec, "Allocated image data at %p", dec->imagedata); - -@@ -785,6 +785,10 @@ vmnc_handle_packet (GstVMncDec * dec, const guint8 * data, int len, - GST_WARNING_OBJECT (dec, "Rectangle out of range, type %d", r.type); - return ERROR_INVALID; - } -+ } else if (r.width > 16384 || r.height > 16384) { -+ GST_WARNING_OBJECT (dec, "Width or height too high: %ux%u", r.width, -+ r.height); -+ return ERROR_INVALID; - } - - switch (r.type) { --- -2.9.3 - diff --git a/SOURCES/0002-h265parse-Ensure-codec_data-has-the-required-size-wh.patch b/SOURCES/0002-h265parse-Ensure-codec_data-has-the-required-size-wh.patch deleted file mode 100644 index 6c4e2bb..0000000 --- a/SOURCES/0002-h265parse-Ensure-codec_data-has-the-required-size-wh.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 8d0543e3ee17619ac70c67d46b4c9deed9b77598 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= -Date: Wed, 23 Nov 2016 10:52:05 +0200 -Subject: [PATCH 2/4] h265parse: Ensure codec_data has the required size when - reading number of NAL arrays - -https://bugzilla.gnome.org/show_bug.cgi?id=774896 ---- - gst/videoparsers/gsth265parse.c | 10 +++++++++- - 1 file changed, 9 insertions(+), 1 deletion(-) - -diff --git a/gst/videoparsers/gsth265parse.c b/gst/videoparsers/gsth265parse.c -index 9a98dcc..483f299 100644 ---- a/gst/videoparsers/gsth265parse.c -+++ b/gst/videoparsers/gsth265parse.c -@@ -1767,6 +1767,7 @@ gst_h265_parse_set_caps (GstBaseParse * parse, GstCaps * caps) - (value = gst_structure_get_value (str, "codec_data"))) { - GstMapInfo map; - guint8 *data; -+ guint num_nal_arrays; - - GST_DEBUG_OBJECT (h265parse, "have packetized h265"); - /* make note for optional split processing */ -@@ -1795,8 +1796,15 @@ gst_h265_parse_set_caps (GstBaseParse * parse, GstCaps * caps) - GST_DEBUG_OBJECT (h265parse, "nal length size %u", - h265parse->nal_length_size); - -+ num_nal_arrays = data[22]; - off = 23; -- for (i = 0; i < data[22]; i++) { -+ -+ for (i = 0; i < num_nal_arrays; i++) { -+ if (off + 3 >= size) { -+ gst_buffer_unmap (codec_data, &map); -+ goto hvcc_too_small; -+ } -+ - num_nals = GST_READ_UINT16_BE (data + off + 1); - for (j = 0; j < num_nals; j++) { - parseres = gst_h265_parser_identify_nalu_hevc (h265parse->nalparser, --- -2.9.3 - diff --git a/SOURCES/0003-mpegtssection-Fix-PAT-parsing.patch b/SOURCES/0003-mpegtssection-Fix-PAT-parsing.patch deleted file mode 100644 index 04094b4..0000000 --- a/SOURCES/0003-mpegtssection-Fix-PAT-parsing.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 83f33f4b70657b34acd75317314eb0d63a0c35bd Mon Sep 17 00:00:00 2001 -From: Edward Hervey -Date: Sat, 26 Nov 2016 10:23:01 +0100 -Subject: [PATCH 3/4] mpegtssection: Fix PAT parsing - -Use the estimated number of programs for parsing. Avoids over-reading. - -https://bugzilla.gnome.org/show_bug.cgi?id=775120 ---- - gst-libs/gst/mpegts/gstmpegtssection.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/gst-libs/gst/mpegts/gstmpegtssection.c b/gst-libs/gst/mpegts/gstmpegtssection.c -index 527ff38..62a1f56 100644 ---- a/gst-libs/gst/mpegts/gstmpegtssection.c -+++ b/gst-libs/gst/mpegts/gstmpegtssection.c -@@ -414,7 +414,7 @@ static gpointer - _parse_pat (GstMpegtsSection * section) - { - GPtrArray *pat; -- guint16 i = 0, nb_programs; -+ guint16 i, nb_programs; - GstMpegtsPatProgram *program; - guint8 *data, *end; - -@@ -430,7 +430,9 @@ _parse_pat (GstMpegtsSection * section) - g_ptr_array_new_full (nb_programs, - (GDestroyNotify) _mpegts_pat_program_free); - -- while (data < end - 4) { -+ GST_LOG ("nb_programs %u", nb_programs); -+ -+ for (i = 0; i < nb_programs; i++) { - program = g_slice_new0 (GstMpegtsPatProgram); - program->program_number = GST_READ_UINT16_BE (data); - data += 2; -@@ -439,8 +441,6 @@ _parse_pat (GstMpegtsSection * section) - data += 2; - - g_ptr_array_index (pat, i) = program; -- -- i++; - } - pat->len = nb_programs; - --- -2.9.3 - diff --git a/SOURCES/0004-mpegtssection-Add-more-section-size-checks.patch b/SOURCES/0004-mpegtssection-Add-more-section-size-checks.patch deleted file mode 100644 index 504bfdf..0000000 --- a/SOURCES/0004-mpegtssection-Add-more-section-size-checks.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 6db2bc00fbc69aea6c70197db959baf167709b19 Mon Sep 17 00:00:00 2001 -From: Edward Hervey -Date: Sat, 26 Nov 2016 10:44:43 +0100 -Subject: [PATCH 4/4] mpegtssection: Add more section size checks - -The smallest section ever needs to be at least 3 bytes (i.e. just the short -header). -Non-short headers need to be at least 11 bytes long (3 for the minimum header, -5 for the non-short header, and 4 for the CRC). - -https://bugzilla.gnome.org/show_bug.cgi?id=775048 ---- - gst-libs/gst/mpegts/gstmpegtssection.c | 23 ++++++++++++++++++++++- - 1 file changed, 22 insertions(+), 1 deletion(-) - -diff --git a/gst-libs/gst/mpegts/gstmpegtssection.c b/gst-libs/gst/mpegts/gstmpegtssection.c -index 62a1f56..d7874fd 100644 ---- a/gst-libs/gst/mpegts/gstmpegtssection.c -+++ b/gst-libs/gst/mpegts/gstmpegtssection.c -@@ -1175,13 +1175,20 @@ gst_mpegts_section_new (guint16 pid, guint8 * data, gsize data_size) - GstMpegtsSection *res = NULL; - guint8 tmp; - guint8 table_id; -- guint16 section_length; -+ guint16 section_length = 0; -+ -+ /* The smallest section ever is 3 bytes */ -+ if (G_UNLIKELY (data_size < 3)) -+ goto short_packet; - - /* Check for length */ - section_length = GST_READ_UINT16_BE (data + 1) & 0x0FFF; - if (G_UNLIKELY (data_size < section_length + 3)) - goto short_packet; - -+ GST_LOG ("data_size:%" G_GSIZE_FORMAT " section_length:%u", -+ data_size, section_length); -+ - /* Table id is in first byte */ - table_id = *data; - -@@ -1196,6 +1203,13 @@ gst_mpegts_section_new (guint16 pid, guint8 * data, gsize data_size) - /* section_length (already parsed) : 12 bit */ - res->section_length = section_length + 3; - if (!res->short_section) { -+ /* A long packet needs to be at least 11 bytes long -+ * _ 3 for the bytes above -+ * _ 5 for the bytes below -+ * _ 4 for the CRC */ -+ if (G_UNLIKELY (data_size < 11)) -+ goto bad_long_packet; -+ - /* CRC is after section_length (-4 for the size of the CRC) */ - res->crc = GST_READ_UINT32_BE (res->data + res->section_length - 4); - /* Skip to after section_length */ -@@ -1225,6 +1239,13 @@ short_packet: - g_free (data); - return NULL; - } -+bad_long_packet: -+ { -+ GST_WARNING ("PID 0x%04x long section is too short (%" G_GSIZE_FORMAT -+ " bytes, need at least 11)", pid, data_size); -+ gst_mpegts_section_unref (res); -+ return NULL; -+ } - } - - /** --- -2.9.3 - diff --git a/SOURCES/gst-p-bad-cleanup.sh b/SOURCES/gst-p-bad-cleanup.sh index 7e5b98b..cc8036a 100755 --- a/SOURCES/gst-p-bad-cleanup.sh +++ b/SOURCES/gst-p-bad-cleanup.sh @@ -70,14 +70,17 @@ mpegtsdemux mpegtsmux mpegvideoparse mxf +netsim nsf nuvdemux +onvif patchdetect pcapparse pnm qtmux rawparse removesilence +rtp rtpmux rtpvp8 scaletempo @@ -89,9 +92,11 @@ smooth speed stereo subenc +timecode tta valve videofilters +videoframe_audiolevel videomaxrate videomeasure videoparsers diff --git a/SOURCES/update-test-check-orc-bayer.patch b/SOURCES/update-test-check-orc-bayer.patch deleted file mode 100644 index 1b1240a..0000000 --- a/SOURCES/update-test-check-orc-bayer.patch +++ /dev/null @@ -1,1258 +0,0 @@ ---- gst-plugins-bad-1.4.5/tests/check/orc/bayer.c 2014-12-18 12:13:33.000000000 +0100 -+++ gst-plugins-bad-1.4.5.new/tests/check/orc/bayer.c 2015-06-22 17:13:40.140542998 +0200 -@@ -297,16 +297,21 @@ - orc_union16 var43; - #endif - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var45; -+#else -+ orc_union16 var45; -+#endif -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *)ex->arrays[0]; - ptr4 = (orc_union16 *)ex->arrays[4]; -@@ -320,6 +325,9 @@ - var42.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ - /* 11: loadpw */ - var43.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ -+ /* 16: loadpb */ -+ var45.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ -+ var45.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -327,71 +335,71 @@ - /* 1: loadw */ - var38 = ptr9[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -- var46.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; -+ var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -+ var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; - /* 3: loadw */ - var39 = ptr4[i]; - /* 4: loadw */ - var40 = ptr8[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -- var47.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; -+ var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -+ var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; - /* 6: loadw */ - var41 = ptr7[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8)var47.x2[0] + (orc_uint8)var48.x2[0] + 1)>>1; -- var49.x2[1] = ((orc_uint8)var47.x2[1] + (orc_uint8)var48.x2[1] + 1)>>1; -+ var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; -+ var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -+ var53.i = var52.i | var51.i; - /* 14: loadw */ - var44 = ptr6[i]; - /* 15: mergebw */ - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[0]; -- _dest.x2[1] = var52.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[1] = var53.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[1]; -- _dest.x2[1] = var52.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[1] = var53.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[0]; -- _dest.x2[1] = var42.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var47.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[1]; -- _dest.x2[1] = var42.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var47.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -425,16 +433,21 @@ - orc_union16 var43; - #endif - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var45; -+#else -+ orc_union16 var45; -+#endif -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *)ex->arrays[0]; - ptr4 = (orc_union16 *)ex->arrays[4]; -@@ -448,6 +461,9 @@ - var42.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ - /* 11: loadpw */ - var43.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ -+ /* 16: loadpb */ -+ var45.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ -+ var45.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -455,71 +471,71 @@ - /* 1: loadw */ - var38 = ptr8[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -- var46.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; -+ var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -+ var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; - /* 3: loadw */ - var39 = ptr5[i]; - /* 4: loadw */ - var40 = ptr9[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -- var47.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; -+ var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -+ var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; - /* 6: loadw */ - var41 = ptr6[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8)var47.x2[0] + (orc_uint8)var48.x2[0] + 1)>>1; -- var49.x2[1] = ((orc_uint8)var47.x2[1] + (orc_uint8)var48.x2[1] + 1)>>1; -+ var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; -+ var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -+ var53.i = var52.i | var51.i; - /* 14: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[0]; -- _dest.x2[1] = var52.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var47.x2[0]; -+ _dest.x2[1] = var53.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[1]; -- _dest.x2[1] = var52.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var47.x2[1]; -+ _dest.x2[1] = var53.x2[1]; -+ var54.x2[1] = _dest.i; - } - /* 15: loadw */ - var44 = ptr7[i]; -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[0]; -- _dest.x2[1] = var43.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[1]; -- _dest.x2[1] = var43.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -552,17 +568,22 @@ - #else - orc_union16 var43; - #endif -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var44; -+#else - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#endif -+ orc_union16 var45; -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *)ex->arrays[0]; - ptr4 = (orc_union16 *)ex->arrays[4]; -@@ -576,6 +597,9 @@ - var42.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ - /* 11: loadpw */ - var43.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ -+ /* 14: loadpb */ -+ var44.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ -+ var44.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -583,71 +607,71 @@ - /* 1: loadw */ - var38 = ptr9[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -- var46.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; -+ var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -+ var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; - /* 3: loadw */ - var39 = ptr4[i]; - /* 4: loadw */ - var40 = ptr8[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -- var47.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; -+ var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -+ var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; - /* 6: loadw */ - var41 = ptr7[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8)var47.x2[0] + (orc_uint8)var48.x2[0] + 1)>>1; -- var49.x2[1] = ((orc_uint8)var47.x2[1] + (orc_uint8)var48.x2[1] + 1)>>1; -+ var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; -+ var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -- /* 14: loadw */ -- var44 = ptr6[i]; -- /* 15: mergebw */ -+ var53.i = var52.i | var51.i; -+ /* 15: loadw */ -+ var45 = ptr6[i]; -+ /* 16: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var42.x2[0]; -- _dest.x2[1] = var44.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var44.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var42.x2[1]; -- _dest.x2[1] = var44.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var44.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[0]; -- _dest.x2[1] = var46.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var53.x2[0]; -+ _dest.x2[1] = var47.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[1]; -- _dest.x2[1] = var46.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var53.x2[1]; -+ _dest.x2[1] = var47.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -680,17 +704,22 @@ - #else - orc_union16 var43; - #endif -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var44; -+#else - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#endif -+ orc_union16 var45; -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *)ex->arrays[0]; - ptr4 = (orc_union16 *)ex->arrays[4]; -@@ -704,6 +733,9 @@ - var42.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ - /* 11: loadpw */ - var43.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ -+ /* 14: loadpb */ -+ var44.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ -+ var44.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -711,71 +743,71 @@ - /* 1: loadw */ - var38 = ptr8[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -- var46.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; -+ var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -+ var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; - /* 3: loadw */ - var39 = ptr5[i]; - /* 4: loadw */ - var40 = ptr9[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -- var47.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; -+ var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -+ var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; - /* 6: loadw */ - var41 = ptr6[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8)var47.x2[0] + (orc_uint8)var48.x2[0] + 1)>>1; -- var49.x2[1] = ((orc_uint8)var47.x2[1] + (orc_uint8)var48.x2[1] + 1)>>1; -+ var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; -+ var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -- /* 14: mergebw */ -+ var53.i = var52.i | var51.i; -+ /* 15: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var43.x2[0]; -- _dest.x2[1] = var46.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var44.x2[0]; -+ _dest.x2[1] = var47.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var43.x2[1]; -- _dest.x2[1] = var46.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var44.x2[1]; -+ _dest.x2[1] = var47.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 15: loadw */ -- var44 = ptr7[i]; -- /* 16: mergebw */ -+ /* 16: loadw */ -+ var45 = ptr7[i]; -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[0]; -- _dest.x2[1] = var44.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var53.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[1]; -- _dest.x2[1] = var44.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var53.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -809,16 +841,21 @@ - orc_union16 var43; - #endif - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var45; -+#else -+ orc_union16 var45; -+#endif -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *)ex->arrays[0]; - ptr4 = (orc_union16 *)ex->arrays[4]; -@@ -832,6 +869,9 @@ - var42.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ - /* 11: loadpw */ - var43.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ -+ /* 16: loadpb */ -+ var45.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ -+ var45.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -839,71 +879,71 @@ - /* 1: loadw */ - var38 = ptr9[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -- var46.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; -+ var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -+ var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; - /* 3: loadw */ - var39 = ptr4[i]; - /* 4: loadw */ - var40 = ptr8[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -- var47.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; -+ var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -+ var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; - /* 6: loadw */ - var41 = ptr7[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8)var47.x2[0] + (orc_uint8)var48.x2[0] + 1)>>1; -- var49.x2[1] = ((orc_uint8)var47.x2[1] + (orc_uint8)var48.x2[1] + 1)>>1; -+ var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; -+ var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -+ var53.i = var52.i | var51.i; - /* 14: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[0]; -- _dest.x2[1] = var52.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var47.x2[0]; -+ _dest.x2[1] = var53.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[1]; -- _dest.x2[1] = var52.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var47.x2[1]; -+ _dest.x2[1] = var53.x2[1]; -+ var54.x2[1] = _dest.i; - } - /* 15: loadw */ - var44 = ptr6[i]; -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[0]; -- _dest.x2[1] = var42.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[1]; -- _dest.x2[1] = var42.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -937,16 +977,21 @@ - orc_union16 var43; - #endif - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var45; -+#else -+ orc_union16 var45; -+#endif -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *)ex->arrays[0]; - ptr4 = (orc_union16 *)ex->arrays[4]; -@@ -960,6 +1005,9 @@ - var42.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ - /* 11: loadpw */ - var43.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ -+ /* 16: loadpb */ -+ var45.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ -+ var45.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -967,71 +1015,71 @@ - /* 1: loadw */ - var38 = ptr8[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -- var46.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; -+ var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -+ var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; - /* 3: loadw */ - var39 = ptr5[i]; - /* 4: loadw */ - var40 = ptr9[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -- var47.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; -+ var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -+ var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; - /* 6: loadw */ - var41 = ptr6[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8)var47.x2[0] + (orc_uint8)var48.x2[0] + 1)>>1; -- var49.x2[1] = ((orc_uint8)var47.x2[1] + (orc_uint8)var48.x2[1] + 1)>>1; -+ var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; -+ var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -+ var53.i = var52.i | var51.i; - /* 14: loadw */ - var44 = ptr7[i]; - /* 15: mergebw */ - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[0]; -- _dest.x2[1] = var52.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[1] = var53.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; - _dest.x2[0] = var44.x2[1]; -- _dest.x2[1] = var52.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[1] = var53.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[0]; -- _dest.x2[1] = var43.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var47.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var46.x2[1]; -- _dest.x2[1] = var43.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var47.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -1064,17 +1112,22 @@ - #else - orc_union16 var43; - #endif -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var44; -+#else - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#endif -+ orc_union16 var45; -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *)ex->arrays[0]; - ptr4 = (orc_union16 *)ex->arrays[4]; -@@ -1088,6 +1141,9 @@ - var42.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ - /* 11: loadpw */ - var43.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ -+ /* 14: loadpb */ -+ var44.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ -+ var44.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -1095,71 +1151,71 @@ - /* 1: loadw */ - var38 = ptr9[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -- var46.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; -+ var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -+ var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; - /* 3: loadw */ - var39 = ptr4[i]; - /* 4: loadw */ - var40 = ptr8[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -- var47.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; -+ var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -+ var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; - /* 6: loadw */ - var41 = ptr7[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8)var47.x2[0] + (orc_uint8)var48.x2[0] + 1)>>1; -- var49.x2[1] = ((orc_uint8)var47.x2[1] + (orc_uint8)var48.x2[1] + 1)>>1; -+ var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; -+ var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -- /* 14: mergebw */ -+ var53.i = var52.i | var51.i; -+ /* 15: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var42.x2[0]; -- _dest.x2[1] = var46.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var44.x2[0]; -+ _dest.x2[1] = var47.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var42.x2[1]; -- _dest.x2[1] = var46.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var44.x2[1]; -+ _dest.x2[1] = var47.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 15: loadw */ -- var44 = ptr6[i]; -- /* 16: mergebw */ -+ /* 16: loadw */ -+ var45 = ptr6[i]; -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[0]; -- _dest.x2[1] = var44.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var53.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[1]; -- _dest.x2[1] = var44.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var53.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -1192,17 +1248,22 @@ - #else - orc_union16 var43; - #endif -+#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__) -+ volatile orc_union16 var44; -+#else - orc_union16 var44; -- orc_union64 var45; -- orc_union16 var46; -+#endif -+ orc_union16 var45; -+ orc_union64 var46; - orc_union16 var47; - orc_union16 var48; - orc_union16 var49; - orc_union16 var50; - orc_union16 var51; - orc_union16 var52; -- orc_union32 var53; -+ orc_union16 var53; - orc_union32 var54; -+ orc_union32 var55; - - ptr0 = (orc_union64 *)ex->arrays[0]; - ptr4 = (orc_union16 *)ex->arrays[4]; -@@ -1216,6 +1277,9 @@ - var42.i = (int)0x0000ff00; /* 65280 or 3.22526e-319f */ - /* 11: loadpw */ - var43.i = (int)0x000000ff; /* 255 or 1.25987e-321f */ -+ /* 14: loadpb */ -+ var44.x2[0] = (int)0x000000ff; /* 255 or 1.25987e-321f */ -+ var44.x2[1] = (int)0x000000ff; /* 255 or 1.25987e-321f */ - - for (i = 0; i < n; i++) { - /* 0: loadw */ -@@ -1223,71 +1287,71 @@ - /* 1: loadw */ - var38 = ptr8[i]; - /* 2: avgub */ -- var46.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -- var46.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; -+ var47.x2[0] = ((orc_uint8)var37.x2[0] + (orc_uint8)var38.x2[0] + 1)>>1; -+ var47.x2[1] = ((orc_uint8)var37.x2[1] + (orc_uint8)var38.x2[1] + 1)>>1; - /* 3: loadw */ - var39 = ptr5[i]; - /* 4: loadw */ - var40 = ptr9[i]; - /* 5: avgub */ -- var47.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -- var47.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; -+ var48.x2[0] = ((orc_uint8)var39.x2[0] + (orc_uint8)var40.x2[0] + 1)>>1; -+ var48.x2[1] = ((orc_uint8)var39.x2[1] + (orc_uint8)var40.x2[1] + 1)>>1; - /* 6: loadw */ - var41 = ptr6[i]; - /* 7: copyw */ -- var48.i = var41.i; -+ var49.i = var41.i; - /* 8: avgub */ -- var49.x2[0] = ((orc_uint8)var47.x2[0] + (orc_uint8)var48.x2[0] + 1)>>1; -- var49.x2[1] = ((orc_uint8)var47.x2[1] + (orc_uint8)var48.x2[1] + 1)>>1; -+ var50.x2[0] = ((orc_uint8)var48.x2[0] + (orc_uint8)var49.x2[0] + 1)>>1; -+ var50.x2[1] = ((orc_uint8)var48.x2[1] + (orc_uint8)var49.x2[1] + 1)>>1; - /* 10: andw */ -- var50.i = var49.i & var42.i; -+ var51.i = var50.i & var42.i; - /* 12: andw */ -- var51.i = var48.i & var43.i; -+ var52.i = var49.i & var43.i; - /* 13: orw */ -- var52.i = var51.i | var50.i; -- /* 14: loadw */ -- var44 = ptr7[i]; -- /* 15: mergebw */ -+ var53.i = var52.i | var51.i; -+ /* 15: loadw */ -+ var45 = ptr7[i]; -+ /* 16: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var43.x2[0]; -- _dest.x2[1] = var44.x2[0]; -- var53.x2[0] = _dest.i; -+ _dest.x2[0] = var44.x2[0]; -+ _dest.x2[1] = var45.x2[0]; -+ var54.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var43.x2[1]; -- _dest.x2[1] = var44.x2[1]; -- var53.x2[1] = _dest.i; -+ _dest.x2[0] = var44.x2[1]; -+ _dest.x2[1] = var45.x2[1]; -+ var54.x2[1] = _dest.i; - } -- /* 16: mergebw */ -+ /* 17: mergebw */ - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[0]; -- _dest.x2[1] = var46.x2[0]; -- var54.x2[0] = _dest.i; -+ _dest.x2[0] = var53.x2[0]; -+ _dest.x2[1] = var47.x2[0]; -+ var55.x2[0] = _dest.i; - } - { - orc_union16 _dest; -- _dest.x2[0] = var52.x2[1]; -- _dest.x2[1] = var46.x2[1]; -- var54.x2[1] = _dest.i; -+ _dest.x2[0] = var53.x2[1]; -+ _dest.x2[1] = var47.x2[1]; -+ var55.x2[1] = _dest.i; - } -- /* 17: mergewl */ -+ /* 18: mergewl */ - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[0]; -- _dest.x2[1] = var54.x2[0]; -- var45.x2[0] = _dest.i; -+ _dest.x2[0] = var54.x2[0]; -+ _dest.x2[1] = var55.x2[0]; -+ var46.x2[0] = _dest.i; - } - { - orc_union32 _dest; -- _dest.x2[0] = var53.x2[1]; -- _dest.x2[1] = var54.x2[1]; -- var45.x2[1] = _dest.i; -+ _dest.x2[0] = var54.x2[1]; -+ _dest.x2[1] = var55.x2[1]; -+ var46.x2[1] = _dest.i; - } -- /* 18: storeq */ -- ptr0[i] = var45; -+ /* 19: storeq */ -+ ptr0[i] = var46; - } - - } -@@ -1475,6 +1539,7 @@ - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x000000ff, "c1"); - orc_program_add_constant (p, 2, 0x0000ff00, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -1489,7 +1554,7 @@ - orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); - orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_S3, ORC_VAR_T4, ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_T3, ORC_VAR_C1, ORC_VAR_D1); -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_T3, ORC_VAR_C3, ORC_VAR_D1); - orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1); - - if (benchmark) { -@@ -1544,6 +1609,7 @@ - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x0000ff00, "c1"); - orc_program_add_constant (p, 2, 0x000000ff, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -1558,7 +1624,7 @@ - orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); - orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T3, ORC_VAR_T4, ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_S4, ORC_VAR_C2, ORC_VAR_D1); -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_S4, ORC_VAR_C3, ORC_VAR_D1); - orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1); - - if (benchmark) { -@@ -1613,6 +1679,7 @@ - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x000000ff, "c1"); - orc_program_add_constant (p, 2, 0x0000ff00, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -1626,7 +1693,7 @@ - orc_program_append_2 (p, "andw", 0, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_C1, ORC_VAR_D1); - orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); - orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C1, ORC_VAR_S3, ORC_VAR_D1); -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C3, ORC_VAR_S3, ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_T3, ORC_VAR_D1); - orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1); - -@@ -1682,6 +1749,7 @@ - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x0000ff00, "c1"); - orc_program_add_constant (p, 2, 0x000000ff, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -1695,7 +1763,7 @@ - orc_program_append_2 (p, "andw", 0, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_C1, ORC_VAR_D1); - orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); - orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C2, ORC_VAR_T3, ORC_VAR_D1); -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C3, ORC_VAR_T3, ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_S4, ORC_VAR_D1); - orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1); - -@@ -1751,6 +1819,7 @@ - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x000000ff, "c1"); - orc_program_add_constant (p, 2, 0x0000ff00, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -1765,7 +1834,7 @@ - orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); - orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_T3, ORC_VAR_T4, ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_S3, ORC_VAR_C1, ORC_VAR_D1); -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_S3, ORC_VAR_C3, ORC_VAR_D1); - orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1); - - if (benchmark) { -@@ -1820,6 +1889,7 @@ - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x0000ff00, "c1"); - orc_program_add_constant (p, 2, 0x000000ff, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -1834,7 +1904,7 @@ - orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); - orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_S4, ORC_VAR_T4, ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T3, ORC_VAR_C2, ORC_VAR_D1); -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T3, ORC_VAR_C3, ORC_VAR_D1); - orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1); - - if (benchmark) { -@@ -1889,6 +1959,7 @@ - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x000000ff, "c1"); - orc_program_add_constant (p, 2, 0x0000ff00, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -1902,7 +1973,7 @@ - orc_program_append_2 (p, "andw", 0, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_C1, ORC_VAR_D1); - orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); - orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C1, ORC_VAR_T3, ORC_VAR_D1); -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C3, ORC_VAR_T3, ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_S3, ORC_VAR_D1); - orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1); - -@@ -1958,6 +2029,7 @@ - orc_program_add_source (p, 2, "s6"); - orc_program_add_constant (p, 2, 0x0000ff00, "c1"); - orc_program_add_constant (p, 2, 0x000000ff, "c2"); -+ orc_program_add_constant (p, 1, 0x000000ff, "c3"); - orc_program_add_temporary (p, 4, "t1"); - orc_program_add_temporary (p, 4, "t2"); - orc_program_add_temporary (p, 2, "t3"); -@@ -1971,7 +2043,7 @@ - orc_program_append_2 (p, "andw", 0, ORC_VAR_T4, ORC_VAR_T4, ORC_VAR_C1, ORC_VAR_D1); - orc_program_append_2 (p, "andw", 0, ORC_VAR_T5, ORC_VAR_T5, ORC_VAR_C2, ORC_VAR_D1); - orc_program_append_2 (p, "orw", 0, ORC_VAR_T4, ORC_VAR_T5, ORC_VAR_T4, ORC_VAR_D1); -- orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C2, ORC_VAR_S4, ORC_VAR_D1); -+ orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T1, ORC_VAR_C3, ORC_VAR_S4, ORC_VAR_D1); - orc_program_append_2 (p, "mergebw", 1, ORC_VAR_T2, ORC_VAR_T4, ORC_VAR_T3, ORC_VAR_D1); - orc_program_append_2 (p, "mergewl", 1, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1); - diff --git a/SPECS/gstreamer1-plugins-bad-free.spec b/SPECS/gstreamer1-plugins-bad-free.spec index 86cdd85..0cafb09 100644 --- a/SPECS/gstreamer1-plugins-bad-free.spec +++ b/SPECS/gstreamer1-plugins-bad-free.spec @@ -9,8 +9,8 @@ %endif Name: gstreamer1-plugins-bad-free -Version: 1.4.5 -Release: 6%{?dist} +Version: 1.10.4 +Release: 2%{?dist} Summary: GStreamer streaming media framework "bad" plugins License: LGPLv2+ and LGPLv2 @@ -20,14 +20,6 @@ URL: http://gstreamer.freedesktop.org/ # modified with gst-p-bad-cleanup.sh from SOURCE1 Source0: gst-plugins-bad-free-%{version}.tar.xz Source1: gst-p-bad-cleanup.sh -Patch0: 0001-bayer-update-ORC-files.patch -Patch1: update-test-check-orc-bayer.patch -Patch2: 0001-tests-fix-audiomixer-test-on-big-endian-systems.patch -Patch3: 0001-vmncdec-Sanity-check-width-height-before-using-it.patch -Patch4: 0001-h264parse-Ensure-codec_data-has-the-required-size-wh.patch -Patch5: 0002-h265parse-Ensure-codec_data-has-the-required-size-wh.patch -Patch6: 0003-mpegtssection-Fix-PAT-parsing.patch -Patch7: 0004-mpegtssection-Add-more-section-size-checks.patch BuildRequires: gstreamer1-devel >= %{version} BuildRequires: gstreamer1-plugins-base-devel >= %{version} @@ -51,6 +43,7 @@ BuildRequires: liboil-devel BuildRequires: librsvg2-devel BuildRequires: libsndfile-devel BuildRequires: mesa-libGL-devel +BuildRequires: mesa-libGLES-devel BuildRequires: mesa-libGLU-devel BuildRequires: openssl-devel BuildRequires: orc-devel @@ -64,26 +57,35 @@ BuildRequires: libwayland-client-devel %endif BuildRequires: gnutls-devel BuildRequires: libsrtp-devel +BuildRequires: pkgconfig(gudev-1.0) +BuildRequires: pkgconfig(libusb-1.0) +BuildRequires: gtk3-devel >= 3.4 BuildRequires: chrpath %if %{with extras} +BuildRequires: bluez-libs-devel >= 5.0 +BuildRequires: libbs2b-devel >= 3.1.0 ## Plugins not ported #BuildRequires: dirac-devel #BuildRequires: gmyth-devel >= 0.4 BuildRequires: fluidsynth-devel BuildRequires: libass-devel +BuildRequires: libchromaprint-devel ## Plugin not ported #BuildRequires: libcdaudio-devel BuildRequires: libcurl-devel +BuildRequires: game-music-emu-devel BuildRequires: libkate-devel BuildRequires: libmodplug-devel +BuildRequires: libofa-devel ## Plugins not ported #BuildRequires: libmusicbrainz-devel #BuildRequires: libtimidity-devel BuildRequires: libvdpau-devel -# Requires opencv version < 2.3.1, Rawhide currently has 2.4.2 +BuildRequires: openal-soft-devel #BuildRequires: opencv-devel +BuildRequires: openjpeg-devel BuildRequires: schroedinger-devel ## Plugins not ported #BuildRequires: SDL-devel @@ -102,6 +104,19 @@ operate on media data. This package contains plug-ins that aren't tested well enough, or the code is not of good enough quality. +%package gtk +Summary: GStreamer "bad" plugins gtk plugin +Requires: %{name} = %{version}-%{release} + +%description gtk +GStreamer is a streaming media framework, based on graphs of elements which +operate on media data. + +gstreamer-plugins-bad contains plug-ins that aren't tested well enough, +or the code is not of good enough quality. + +This package (%{name}-gtk) contains the gtksink output plugin. + %if %{with extras} %package extras @@ -134,8 +149,23 @@ operate on media data. gstreamer-plugins-bad contains plug-ins that aren't tested well enough, or the code is not of good enough quality. -This package (%{name}-fluidsynth) contains the fluidsynth plugin which allows -playback of midi files. +This package (%{name}-fluidsynth) contains the fluidsynth +plugin which allows playback of midi files. + + +%package wildmidi +Summary: GStreamer "bad" plugins wildmidi plugin +Requires: %{name} = %{version}-%{release} + +%description wildmidi +GStreamer is a streaming media framework, based on graphs of elements which +operate on media data. + +gstreamer-plugins-bad contains plug-ins that aren't tested well enough, +or the code is not of good enough quality. + +This package (%{name}-wildmidi) contains the wildmidi +plugin which allows playback of midi files. %endif @@ -155,41 +185,104 @@ aren't tested well enough, or the code is not of good enough quality. %prep %setup -q -n gst-plugins-bad-%{version} -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch7 -p1 %build -%configure \ - --with-package-name="Fedora GStreamer-plugins-bad package" \ - --with-package-origin="http://download.fedoraproject.org" \ - %{!?with_extras:--disable-fbdev --disable-decklink --disable-linsys} \ +%configure --disable-silent-rules --disable-fatal-warnings \ + --with-package-name="GStreamer-plugins-bad-free package" \ + --with-package-origin="http://www.redhat.com" \ + %{!?with_extras:--disable-fbdev --disable-decklink --disable-linsys \ + --disable-assrender --disable-bluez --disable-bs2b --disable-curl \ + --disable-dc1394 --disable-fluidsynth --disable-gme --disable-kate \ + --disable-modplug --disable-openexr --disable-qt --disable-schro \ + --disable-teletextdec --disable-vdpau --disable-webrtcdsp \ + --disable-wildmidi --disable-zbar } \ --enable-debug --disable-static --enable-gtk-doc --enable-experimental \ --disable-dts --disable-faac --disable-faad --disable-nas \ --disable-mimic --disable-libmms --disable-mpeg2enc --disable-mplex \ --disable-neon --disable-openal --disable-rtmp --disable-xvid \ --disable-chromaprint --disable-eglgles --disable-flite \ - --disable-mpg123 --disable-ofa --disable-opencv --disable-sbc \ + --disable-ofa --disable-opencv --disable-sbc \ --disable-spandsp --disable-uvch264 --disable-voamrwbenc \ - --disable-webp --disable-openjpeg + --disable-webp --disable-openjpeg --disable-x265 make %{?_smp_mflags} %install -rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT +# Register as an AppStream component to be visible in the software center +# +# NOTE: It would be *awesome* if this file was maintained by the upstream +# project, translated and installed into the right place during `make install`. +# +# See http://www.freedesktop.org/software/appstream/docs/ for more details. +# +mkdir -p $RPM_BUILD_ROOT%{_datadir}/appdata +cat > $RPM_BUILD_ROOT%{_datadir}/appdata/gstreamer-bad-free.appdata.xml < + + + gstreamer-bad-free + CC0-1.0 + GStreamer Multimedia Codecs - Extra + Multimedia playback for AIFF, DVB, GSM, MIDI, MXF and Opus + +

+ This addon includes several additional codecs that are missing + something - perhaps a good code review, some documentation, a set of + tests, a real live maintainer, or some actual wide use. + However, they might be good enough to play your media files. +

+

+ These codecs can be used to encode and decode media files where the + format is not patent encumbered. +

+

+ A codec decodes audio and video for for playback or editing and is also + used for transmission or storage. + Different codecs are used in video-conferencing, streaming media and + video editing applications. +

+
+ + AIFF + DVB + GSM + MIDI + MXF + Opus + + http://gstreamer.freedesktop.org/ + https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer + http://gstreamer.freedesktop.org/documentation/ + http://www.gnome.org/friends/ + +
+EOF + %find_lang gst-plugins-bad-%{majorminor} find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';' # Kill rpath -chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstvideoparsersbad.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstaudiomixer.so chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstcamerabin2.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstcompositor.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstdashdemux.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstdvb.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstgtksink.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgsthls.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstmpegtsdemux.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstmpegtsmux.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstmxf.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstopengl.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstsmoothstreaming.so +%if %{with extras} +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstvdpau.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstwaylandsink.so +%endif +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstvideoparsersbad.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/libgstadaptivedemux-%{majorminor}.so +chrpath --delete $RPM_BUILD_ROOT%{_libdir}/libgstbadvideo-%{majorminor}.so %post -p /sbin/ldconfig @@ -199,23 +292,40 @@ chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstcamerab %files -f gst-plugins-bad-%{majorminor}.lang -%doc AUTHORS COPYING COPYING.LIB README REQUIREMENTS +%license COPYING COPYING.LIB +%doc AUTHORS README REQUIREMENTS + +%{_datadir}/appdata/*.appdata.xml + +# presets +%dir %{_datadir}/gstreamer-%{majorminor}/presets/ +%{_datadir}/gstreamer-%{majorminor}/presets/GstFreeverb.prs + +# opencv data +#%dir %{_datadir}/gst-plugins-bad/%{majorminor}/opencv_haarcascades/ +#%{_datadir}/gst-plugins-bad/%{majorminor}/opencv_haarcascades/fist.xml +#%{_datadir}/gst-plugins-bad/%{majorminor}/opencv_haarcascades/palm.xml +%{_libdir}/libgstadaptivedemux-%{majorminor}.so.* %{_libdir}/libgstbasecamerabinsrc-%{majorminor}.so.* +%{_libdir}/libgstbadaudio-%{majorminor}.so.* %{_libdir}/libgstbadbase-%{majorminor}.so.* %{_libdir}/libgstbadvideo-%{majorminor}.so.* %{_libdir}/libgstcodecparsers-%{majorminor}.so.* %{_libdir}/libgstgl-%{majorminor}.so.* %{_libdir}/libgstinsertbin-%{majorminor}.so.* %{_libdir}/libgstmpegts-%{majorminor}.so.* +%{_libdir}/libgstplayer-%{majorminor}.so.* %{_libdir}/libgstphotography-%{majorminor}.so.* %{_libdir}/libgsturidownloader-%{majorminor}.so.* %if 0%{?fedora} %{_libdir}/libgstwayland-%{majorminor}.so.* %endif +%{_libdir}/girepository-1.0/GstGL-1.0.typelib %{_libdir}/girepository-1.0/GstInsertBin-1.0.typelib %{_libdir}/girepository-1.0/GstMpegts-1.0.typelib +%{_libdir}/girepository-1.0/GstPlayer-1.0.typelib # Plugins without external dependencies %{_libdir}/gstreamer-%{majorminor}/libgstaccurip.so @@ -250,13 +360,13 @@ chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstcamerab %{_libdir}/gstreamer-%{majorminor}/libgstivtc.so %{_libdir}/gstreamer-%{majorminor}/libgstjp2kdecimator.so %{_libdir}/gstreamer-%{majorminor}/libgstjpegformat.so -%{_libdir}/gstreamer-%{majorminor}/libgstliveadder.so %{_libdir}/gstreamer-%{majorminor}/libgstmidi.so %{_libdir}/gstreamer-%{majorminor}/libgstmpegpsdemux.so %{_libdir}/gstreamer-%{majorminor}/libgstmpegtsdemux.so %{_libdir}/gstreamer-%{majorminor}/libgstmpegpsmux.so %{_libdir}/gstreamer-%{majorminor}/libgstmpegtsmux.so %{_libdir}/gstreamer-%{majorminor}/libgstmxf.so +%{_libdir}/gstreamer-%{majorminor}/libgstnetsim.so %{_libdir}/gstreamer-%{majorminor}/libgstpcapparse.so %{_libdir}/gstreamer-%{majorminor}/libgstpnm.so %{_libdir}/gstreamer-%{majorminor}/libgstrawparse.so @@ -264,6 +374,7 @@ chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstcamerab %{_libdir}/gstreamer-%{majorminor}/libgstresindvd.so %{_libdir}/gstreamer-%{majorminor}/libgstrfbsrc.so %{_libdir}/gstreamer-%{majorminor}/libgstrsvg.so +%{_libdir}/gstreamer-%{majorminor}/libgstrtponvif.so %{_libdir}/gstreamer-%{majorminor}/libgstsdpelem.so %{_libdir}/gstreamer-%{majorminor}/libgstsegmentclip.so %{_libdir}/gstreamer-%{majorminor}/libgstshm.so @@ -272,10 +383,12 @@ chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstcamerab %{_libdir}/gstreamer-%{majorminor}/libgstspeed.so %{_libdir}/gstreamer-%{majorminor}/libgststereo.so %{_libdir}/gstreamer-%{majorminor}/libgstsubenc.so +%{_libdir}/gstreamer-%{majorminor}/libgsttimecode.so %if %{with extras} %{_libdir}/gstreamer-%{majorminor}/libgstvdpau.so %endif %{_libdir}/gstreamer-%{majorminor}/libgstvideofiltersbad.so +%{_libdir}/gstreamer-%{majorminor}/libgstvideoframe_audiolevel.so %{_libdir}/gstreamer-%{majorminor}/libgstvideoparsersbad.so %{_libdir}/gstreamer-%{majorminor}/libgstvideosignal.so %{_libdir}/gstreamer-%{majorminor}/libgstvmnc.so @@ -284,14 +397,18 @@ chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstcamerab # System (Linux) specific plugins %{_libdir}/gstreamer-%{majorminor}/libgstdvb.so +%{_libdir}/gstreamer-%{majorminor}/libgstvcdsrc.so # Plugins with external dependencies %{_libdir}/gstreamer-%{majorminor}/libgstbz2.so -%{_libdir}/gstreamer-%{majorminor}/libgstfragmented.so +%{_libdir}/gstreamer-%{majorminor}/libgstdtls.so +%{_libdir}/gstreamer-%{majorminor}/libgsthls.so %{_libdir}/gstreamer-%{majorminor}/libgstgsm.so +%{_libdir}/gstreamer-%{majorminor}/libgstkmssink.so %{_libdir}/gstreamer-%{majorminor}/libgstladspa.so +%{_libdir}/gstreamer-%{majorminor}/libgstmusepack.so %{_libdir}/gstreamer-%{majorminor}/libgstopengl.so -%{_libdir}/gstreamer-%{majorminor}/libgstopus.so +%{_libdir}/gstreamer-%{majorminor}/libgstopusparse.so %{_libdir}/gstreamer-%{majorminor}/libgstsndfile.so %{_libdir}/gstreamer-%{majorminor}/libgstsoundtouch.so %{_libdir}/gstreamer-%{majorminor}/libgstsrtp.so @@ -302,24 +419,40 @@ chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstcamerab #debugging plugin %{_libdir}/gstreamer-%{majorminor}/libgstdebugutilsbad.so +%files gtk +# Plugins with external dependencies +%{_libdir}/gstreamer-%{majorminor}/libgstgtksink.so + %if %{with extras} %files extras # Plugins with external dependencies %{_libdir}/gstreamer-%{majorminor}/libgstassrender.so +%{_libdir}/gstreamer-%{majorminor}/libgstbluez.so +%{_libdir}/gstreamer-%{majorminor}/libgstbs2b.so +%{_libdir}/gstreamer-%{majorminor}/libgstchromaprint.so %{_libdir}/gstreamer-%{majorminor}/libgstcurl.so %{_libdir}/gstreamer-%{majorminor}/libgstdecklink.so +%{_libdir}/gstreamer-%{majorminor}/libgstgme.so %{_libdir}/gstreamer-%{majorminor}/libgstkate.so %{_libdir}/gstreamer-%{majorminor}/libgstmodplug.so +%{_libdir}/gstreamer-%{majorminor}/libgstofa.so +%{_libdir}/gstreamer-%{majorminor}/libgstopenal.so +#%{_libdir}/gstreamer-%{majorminor}/libgstopencv.so %{_libdir}/gstreamer-%{majorminor}/libgstopenexr.so +%{_libdir}/gstreamer-%{majorminor}/libgstopenjpeg.so %{_libdir}/gstreamer-%{majorminor}/libgstschro.so +%{_libdir}/gstreamer-%{majorminor}/libgstteletextdec.so %{_libdir}/gstreamer-%{majorminor}/libgstzbar.so -%{_libdir}/gstreamer-%{majorminor}/libgstwildmidi.so %files fluidsynth # Plugins with external dependencies %{_libdir}/gstreamer-%{majorminor}/libgstfluidsynthmidi.so + +%files wildmidi +# Plugins with external dependencies +%{_libdir}/gstreamer-%{majorminor}/libgstwildmidi.so %endif @@ -327,46 +460,71 @@ chrpath --delete $RPM_BUILD_ROOT%{_libdir}/gstreamer-%{majorminor}/libgstcamerab %doc %{_datadir}/gtk-doc/html/gst-plugins-bad-plugins-%{majorminor} %doc %{_datadir}/gtk-doc/html/gst-plugins-bad-libs-%{majorminor} +%{_datadir}/gir-1.0/GstGL-1.0.gir %{_datadir}/gir-1.0/GstInsertBin-%{majorminor}.gir %{_datadir}/gir-1.0/GstMpegts-%{majorminor}.gir +%{_datadir}/gir-1.0/GstPlayer-%{majorminor}.gir +%{_libdir}/libgstadaptivedemux-%{majorminor}.so %{_libdir}/libgstbasecamerabinsrc-%{majorminor}.so +%{_libdir}/libgstbadaudio-%{majorminor}.so %{_libdir}/libgstbadbase-%{majorminor}.so %{_libdir}/libgstbadvideo-%{majorminor}.so %{_libdir}/libgstcodecparsers-%{majorminor}.so %{_libdir}/libgstgl-%{majorminor}.so %{_libdir}/libgstinsertbin-%{majorminor}.so %{_libdir}/libgstmpegts-%{majorminor}.so +%{_libdir}/libgstplayer-%{majorminor}.so %{_libdir}/libgstphotography-%{majorminor}.so %{_libdir}/libgsturidownloader-%{majorminor}.so %if 0%{?fedora} %{_libdir}/libgstwayland-%{majorminor}.so %endif +%{_libdir}/gstreamer-%{majorminor}/include/gst/gl/gstglconfig.h + +%{_includedir}/gstreamer-%{majorminor}/gst/audio +%{_includedir}/gstreamer-%{majorminor}/gst/base %{_includedir}/gstreamer-%{majorminor}/gst/basecamerabinsrc %{_includedir}/gstreamer-%{majorminor}/gst/codecparsers %{_includedir}/gstreamer-%{majorminor}/gst/insertbin %{_includedir}/gstreamer-%{majorminor}/gst/interfaces/photography* %{_includedir}/gstreamer-%{majorminor}/gst/mpegts +%{_includedir}/gstreamer-%{majorminor}/gst/player %{_includedir}/gstreamer-%{majorminor}/gst/uridownloader %{_includedir}/gstreamer-%{majorminor}/gst/gl +%{_includedir}/gstreamer-%{majorminor}/gst/video # pkg-config files +%{_libdir}/pkgconfig/gstreamer-bad-audio-%{majorminor}.pc +%{_libdir}/pkgconfig/gstreamer-bad-base-%{majorminor}.pc +%{_libdir}/pkgconfig/gstreamer-bad-video-%{majorminor}.pc %{_libdir}/pkgconfig/gstreamer-codecparsers-%{majorminor}.pc %{_libdir}/pkgconfig/gstreamer-gl-%{majorminor}.pc %{_libdir}/pkgconfig/gstreamer-insertbin-%{majorminor}.pc %{_libdir}/pkgconfig/gstreamer-mpegts-%{majorminor}.pc +%{_libdir}/pkgconfig/gstreamer-player-%{majorminor}.pc %{_libdir}/pkgconfig/gstreamer-plugins-bad-%{majorminor}.pc %changelog +* Thu Mar 09 2017 Wim Taymans - 1.10.4-2 +- Disable plugins +- Fix origin +- Resolves: #1429587 + +* Mon Mar 06 2017 Wim Taymans - 1.10.4-1 +- Update to 1.10.4 +- Remove unbuilt plugins +- Resolves: #1429587 + * Wed Dec 07 2016 Wim Taymans - 1.4.5-6 - Fix h264 and h265 buffer size checks - Fix mpegts pat parsing and add more size checks -Resolves: rhbz#1400897 +Resolves: rhbz#1400898 * Tue Dec 06 2016 Wim Taymans - 1.4.5-5 - vmncdec: Sanity-check width/height before using it -Resolves: rhbz#1400897 +Resolves: rhbz#1400898 * Thu May 26 2016 Wim Taymans - 1.4.5-4 - rebuild for libdvdnav update