Blame gst/volume/gstvolumeorc-dist.c

Packit 971217
Packit 971217
/* autogenerated from gstvolumeorc.orc */
Packit 971217
Packit 971217
#ifdef HAVE_CONFIG_H
Packit 971217
#include "config.h"
Packit 971217
#endif
Packit 971217
#include <glib.h>
Packit 971217
Packit 971217
#ifndef _ORC_INTEGER_TYPEDEFS_
Packit 971217
#define _ORC_INTEGER_TYPEDEFS_
Packit 971217
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
Packit 971217
#include <stdint.h>
Packit 971217
typedef int8_t orc_int8;
Packit 971217
typedef int16_t orc_int16;
Packit 971217
typedef int32_t orc_int32;
Packit 971217
typedef int64_t orc_int64;
Packit 971217
typedef uint8_t orc_uint8;
Packit 971217
typedef uint16_t orc_uint16;
Packit 971217
typedef uint32_t orc_uint32;
Packit 971217
typedef uint64_t orc_uint64;
Packit 971217
#define ORC_UINT64_C(x) UINT64_C(x)
Packit 971217
#elif defined(_MSC_VER)
Packit 971217
typedef signed __int8 orc_int8;
Packit 971217
typedef signed __int16 orc_int16;
Packit 971217
typedef signed __int32 orc_int32;
Packit 971217
typedef signed __int64 orc_int64;
Packit 971217
typedef unsigned __int8 orc_uint8;
Packit 971217
typedef unsigned __int16 orc_uint16;
Packit 971217
typedef unsigned __int32 orc_uint32;
Packit 971217
typedef unsigned __int64 orc_uint64;
Packit 971217
#define ORC_UINT64_C(x) (x##Ui64)
Packit 971217
#define inline __inline
Packit 971217
#else
Packit 971217
#include <limits.h>
Packit 971217
typedef signed char orc_int8;
Packit 971217
typedef short orc_int16;
Packit 971217
typedef int orc_int32;
Packit 971217
typedef unsigned char orc_uint8;
Packit 971217
typedef unsigned short orc_uint16;
Packit 971217
typedef unsigned int orc_uint32;
Packit 971217
#if INT_MAX == LONG_MAX
Packit 971217
typedef long long orc_int64;
Packit 971217
typedef unsigned long long orc_uint64;
Packit 971217
#define ORC_UINT64_C(x) (x##ULL)
Packit 971217
#else
Packit 971217
typedef long orc_int64;
Packit 971217
typedef unsigned long orc_uint64;
Packit 971217
#define ORC_UINT64_C(x) (x##UL)
Packit 971217
#endif
Packit 971217
#endif
Packit 971217
typedef union
Packit 971217
{
Packit 971217
  orc_int16 i;
Packit 971217
  orc_int8 x2[2];
Packit 971217
} orc_union16;
Packit 971217
typedef union
Packit 971217
{
Packit 971217
  orc_int32 i;
Packit 971217
  float f;
Packit 971217
  orc_int16 x2[2];
Packit 971217
  orc_int8 x4[4];
Packit 971217
} orc_union32;
Packit 971217
typedef union
Packit 971217
{
Packit 971217
  orc_int64 i;
Packit 971217
  double f;
Packit 971217
  orc_int32 x2[2];
Packit 971217
  float x2f[2];
Packit 971217
  orc_int16 x4[4];
Packit 971217
} orc_union64;
Packit 971217
#endif
Packit 971217
#ifndef ORC_RESTRICT
Packit 971217
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
Packit 971217
#define ORC_RESTRICT restrict
Packit 971217
#elif defined(__GNUC__) && __GNUC__ >= 4
Packit 971217
#define ORC_RESTRICT __restrict__
Packit 971217
#else
Packit 971217
#define ORC_RESTRICT
Packit 971217
#endif
Packit 971217
#endif
Packit 971217
Packit 971217
#ifndef ORC_INTERNAL
Packit 971217
#if defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)
Packit 971217
#define ORC_INTERNAL __attribute__((visibility("hidden")))
Packit 971217
#elif defined(__SUNPRO_C) && (__SUNPRO_C >= 0x550)
Packit 971217
#define ORC_INTERNAL __hidden
Packit 971217
#elif defined (__GNUC__)
Packit 971217
#define ORC_INTERNAL __attribute__((visibility("hidden")))
Packit 971217
#else
Packit 971217
#define ORC_INTERNAL
Packit 971217
#endif
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
#ifndef DISABLE_ORC
Packit 971217
#include <orc/orc.h>
Packit 971217
#endif
Packit 971217
void volume_orc_scalarmultiply_f64_ns (double *ORC_RESTRICT d1, double p1,
Packit 971217
    int n);
Packit 971217
void volume_orc_scalarmultiply_f32_ns (float *ORC_RESTRICT d1, float p1, int n);
Packit 971217
void volume_orc_process_int32 (gint32 * ORC_RESTRICT d1, int p1, int n);
Packit 971217
void volume_orc_process_int32_clamp (gint32 * ORC_RESTRICT d1, int p1, int n);
Packit 971217
void volume_orc_process_int16 (gint16 * ORC_RESTRICT d1, int p1, int n);
Packit 971217
void volume_orc_process_int16_clamp (gint16 * ORC_RESTRICT d1, int p1, int n);
Packit 971217
void volume_orc_process_int8 (gint8 * ORC_RESTRICT d1, int p1, int n);
Packit 971217
void volume_orc_process_int8_clamp (gint8 * ORC_RESTRICT d1, int p1, int n);
Packit 971217
void volume_orc_memset_f64 (gdouble * ORC_RESTRICT d1, double p1, int n);
Packit 971217
void volume_orc_prepare_volumes (gdouble * ORC_RESTRICT d1,
Packit 971217
    const gboolean * ORC_RESTRICT s1, int n);
Packit 971217
void volume_orc_process_controlled_f64_1ch (gdouble * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n);
Packit 971217
void volume_orc_process_controlled_f32_1ch (gfloat * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n);
Packit 971217
void volume_orc_process_controlled_f32_2ch (gfloat * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n);
Packit 971217
void volume_orc_process_controlled_int32_1ch (gint32 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n);
Packit 971217
void volume_orc_process_controlled_int16_1ch (gint16 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n);
Packit 971217
void volume_orc_process_controlled_int16_2ch (gint16 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n);
Packit 971217
void volume_orc_process_controlled_int8_1ch (gint8 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n);
Packit 971217
void volume_orc_process_controlled_int8_2ch (gint8 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n);
Packit 971217
Packit 971217
Packit 971217
/* begin Orc C target preamble */
Packit 971217
#define ORC_CLAMP(x,a,b) ((x)<(a) ? (a) : ((x)>(b) ? (b) : (x)))
Packit 971217
#define ORC_ABS(a) ((a)<0 ? -(a) : (a))
Packit 971217
#define ORC_MIN(a,b) ((a)<(b) ? (a) : (b))
Packit 971217
#define ORC_MAX(a,b) ((a)>(b) ? (a) : (b))
Packit 971217
#define ORC_SB_MAX 127
Packit 971217
#define ORC_SB_MIN (-1-ORC_SB_MAX)
Packit 971217
#define ORC_UB_MAX (orc_uint8) 255
Packit 971217
#define ORC_UB_MIN 0
Packit 971217
#define ORC_SW_MAX 32767
Packit 971217
#define ORC_SW_MIN (-1-ORC_SW_MAX)
Packit 971217
#define ORC_UW_MAX (orc_uint16)65535
Packit 971217
#define ORC_UW_MIN 0
Packit 971217
#define ORC_SL_MAX 2147483647
Packit 971217
#define ORC_SL_MIN (-1-ORC_SL_MAX)
Packit 971217
#define ORC_UL_MAX 4294967295U
Packit 971217
#define ORC_UL_MIN 0
Packit 971217
#define ORC_CLAMP_SB(x) ORC_CLAMP(x,ORC_SB_MIN,ORC_SB_MAX)
Packit 971217
#define ORC_CLAMP_UB(x) ORC_CLAMP(x,ORC_UB_MIN,ORC_UB_MAX)
Packit 971217
#define ORC_CLAMP_SW(x) ORC_CLAMP(x,ORC_SW_MIN,ORC_SW_MAX)
Packit 971217
#define ORC_CLAMP_UW(x) ORC_CLAMP(x,ORC_UW_MIN,ORC_UW_MAX)
Packit 971217
#define ORC_CLAMP_SL(x) ORC_CLAMP(x,ORC_SL_MIN,ORC_SL_MAX)
Packit 971217
#define ORC_CLAMP_UL(x) ORC_CLAMP(x,ORC_UL_MIN,ORC_UL_MAX)
Packit 971217
#define ORC_SWAP_W(x) ((((x)&0xffU)<<8) | (((x)&0xff00U)>>8))
Packit 971217
#define ORC_SWAP_L(x) ((((x)&0xffU)<<24) | (((x)&0xff00U)<<8) | (((x)&0xff0000U)>>8) | (((x)&0xff000000U)>>24))
Packit 971217
#define ORC_SWAP_Q(x) ((((x)&ORC_UINT64_C(0xff))<<56) | (((x)&ORC_UINT64_C(0xff00))<<40) | (((x)&ORC_UINT64_C(0xff0000))<<24) | (((x)&ORC_UINT64_C(0xff000000))<<8) | (((x)&ORC_UINT64_C(0xff00000000))>>8) | (((x)&ORC_UINT64_C(0xff0000000000))>>24) | (((x)&ORC_UINT64_C(0xff000000000000))>>40) | (((x)&ORC_UINT64_C(0xff00000000000000))>>56))
Packit 971217
#define ORC_PTR_OFFSET(ptr,offset) ((void *)(((unsigned char *)(ptr)) + (offset)))
Packit 971217
#define ORC_DENORMAL(x) ((x) & ((((x)&0x7f800000) == 0) ? 0xff800000 : 0xffffffff))
Packit 971217
#define ORC_ISNAN(x) ((((x)&0x7f800000) == 0x7f800000) && (((x)&0x007fffff) != 0))
Packit 971217
#define ORC_DENORMAL_DOUBLE(x) ((x) & ((((x)&ORC_UINT64_C(0x7ff0000000000000)) == 0) ? ORC_UINT64_C(0xfff0000000000000) : ORC_UINT64_C(0xffffffffffffffff)))
Packit 971217
#define ORC_ISNAN_DOUBLE(x) ((((x)&ORC_UINT64_C(0x7ff0000000000000)) == ORC_UINT64_C(0x7ff0000000000000)) && (((x)&ORC_UINT64_C(0x000fffffffffffff)) != 0))
Packit 971217
#ifndef ORC_RESTRICT
Packit 971217
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
Packit 971217
#define ORC_RESTRICT restrict
Packit 971217
#elif defined(__GNUC__) && __GNUC__ >= 4
Packit 971217
#define ORC_RESTRICT __restrict__
Packit 971217
#else
Packit 971217
#define ORC_RESTRICT
Packit 971217
#endif
Packit 971217
#endif
Packit 971217
/* end Orc C target preamble */
Packit 971217
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_scalarmultiply_f64_ns */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_scalarmultiply_f64_ns (double *ORC_RESTRICT d1, double p1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union64 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union64 var32;
Packit 971217
  orc_union64 var33;
Packit 971217
  orc_union64 var34;
Packit 971217
Packit 971217
  ptr0 = (orc_union64 *) d1;
Packit 971217
Packit 971217
  /* 1: loadpq */
Packit 971217
  var33.f = p1;
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadq */
Packit 971217
    var32 = ptr0[i];
Packit 971217
    /* 2: muld */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union64 _src2;
Packit 971217
      orc_union64 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var32.i);
