--- /dev/null
+
+/* autogenerated from gstaudioconvertorc.orc */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+#ifndef DISABLE_ORC
+#include <orc/orc.h>
+#else
+#include <stdint.h>
+#endif
+#include <glib.h>
+
+void orc_audio_convert_unpack_u8 (gint32 * d1, const guint8 * s1, int p1,
+ int n);
+void orc_audio_convert_unpack_s8 (gint32 * d1, const guint8 * s1, int p1,
+ int n);
+void orc_audio_convert_unpack_u16 (gint32 * d1, const guint8 * s1, int p1,
+ int n);
+void orc_audio_convert_unpack_s16 (gint32 * d1, const guint8 * s1, int p1,
+ int n);
+void orc_audio_convert_unpack_u16_swap (gint32 * d1, const guint8 * s1, int p1,
+ int n);
+void orc_audio_convert_unpack_s16_swap (gint32 * d1, const guint8 * s1, int p1,
+ int n);
+void orc_audio_convert_unpack_u32 (gint32 * d1, const guint8 * s1, int p1,
+ int n);
+void orc_audio_convert_unpack_s32 (gint32 * d1, const guint8 * s1, int p1,
+ int n);
+void orc_audio_convert_unpack_u32_swap (gint32 * d1, const guint8 * s1, int p1,
+ int n);
+void orc_audio_convert_unpack_s32_swap (gint32 * d1, const guint8 * s1, int p1,
+ int n);
+void orc_audio_convert_pack_u8 (guint8 * d1, const gint32 * s1, int p1, int n);
+void orc_audio_convert_pack_s8 (guint8 * d1, const gint32 * s1, int p1, int n);
+void orc_audio_convert_pack_u16 (guint8 * d1, const gint32 * s1, int p1, int n);
+void orc_audio_convert_pack_s16 (guint8 * d1, const gint32 * s1, int p1, int n);
+void orc_audio_convert_pack_u16_swap (guint8 * d1, const gint32 * s1, int p1,
+ int n);
+void orc_audio_convert_pack_s16_swap (guint8 * d1, const gint32 * s1, int p1,
+ int n);
+void orc_audio_convert_pack_u32 (guint8 * d1, const gint32 * s1, int p1, int n);
+void orc_audio_convert_pack_s32 (guint8 * d1, const gint32 * s1, int p1, int n);
+void orc_audio_convert_pack_u32_swap (guint8 * d1, const gint32 * s1, int p1,
+ int n);
+void orc_audio_convert_pack_s32_swap (guint8 * d1, const gint32 * s1, int p1,
+ int n);
+
+
+/* begin Orc C target preamble */
+#define ORC_CLAMP(x,a,b) ((x)<(a) ? (a) : ((x)>(b) ? (b) : (x)))
+#define ORC_ABS(a) ((a)<0 ? -(a) : (a))
+#define ORC_MIN(a,b) ((a)<(b) ? (a) : (b))
+#define ORC_MAX(a,b) ((a)>(b) ? (a) : (b))
+#define ORC_SB_MAX 127
+#define ORC_SB_MIN (-1-ORC_SB_MAX)
+#define ORC_UB_MAX 255
+#define ORC_UB_MIN 0
+#define ORC_SW_MAX 32767
+#define ORC_SW_MIN (-1-ORC_SW_MAX)
+#define ORC_UW_MAX 65535
+#define ORC_UW_MIN 0
+#define ORC_SL_MAX 2147483647
+#define ORC_SL_MIN (-1-ORC_SL_MAX)
+#define ORC_UL_MAX 4294967295U
+#define ORC_UL_MIN 0
+#define ORC_CLAMP_SB(x) ORC_CLAMP(x,ORC_SB_MIN,ORC_SB_MAX)
+#define ORC_CLAMP_UB(x) ORC_CLAMP(x,ORC_UB_MIN,ORC_UB_MAX)
+#define ORC_CLAMP_SW(x) ORC_CLAMP(x,ORC_SW_MIN,ORC_SW_MAX)
+#define ORC_CLAMP_UW(x) ORC_CLAMP(x,ORC_UW_MIN,ORC_UW_MAX)
+#define ORC_CLAMP_SL(x) ORC_CLAMP(x,ORC_SL_MIN,ORC_SL_MAX)
+#define ORC_CLAMP_UL(x) ORC_CLAMP(x,ORC_UL_MIN,ORC_UL_MAX)
+#define ORC_SWAP_W(x) ((((x)&0xff)<<8) | (((x)&0xff00)>>8))
+#define ORC_SWAP_L(x) ((((x)&0xff)<<24) | (((x)&0xff00)<<8) | (((x)&0xff0000)>>8) | (((x)&0xff000000)>>24))
+#define ORC_PTR_OFFSET(ptr,offset) ((void *)(((unsigned char *)(ptr)) + (offset)))
+#define ORC_AS_FLOAT(x) (((union { int i; float f; } *)(&x))->f)
+typedef union
+{
+ int32_t i;
+ float f;
+} orc_union32;
+typedef union
+{
+ int64_t i;
+ double f;
+} orc_union64;
+/* end Orc C target preamble */
+
+
+
+/* orc_audio_convert_unpack_u8 */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_unpack_u8 (gint32 * d1, const guint8 * s1, int p1, int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ int8_t var4;
+ const int8_t *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = p1;
+ int16_t var32;
+ orc_union32 var33;
+ orc_union32 var34;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (int8_t *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: convubw */
+ var32 = (uint8_t) var4;
+ /* 1: convuwl */
+ var33.i = (uint16_t) var32;
+ /* 2: shll */
+ var34.i = var33.i << var24.i;
+ /* 3: xorl */
+ var0.i = var34.i ^ var16.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_unpack_u8 (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ int8_t var4;
+ const int8_t *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ int16_t var32;
+ orc_union32 var33;
+ orc_union32 var34;
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (int8_t *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: convubw */
+ var32 = (uint8_t) var4;
+ /* 1: convuwl */
+ var33.i = (uint16_t) var32;
+ /* 2: shll */
+ var34.i = var33.i << var24.i;
+ /* 3: xorl */
+ var0.i = var34.i ^ var16.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_unpack_u8 (gint32 * d1, const guint8 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_unpack_u8");
+ orc_program_set_backup_function (p, _backup_orc_audio_convert_unpack_u8);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 1, "s1");
+ orc_program_add_constant (p, 4, 0x80000000, "c1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 2, "t1");
+ orc_program_add_temporary (p, 4, "t2");
+
+ orc_program_append (p, "convubw", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1);
+ orc_program_append (p, "convuwl", ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1);
+ orc_program_append (p, "shll", ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_P1);
+ orc_program_append (p, "xorl", ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_C1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_unpack_s8 */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_unpack_s8 (gint32 * d1, const guint8 * s1, int p1, int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ int8_t var4;
+ const int8_t *ptr4;
+ const orc_union32 var24 = p1;
+ int16_t var32;
+ orc_union32 var33;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (int8_t *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: convubw */
+ var32 = (uint8_t) var4;
+ /* 1: convuwl */
+ var33.i = (uint16_t) var32;
+ /* 2: shll */
+ var0.i = var33.i << var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_unpack_s8 (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ int8_t var4;
+ const int8_t *ptr4;
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ int16_t var32;
+ orc_union32 var33;
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (int8_t *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: convubw */
+ var32 = (uint8_t) var4;
+ /* 1: convuwl */
+ var33.i = (uint16_t) var32;
+ /* 2: shll */
+ var0.i = var33.i << var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_unpack_s8 (gint32 * d1, const guint8 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_unpack_s8");
+ orc_program_set_backup_function (p, _backup_orc_audio_convert_unpack_s8);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 1, "s1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 2, "t1");
+ orc_program_add_temporary (p, 4, "t2");
+
+ orc_program_append (p, "convubw", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1);
+ orc_program_append (p, "convuwl", ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1);
+ orc_program_append (p, "shll", ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_P1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_unpack_u16 */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_unpack_u16 (gint32 * d1, const guint8 * s1, int p1, int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ int16_t var4;
+ const int16_t *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+ orc_union32 var33;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (int16_t *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: convuwl */
+ var32.i = (uint16_t) var4;
+ /* 1: shll */
+ var33.i = var32.i << var24.i;
+ /* 2: xorl */
+ var0.i = var33.i ^ var16.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_unpack_u16 (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ int16_t var4;
+ const int16_t *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+ orc_union32 var33;
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (int16_t *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: convuwl */
+ var32.i = (uint16_t) var4;
+ /* 1: shll */
+ var33.i = var32.i << var24.i;
+ /* 2: xorl */
+ var0.i = var33.i ^ var16.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_unpack_u16 (gint32 * d1, const guint8 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_unpack_u16");
+ orc_program_set_backup_function (p, _backup_orc_audio_convert_unpack_u16);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 2, "s1");
+ orc_program_add_constant (p, 4, 0x80000000, "c1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+
+ orc_program_append (p, "convuwl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1);
+ orc_program_append (p, "shll", ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_P1);
+ orc_program_append (p, "xorl", ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_C1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_unpack_s16 */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_unpack_s16 (gint32 * d1, const guint8 * s1, int p1, int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ int16_t var4;
+ const int16_t *ptr4;
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (int16_t *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: convuwl */
+ var32.i = (uint16_t) var4;
+ /* 1: shll */
+ var0.i = var32.i << var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_unpack_s16 (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ int16_t var4;
+ const int16_t *ptr4;
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (int16_t *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: convuwl */
+ var32.i = (uint16_t) var4;
+ /* 1: shll */
+ var0.i = var32.i << var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_unpack_s16 (gint32 * d1, const guint8 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_unpack_s16");
+ orc_program_set_backup_function (p, _backup_orc_audio_convert_unpack_s16);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 2, "s1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+
+ orc_program_append (p, "convuwl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1);
+ orc_program_append (p, "shll", ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_P1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_unpack_u16_swap */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_unpack_u16_swap (gint32 * d1, const guint8 * s1, int p1,
+ int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ int16_t var4;
+ const int16_t *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = p1;
+ int16_t var32;
+ orc_union32 var33;
+ orc_union32 var34;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (int16_t *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: swapw */
+ var32 = ORC_SWAP_W (var4);
+ /* 1: convuwl */
+ var33.i = (uint16_t) var32;
+ /* 2: shll */
+ var34.i = var33.i << var24.i;
+ /* 3: xorl */
+ var0.i = var34.i ^ var16.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_unpack_u16_swap (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ int16_t var4;
+ const int16_t *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ int16_t var32;
+ orc_union32 var33;
+ orc_union32 var34;
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (int16_t *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: swapw */
+ var32 = ORC_SWAP_W (var4);
+ /* 1: convuwl */
+ var33.i = (uint16_t) var32;
+ /* 2: shll */
+ var34.i = var33.i << var24.i;
+ /* 3: xorl */
+ var0.i = var34.i ^ var16.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_unpack_u16_swap (gint32 * d1, const guint8 * s1, int p1,
+ int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_unpack_u16_swap");
+ orc_program_set_backup_function (p,
+ _backup_orc_audio_convert_unpack_u16_swap);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 2, "s1");
+ orc_program_add_constant (p, 4, 0x80000000, "c1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 2, "t1");
+ orc_program_add_temporary (p, 4, "t2");
+
+ orc_program_append (p, "swapw", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1);
+ orc_program_append (p, "convuwl", ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1);
+ orc_program_append (p, "shll", ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_P1);
+ orc_program_append (p, "xorl", ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_C1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_unpack_s16_swap */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_unpack_s16_swap (gint32 * d1, const guint8 * s1, int p1,
+ int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ int16_t var4;
+ const int16_t *ptr4;
+ const orc_union32 var24 = p1;
+ int16_t var32;
+ orc_union32 var33;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (int16_t *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: swapw */
+ var32 = ORC_SWAP_W (var4);
+ /* 1: convuwl */
+ var33.i = (uint16_t) var32;
+ /* 2: shll */
+ var0.i = var33.i << var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_unpack_s16_swap (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ int16_t var4;
+ const int16_t *ptr4;
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ int16_t var32;
+ orc_union32 var33;
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (int16_t *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: swapw */
+ var32 = ORC_SWAP_W (var4);
+ /* 1: convuwl */
+ var33.i = (uint16_t) var32;
+ /* 2: shll */
+ var0.i = var33.i << var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_unpack_s16_swap (gint32 * d1, const guint8 * s1, int p1,
+ int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_unpack_s16_swap");
+ orc_program_set_backup_function (p,
+ _backup_orc_audio_convert_unpack_s16_swap);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 2, "s1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 2, "t1");
+ orc_program_add_temporary (p, 4, "t2");
+
+ orc_program_append (p, "swapw", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1);
+ orc_program_append (p, "convuwl", ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1);
+ orc_program_append (p, "shll", ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_P1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_unpack_u32 */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_unpack_u32 (gint32 * d1, const guint8 * s1, int p1, int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shll */
+ var32.i = var4.i << var24.i;
+ /* 1: xorl */
+ var0.i = var32.i ^ var16.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_unpack_u32 (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shll */
+ var32.i = var4.i << var24.i;
+ /* 1: xorl */
+ var0.i = var32.i ^ var16.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_unpack_u32 (gint32 * d1, const guint8 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_unpack_u32");
+ orc_program_set_backup_function (p, _backup_orc_audio_convert_unpack_u32);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_constant (p, 4, 0x80000000, "c1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+
+ orc_program_append (p, "shll", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_P1);
+ orc_program_append (p, "xorl", ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_C1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_unpack_s32 */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_unpack_s32 (gint32 * d1, const guint8 * s1, int p1, int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = p1;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shll */
+ var0.i = var4.i << var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_unpack_s32 (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shll */
+ var0.i = var4.i << var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_unpack_s32 (gint32 * d1, const guint8 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_unpack_s32");
+ orc_program_set_backup_function (p, _backup_orc_audio_convert_unpack_s32);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_parameter (p, 4, "p1");
+
+ orc_program_append (p, "shll", ORC_VAR_D1, ORC_VAR_S1, ORC_VAR_P1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_unpack_u32_swap */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_unpack_u32_swap (gint32 * d1, const guint8 * s1, int p1,
+ int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+ orc_union32 var33;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: swapl */
+ var32.i = ORC_SWAP_L (var4.i);
+ /* 1: shll */
+ var33.i = var32.i << var24.i;
+ /* 2: xorl */
+ var0.i = var33.i ^ var16.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_unpack_u32_swap (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+ orc_union32 var33;
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: swapl */
+ var32.i = ORC_SWAP_L (var4.i);
+ /* 1: shll */
+ var33.i = var32.i << var24.i;
+ /* 2: xorl */
+ var0.i = var33.i ^ var16.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_unpack_u32_swap (gint32 * d1, const guint8 * s1, int p1,
+ int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_unpack_u32_swap");
+ orc_program_set_backup_function (p,
+ _backup_orc_audio_convert_unpack_u32_swap);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_constant (p, 4, 0x80000000, "c1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+
+ orc_program_append (p, "swapl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1);
+ orc_program_append (p, "shll", ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_P1);
+ orc_program_append (p, "xorl", ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_C1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_unpack_s32_swap */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_unpack_s32_swap (gint32 * d1, const guint8 * s1, int p1,
+ int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: swapl */
+ var32.i = ORC_SWAP_L (var4.i);
+ /* 1: shll */
+ var0.i = var32.i << var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_unpack_s32_swap (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: swapl */
+ var32.i = ORC_SWAP_L (var4.i);
+ /* 1: shll */
+ var0.i = var32.i << var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_unpack_s32_swap (gint32 * d1, const guint8 * s1, int p1,
+ int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_unpack_s32_swap");
+ orc_program_set_backup_function (p,
+ _backup_orc_audio_convert_unpack_s32_swap);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+
+ orc_program_append (p, "swapl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1);
+ orc_program_append (p, "shll", ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_P1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_pack_u8 */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_pack_u8 (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ int i;
+ int8_t var0;
+ int8_t *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+ int16_t var33;
+ orc_union32 var34;
+
+ ptr0 = (int8_t *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: xorl */
+ var32.i = var4.i ^ var16.i;
+ /* 1: shrul */
+ var34.i = ((uint32_t) var32.i) >> var24.i;
+ /* 2: convlw */
+ var33 = var34.i;
+ /* 3: convwb */
+ var0 = var33;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_pack_u8 (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ int8_t var0;
+ int8_t *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+ int16_t var33;
+ orc_union32 var34;
+
+ ptr0 = (int8_t *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: xorl */
+ var32.i = var4.i ^ var16.i;
+ /* 1: shrul */
+ var34.i = ((uint32_t) var32.i) >> var24.i;
+ /* 2: convlw */
+ var33 = var34.i;
+ /* 3: convwb */
+ var0 = var33;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_pack_u8 (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_pack_u8");
+ orc_program_set_backup_function (p, _backup_orc_audio_convert_pack_u8);
+ orc_program_add_destination (p, 1, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_constant (p, 4, 0x80000000, "c1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+ orc_program_add_temporary (p, 2, "t2");
+
+ orc_program_append (p, "xorl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_C1);
+ orc_program_append (p, "shrul", ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_P1);
+ orc_program_append (p, "convlw", ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1);
+ orc_program_append (p, "convwb", ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_D1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_pack_s8 */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_pack_s8 (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ int i;
+ int8_t var0;
+ int8_t *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+ int16_t var33;
+
+ ptr0 = (int8_t *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shrsl */
+ var32.i = var4.i >> var24.i;
+ /* 1: convlw */
+ var33 = var32.i;
+ /* 2: convwb */
+ var0 = var33;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_pack_s8 (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ int8_t var0;
+ int8_t *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+ int16_t var33;
+
+ ptr0 = (int8_t *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shrsl */
+ var32.i = var4.i >> var24.i;
+ /* 1: convlw */
+ var33 = var32.i;
+ /* 2: convwb */
+ var0 = var33;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_pack_s8 (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_pack_s8");
+ orc_program_set_backup_function (p, _backup_orc_audio_convert_pack_s8);
+ orc_program_add_destination (p, 1, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+ orc_program_add_temporary (p, 2, "t2");
+
+ orc_program_append (p, "shrsl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_P1);
+ orc_program_append (p, "convlw", ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1);
+ orc_program_append (p, "convwb", ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_D1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_pack_u16 */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_pack_u16 (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ int i;
+ int16_t var0;
+ int16_t *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+ orc_union32 var33;
+
+ ptr0 = (int16_t *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: xorl */
+ var32.i = var4.i ^ var16.i;
+ /* 1: shrul */
+ var33.i = ((uint32_t) var32.i) >> var24.i;
+ /* 2: convlw */
+ var0 = var33.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_pack_u16 (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ int16_t var0;
+ int16_t *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+ orc_union32 var33;
+
+ ptr0 = (int16_t *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: xorl */
+ var32.i = var4.i ^ var16.i;
+ /* 1: shrul */
+ var33.i = ((uint32_t) var32.i) >> var24.i;
+ /* 2: convlw */
+ var0 = var33.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_pack_u16 (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_pack_u16");
+ orc_program_set_backup_function (p, _backup_orc_audio_convert_pack_u16);
+ orc_program_add_destination (p, 2, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_constant (p, 4, 0x80000000, "c1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+
+ orc_program_append (p, "xorl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_C1);
+ orc_program_append (p, "shrul", ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_P1);
+ orc_program_append (p, "convlw", ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_D1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_pack_s16 */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_pack_s16 (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ int i;
+ int16_t var0;
+ int16_t *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+
+ ptr0 = (int16_t *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shrsl */
+ var32.i = var4.i >> var24.i;
+ /* 1: convlw */
+ var0 = var32.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_pack_s16 (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ int16_t var0;
+ int16_t *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+
+ ptr0 = (int16_t *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shrsl */
+ var32.i = var4.i >> var24.i;
+ /* 1: convlw */
+ var0 = var32.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_pack_s16 (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_pack_s16");
+ orc_program_set_backup_function (p, _backup_orc_audio_convert_pack_s16);
+ orc_program_add_destination (p, 2, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+
+ orc_program_append (p, "shrsl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_P1);
+ orc_program_append (p, "convlw", ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_D1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_pack_u16_swap */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_pack_u16_swap (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ int i;
+ int16_t var0;
+ int16_t *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+ int16_t var33;
+ orc_union32 var34;
+
+ ptr0 = (int16_t *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: xorl */
+ var32.i = var4.i ^ var16.i;
+ /* 1: shrul */
+ var34.i = ((uint32_t) var32.i) >> var24.i;
+ /* 2: convlw */
+ var33 = var34.i;
+ /* 3: swapw */
+ var0 = ORC_SWAP_W (var33);
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_pack_u16_swap (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ int16_t var0;
+ int16_t *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+ int16_t var33;
+ orc_union32 var34;
+
+ ptr0 = (int16_t *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: xorl */
+ var32.i = var4.i ^ var16.i;
+ /* 1: shrul */
+ var34.i = ((uint32_t) var32.i) >> var24.i;
+ /* 2: convlw */
+ var33 = var34.i;
+ /* 3: swapw */
+ var0 = ORC_SWAP_W (var33);
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_pack_u16_swap (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_pack_u16_swap");
+ orc_program_set_backup_function (p,
+ _backup_orc_audio_convert_pack_u16_swap);
+ orc_program_add_destination (p, 2, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_constant (p, 4, 0x80000000, "c1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+ orc_program_add_temporary (p, 2, "t2");
+
+ orc_program_append (p, "xorl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_C1);
+ orc_program_append (p, "shrul", ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_P1);
+ orc_program_append (p, "convlw", ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1);
+ orc_program_append (p, "swapw", ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_D1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_pack_s16_swap */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_pack_s16_swap (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ int i;
+ int16_t var0;
+ int16_t *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+ int16_t var33;
+
+ ptr0 = (int16_t *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shrsl */
+ var32.i = var4.i >> var24.i;
+ /* 1: convlw */
+ var33 = var32.i;
+ /* 2: swapw */
+ var0 = ORC_SWAP_W (var33);
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_pack_s16_swap (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ int16_t var0;
+ int16_t *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+ int16_t var33;
+
+ ptr0 = (int16_t *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shrsl */
+ var32.i = var4.i >> var24.i;
+ /* 1: convlw */
+ var33 = var32.i;
+ /* 2: swapw */
+ var0 = ORC_SWAP_W (var33);
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_pack_s16_swap (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_pack_s16_swap");
+ orc_program_set_backup_function (p,
+ _backup_orc_audio_convert_pack_s16_swap);
+ orc_program_add_destination (p, 2, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+ orc_program_add_temporary (p, 2, "t2");
+
+ orc_program_append (p, "shrsl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_P1);
+ orc_program_append (p, "convlw", ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1);
+ orc_program_append (p, "swapw", ORC_VAR_D1, ORC_VAR_T2, ORC_VAR_D1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_pack_u32 */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_pack_u32 (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: xorl */
+ var32.i = var4.i ^ var16.i;
+ /* 1: shrul */
+ var0.i = ((uint32_t) var32.i) >> var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_pack_u32 (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: xorl */
+ var32.i = var4.i ^ var16.i;
+ /* 1: shrul */
+ var0.i = ((uint32_t) var32.i) >> var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_pack_u32 (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_pack_u32");
+ orc_program_set_backup_function (p, _backup_orc_audio_convert_pack_u32);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_constant (p, 4, 0x80000000, "c1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+
+ orc_program_append (p, "xorl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_C1);
+ orc_program_append (p, "shrul", ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_P1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_pack_s32 */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_pack_s32 (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = p1;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shrsl */
+ var0.i = var4.i >> var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_pack_s32 (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shrsl */
+ var0.i = var4.i >> var24.i;
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_pack_s32 (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_pack_s32");
+ orc_program_set_backup_function (p, _backup_orc_audio_convert_pack_s32);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_parameter (p, 4, "p1");
+
+ orc_program_append (p, "shrsl", ORC_VAR_D1, ORC_VAR_S1, ORC_VAR_P1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_pack_u32_swap */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_pack_u32_swap (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+ orc_union32 var33;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: xorl */
+ var32.i = var4.i ^ var16.i;
+ /* 1: shrul */
+ var33.i = ((uint32_t) var32.i) >> var24.i;
+ /* 2: swapl */
+ var0.i = ORC_SWAP_L (var33.i);
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_pack_u32_swap (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var16 = { 0x80000000 };
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+ orc_union32 var33;
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: xorl */
+ var32.i = var4.i ^ var16.i;
+ /* 1: shrul */
+ var33.i = ((uint32_t) var32.i) >> var24.i;
+ /* 2: swapl */
+ var0.i = ORC_SWAP_L (var33.i);
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_pack_u32_swap (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_pack_u32_swap");
+ orc_program_set_backup_function (p,
+ _backup_orc_audio_convert_pack_u32_swap);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_constant (p, 4, 0x80000000, "c1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+
+ orc_program_append (p, "xorl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_C1);
+ orc_program_append (p, "shrul", ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_P1);
+ orc_program_append (p, "swapl", ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_D1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif
+
+
+/* orc_audio_convert_pack_s32_swap */
+#ifdef DISABLE_ORC
+void
+orc_audio_convert_pack_s32_swap (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ int i;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = p1;
+ orc_union32 var32;
+
+ ptr0 = (orc_union32 *) d1;
+ ptr4 = (orc_union32 *) s1;
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shrsl */
+ var32.i = var4.i >> var24.i;
+ /* 1: swapl */
+ var0.i = ORC_SWAP_L (var32.i);
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+#else
+static void
+_backup_orc_audio_convert_pack_s32_swap (OrcExecutor * ex)
+{
+ int i;
+ int n = ex->n;
+ orc_union32 var0;
+ orc_union32 *ptr0;
+ orc_union32 var4;
+ const orc_union32 *ptr4;
+ const orc_union32 var24 = *(orc_union32 *) (ex->params + 24);
+ orc_union32 var32;
+
+ ptr0 = (orc_union32 *) ex->arrays[0];
+ ptr4 = (orc_union32 *) ex->arrays[4];
+
+ for (i = 0; i < n; i++) {
+ var4 = *ptr4;
+ ptr4++;
+ /* 0: shrsl */
+ var32.i = var4.i >> var24.i;
+ /* 1: swapl */
+ var0.i = ORC_SWAP_L (var32.i);
+ *ptr0 = var0;
+ ptr0++;
+ }
+
+}
+
+void
+orc_audio_convert_pack_s32_swap (guint8 * d1, const gint32 * s1, int p1, int n)
+{
+ OrcExecutor _ex, *ex = &_ex;
+ static int p_inited = 0;
+ static OrcProgram *p = 0;
+ void (*func) (OrcExecutor *);
+
+ if (!p_inited) {
+ orc_once_mutex_lock ();
+ if (!p_inited) {
+ OrcCompileResult result;
+
+ p = orc_program_new ();
+ orc_program_set_name (p, "orc_audio_convert_pack_s32_swap");
+ orc_program_set_backup_function (p,
+ _backup_orc_audio_convert_pack_s32_swap);
+ orc_program_add_destination (p, 4, "d1");
+ orc_program_add_source (p, 4, "s1");
+ orc_program_add_parameter (p, 4, "p1");
+ orc_program_add_temporary (p, 4, "t1");
+
+ orc_program_append (p, "shrsl", ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_P1);
+ orc_program_append (p, "swapl", ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_D1);
+
+ result = orc_program_compile (p);
+ }
+ p_inited = TRUE;
+ orc_once_mutex_unlock ();
+ }
+ ex->program = p;
+
+ ex->n = n;
+ ex->arrays[ORC_VAR_D1] = d1;
+ ex->arrays[ORC_VAR_S1] = (void *) s1;
+ ex->params[ORC_VAR_P1] = p1;
+
+ func = p->code_exec;
+ func (ex);
+}
+#endif