Packit 971217
      _src2.i = ORC_DENORMAL_DOUBLE (var33.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var34.i = ORC_DENORMAL_DOUBLE (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 3: storeq */
Packit 971217
    ptr0[i] = var34;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_scalarmultiply_f64_ns (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union64 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union64 var32;
Packit 971217
  orc_union64 var33;
Packit 971217
  orc_union64 var34;
Packit 971217
Packit 971217
  ptr0 = (orc_union64 *) ex->arrays[0];
Packit 971217
Packit 971217
  /* 1: loadpq */
Packit 971217
  var33.i =
Packit 971217
      (ex->params[24] & 0xffffffff) | ((orc_uint64) (ex->params[24 +
Packit 971217
              (ORC_VAR_T1 - ORC_VAR_P1)]) << 32);
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadq */
Packit 971217
    var32 = ptr0[i];
Packit 971217
    /* 2: muld */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union64 _src2;
Packit 971217
      orc_union64 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var32.i);
Packit 971217
      _src2.i = ORC_DENORMAL_DOUBLE (var33.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var34.i = ORC_DENORMAL_DOUBLE (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 3: storeq */
Packit 971217
    ptr0[i] = var34;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_scalarmultiply_f64_ns (double *ORC_RESTRICT d1, double p1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 32, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 115, 99,
Packit 971217
        97, 108, 97, 114, 109, 117, 108, 116, 105, 112, 108, 121, 95, 102, 54,
Packit 971217
            52,
Packit 971217
        95, 110, 115, 11, 8, 8, 18, 8, 214, 0, 0, 24, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_scalarmultiply_f64_ns);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_scalarmultiply_f64_ns");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_scalarmultiply_f64_ns);
Packit 971217
      orc_program_add_destination (p, 8, "d1");
Packit 971217
      orc_program_add_parameter_double (p, 8, "p1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "muld", 0, ORC_VAR_D1, ORC_VAR_D1, ORC_VAR_P1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  {
Packit 971217
    orc_union64 tmp;
Packit 971217
    tmp.f = p1;
Packit 971217
    ex->params[ORC_VAR_P1] = ((orc_uint64) tmp.i) & 0xffffffff;
Packit 971217
    ex->params[ORC_VAR_T1] = ((orc_uint64) tmp.i) >> 32;
Packit 971217
  }
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_scalarmultiply_f32_ns */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_scalarmultiply_f32_ns (float *ORC_RESTRICT d1, float p1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union32 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union32 var32;
Packit 971217
  orc_union32 var33;
Packit 971217
  orc_union32 var34;
Packit 971217
Packit 971217
  ptr0 = (orc_union32 *) d1;
Packit 971217
Packit 971217
  /* 1: loadpl */
Packit 971217
  var33.f = p1;
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadl */
Packit 971217
    var32 = ptr0[i];
Packit 971217
    /* 2: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var32.i);
Packit 971217
      _src2.i = ORC_DENORMAL (var33.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var34.i = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 3: storel */
Packit 971217
    ptr0[i] = var34;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_scalarmultiply_f32_ns (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union32 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union32 var32;
Packit 971217
  orc_union32 var33;
Packit 971217
  orc_union32 var34;
Packit 971217
Packit 971217
  ptr0 = (orc_union32 *) ex->arrays[0];
Packit 971217
Packit 971217
  /* 1: loadpl */
Packit 971217
  var33.i = ex->params[24];
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadl */
Packit 971217
    var32 = ptr0[i];
Packit 971217
    /* 2: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var32.i);
Packit 971217
      _src2.i = ORC_DENORMAL (var33.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var34.i = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 3: storel */
Packit 971217
    ptr0[i] = var34;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_scalarmultiply_f32_ns (float *ORC_RESTRICT d1, float p1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 32, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 115, 99,
Packit 971217
        97, 108, 97, 114, 109, 117, 108, 116, 105, 112, 108, 121, 95, 102, 51,
Packit 971217
            50,
Packit 971217
        95, 110, 115, 11, 4, 4, 17, 4, 202, 0, 0, 24, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_scalarmultiply_f32_ns);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_scalarmultiply_f32_ns");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_scalarmultiply_f32_ns);
Packit 971217
      orc_program_add_destination (p, 4, "d1");
Packit 971217
      orc_program_add_parameter_float (p, 4, "p1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "mulf", 0, ORC_VAR_D1, ORC_VAR_D1, ORC_VAR_P1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  {
Packit 971217
    orc_union32 tmp;
Packit 971217
    tmp.f = p1;
Packit 971217
    ex->params[ORC_VAR_P1] = tmp.i;
Packit 971217
  }
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_int32 */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_int32 (gint32 * ORC_RESTRICT d1, int p1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union32 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union32 var33;
Packit 971217
  orc_union32 var34;
Packit 971217
  orc_union32 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union64 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_union32 *) d1;
Packit 971217
Packit 971217
  /* 1: loadpl */
Packit 971217
  var34.i = p1;
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadl */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 2: mulslq */
Packit 971217
    var36.i = ((orc_int64) var33.i) * ((orc_int64) var34.i);
Packit 971217
    /* 3: shrsq */
Packit 971217
    var37.i = var36.i >> 27;
Packit 971217
    /* 4: convql */
Packit 971217
    var35.i = var37.i;
Packit 971217
    /* 5: storel */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_int32 (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union32 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union32 var33;
Packit 971217
  orc_union32 var34;
Packit 971217
  orc_union32 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union64 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_union32 *) ex->arrays[0];
Packit 971217
Packit 971217
  /* 1: loadpl */
Packit 971217
  var34.i = ex->params[24];
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadl */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 2: mulslq */
Packit 971217
    var36.i = ((orc_int64) var33.i) * ((orc_int64) var34.i);
Packit 971217
    /* 3: shrsq */
Packit 971217
    var37.i = var36.i >> 27;
Packit 971217
    /* 4: convql */
Packit 971217
    var35.i = var37.i;
Packit 971217
    /* 5: storel */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_int32 (gint32 * ORC_RESTRICT d1, int p1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 24, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 105, 110, 116, 51, 50, 11, 4, 4, 15, 8,
Packit 971217
        27, 0, 0, 0, 0, 0, 0, 0, 16, 4, 20, 8, 178, 32, 0, 24,
Packit 971217
        147, 32, 32, 16, 169, 0, 32, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p, _backup_volume_orc_process_int32);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_int32");
Packit 971217
      orc_program_set_backup_function (p, _backup_volume_orc_process_int32);
Packit 971217
      orc_program_add_destination (p, 4, "d1");
Packit 971217
      orc_program_add_constant_int64 (p, 8, 0x000000000000001bULL, "c1");
Packit 971217
      orc_program_add_parameter (p, 4, "p1");
Packit 971217
      orc_program_add_temporary (p, 8, "t1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "mulslq", 0, ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_P1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "shrsq", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convql", 0, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->params[ORC_VAR_P1] = p1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_int32_clamp */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_int32_clamp (gint32 * ORC_RESTRICT d1, int p1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union32 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union32 var33;
Packit 971217
  orc_union32 var34;
Packit 971217
  orc_union32 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union64 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_union32 *) d1;
Packit 971217
Packit 971217
  /* 1: loadpl */
Packit 971217
  var34.i = p1;
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadl */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 2: mulslq */
Packit 971217
    var36.i = ((orc_int64) var33.i) * ((orc_int64) var34.i);
Packit 971217
    /* 3: shrsq */
Packit 971217
    var37.i = var36.i >> 27;
Packit 971217
    /* 4: convsssql */
Packit 971217
    var35.i = ORC_CLAMP_SL (var37.i);
Packit 971217
    /* 5: storel */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_int32_clamp (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union32 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union32 var33;
Packit 971217
  orc_union32 var34;
Packit 971217
  orc_union32 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union64 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_union32 *) ex->arrays[0];
Packit 971217
Packit 971217
  /* 1: loadpl */
Packit 971217
  var34.i = ex->params[24];
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadl */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 2: mulslq */
Packit 971217
    var36.i = ((orc_int64) var33.i) * ((orc_int64) var34.i);
Packit 971217
    /* 3: shrsq */
Packit 971217
    var37.i = var36.i >> 27;
Packit 971217
    /* 4: convsssql */
Packit 971217
    var35.i = ORC_CLAMP_SL (var37.i);
Packit 971217
    /* 5: storel */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_int32_clamp (gint32 * ORC_RESTRICT d1, int p1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 30, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 105, 110, 116, 51, 50, 95, 99, 108, 97, 109,
Packit 971217
        112, 11, 4, 4, 15, 8, 27, 0, 0, 0, 0, 0, 0, 0, 16, 4,
Packit 971217
        20, 8, 178, 32, 0, 24, 147, 32, 32, 16, 170, 0, 32, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_int32_clamp);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_int32_clamp");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_int32_clamp);
Packit 971217
      orc_program_add_destination (p, 4, "d1");
Packit 971217
      orc_program_add_constant_int64 (p, 8, 0x000000000000001bULL, "c1");
Packit 971217
      orc_program_add_parameter (p, 4, "p1");
Packit 971217
      orc_program_add_temporary (p, 8, "t1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "mulslq", 0, ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_P1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "shrsq", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convsssql", 0, ORC_VAR_D1, ORC_VAR_T1,
Packit 971217
          ORC_VAR_D1, ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->params[ORC_VAR_P1] = p1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_int16 */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_int16 (gint16 * ORC_RESTRICT d1, int p1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union16 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union16 var33;
Packit 971217
  orc_union16 var34;
Packit 971217
  orc_union16 var35;
Packit 971217
  orc_union32 var36;
Packit 971217
  orc_union32 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_union16 *) d1;
Packit 971217
Packit 971217
  /* 1: loadpw */
Packit 971217
  var34.i = p1;
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadw */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 2: mulswl */
Packit 971217
    var36.i = var33.i * var34.i;
Packit 971217
    /* 3: shrsl */
Packit 971217
    var37.i = var36.i >> 11;
Packit 971217
    /* 4: convlw */
Packit 971217
    var35.i = var37.i;
Packit 971217
    /* 5: storew */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_int16 (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union16 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union16 var33;
Packit 971217
  orc_union16 var34;
Packit 971217
  orc_union16 var35;
Packit 971217
  orc_union32 var36;
Packit 971217
  orc_union32 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_union16 *) ex->arrays[0];
Packit 971217
Packit 971217
  /* 1: loadpw */
Packit 971217
  var34.i = ex->params[24];
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadw */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 2: mulswl */
Packit 971217
    var36.i = var33.i * var34.i;
Packit 971217
    /* 3: shrsl */
Packit 971217
    var37.i = var36.i >> 11;
Packit 971217
    /* 4: convlw */
Packit 971217
    var35.i = var37.i;
Packit 971217
    /* 5: storew */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_int16 (gint16 * ORC_RESTRICT d1, int p1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 24, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 105, 110, 116, 49, 54, 11, 2, 2, 14, 4,
Packit 971217
        11, 0, 0, 0, 16, 2, 20, 4, 176, 32, 0, 24, 125, 32, 32, 16,
Packit 971217
        163, 0, 32, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p, _backup_volume_orc_process_int16);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_int16");
Packit 971217
      orc_program_set_backup_function (p, _backup_volume_orc_process_int16);
Packit 971217
      orc_program_add_destination (p, 2, "d1");
Packit 971217
      orc_program_add_constant (p, 4, 0x0000000b, "c1");
Packit 971217
      orc_program_add_parameter (p, 2, "p1");
Packit 971217
      orc_program_add_temporary (p, 4, "t1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "mulswl", 0, ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_P1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "shrsl", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convlw", 0, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->params[ORC_VAR_P1] = p1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_int16_clamp */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_int16_clamp (gint16 * ORC_RESTRICT d1, int p1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union16 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union16 var33;
Packit 971217
  orc_union16 var34;
Packit 971217
  orc_union16 var35;
Packit 971217
  orc_union32 var36;
Packit 971217
  orc_union32 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_union16 *) d1;
Packit 971217
Packit 971217
  /* 1: loadpw */
Packit 971217
  var34.i = p1;
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadw */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 2: mulswl */
Packit 971217
    var36.i = var33.i * var34.i;
Packit 971217
    /* 3: shrsl */
Packit 971217
    var37.i = var36.i >> 11;
Packit 971217
    /* 4: convssslw */
Packit 971217
    var35.i = ORC_CLAMP_SW (var37.i);
Packit 971217
    /* 5: storew */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_int16_clamp (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union16 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union16 var33;
Packit 971217
  orc_union16 var34;
Packit 971217
  orc_union16 var35;
Packit 971217
  orc_union32 var36;
Packit 971217
  orc_union32 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_union16 *) ex->arrays[0];
Packit 971217
Packit 971217
  /* 1: loadpw */
Packit 971217
  var34.i = ex->params[24];
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadw */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 2: mulswl */
Packit 971217
    var36.i = var33.i * var34.i;
Packit 971217
    /* 3: shrsl */
Packit 971217
    var37.i = var36.i >> 11;
Packit 971217
    /* 4: convssslw */
Packit 971217
    var35.i = ORC_CLAMP_SW (var37.i);
Packit 971217
    /* 5: storew */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_int16_clamp (gint16 * ORC_RESTRICT d1, int p1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 30, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 105, 110, 116, 49, 54, 95, 99, 108, 97, 109,
Packit 971217
        112, 11, 2, 2, 14, 4, 11, 0, 0, 0, 16, 2, 20, 4, 176, 32,
Packit 971217
        0, 24, 125, 32, 32, 16, 165, 0, 32, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_int16_clamp);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_int16_clamp");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_int16_clamp);
Packit 971217
      orc_program_add_destination (p, 2, "d1");
Packit 971217
      orc_program_add_constant (p, 4, 0x0000000b, "c1");
Packit 971217
      orc_program_add_parameter (p, 2, "p1");
Packit 971217
      orc_program_add_temporary (p, 4, "t1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "mulswl", 0, ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_P1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "shrsl", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convssslw", 0, ORC_VAR_D1, ORC_VAR_T1,
Packit 971217
          ORC_VAR_D1, ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->params[ORC_VAR_P1] = p1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_int8 */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_int8 (gint8 * ORC_RESTRICT d1, int p1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_int8 *ORC_RESTRICT ptr0;
Packit 971217
  orc_int8 var33;
Packit 971217
  orc_int8 var34;
Packit 971217
  orc_int8 var35;
Packit 971217
  orc_union16 var36;
Packit 971217
  orc_union16 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_int8 *) d1;
Packit 971217
Packit 971217
  /* 1: loadpb */
Packit 971217
  var34 = p1;
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadb */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 2: mulsbw */
Packit 971217
    var36.i = var33 * var34;
Packit 971217
    /* 3: shrsw */
Packit 971217
    var37.i = var36.i >> 3;
Packit 971217
    /* 4: convwb */
Packit 971217
    var35 = var37.i;
Packit 971217
    /* 5: storeb */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_int8 (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_int8 *ORC_RESTRICT ptr0;
Packit 971217
  orc_int8 var33;
Packit 971217
  orc_int8 var34;
Packit 971217
  orc_int8 var35;
Packit 971217
  orc_union16 var36;
Packit 971217
  orc_union16 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_int8 *) ex->arrays[0];
Packit 971217
Packit 971217
  /* 1: loadpb */
Packit 971217
  var34 = ex->params[24];
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadb */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 2: mulsbw */
Packit 971217
    var36.i = var33 * var34;
Packit 971217
    /* 3: shrsw */
Packit 971217
    var37.i = var36.i >> 3;
Packit 971217
    /* 4: convwb */
Packit 971217
    var35 = var37.i;
Packit 971217
    /* 5: storeb */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_int8 (gint8 * ORC_RESTRICT d1, int p1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 23, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 105, 110, 116, 56, 11, 1, 1, 14, 2, 3,
Packit 971217
        0, 0, 0, 16, 1, 20, 2, 174, 32, 0, 24, 94, 32, 32, 16, 157,
Packit 971217
        0, 32, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p, _backup_volume_orc_process_int8);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_int8");
Packit 971217
      orc_program_set_backup_function (p, _backup_volume_orc_process_int8);
Packit 971217
      orc_program_add_destination (p, 1, "d1");
Packit 971217
      orc_program_add_constant (p, 2, 0x00000003, "c1");
Packit 971217
      orc_program_add_parameter (p, 1, "p1");
Packit 971217
      orc_program_add_temporary (p, 2, "t1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "mulsbw", 0, ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_P1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "shrsw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convwb", 0, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->params[ORC_VAR_P1] = p1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_int8_clamp */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_int8_clamp (gint8 * ORC_RESTRICT d1, int p1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_int8 *ORC_RESTRICT ptr0;
Packit 971217
  orc_int8 var33;
Packit 971217
  orc_int8 var34;
Packit 971217
  orc_int8 var35;
Packit 971217
  orc_union16 var36;
Packit 971217
  orc_union16 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_int8 *) d1;
Packit 971217
Packit 971217
  /* 1: loadpb */
Packit 971217
  var34 = p1;
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadb */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 2: mulsbw */
Packit 971217
    var36.i = var33 * var34;
Packit 971217
    /* 3: shrsw */
Packit 971217
    var37.i = var36.i >> 3;
Packit 971217
    /* 4: convssswb */
Packit 971217
    var35 = ORC_CLAMP_SB (var37.i);
Packit 971217
    /* 5: storeb */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_int8_clamp (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_int8 *ORC_RESTRICT ptr0;
Packit 971217
  orc_int8 var33;
Packit 971217
  orc_int8 var34;
Packit 971217
  orc_int8 var35;
Packit 971217
  orc_union16 var36;
Packit 971217
  orc_union16 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_int8 *) ex->arrays[0];
Packit 971217
Packit 971217
  /* 1: loadpb */
Packit 971217
  var34 = ex->params[24];
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadb */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 2: mulsbw */
Packit 971217
    var36.i = var33 * var34;
Packit 971217
    /* 3: shrsw */
Packit 971217
    var37.i = var36.i >> 3;
Packit 971217
    /* 4: convssswb */
Packit 971217
    var35 = ORC_CLAMP_SB (var37.i);
Packit 971217
    /* 5: storeb */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_int8_clamp (gint8 * ORC_RESTRICT d1, int p1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 29, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 105, 110, 116, 56, 95, 99, 108, 97, 109,
Packit 971217
            112,
Packit 971217
        11, 1, 1, 14, 2, 3, 0, 0, 0, 16, 1, 20, 2, 174, 32, 0,
Packit 971217
        24, 94, 32, 32, 16, 159, 0, 32, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_int8_clamp);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_int8_clamp");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_int8_clamp);
Packit 971217
      orc_program_add_destination (p, 1, "d1");
Packit 971217
      orc_program_add_constant (p, 2, 0x00000003, "c1");
Packit 971217
      orc_program_add_parameter (p, 1, "p1");
Packit 971217
      orc_program_add_temporary (p, 2, "t1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "mulsbw", 0, ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_P1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "shrsw", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_C1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convssswb", 0, ORC_VAR_D1, ORC_VAR_T1,
Packit 971217
          ORC_VAR_D1, ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->params[ORC_VAR_P1] = p1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_memset_f64 */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_memset_f64 (gdouble * ORC_RESTRICT d1, double p1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union64 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union64 var32;
Packit 971217
  orc_union64 var33;
Packit 971217
Packit 971217
  ptr0 = (orc_union64 *) d1;
Packit 971217
Packit 971217
  /* 0: loadpq */
Packit 971217
  var32.f = p1;
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 1: copyq */
Packit 971217
    var33.i = var32.i;
Packit 971217
    /* 2: storeq */
Packit 971217
    ptr0[i] = var33;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_memset_f64 (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union64 *ORC_RESTRICT ptr0;
Packit 971217
  orc_union64 var32;
Packit 971217
  orc_union64 var33;
Packit 971217
Packit 971217
  ptr0 = (orc_union64 *) ex->arrays[0];
Packit 971217
Packit 971217
  /* 0: loadpq */
Packit 971217
  var32.i =
Packit 971217
      (ex->params[24] & 0xffffffff) | ((orc_uint64) (ex->params[24 +
Packit 971217
              (ORC_VAR_T1 - ORC_VAR_P1)]) << 32);
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 1: copyq */
Packit 971217
    var33.i = var32.i;
Packit 971217
    /* 2: storeq */
Packit 971217
    ptr0[i] = var33;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_memset_f64 (gdouble * ORC_RESTRICT d1, double p1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 21, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 109, 101,
Packit 971217
        109, 115, 101, 116, 95, 102, 54, 52, 11, 8, 8, 18, 8, 137, 0, 24,
Packit 971217
        2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p, _backup_volume_orc_memset_f64);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_memset_f64");
Packit 971217
      orc_program_set_backup_function (p, _backup_volume_orc_memset_f64);
Packit 971217
      orc_program_add_destination (p, 8, "d1");
Packit 971217
      orc_program_add_parameter_double (p, 8, "p1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "copyq", 0, ORC_VAR_D1, ORC_VAR_P1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  {
Packit 971217
    orc_union64 tmp;
Packit 971217
    tmp.f = p1;
Packit 971217
    ex->params[ORC_VAR_P1] = ((orc_uint64) tmp.i) & 0xffffffff;
Packit 971217
    ex->params[ORC_VAR_T1] = ((orc_uint64) tmp.i) >> 32;
Packit 971217
  }
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_prepare_volumes */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_prepare_volumes (gdouble * ORC_RESTRICT d1,
Packit 971217
    const gboolean * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union64 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union32 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union32 var33;
Packit 971217
#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
Packit 971217
  volatile orc_union64 var34;
Packit 971217
#else
Packit 971217
  orc_union64 var34;
Packit 971217
#endif
Packit 971217
  orc_union64 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union64 var37;
Packit 971217
  orc_union64 var38;
Packit 971217
Packit 971217
  ptr0 = (orc_union64 *) d1;
Packit 971217
  ptr4 = (orc_union32 *) s1;
Packit 971217
Packit 971217
  /* 2: loadpq */
Packit 971217
  var34.i = ORC_UINT64_C (0x3ff0000000000000);  /* 1f */
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadl */
Packit 971217
    var33 = ptr4[i];
Packit 971217
    /* 1: convld */
Packit 971217
    var37.f = var33.i;
Packit 971217
    /* 3: subd */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union64 _src2;
Packit 971217
      orc_union64 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var34.i);
Packit 971217
      _src2.i = ORC_DENORMAL_DOUBLE (var37.i);
Packit 971217
      _dest1.f = _src1.f - _src2.f;
Packit 971217
      var38.i = ORC_DENORMAL_DOUBLE (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 4: loadq */
Packit 971217
    var35 = ptr0[i];
Packit 971217
    /* 5: muld */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union64 _src2;
Packit 971217
      orc_union64 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var35.i);
Packit 971217
      _src2.i = ORC_DENORMAL_DOUBLE (var38.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var36.i = ORC_DENORMAL_DOUBLE (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 6: storeq */
Packit 971217
    ptr0[i] = var36;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_prepare_volumes (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union64 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union32 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union32 var33;
Packit 971217
#if defined(__APPLE__) && __GNUC__ == 4 && __GNUC_MINOR__ == 2 && defined (__i386__)
Packit 971217
  volatile orc_union64 var34;
Packit 971217
#else
Packit 971217
  orc_union64 var34;
Packit 971217
#endif
Packit 971217
  orc_union64 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union64 var37;
Packit 971217
  orc_union64 var38;
Packit 971217
Packit 971217
  ptr0 = (orc_union64 *) ex->arrays[0];
Packit 971217
  ptr4 = (orc_union32 *) ex->arrays[4];
Packit 971217
Packit 971217
  /* 2: loadpq */
Packit 971217
  var34.i = ORC_UINT64_C (0x3ff0000000000000);  /* 1f */
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadl */
Packit 971217
    var33 = ptr4[i];
Packit 971217
    /* 1: convld */
Packit 971217
    var37.f = var33.i;
Packit 971217
    /* 3: subd */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union64 _src2;
Packit 971217
      orc_union64 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var34.i);
Packit 971217
      _src2.i = ORC_DENORMAL_DOUBLE (var37.i);
Packit 971217
      _dest1.f = _src1.f - _src2.f;
Packit 971217
      var38.i = ORC_DENORMAL_DOUBLE (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 4: loadq */
Packit 971217
    var35 = ptr0[i];
Packit 971217
    /* 5: muld */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union64 _src2;
Packit 971217
      orc_union64 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var35.i);
Packit 971217
      _src2.i = ORC_DENORMAL_DOUBLE (var38.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var36.i = ORC_DENORMAL_DOUBLE (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 6: storeq */
Packit 971217
    ptr0[i] = var36;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_prepare_volumes (gdouble * ORC_RESTRICT d1,
Packit 971217
    const gboolean * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 26, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        101, 112, 97, 114, 101, 95, 118, 111, 108, 117, 109, 101, 115, 11, 8, 8,
Packit 971217
        12, 4, 4, 15, 8, 0, 0, 0, 0, 0, 0, 240, 63, 20, 8, 223,
Packit 971217
        32, 4, 213, 32, 16, 32, 214, 0, 0, 32, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p, _backup_volume_orc_prepare_volumes);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_prepare_volumes");
Packit 971217
      orc_program_set_backup_function (p, _backup_volume_orc_prepare_volumes);
Packit 971217
      orc_program_add_destination (p, 8, "d1");
Packit 971217
      orc_program_add_source (p, 4, "s1");
Packit 971217
      orc_program_add_constant_int64 (p, 8, 0x3ff0000000000000ULL, "c1");
Packit 971217
      orc_program_add_temporary (p, 8, "t1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "convld", 0, ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "subd", 0, ORC_VAR_T1, ORC_VAR_C1, ORC_VAR_T1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "muld", 0, ORC_VAR_D1, ORC_VAR_D1, ORC_VAR_T1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->arrays[ORC_VAR_S1] = (void *) s1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_controlled_f64_1ch */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_controlled_f64_1ch (gdouble * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union64 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union64 var32;
Packit 971217
  orc_union64 var33;
Packit 971217
  orc_union64 var34;
Packit 971217
Packit 971217
  ptr0 = (orc_union64 *) d1;
Packit 971217
  ptr4 = (orc_union64 *) s1;
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadq */
Packit 971217
    var32 = ptr0[i];
Packit 971217
    /* 1: loadq */
Packit 971217
    var33 = ptr4[i];
Packit 971217
    /* 2: muld */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union64 _src2;
Packit 971217
      orc_union64 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var32.i);
Packit 971217
      _src2.i = ORC_DENORMAL_DOUBLE (var33.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var34.i = ORC_DENORMAL_DOUBLE (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 3: storeq */
Packit 971217
    ptr0[i] = var34;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_controlled_f64_1ch (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union64 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union64 var32;
Packit 971217
  orc_union64 var33;
Packit 971217
  orc_union64 var34;
Packit 971217
Packit 971217
  ptr0 = (orc_union64 *) ex->arrays[0];
Packit 971217
  ptr4 = (orc_union64 *) ex->arrays[4];
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadq */
Packit 971217
    var32 = ptr0[i];
Packit 971217
    /* 1: loadq */
Packit 971217
    var33 = ptr4[i];
Packit 971217
    /* 2: muld */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union64 _src2;
Packit 971217
      orc_union64 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var32.i);
Packit 971217
      _src2.i = ORC_DENORMAL_DOUBLE (var33.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var34.i = ORC_DENORMAL_DOUBLE (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 3: storeq */
Packit 971217
    ptr0[i] = var34;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_controlled_f64_1ch (gdouble * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 37, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
Packit 971217
            100,
Packit 971217
        95, 102, 54, 52, 95, 49, 99, 104, 11, 8, 8, 12, 8, 8, 214, 0,
Packit 971217
        0, 4, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_f64_1ch);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_controlled_f64_1ch");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_f64_1ch);
Packit 971217
      orc_program_add_destination (p, 8, "d1");
Packit 971217
      orc_program_add_source (p, 8, "s1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "muld", 0, ORC_VAR_D1, ORC_VAR_D1, ORC_VAR_S1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->arrays[ORC_VAR_S1] = (void *) s1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_controlled_f32_1ch */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_controlled_f32_1ch (gfloat * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union32 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union64 var33;
Packit 971217
  orc_union32 var34;
Packit 971217
  orc_union32 var35;
Packit 971217
  orc_union32 var36;
Packit 971217
Packit 971217
  ptr0 = (orc_union32 *) d1;
Packit 971217
  ptr4 = (orc_union64 *) s1;
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadq */
Packit 971217
    var33 = ptr4[i];
Packit 971217
    /* 1: convdf */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union32 _dest;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var33.i);
Packit 971217
      _dest.f = _src1.f;
Packit 971217
      var36.i = ORC_DENORMAL (_dest.i);
Packit 971217
    }
Packit 971217
    /* 2: loadl */
Packit 971217
    var34 = ptr0[i];
Packit 971217
    /* 3: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var34.i);
Packit 971217
      _src2.i = ORC_DENORMAL (var36.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var35.i = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 4: storel */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_controlled_f32_1ch (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union32 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union64 var33;
Packit 971217
  orc_union32 var34;
Packit 971217
  orc_union32 var35;
Packit 971217
  orc_union32 var36;
Packit 971217
Packit 971217
  ptr0 = (orc_union32 *) ex->arrays[0];
Packit 971217
  ptr4 = (orc_union64 *) ex->arrays[4];
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadq */
Packit 971217
    var33 = ptr4[i];
Packit 971217
    /* 1: convdf */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union32 _dest;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var33.i);
Packit 971217
      _dest.f = _src1.f;
Packit 971217
      var36.i = ORC_DENORMAL (_dest.i);
Packit 971217
    }
Packit 971217
    /* 2: loadl */
Packit 971217
    var34 = ptr0[i];
Packit 971217
    /* 3: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var34.i);
Packit 971217
      _src2.i = ORC_DENORMAL (var36.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var35.i = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 4: storel */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_controlled_f32_1ch (gfloat * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 37, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
Packit 971217
            100,
Packit 971217
        95, 102, 51, 50, 95, 49, 99, 104, 11, 4, 4, 12, 8, 8, 20, 4,
Packit 971217
        225, 32, 4, 202, 0, 0, 32, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_f32_1ch);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_controlled_f32_1ch");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_f32_1ch);
Packit 971217
      orc_program_add_destination (p, 4, "d1");
Packit 971217
      orc_program_add_source (p, 8, "s1");
Packit 971217
      orc_program_add_temporary (p, 4, "t1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "convdf", 0, ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "mulf", 0, ORC_VAR_D1, ORC_VAR_D1, ORC_VAR_T1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->arrays[ORC_VAR_S1] = (void *) s1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_controlled_f32_2ch */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_controlled_f32_2ch (gfloat * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union64 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union64 var34;
Packit 971217
  orc_union64 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union32 var37;
Packit 971217
  orc_union64 var38;
Packit 971217
Packit 971217
  ptr0 = (orc_union64 *) d1;
Packit 971217
  ptr4 = (orc_union64 *) s1;
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadq */
Packit 971217
    var34 = ptr4[i];
Packit 971217
    /* 1: convdf */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union32 _dest;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var34.i);
Packit 971217
      _dest.f = _src1.f;
Packit 971217
      var37.i = ORC_DENORMAL (_dest.i);
Packit 971217
    }
Packit 971217
    /* 2: mergelq */
Packit 971217
    {
Packit 971217
      orc_union64 _dest;
Packit 971217
      _dest.x2[0] = var37.i;
Packit 971217
      _dest.x2[1] = var37.i;
Packit 971217
      var38.i = _dest.i;
Packit 971217
    }
Packit 971217
    /* 3: loadq */
Packit 971217
    var35 = ptr0[i];
Packit 971217
    /* 4: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var35.x2[0]);
Packit 971217
      _src2.i = ORC_DENORMAL (var38.x2[0]);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var36.x2[0] = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var35.x2[1]);
Packit 971217
      _src2.i = ORC_DENORMAL (var38.x2[1]);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var36.x2[1] = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 5: storeq */
Packit 971217
    ptr0[i] = var36;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_controlled_f32_2ch (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union64 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union64 var34;
Packit 971217
  orc_union64 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union32 var37;
Packit 971217
  orc_union64 var38;
Packit 971217
Packit 971217
  ptr0 = (orc_union64 *) ex->arrays[0];
Packit 971217
  ptr4 = (orc_union64 *) ex->arrays[4];
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadq */
Packit 971217
    var34 = ptr4[i];
Packit 971217
    /* 1: convdf */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union32 _dest;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var34.i);
Packit 971217
      _dest.f = _src1.f;
Packit 971217
      var37.i = ORC_DENORMAL (_dest.i);
Packit 971217
    }
Packit 971217
    /* 2: mergelq */
Packit 971217
    {
Packit 971217
      orc_union64 _dest;
Packit 971217
      _dest.x2[0] = var37.i;
Packit 971217
      _dest.x2[1] = var37.i;
Packit 971217
      var38.i = _dest.i;
Packit 971217
    }
Packit 971217
    /* 3: loadq */
Packit 971217
    var35 = ptr0[i];
Packit 971217
    /* 4: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var35.x2[0]);
Packit 971217
      _src2.i = ORC_DENORMAL (var38.x2[0]);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var36.x2[0] = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var35.x2[1]);
Packit 971217
      _src2.i = ORC_DENORMAL (var38.x2[1]);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var36.x2[1] = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 5: storeq */
Packit 971217
    ptr0[i] = var36;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_controlled_f32_2ch (gfloat * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 37, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
Packit 971217
            100,
Packit 971217
        95, 102, 51, 50, 95, 50, 99, 104, 11, 8, 8, 12, 8, 8, 20, 4,
Packit 971217
        20, 8, 225, 32, 4, 194, 33, 32, 32, 21, 1, 202, 0, 0, 33, 2,
Packit 971217
        0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_f32_2ch);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_controlled_f32_2ch");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_f32_2ch);
Packit 971217
      orc_program_add_destination (p, 8, "d1");
Packit 971217
      orc_program_add_source (p, 8, "s1");
Packit 971217
      orc_program_add_temporary (p, 4, "t1");
Packit 971217
      orc_program_add_temporary (p, 8, "t2");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "convdf", 0, ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "mergelq", 0, ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_T1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "mulf", 1, ORC_VAR_D1, ORC_VAR_D1, ORC_VAR_T2,
Packit 971217
          ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->arrays[ORC_VAR_S1] = (void *) s1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_controlled_int32_1ch */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_controlled_int32_1ch (gint32 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union32 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union32 var33;
Packit 971217
  orc_union64 var34;
Packit 971217
  orc_union32 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union64 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_union32 *) d1;
Packit 971217
  ptr4 = (orc_union64 *) s1;
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadl */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 1: convld */
Packit 971217
    var36.f = var33.i;
Packit 971217
    /* 2: loadq */
Packit 971217
    var34 = ptr4[i];
Packit 971217
    /* 3: muld */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union64 _src2;
Packit 971217
      orc_union64 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var36.i);
Packit 971217
      _src2.i = ORC_DENORMAL_DOUBLE (var34.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var37.i = ORC_DENORMAL_DOUBLE (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 4: convdl */
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = var37.f;
Packit 971217
      if (tmp == 0x80000000 && !(var37.i & ORC_UINT64_C (0x8000000000000000)))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var35.i = tmp;
Packit 971217
    }
Packit 971217
    /* 5: storel */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_controlled_int32_1ch (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union32 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union32 var33;
Packit 971217
  orc_union64 var34;
Packit 971217
  orc_union32 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union64 var37;
Packit 971217
Packit 971217
  ptr0 = (orc_union32 *) ex->arrays[0];
Packit 971217
  ptr4 = (orc_union64 *) ex->arrays[4];
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadl */
Packit 971217
    var33 = ptr0[i];
Packit 971217
    /* 1: convld */
Packit 971217
    var36.f = var33.i;
Packit 971217
    /* 2: loadq */
Packit 971217
    var34 = ptr4[i];
Packit 971217
    /* 3: muld */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union64 _src2;
Packit 971217
      orc_union64 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var36.i);
Packit 971217
      _src2.i = ORC_DENORMAL_DOUBLE (var34.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var37.i = ORC_DENORMAL_DOUBLE (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 4: convdl */
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = var37.f;
Packit 971217
      if (tmp == 0x80000000 && !(var37.i & ORC_UINT64_C (0x8000000000000000)))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var35.i = tmp;
Packit 971217
    }
Packit 971217
    /* 5: storel */
Packit 971217
    ptr0[i] = var35;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_controlled_int32_1ch (gint32 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 39, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
Packit 971217
            100,
Packit 971217
        95, 105, 110, 116, 51, 50, 95, 49, 99, 104, 11, 4, 4, 12, 8, 8,
Packit 971217
        20, 8, 223, 32, 0, 214, 32, 32, 4, 222, 0, 32, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_int32_1ch);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_controlled_int32_1ch");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_int32_1ch);
Packit 971217
      orc_program_add_destination (p, 4, "d1");
Packit 971217
      orc_program_add_source (p, 8, "s1");
Packit 971217
      orc_program_add_temporary (p, 8, "t1");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "convld", 0, ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "muld", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_S1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convdl", 0, ORC_VAR_D1, ORC_VAR_T1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->arrays[ORC_VAR_S1] = (void *) s1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_controlled_int16_1ch */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_controlled_int16_1ch (gint16 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union16 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union16 var34;
Packit 971217
  orc_union64 var35;
Packit 971217
  orc_union16 var36;
Packit 971217
  orc_union32 var37;
Packit 971217
  orc_union32 var38;
Packit 971217
  orc_union32 var39;
Packit 971217
  orc_union32 var40;
Packit 971217
  orc_union32 var41;
Packit 971217
Packit 971217
  ptr0 = (orc_union16 *) d1;
Packit 971217
  ptr4 = (orc_union64 *) s1;
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadw */
Packit 971217
    var34 = ptr0[i];
Packit 971217
    /* 1: convswl */
Packit 971217
    var37.i = var34.i;
Packit 971217
    /* 2: convlf */
Packit 971217
    var38.f = var37.i;
Packit 971217
    /* 3: loadq */
Packit 971217
    var35 = ptr4[i];
Packit 971217
    /* 4: convdf */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union32 _dest;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var35.i);
Packit 971217
      _dest.f = _src1.f;
Packit 971217
      var39.i = ORC_DENORMAL (_dest.i);
Packit 971217
    }
Packit 971217
    /* 5: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var38.i);
Packit 971217
      _src2.i = ORC_DENORMAL (var39.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var40.i = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 6: convfl */
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = (int) var40.f;
Packit 971217
      if (tmp == 0x80000000 && !(var40.i & 0x80000000))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var41.i = tmp;
Packit 971217
    }
Packit 971217
    /* 7: convssslw */
Packit 971217
    var36.i = ORC_CLAMP_SW (var41.i);
Packit 971217
    /* 8: storew */
Packit 971217
    ptr0[i] = var36;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_controlled_int16_1ch (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union16 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union16 var34;
Packit 971217
  orc_union64 var35;
Packit 971217
  orc_union16 var36;
Packit 971217
  orc_union32 var37;
Packit 971217
  orc_union32 var38;
Packit 971217
  orc_union32 var39;
Packit 971217
  orc_union32 var40;
Packit 971217
  orc_union32 var41;
Packit 971217
Packit 971217
  ptr0 = (orc_union16 *) ex->arrays[0];
Packit 971217
  ptr4 = (orc_union64 *) ex->arrays[4];
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadw */
Packit 971217
    var34 = ptr0[i];
Packit 971217
    /* 1: convswl */
Packit 971217
    var37.i = var34.i;
Packit 971217
    /* 2: convlf */
Packit 971217
    var38.f = var37.i;
Packit 971217
    /* 3: loadq */
Packit 971217
    var35 = ptr4[i];
Packit 971217
    /* 4: convdf */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union32 _dest;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var35.i);
Packit 971217
      _dest.f = _src1.f;
Packit 971217
      var39.i = ORC_DENORMAL (_dest.i);
Packit 971217
    }
Packit 971217
    /* 5: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var38.i);
Packit 971217
      _src2.i = ORC_DENORMAL (var39.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var40.i = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 6: convfl */
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = (int) var40.f;
Packit 971217
      if (tmp == 0x80000000 && !(var40.i & 0x80000000))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var41.i = tmp;
Packit 971217
    }
Packit 971217
    /* 7: convssslw */
Packit 971217
    var36.i = ORC_CLAMP_SW (var41.i);
Packit 971217
    /* 8: storew */
Packit 971217
    ptr0[i] = var36;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_controlled_int16_1ch (gint16 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 39, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
Packit 971217
            100,
Packit 971217
        95, 105, 110, 116, 49, 54, 95, 49, 99, 104, 11, 2, 2, 12, 8, 8,
Packit 971217
        20, 4, 20, 4, 153, 32, 0, 211, 32, 32, 225, 33, 4, 202, 32, 32,
Packit 971217
        33, 210, 32, 32, 165, 0, 32, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_int16_1ch);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_controlled_int16_1ch");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_int16_1ch);
Packit 971217
      orc_program_add_destination (p, 2, "d1");
Packit 971217
      orc_program_add_source (p, 8, "s1");
Packit 971217
      orc_program_add_temporary (p, 4, "t1");
Packit 971217
      orc_program_add_temporary (p, 4, "t2");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "convswl", 0, ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convlf", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convdf", 0, ORC_VAR_T2, ORC_VAR_S1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "mulf", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_T2,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convfl", 0, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convssslw", 0, ORC_VAR_D1, ORC_VAR_T1,
Packit 971217
          ORC_VAR_D1, ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->arrays[ORC_VAR_S1] = (void *) s1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_controlled_int16_2ch */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_controlled_int16_2ch (gint16 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union32 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union32 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union32 var37;
Packit 971217
  orc_union64 var38;
Packit 971217
  orc_union64 var39;
Packit 971217
  orc_union32 var40;
Packit 971217
  orc_union64 var41;
Packit 971217
  orc_union64 var42;
Packit 971217
  orc_union64 var43;
Packit 971217
Packit 971217
  ptr0 = (orc_union32 *) d1;
Packit 971217
  ptr4 = (orc_union64 *) s1;
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadl */
Packit 971217
    var35 = ptr0[i];
Packit 971217
    /* 1: convswl */
Packit 971217
    var38.x2[0] = var35.x2[0];
Packit 971217
    var38.x2[1] = var35.x2[1];
Packit 971217
    /* 2: convlf */
Packit 971217
    var39.x2f[0] = var38.x2[0];
Packit 971217
    var39.x2f[1] = var38.x2[1];
Packit 971217
    /* 3: loadq */
Packit 971217
    var36 = ptr4[i];
Packit 971217
    /* 4: convdf */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union32 _dest;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var36.i);
Packit 971217
      _dest.f = _src1.f;
Packit 971217
      var40.i = ORC_DENORMAL (_dest.i);
Packit 971217
    }
Packit 971217
    /* 5: mergelq */
Packit 971217
    {
Packit 971217
      orc_union64 _dest;
Packit 971217
      _dest.x2[0] = var40.i;
Packit 971217
      _dest.x2[1] = var40.i;
Packit 971217
      var41.i = _dest.i;
Packit 971217
    }
Packit 971217
    /* 6: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var41.x2[0]);
Packit 971217
      _src2.i = ORC_DENORMAL (var39.x2[0]);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var42.x2[0] = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var41.x2[1]);
Packit 971217
      _src2.i = ORC_DENORMAL (var39.x2[1]);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var42.x2[1] = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 7: convfl */
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = (int) var42.x2f[0];
Packit 971217
      if (tmp == 0x80000000 && !(var42.x2[0] & 0x80000000))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var43.x2[0] = tmp;
Packit 971217
    }
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = (int) var42.x2f[1];
Packit 971217
      if (tmp == 0x80000000 && !(var42.x2[1] & 0x80000000))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var43.x2[1] = tmp;
Packit 971217
    }
Packit 971217
    /* 8: convssslw */
Packit 971217
    var37.x2[0] = ORC_CLAMP_SW (var43.x2[0]);
Packit 971217
    var37.x2[1] = ORC_CLAMP_SW (var43.x2[1]);
Packit 971217
    /* 9: storel */
Packit 971217
    ptr0[i] = var37;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_controlled_int16_2ch (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union32 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union32 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union32 var37;
Packit 971217
  orc_union64 var38;
Packit 971217
  orc_union64 var39;
Packit 971217
  orc_union32 var40;
Packit 971217
  orc_union64 var41;
Packit 971217
  orc_union64 var42;
Packit 971217
  orc_union64 var43;
Packit 971217
Packit 971217
  ptr0 = (orc_union32 *) ex->arrays[0];
Packit 971217
  ptr4 = (orc_union64 *) ex->arrays[4];
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadl */
Packit 971217
    var35 = ptr0[i];
Packit 971217
    /* 1: convswl */
Packit 971217
    var38.x2[0] = var35.x2[0];
Packit 971217
    var38.x2[1] = var35.x2[1];
Packit 971217
    /* 2: convlf */
Packit 971217
    var39.x2f[0] = var38.x2[0];
Packit 971217
    var39.x2f[1] = var38.x2[1];
Packit 971217
    /* 3: loadq */
Packit 971217
    var36 = ptr4[i];
Packit 971217
    /* 4: convdf */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union32 _dest;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var36.i);
Packit 971217
      _dest.f = _src1.f;
Packit 971217
      var40.i = ORC_DENORMAL (_dest.i);
Packit 971217
    }
Packit 971217
    /* 5: mergelq */
Packit 971217
    {
Packit 971217
      orc_union64 _dest;
Packit 971217
      _dest.x2[0] = var40.i;
Packit 971217
      _dest.x2[1] = var40.i;
Packit 971217
      var41.i = _dest.i;
Packit 971217
    }
Packit 971217
    /* 6: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var41.x2[0]);
Packit 971217
      _src2.i = ORC_DENORMAL (var39.x2[0]);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var42.x2[0] = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var41.x2[1]);
Packit 971217
      _src2.i = ORC_DENORMAL (var39.x2[1]);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var42.x2[1] = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 7: convfl */
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = (int) var42.x2f[0];
Packit 971217
      if (tmp == 0x80000000 && !(var42.x2[0] & 0x80000000))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var43.x2[0] = tmp;
Packit 971217
    }
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = (int) var42.x2f[1];
Packit 971217
      if (tmp == 0x80000000 && !(var42.x2[1] & 0x80000000))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var43.x2[1] = tmp;
Packit 971217
    }
Packit 971217
    /* 8: convssslw */
Packit 971217
    var37.x2[0] = ORC_CLAMP_SW (var43.x2[0]);
Packit 971217
    var37.x2[1] = ORC_CLAMP_SW (var43.x2[1]);
Packit 971217
    /* 9: storel */
Packit 971217
    ptr0[i] = var37;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_controlled_int16_2ch (gint16 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 39, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
Packit 971217
            100,
Packit 971217
        95, 105, 110, 116, 49, 54, 95, 50, 99, 104, 11, 4, 4, 12, 8, 8,
Packit 971217
        20, 8, 20, 4, 20, 8, 21, 1, 153, 32, 0, 21, 1, 211, 32, 32,
Packit 971217
        225, 33, 4, 194, 34, 33, 33, 21, 1, 202, 34, 34, 32, 21, 1, 210,
Packit 971217
        34, 34, 21, 1, 165, 0, 34, 2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_int16_2ch);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_controlled_int16_2ch");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_int16_2ch);
Packit 971217
      orc_program_add_destination (p, 4, "d1");
Packit 971217
      orc_program_add_source (p, 8, "s1");
Packit 971217
      orc_program_add_temporary (p, 8, "t1");
Packit 971217
      orc_program_add_temporary (p, 4, "t2");
Packit 971217
      orc_program_add_temporary (p, 8, "t3");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "convswl", 1, ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convlf", 1, ORC_VAR_T1, ORC_VAR_T1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convdf", 0, ORC_VAR_T2, ORC_VAR_S1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "mergelq", 0, ORC_VAR_T3, ORC_VAR_T2, ORC_VAR_T2,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "mulf", 1, ORC_VAR_T3, ORC_VAR_T3, ORC_VAR_T1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convfl", 1, ORC_VAR_T3, ORC_VAR_T3, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convssslw", 1, ORC_VAR_D1, ORC_VAR_T3,
Packit 971217
          ORC_VAR_D1, ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->arrays[ORC_VAR_S1] = (void *) s1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_controlled_int8_1ch */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_controlled_int8_1ch (gint8 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_int8 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_int8 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_int8 var37;
Packit 971217
  orc_union16 var38;
Packit 971217
  orc_union32 var39;
Packit 971217
  orc_union32 var40;
Packit 971217
  orc_union32 var41;
Packit 971217
  orc_union32 var42;
Packit 971217
  orc_union32 var43;
Packit 971217
  orc_union16 var44;
Packit 971217
Packit 971217
  ptr0 = (orc_int8 *) d1;
Packit 971217
  ptr4 = (orc_union64 *) s1;
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadb */
Packit 971217
    var35 = ptr0[i];
Packit 971217
    /* 1: convsbw */
Packit 971217
    var38.i = var35;
Packit 971217
    /* 2: convswl */
Packit 971217
    var39.i = var38.i;
Packit 971217
    /* 3: convlf */
Packit 971217
    var40.f = var39.i;
Packit 971217
    /* 4: loadq */
Packit 971217
    var36 = ptr4[i];
Packit 971217
    /* 5: convdf */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union32 _dest;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var36.i);
Packit 971217
      _dest.f = _src1.f;
Packit 971217
      var41.i = ORC_DENORMAL (_dest.i);
Packit 971217
    }
Packit 971217
    /* 6: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var40.i);
Packit 971217
      _src2.i = ORC_DENORMAL (var41.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var42.i = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 7: convfl */
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = (int) var42.f;
Packit 971217
      if (tmp == 0x80000000 && !(var42.i & 0x80000000))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var43.i = tmp;
Packit 971217
    }
Packit 971217
    /* 8: convlw */
Packit 971217
    var44.i = var43.i;
Packit 971217
    /* 9: convssswb */
Packit 971217
    var37 = ORC_CLAMP_SB (var44.i);
Packit 971217
    /* 10: storeb */
Packit 971217
    ptr0[i] = var37;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_controlled_int8_1ch (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_int8 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_int8 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_int8 var37;
Packit 971217
  orc_union16 var38;
Packit 971217
  orc_union32 var39;
Packit 971217
  orc_union32 var40;
Packit 971217
  orc_union32 var41;
Packit 971217
  orc_union32 var42;
Packit 971217
  orc_union32 var43;
Packit 971217
  orc_union16 var44;
Packit 971217
Packit 971217
  ptr0 = (orc_int8 *) ex->arrays[0];
Packit 971217
  ptr4 = (orc_union64 *) ex->arrays[4];
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadb */
Packit 971217
    var35 = ptr0[i];
Packit 971217
    /* 1: convsbw */
Packit 971217
    var38.i = var35;
Packit 971217
    /* 2: convswl */
Packit 971217
    var39.i = var38.i;
Packit 971217
    /* 3: convlf */
Packit 971217
    var40.f = var39.i;
Packit 971217
    /* 4: loadq */
Packit 971217
    var36 = ptr4[i];
Packit 971217
    /* 5: convdf */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union32 _dest;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var36.i);
Packit 971217
      _dest.f = _src1.f;
Packit 971217
      var41.i = ORC_DENORMAL (_dest.i);
Packit 971217
    }
Packit 971217
    /* 6: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var40.i);
Packit 971217
      _src2.i = ORC_DENORMAL (var41.i);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var42.i = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 7: convfl */
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = (int) var42.f;
Packit 971217
      if (tmp == 0x80000000 && !(var42.i & 0x80000000))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var43.i = tmp;
Packit 971217
    }
Packit 971217
    /* 8: convlw */
Packit 971217
    var44.i = var43.i;
Packit 971217
    /* 9: convssswb */
Packit 971217
    var37 = ORC_CLAMP_SB (var44.i);
Packit 971217
    /* 10: storeb */
Packit 971217
    ptr0[i] = var37;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_controlled_int8_1ch (gint8 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 38, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
Packit 971217
            100,
Packit 971217
        95, 105, 110, 116, 56, 95, 49, 99, 104, 11, 1, 1, 12, 8, 8, 20,
Packit 971217
        2, 20, 4, 20, 4, 149, 32, 0, 153, 33, 32, 211, 33, 33, 225, 34,
Packit 971217
        4, 202, 33, 33, 34, 210, 33, 33, 163, 32, 33, 159, 0, 32, 2, 0,
Packit 971217
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_int8_1ch);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_controlled_int8_1ch");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_int8_1ch);
Packit 971217
      orc_program_add_destination (p, 1, "d1");
Packit 971217
      orc_program_add_source (p, 8, "s1");
Packit 971217
      orc_program_add_temporary (p, 2, "t1");
Packit 971217
      orc_program_add_temporary (p, 4, "t2");
Packit 971217
      orc_program_add_temporary (p, 4, "t3");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "convsbw", 0, ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convswl", 0, ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convlf", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convdf", 0, ORC_VAR_T3, ORC_VAR_S1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "mulf", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_T3,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convfl", 0, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convlw", 0, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convssswb", 0, ORC_VAR_D1, ORC_VAR_T1,
Packit 971217
          ORC_VAR_D1, ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->arrays[ORC_VAR_S1] = (void *) s1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif
Packit 971217
Packit 971217
Packit 971217
/* volume_orc_process_controlled_int8_2ch */
Packit 971217
#ifdef DISABLE_ORC
Packit 971217
void
Packit 971217
volume_orc_process_controlled_int8_2ch (gint8 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  orc_union16 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union16 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union16 var37;
Packit 971217
  orc_union32 var38;
Packit 971217
  orc_union64 var39;
Packit 971217
  orc_union64 var40;
Packit 971217
  orc_union32 var41;
Packit 971217
  orc_union64 var42;
Packit 971217
  orc_union64 var43;
Packit 971217
  orc_union64 var44;
Packit 971217
  orc_union32 var45;
Packit 971217
Packit 971217
  ptr0 = (orc_union16 *) d1;
Packit 971217
  ptr4 = (orc_union64 *) s1;
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadw */
Packit 971217
    var35 = ptr0[i];
Packit 971217
    /* 1: convsbw */
Packit 971217
    var38.x2[0] = var35.x2[0];
Packit 971217
    var38.x2[1] = var35.x2[1];
Packit 971217
    /* 2: convswl */
Packit 971217
    var39.x2[0] = var38.x2[0];
Packit 971217
    var39.x2[1] = var38.x2[1];
Packit 971217
    /* 3: convlf */
Packit 971217
    var40.x2f[0] = var39.x2[0];
Packit 971217
    var40.x2f[1] = var39.x2[1];
Packit 971217
    /* 4: loadq */
Packit 971217
    var36 = ptr4[i];
Packit 971217
    /* 5: convdf */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union32 _dest;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var36.i);
Packit 971217
      _dest.f = _src1.f;
Packit 971217
      var41.i = ORC_DENORMAL (_dest.i);
Packit 971217
    }
Packit 971217
    /* 6: mergelq */
Packit 971217
    {
Packit 971217
      orc_union64 _dest;
Packit 971217
      _dest.x2[0] = var41.i;
Packit 971217
      _dest.x2[1] = var41.i;
Packit 971217
      var42.i = _dest.i;
Packit 971217
    }
Packit 971217
    /* 7: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var40.x2[0]);
Packit 971217
      _src2.i = ORC_DENORMAL (var42.x2[0]);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var43.x2[0] = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var40.x2[1]);
Packit 971217
      _src2.i = ORC_DENORMAL (var42.x2[1]);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var43.x2[1] = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 8: convfl */
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = (int) var43.x2f[0];
Packit 971217
      if (tmp == 0x80000000 && !(var43.x2[0] & 0x80000000))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var44.x2[0] = tmp;
Packit 971217
    }
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = (int) var43.x2f[1];
Packit 971217
      if (tmp == 0x80000000 && !(var43.x2[1] & 0x80000000))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var44.x2[1] = tmp;
Packit 971217
    }
Packit 971217
    /* 9: convlw */
Packit 971217
    var45.x2[0] = var44.x2[0];
Packit 971217
    var45.x2[1] = var44.x2[1];
Packit 971217
    /* 10: convssswb */
Packit 971217
    var37.x2[0] = ORC_CLAMP_SB (var45.x2[0]);
Packit 971217
    var37.x2[1] = ORC_CLAMP_SB (var45.x2[1]);
Packit 971217
    /* 11: storew */
Packit 971217
    ptr0[i] = var37;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
#else
Packit 971217
static void
Packit 971217
_backup_volume_orc_process_controlled_int8_2ch (OrcExecutor * ORC_RESTRICT ex)
Packit 971217
{
Packit 971217
  int i;
Packit 971217
  int n = ex->n;
Packit 971217
  orc_union16 *ORC_RESTRICT ptr0;
Packit 971217
  const orc_union64 *ORC_RESTRICT ptr4;
Packit 971217
  orc_union16 var35;
Packit 971217
  orc_union64 var36;
Packit 971217
  orc_union16 var37;
Packit 971217
  orc_union32 var38;
Packit 971217
  orc_union64 var39;
Packit 971217
  orc_union64 var40;
Packit 971217
  orc_union32 var41;
Packit 971217
  orc_union64 var42;
Packit 971217
  orc_union64 var43;
Packit 971217
  orc_union64 var44;
Packit 971217
  orc_union32 var45;
Packit 971217
Packit 971217
  ptr0 = (orc_union16 *) ex->arrays[0];
Packit 971217
  ptr4 = (orc_union64 *) ex->arrays[4];
Packit 971217
Packit 971217
Packit 971217
  for (i = 0; i < n; i++) {
Packit 971217
    /* 0: loadw */
Packit 971217
    var35 = ptr0[i];
Packit 971217
    /* 1: convsbw */
Packit 971217
    var38.x2[0] = var35.x2[0];
Packit 971217
    var38.x2[1] = var35.x2[1];
Packit 971217
    /* 2: convswl */
Packit 971217
    var39.x2[0] = var38.x2[0];
Packit 971217
    var39.x2[1] = var38.x2[1];
Packit 971217
    /* 3: convlf */
Packit 971217
    var40.x2f[0] = var39.x2[0];
Packit 971217
    var40.x2f[1] = var39.x2[1];
Packit 971217
    /* 4: loadq */
Packit 971217
    var36 = ptr4[i];
Packit 971217
    /* 5: convdf */
Packit 971217
    {
Packit 971217
      orc_union64 _src1;
Packit 971217
      orc_union32 _dest;
Packit 971217
      _src1.i = ORC_DENORMAL_DOUBLE (var36.i);
Packit 971217
      _dest.f = _src1.f;
Packit 971217
      var41.i = ORC_DENORMAL (_dest.i);
Packit 971217
    }
Packit 971217
    /* 6: mergelq */
Packit 971217
    {
Packit 971217
      orc_union64 _dest;
Packit 971217
      _dest.x2[0] = var41.i;
Packit 971217
      _dest.x2[1] = var41.i;
Packit 971217
      var42.i = _dest.i;
Packit 971217
    }
Packit 971217
    /* 7: mulf */
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var40.x2[0]);
Packit 971217
      _src2.i = ORC_DENORMAL (var42.x2[0]);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var43.x2[0] = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    {
Packit 971217
      orc_union32 _src1;
Packit 971217
      orc_union32 _src2;
Packit 971217
      orc_union32 _dest1;
Packit 971217
      _src1.i = ORC_DENORMAL (var40.x2[1]);
Packit 971217
      _src2.i = ORC_DENORMAL (var42.x2[1]);
Packit 971217
      _dest1.f = _src1.f * _src2.f;
Packit 971217
      var43.x2[1] = ORC_DENORMAL (_dest1.i);
Packit 971217
    }
Packit 971217
    /* 8: convfl */
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = (int) var43.x2f[0];
Packit 971217
      if (tmp == 0x80000000 && !(var43.x2[0] & 0x80000000))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var44.x2[0] = tmp;
Packit 971217
    }
Packit 971217
    {
Packit 971217
      int tmp;
Packit 971217
      tmp = (int) var43.x2f[1];
Packit 971217
      if (tmp == 0x80000000 && !(var43.x2[1] & 0x80000000))
Packit 971217
        tmp = 0x7fffffff;
Packit 971217
      var44.x2[1] = tmp;
Packit 971217
    }
Packit 971217
    /* 9: convlw */
Packit 971217
    var45.x2[0] = var44.x2[0];
Packit 971217
    var45.x2[1] = var44.x2[1];
Packit 971217
    /* 10: convssswb */
Packit 971217
    var37.x2[0] = ORC_CLAMP_SB (var45.x2[0]);
Packit 971217
    var37.x2[1] = ORC_CLAMP_SB (var45.x2[1]);
Packit 971217
    /* 11: storew */
Packit 971217
    ptr0[i] = var37;
Packit 971217
  }
Packit 971217
Packit 971217
}
Packit 971217
Packit 971217
void
Packit 971217
volume_orc_process_controlled_int8_2ch (gint8 * ORC_RESTRICT d1,
Packit 971217
    const gdouble * ORC_RESTRICT s1, int n)
Packit 971217
{
Packit 971217
  OrcExecutor _ex, *ex = &_ex;
Packit 971217
  static volatile int p_inited = 0;
Packit 971217
  static OrcCode *c = 0;
Packit 971217
  void (*func) (OrcExecutor *);
Packit 971217
Packit 971217
  if (!p_inited) {
Packit 971217
    orc_once_mutex_lock ();
Packit 971217
    if (!p_inited) {
Packit 971217
      OrcProgram *p;
Packit 971217
Packit 971217
#if 1
Packit 971217
      static const orc_uint8 bc[] = {
Packit 971217
        1, 9, 38, 118, 111, 108, 117, 109, 101, 95, 111, 114, 99, 95, 112, 114,
Packit 971217
        111, 99, 101, 115, 115, 95, 99, 111, 110, 116, 114, 111, 108, 108, 101,
Packit 971217
            100,
Packit 971217
        95, 105, 110, 116, 56, 95, 50, 99, 104, 11, 2, 2, 12, 8, 8, 20,
Packit 971217
        4, 20, 8, 20, 8, 21, 1, 149, 32, 0, 21, 1, 153, 33, 32, 21,
Packit 971217
        1, 211, 33, 33, 225, 32, 4, 194, 34, 32, 32, 21, 1, 202, 33, 33,
Packit 971217
        34, 21, 1, 210, 33, 33, 21, 1, 163, 32, 33, 21, 1, 159, 0, 32,
Packit 971217
        2, 0,
Packit 971217
      };
Packit 971217
      p = orc_program_new_from_static_bytecode (bc);
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_int8_2ch);
Packit 971217
#else
Packit 971217
      p = orc_program_new ();
Packit 971217
      orc_program_set_name (p, "volume_orc_process_controlled_int8_2ch");
Packit 971217
      orc_program_set_backup_function (p,
Packit 971217
          _backup_volume_orc_process_controlled_int8_2ch);
Packit 971217
      orc_program_add_destination (p, 2, "d1");
Packit 971217
      orc_program_add_source (p, 8, "s1");
Packit 971217
      orc_program_add_temporary (p, 4, "t1");
Packit 971217
      orc_program_add_temporary (p, 8, "t2");
Packit 971217
      orc_program_add_temporary (p, 8, "t3");
Packit 971217
Packit 971217
      orc_program_append_2 (p, "convsbw", 1, ORC_VAR_T1, ORC_VAR_D1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convswl", 1, ORC_VAR_T2, ORC_VAR_T1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convlf", 1, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convdf", 0, ORC_VAR_T1, ORC_VAR_S1, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "mergelq", 0, ORC_VAR_T3, ORC_VAR_T1, ORC_VAR_T1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "mulf", 1, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_T3,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convfl", 1, ORC_VAR_T2, ORC_VAR_T2, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convlw", 1, ORC_VAR_T1, ORC_VAR_T2, ORC_VAR_D1,
Packit 971217
          ORC_VAR_D1);
Packit 971217
      orc_program_append_2 (p, "convssswb", 1, ORC_VAR_D1, ORC_VAR_T1,
Packit 971217
          ORC_VAR_D1, ORC_VAR_D1);
Packit 971217
#endif
Packit 971217
Packit 971217
      orc_program_compile (p);
Packit 971217
      c = orc_program_take_code (p);
Packit 971217
      orc_program_free (p);
Packit 971217
    }
Packit 971217
    p_inited = TRUE;
Packit 971217
    orc_once_mutex_unlock ();
Packit 971217
  }
Packit 971217
  ex->arrays[ORC_VAR_A2] = c;
Packit 971217
  ex->program = 0;
Packit 971217
Packit 971217
  ex->n = n;
Packit 971217
  ex->arrays[ORC_VAR_D1] = d1;
Packit 971217
  ex->arrays[ORC_VAR_S1] = (void *) s1;
Packit 971217
Packit 971217
  func = c->exec;
Packit 971217
  func (ex);
Packit 971217
}
Packit 971217
#endif