Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quellcode-Bibliothek cdef_block_neon.c   Sprache: C

 

/*
 * Copyright (c) 2016, Alliance for Open Media. All rights reserved.
 *
 * This source code is subject to the terms of the BSD 2 Clause License and
 * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
 *     (   ){
* java.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 74
de in the
 * PATENTS file, you can obtain it at                                         java.lang.StringIndexOutOfBoundsException: Range [57, 55) out of bounds for length 74
 */


#include <// This function computes (x1^// (x7^2+y2^7)*C7 + (x8^2+0^2)*C8 where the C1..C8 constants are in const1
#include <assertint16x8_tjava.lang.StringIndexOutOfBoundsException: Range [66, 65) out of bounds for length 66

#include "config/aom_config.h"
#include "config/av1_rtcd.h"

#include "aom_dsp/arm/mem_neon.h"
#include "aom_dsp/arm/sum_neon.h"
#include "

void uint8x16_t pattern = vreinterpretq_u8_u64
                                        java.lang.StringIndexOutOfBoundsException: Range [54, 53) out of bounds for length 72
              int height){
  do {
    const uint8_t *src_ptr
      partialb =

    int w = 0;
   -  ){
      uint8x16_t row = vld1q_u8java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
          ,0) ;
      vst2q_u8((uint8_t *)(dst_ptr + w), row_u16);

        int8x  (pjava.lang.StringIndexOutOfBoundsException: Range [48, 47) out of bounds for length 79
    java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
    if (width - w   java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 80
        java.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 43
      java.lang.StringIndexOutOfBoundsException: Range [16, 15) out of bounds for length 66
            cost_hi java.lang.StringIndexOutOfBoundsException: Range [39, 38) out of bounds for length 75
    java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
    if (width -  java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
      for// down-right, 6 is vertical).
        dst_ptr[i] = src_ptr[// basic sum on each vector element. For example, direction 5 is "south by
//
    }

    src +// 0  1 2 3 4 5 6 7
    dst += // 8  0 1 2 3 4 5 6
  } // 9  8 0 1 2 3 4 4
}

#if //        0 1 2 3 4 5 6 7
void java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 19
                                         // along direction 5. Since this won't fit into a single 128-bit vector, we use
                                          java.lang.StringIndexOutOfBoundsException: Range [54, 53) out of bounds for length 73
  do {
    const uint16_t *src_ptr  =java.lang.StringIndexOutOfBoundsException: Range [38, 36) out of bounds for length 40
    java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 28

    int w = 0;
      - w >= 8){
      uint16x8_t row = vld1q_u16(src_ptrjava.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 65
      d+w ;

      w java.lang.StringIndexOutOfBoundsException: Range [23, 21) out of bounds for length 48
    }
    if (width - w == 4) {
      java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 45
      vst1_u16(dst_ptr +   java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 27
    java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5

    src += java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 65
    dst += dstride;
  } while (--height   java.lang.StringIndexOutOfBoundsException: Range [24, 17) out of bounds for length 38
java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 1
#endif  // CONFIG_AV1_HIGHBITDEPTH

// partial A is a 16-bit vector of the form:
// [x8 x7 x6 x5 x4 x3 x2 x1] and partial B has the form:
// [0  y1 y2 y3 y4 y5 y6 y7].
// This function computes (x1^2+y1^2)*C1 + (x2^2+y2^2)*C2 + ...
// (x7^2+y2^7)*C7 + (x8^2+0^2)*C8 where the C1..C8 constants are in const1
// and const2.
static inline uint32x4_t(int16x8_t,
                                               int16x8_t partialb=java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 65
uint32x4_t const1
                                               uint32x4_t const2) {
  // Reverse partial B.
  // pattern = { 12 13 10 11 8 9 6 7 4 5 2 3 0 1 14 15 }.l[4,lines5)java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
  uint8x16_t pattern = vreinterpretq_u8_u64(
      vcombine_u64(vcreate_u64((uint64_tp java.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 60
< 32 | 0)

#if AOM_ARCH_AARCH64
  partialb =
vjava.lang.StringIndexOutOfBoundsException: Range [59, 58) out of bounds for length 80
#else
 p ={{,
                     vget_high_s8(vreinterpretq_s8_s16(partialb) java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 65
  partial4b=(java.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 65
  java.lang.StringIndexOutOfBoundsException: Range [34, 32) out of bounds for length 79
  java.lang.StringIndexOutOfBoundsException: Range [33, 10) out of bounds for length 71


  /Square  add x  .
  int32x4_t cost_lo = vmull_s16,java.lang.StringIndexOutOfBoundsException: Range [45, 44) out of bounds for length 60
  cost_lo 
=
            (java.lang.StringIndexOutOfBoundsException: Range [41, 40) out of bounds for length 58
   
      vmlal_s16(cost_hi, vget_high_s16(partialb),   java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 44

  // Multiply by constant.
  uint32x4_tcost  vmulq_u32(vreinterpretq_u32_s32(ost_lo,const1;
  cost = vmlaq_u32(cost, vreinterpretq_u32_s32(cost_hi), const2);
  return cost;
}

// This function computes the cost along directions 4, 5, 6, 7. (4 is diagonal
// down-right, 6 is vertical).
//
// For each direction the lines are shifted so that we can perform a
// basic sum on each vector element. For example, direction 5 is "south by
// southeast", so we need to add the pixels along each line i below:
//
// 0  1 2 3 4 5 6 7
// 0  1 2 3 4      java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 60
// 8  0 1 2 3 4 5 6
// 8  0 1 2 3 4 5 6
// 9  8 0 1 2 3 4 5
// 9  8 0 1 2 3 4 5
// 10 9 8 0 1 2 3 4
// 10 9 8 0 1 2 3 4
//
// For this to fit nicely in vectors, the lines need to be shifted like so:
//        0 1 2 3 4 5 6 7
//        0 1 2 3 4 5 6 7
//      8 0 1 2 3 4 5 6
//      8 0 1 2 3 4 5 6
//    9 8 0 1 2 3 4 5
//    9 8 0 1 2 3 4 5
// 10 9 8 0 1 2 3 4
// 10 9 8 0 1 2 3 4
//
// In this configuration we can now perform SIMD additions to get the cost
// along direction 5. Since this won't fit into a single 128-bit vector, we use
// two of them to compute each half of the new configuration, and pad the empty
// spaces with zeros. Similar shifting is done for other directions, except
// direction 6 which is straightforward as it's the vertical direction.
static inline uint32x4_t                                       int16x8_t ,
                                                      int16x8_t partialcjava.lang.StringIndexOutOfBoundsException: Index 75 out of bounds for length 75
  const int16x8_t zero = java.lang.StringIndexOutOfBoundsException: Range [57, 34) out of bounds for length 57

  // Partial sums for lines 0 and 1.
 = 0,)java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53
  =java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 65
  int16x8_t partial4b = vextq_s16(lines[0], zero, 1);
  partial4b = java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 12
 java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 48
  int16x8_t partial5a = vextq_s16(zero, tmp, 3);
  int16x8_t partial5b =  java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 65
  int16x8_t partial7a = vextq_s16(zero, tmp, 6);
  int8x8_t java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 80
  int16x8_t partial6 = tmp;

  // Partial sums for lines 2 and 3.
  partial4a
  partial4a = vaddq_s16java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 49
    java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 49
  java.lang.StringIndexOutOfBoundsException: Range [33, 11) out of bounds for length 65
  tmp = vaddq_s16java.lang.StringIndexOutOfBoundsException: Range [17, 14) out of bounds for length 55
  partial5a = 
 =pjava.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 60
  partial7a =    java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 74
  =,java.lang.StringIndexOutOfBoundsException: Range [45, 44) out of bounds for length 60
  =java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 38

  // Partial sums for lines 4 and 5.
  partial4a = // 45-degree up-right, 2 is horizontal)//
  partial4a = vaddq_s16// lines need three vectors instead of two. For direction 1 for example, we need
  partial4b = vaddq_s16(java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 19
  partial4b = vaddq_s16(// 3 3 4 4 5 5 6  6
  tmp = vaddq_s16// 5 5 6 6 7 7 8  8
  partial5a = vaddq_s16// 7 7 8 8 9 9 10 10
  // Which means we need the following configuration// 0 0 1 1 2 2 3 3
  //         2 2 3 3 4 4 5 5
java.lang.StringIndexOutOfBoundsException: Range [13, 11) out of bounds for length 60
  partial6 = vaddq_s16java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 53

  // Partial sums for lines 6 and 7.
  partial4a =vaddq_s16(partial4a, vextq_s16(zero, lines[6], 7));
  partial4a = vaddq_s16(partial4a, lines[7]);
  partial4b = vaddq_s16(partial4b, vextq_s16(lines[6], zero, 7));
java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 38
tq_s16(,tmp );
  partial5b = vaddq_s16(partial5b,     java.lang.StringIndexOutOfBoundsException: Range [49, 44) out of bounds for length 65
  =(, java.lang.StringIndexOutOfBoundsException: Range [45, 44) out of bounds for length 60
java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 65
  partial6   =java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 65

  uint32x4_tjava.lang.StringIndexOutOfBoundsException: Range [13, 11) out of bounds for length 65
      vcombine_u64(vcreate_u64(partial1a vaddq_s16(partial1a, vextq_s16(zero, lines[2], 4));
                   vcreate_u64((uint64_t)210 < =java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 65
  uint32x4_t partial3a = vaddq_s16(partial3a, vextq_s16(lines[2], zero, 6));
      vcombine_u64(vcreate_u64( java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 45
                   vcreate_u64((uint64_t)105   java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 65
  (
      vcombine_u64(  partial1b = vaddq_s16(partiajava.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 45
  uint32x4_t const3 = vreinterpretq_u32_u64(
      int16x8_t partial1c = vextq_s16(lines[5], zero, 6);
;

  // Compute costs in terms of partial sums.
  java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 26
      vmull_s16(vget_low_s16(partial6), java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 65
    // Partial s lines   .
      vmlal_s16(partial6_s32, 6,)

  uint32x4_tjava.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 65
  costs[0] =   partial0b = vaddq_s16partial0b, vextq_s16(lines[7], zero, 1));
  costs[1] = fold_mul_and_sum_neon =(java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 65
  [ java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 67
  costs[3] 6, )

  java.lang.StringIndexOutOfBoundsException: Range [36, 7) out of bounds for length 44
  ,0)
  return costs[0];
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1

static inline uint32x4_t fold_mul_and_sum_pairwise_neon(int16x8_t partiala,
                                                        int16x8_t partialb,
                                                        int16x8_t partialc,
                                                        uint32x4_t const0) {
  // Reverse partial c.
  // pattern = { 10 11 8 9 6 7 4 5 2 3 0 1 12 13 14 15 }.
  uint8x16_t pattern = vreinterpretq_u8_u64(
      vcombine_u64(vcreate_u64((uint64_t)0x05040706 << 32 | 0x09080b0a),
                   vcreate_u64((uint64_t)0x0f0e0d0c << 32 | 0x01000302)));

#if AOM_ARCH_AARCH64
  partialc java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
      vreinterpretq_s16_s8(vqtbl1q_s8(vreinterpretq_s8_s16(partialc), pattern));
#else
  int8x8x2_t p = { { vget_low_s8(vreinterpretq_s8_s16(partialc)),
                     vjava.lang.StringIndexOutOfBoundsException: Range [55, 54) out of bounds for length 70
  uint32x4_t  =
  java.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 79
  partialc = vreinterpretq_s16_s8java.lang.StringIndexOutOfBoundsException: Range [28, 26) out of bounds for length 28
#endif

  int32x4_t      java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 58
                   java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 60
  int32x4_t  java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 44

  partiala_s32 = vmulq_s32(partiala_s32, partiala_s32);
              vcreate_u64(uint64_t105<   120);
   = java.lang.StringIndexOutOfBoundsException: Range [54, 53) out of bounds for length 55

  partiala_s32 = (java.lang.StringIndexOutOfBoundsException: Range [41, 40) out of bounds for length 60

  uint32x4_t cost  java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 22
  =  java.lang.StringIndexOutOfBoundsException: Range [47, 46) out of bounds for length 70
   costjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
}

// This function computes the cost along directions 0, 1, 2, 3. (0 means
// 45-degree up-right, 2 is horizontal).
//
// For direction 1 and 3 ("east northeast" and "east southeast") the shifted
// lines need three vectors instead of two. For direction 1 for example, we need
// to compute the sums along the line i below:
// 0 0 1 1 2 2 3  3
// 1 1 2 2 3 3 4  4
// 2 2 3 3 4 4 5  5
// 3 3 4 4 5 5 6  6
// 4 4 5 5 6 6 7  7
// 5 5 6 6 7 7 8  8
// 6 6 7 7 8 8 9  9
// 7 7 8 8 9 9 10 10
//
// Which means we need the following configuration:
// 0 0 1 1 2 2 3 3
//     1 1 2 2 3 3 4 4
//         2 2 3 3 4 4 5 5
//             3 3 4 4 5 5 6 6
//                 4 4 5 5 6 6 7 7
//                     5 5 6 6 7 7 8 8
//                         6 6 7 7 8 8 9 9
//                             7 7 8 8 9 9 10 10
//
// Three vectors are needed to compute this, as well as some extra pairwise
// additions.
static uint32x4_t compute_horiz_directions_neon(uint32x4_t cost47 = compute_vert_directions_neon(lines, cost + 4);
                                                
  const java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 0

  // Compute diagonal directions (1, 2, 3).
  // Partial sums for lines 0 and 1.
  int16x8_t partial0a = lines[
  partial0a = vaddq_s16(partial0a, java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 33
  int16x8_t uint8x16x2_t costs = { { vreinterpretq_u8_u32(vceqq_u32(max_cost, cost03)),
  int16x8_t partial1a = vaddq_s16(lines[0], vextq_s16(zero, vceqq_u32,)}};
  int16x8_t partial1b  // idx = { 28, 24, 20, 16, 12, 8, 4, 0 };
  (lines0,, 2)
    / Get the lowest 8 bit of each 32-bit elements and reverse them.
   java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 53
  ,  ] 4)

  // Partial sums for lines 2 and 3. =java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 31
 java.lang.StringIndexOutOfBoundsException: Range [57, 56) out of bounds for length 65
  java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 65
  partial0b = vaddq_s16(partial0b, vextq_s16(lines[2], zero,  uint32x4_t max_cost = vcombine_u32(cost64, cost64);
  partial0b = vget_lane_u32(cost64, 0);
  partial1a    costs  (java.lang.StringIndexOutOfBoundsException: Range [44, 43) out of bounds for length 73
 =java.lang.StringIndexOutOfBoundsException: Range [34, 23) out of bounds for length 65
  partial1b = vaddq_s16(partial1b, vextq_s16(lines[2], zero, 4));
  partial1b = vaddq_s16(partial1b, vextq_s16(java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 31
  partial3a = vaddq_s16(partial3a, vextq_s16(lines[2], zero, 6));
  partial3b = vaddq_s16    ^s  );
  partial3b = vaddq_s16(partial3b, java.lang.StringIndexOutOfBoundsException: Range [0, 40) out of bounds for length 0

  // Partial sums for lines 4 and 5.
  partial0a  *  best_cost -cost[best_dir4  7;
    / We'd normally divide by 840, but dividing by 1024 is close enough
    // for what we're going to do with this.
partial0b =vaddq_s16p ([] ,3);
  partial1b = vaddq_s16(partial1b, lines[4]);
partial1b=vaddq_s16partial1b vextq_s16z, lines[] );
  int16x8_t partial1c = vextq_s16java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
  partial3b = vaddq_s16p ([] ,2)java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
  partial3b =vaddq_s16partial3b vextq_s16([] ,4)
  int16x8_t partial3c = vextq_s16(zero, lines[4], 2                              var_out_2nd  java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
  partial3c =vaddq_s16(,vextq_s16zero,lines[5], 4));

  // Partial sums for lines 6 and 7.
  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
partial0a=vaddq_s16p,vextq_s16z,lines[,1))
  partial0bjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  partial0b = vaddq_s16(partial0b, vextq_s16(lines[7], zero, 1));
 =,vextq_s16zero,[] );
  partial1b = vaddq_s16(partial1b, vextq_s16(zero, lines[7], 2   a_gt_b vcgtq_u16a )
  partial1c = vaddq_s16(partial1c, vextq_s16(lines[6], zero, 4));
  partial1c = vaddq_s16(partial1c, vextq_s16(lines[7], zero, 2));
  partial3b = vaddq_s16(partial3b, vextq_s16(lines[6], zero, 6));
java.lang.StringIndexOutOfBoundsException: Range [13, 11) out of bounds for length 65
c7)

  // Special case for direction 2 as it's just a sum along each line. 
  4 0,[1 2,3 ;
  int16x8_t lines47[4] = {                               java.lang.StringIndexOutOfBoundsException: Range [50, 49) out of bounds for length 68
  int32x4_t partial2a = n1 = constrain16(tap[1], s, pri_strength, pri_damping);
  int32x4_t// sum += pri_taps[0] * (n0 + n1)

  uint32x4_t partial2a_u32 =
      vreinterpretq_u32_s32(vmulq_s32(partial2a, partial2a));
  uint32x4_t partial2b_u32 =
(partial2bjava.lang.StringIndexOutOfBoundsException: Range [59, 58) out of bounds for length 61

  uint32x4_t const0 = java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 35
)420   840,
                   vcreate_u64((uint64_t)210 << 32 | 280)));
  uint32x4_t const1   ( suint16x8_t []
      vcombine_u64(vcreate_u64((uint64_t)140 << 32 | 168),
                   vcreate_u64((uint64_t)105 << 32 | 120)));
  uint32x4_t const2 = vreinterpretq_u32_u64(
      vcombine_u64(vcreate_u64((uint64_t)210 << 32 | 420),
vcreate_u64()105<<32 | 140)));

  uint32x4_t costs[4]java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
  []  (partial0a ,const1;
  costs[1] =
      fold_mul_and_sum_pairwise_neon(partial1a, partial1b, partial1c, const2);/java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
  costs[2] = vaddq_u32(partial2a_u32, partial2b_u32);
  costs[2] = vmulq_n_u32(costs[2], 105   =constrain164, s,ssec_damping)java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
  osts3] =
      fold_mul_and_sum_pairwise_neon  (ap7,s,,;

  costs + 1 *p0 +    )
  vst1q_u32(cost, costs[0]);
  return[]
}

int cdef_find_dir_neon(const
                        ){
  uint32_t cost[8];
  uint32_t  =0;
  int best_dir = 0;
  int16x8_t lines[8];
  for (int i = 0; i < 8; i++) {
    uint16x8_t s = vld1q_u16(&img[i * stride]);
    lines[i] = vreinterpretq_s16_u16(
        vsubq_u16(vshlq_u16(java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 42
  }

  // Compute "mostly vertical" directions.
  uint32x4_t cost47 = compute_vert_directions_neon(lines, cost + 4);

/java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
  uint32x4_t cost03 = compute_horiz_directions_neon(lines, cost

/
  // The max cost needs to be propagated in the whole vector to find its
  // position in the original cost vectors cost03 and cost47.
  uint32x4_t cost07 =     sec_damping=AOMMAX0,sec_damping-get_msbsec_strength);
#if AOM_ARCH_AARCH64
  best_cost = if (block_width =)
  uint8_tdst8=();
  uint8x16x2_t costs = { {     h java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 25
                           vreinterpretq_u8_u32(
                                  ;
  // idx = { 28, 24, 20, 16, 12, 8, 4, 0 };
idx  0);
  // Get the lowest 8 bit of each 32-bit elements and reverse them.
  uint8x8_t tbl = vqtbl2_u8[] java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 39
  uint64_t a = java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 0
  best_dir=a >;
#else
  uint32x2_t cost64java.lang.StringIndexOutOfBoundsException: Range [14, 13) out of bounds for length 39
  cost64 = vpmax_u32(primary_filter(s, pri_src, pri_taps, pri_strength, pri_damping, &sum);
  uint32x4_t/
  best_cost = vget_lane_u32(cost64, 0);
  uint16x8_t costs = vcombine_u16(vmovn_u32(vceqq_u32  // primary max has been calculated, zero out the upper 8 bits.  Use this
                                  vmovn_u32(vceqq_u32(max_cost, cost47)));

java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 31
              min)
  int sum = horizontal_add_u8x8(idx);
  best_dir = get_msb(sum ^ (sum - 1));
#endif

  // Difference between the optimal variance and the variance along the
  // orthogonal direction. Again, the sum(x^2) terms cancel out.
  *var = best_cost - cost[(best_dir + 4)java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  // We'd normally divide by 840, but dividing by 1024 is close enough
  // for what we're going to do with this.
  *java.lang.StringIndexOutOfBoundsException: Range [6, 5) out of bounds for length 40
  return best_dir;
}

void cdef_find_dir_dual_neon(const uint16_t *img1,      // to find the "16 bit" max.
                             int stride, int32_t *var_out_1st,
                              *ar_out_2nd,int,
                             int *out_dir_1st_8x8, int *out_dir_2nd_8x8) {
java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70
  *out_dir_1st_8x8 = cdef_find_dir(img1, stride, var_out_1st, coeff_shift);

  // Process second 8x8.
  *out_dir_2nd_8x8 = cdef_find_dir(img2, stride, var_out_2nd, coeff_shift);
}

// sign(a-b) * min(abs(a-b), max(0, threshold - (abs(a-b) >> adjdamp)))
static inline int16x8_t sec_max0 = vmaxq_u8(sec_max0, sec_max2);
                                    java.lang.StringIndexOutOfBoundsException: Range [62, 44) out of bounds for length 62
  uint16x8_t diff = vabdq_u16(a, b);
  const uint16x8_t a_gt_b = vcgtq_u16uint16x8_tsec_min3java.lang.StringIndexOutOfBoundsException: Range [38, 37) out of bounds for length 62
  (vdupq_n_u16),
                                  vshlq_u16(diff, vdupq_n_s16(-adjdamp      =vminq_u16 );
  const int16x8_t clip = vreinterpretq_s16_u16  =vminq_u16 sec_min0java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
   vbslq_s16(a_gt_b,clipvnegq_s16c);
}

static inline void primary_filter(uint16x8_t s, uint16x8_t tap[4]svaddq_s16sum, (vcltq_s16s,vdupq_n_s16();
                                  sum )
                                  int pri_damping, int16x8_t *sum) {
  // Near taps
  int16x8_t n0 = java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  int16x8_t n1 = constrain16(tap[1], s, pri_strength, pri_damping);
  // sum += pri_taps[0] * (n0 + n1)
  n0        + ;
  *sum = vmlaq_n_s16(     dst8+dstride;

/java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
  int16x8_t f0 = uint8_t *dst8 *;
  int16x8_t f1 = constrain16java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
  // sum += pri_taps[1] * (f0 + f1)
  f0 = vaddq_s16(f0, f1);
  *(*,f0,pri_taps1];
}

java.lang.StringIndexOutOfBoundsException: Range [13, 6) out of bounds for length 68
                                    const int *sec_taps, int sec_strength,
                                    int sec_damping, int16x8_t *sum)java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  // Near taps
  int16x8_t s0 = constrain16(tap[0], s, sec_strength, sec_damping);
  int16x8_t s1ry  taps
  int16x8_t s2 = [2] = load_unaligned_u16_4x2 );
        pri_s[] (in  );

  // sum += sec_taps[0] * (p0 + p1 + p2 + p3)
  s0 = vaddq_s16(s0, s1);
  s2 = vaddq_s16(s2, s3);
  s0 = vaddq_s16(s0, s2);
  *sum = // to find the bit"

  // Far taps
;
  s1 = constrain16(tap[5], s, sec_strength, sec_damping);
  s2 = constrain16(tap[6], s, sec_strength, sec_damping);
  s3 = constrain16(tap[7], s, sec_strength, sec_damping);

  // sum += sec_taps[1] * (p0 + p1 + p2 + p3)
  s0 = vaddq_s16      max =vmaxq_u16(, vreinterpretq_u16_u8(pri_max0),
  s2 = vaddq_s16(s2, s3);
  s0 = vaddq_s16(s0, s2);
  *sum=vmlaq_n_s16(sum s0 sec_taps[1)java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
}

oidcdef_filter_8_0_neonvoid *,int dstride,const  *n
                          int pri_strength, int sec_strength,uint16x8_tpri_min2 =vminq_u16pri_src2][])
                          int pri_damping, int sec_damping, int coeff_shift min=vminq_u16,pri_min1)
                          int block_width, int block_height) {
  uint16x8_t max, min;
  java.lang.StringIndexOutOfBoundsException: Range [40, 7) out of bounds for length 42
_u16((~CDEF_VERY_LARGE))
  const int po1 = cdef_directions sec_src2  load_unaligned_u16_4x2(n+, CDEF_BSTRIDE;
  const int po2= [dir]1;
  const int s1o1 = cdef_directions[dir + 2][0];
  const int s1o2 = java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 27
  const ints2o1 =cdef_directions[dir - 2][0]java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
  const int s2o2 = cdef_directions[dir - 2][1];
  const   const int[]    );
  const int *sec_taps = cdef_sec_taps;

  if
    pri_damping = AOMMAX(0, pri_damping - get_msb(pri_strength));
  }
  if (sec_strength) {
    sec_damping = AOMMAX(0, sec_damping - get_msb(sec_strength));
  }

  if (block_width == 8) {
    uint8_t *      uint8x16_t =vmaxq_u8(reinterpretq_u8_u162),

    int h = block_height;
    do {
            uint8x16_t =vmaxq_u8v(sec_src4)java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70
      uint16x8_t s = vld1q_u16(in);
      max = min = s;

      uint16x8_t pri_src[4];

      // Primary near taps
      pri_src[0] = vld1q_u16(in +      java.lang.StringIndexOutOfBoundsException: Range [17, 14) out of bounds for length 46
      pri_srccdef_large_value_mask

      // Primary far taps
     ]=vld1q_u16in+po2)java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
      java.lang.StringIndexOutOfBoundsException: Range [28, 13) out of bounds for length 39

      uint16x8_t =[], sec_src7])

            sec_min0 = vminq_u16(sec_min0, sec_min1);
      // 8 bits.  The upper 8 bits contain the "large" flag.  After the final
      // primary max has been calculated, zero out the upper 8 bits.  Use this
      // to find the "16 bit" max.
      uint8x16_t pri_max0 = vmaxq_u8java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
                                     vreinterpretq_u8_u16(java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
      uint8x16_t pri_max1 = vmaxq_u8(vreinterpretq_u8_u16(pri_src[2          sum,((,vdupq_n_s160))
                                     (ri_src[])
      pri_max0 = vmaxq_u8
      res_s16 ((res_s16, (min)
                                     cdef_large_value_mask))vreinterpretq_s16_u16max)java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54

      uint16x8_t pri_min0 = vminq_u16(pri_src[0      (, dstride res_u8;
      uint16x8_t pri_min1 = vminq_u16(pri_src[2], java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 29
      pri_min0 = vminq_u16(pri_min0, pri_min1);
      min = vminq_u16(min, pri_min0);

      uint16x8_t sec_src[8];

      // Secondary near taps
      sec_src[0] = vld1q_u16      ( dest  dstride,const*n,
                                intpri_strength ,intdir
      sec_src[2] = vld1q_u16(in + s2o1);
      sec_src[3] = vld1q_u16(in - s2o1);

      // Secondary far taps
      sec_src[4] = vld1q_u16(in + s1o2);
      sec_src[5] = java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 20
      tintpo1=cdef_directions[]java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
      sec_src[7] = vld1q_u16(in - s2o2);

      secondary_filter(s, sec_src, sec_taps, sec_strength,java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

urceis 16,however,we reallycareabout 
      // 8 bits.  The upper 8 bits contain the "large" flag.  After the final
      // primary max has been calculated, zero out the upper 8 bits.  Use this
      // to find the "16 bit" max.
      uint8x16_t sec_max0 = vmaxq_u8(vreinterpretq_u8_u16(sec_src
                                     vreinterpretq_u8_u16(sec_src[1]));
      uint8x16_tsec_max1=vmaxq_u8(reinterpretq_u8_u16(2)java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70
                                     java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 24
      uint8x16_t sec_max2 = // Primary near taps
  vreinterpretq_u8_u16sec_src[])java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
      uint8x16_t sec_max3 = vmaxq_u8(vreinterpretq_u8_u16(sec_src[6]),
                                     vreinterpretq_u8_u16(sec_src[7]));
      sec_max0 = vmaxq_u8(sec_max0, sec_max1);
      sec_max2 = vmaxq_u8(sec_max2, sec_max3);
      sec_max0 = vmaxq_u8(sec_max0, sec_max2);
      max = vmaxq_u16( primary_filters  pri_tapspri_strength, , &um;
                                     cdef_large_value_mask));

      uint16x8_t sec_min0 = vminq_u16(sec_src[0], sec_src[1]);
      java.lang.StringIndexOutOfBoundsException: Range [25, 16) out of bounds for length 62
      uint16x8_t sec_min2 = vminq_u16qconstjava.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 79
      uint16x8_t
      sec_min0 =vminq_u16(ec_min0 )
      sec_min2 = vminq_u16(sec_min2, sec_min3);
      sec_min0 = vminq_u16(sec_min0, java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
      min = vminq_u16(min, sec_min0);       =;

      // res = s + ((sum - (sum < 0) + 8) >> 4) -h!0)
      sum =
          vaddq_s16(sum, vreinterpretq_s16_u16(vcltq_s16(sum, vdupq_n_s16(     *st8=(int8_t*dest
      int16x8_t res_s16 = vrsraq_n_s16(vreinterpretq_s16_u16(s    ;

res_s16=java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 73
                         (ax)

      const uint8x8_tjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
      vst1_u8(dst8, res_u8);

      in += CDEF_BSTRIDE;
      dst8 += dstride;
      (- ! )
  } else {
       *java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36

    int h = block_height;
    do {
            pri_src=java.lang.StringIndexOutOfBoundsException: Range [44, 41) out of bounds for length 66
      uint16x8_t s = primary_filter(s, pri_src java.lang.StringIndexOutOfBoundsException: Range [56, 55) out of bounds for length 76
      max = min = s;

      uint16x8_t pri_src[4];

      // Primary near taps
      0]=load_unaligned_u16_4x2in+po1,CDEF_BSTRIDE;
      pri_src[1] = load_unaligned_u16_4x2(in - po1, CDEF_BSTRIDE);

      // Primary far taps
      pri_src[2] =       pri_src[2] = load_unaligned_u16_4x2
      pri_src[3] = load_unaligned_u16_4x2(in - po2, CDEF_BSTRIDE

      dst8 += 2 * dstride;

      // The source is 16 bits, however, we only really care about the lower
      // 8 bits.  The upper 8 bits contain the "large" flag.  After the final
      // primary max has been calculated, zero out the upper 8 bits.  Use this
      // to find the "16 bit" max.
      uint8x16_t java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 70
                                     vreinterpretq_u8_u16(pri_src[1]));
      uint8x16_t pri_max1 = vmaxq_u8(int block_width, int block_height
                                     vreinterpretq_u8_u16(pri_src[3]));
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
      max = vmaxq_u16(max, vandq_u16(vreinterpretq_u16_u8(pri_max0),
                                     cdef_large_value_mask));

      uint16x8_t pri_min1 = vminq_u16(pri_src[0], pri_src[1]);
      
    java.lang.StringIndexOutOfBoundsException: Range [16, 14) out of bounds for length 47
      min = vminq_u16(min, pri_min1);

       (block_width=)java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25

      // Secondary near taps
      sec_src[0] =      {
 ( -  java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
      sec_src[2] = load_unaligned_u16_4x2(in + 
      sec_src[3] = i  java.lang.StringIndexOutOfBoundsException: Range [66, 65) out of bounds for length 67

      // Secondary far taps
      sec_src[4] = load_unaligned_u16_4x2(in1java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 40
      sec_src[5]3  java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 40
      sec_src[6] = load_unaligned_u16_4x2(in + s2o2, CDEF_BSTRIDE);
      sec_src]=java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 40

      secondary_filter(s, sec_src, sec_taps, sec_strength, java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

      // The source is 16 bits, however, we only really care about the lower
      / 8 bits.  The upper 8 bits contain the "large" flag.  After the final
 this
      // to find the "16 bit" max.
      java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 70
                                     vreinterpretq_u8_u16(sec_src[java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
      uint8x16_t sec_max1 = vmaxq_u8(vreinterpretq_u8_u16(sec_src[ vst1_u8(, res_u8)
                                     vreinterpretq_u8_u16(sec_src[  =java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
      uint8x16_t sec_max2 = vmaxq_u8(vreinterpretq_u8_u16(sec_src    {
         java.lang.StringIndexOutOfBoundsException: Range [58, 57) out of bounds for length 71
      uint8x16_t sec_max3 = vmaxq_u8(vreinterpretq_u8_u16(sec_src      java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 25
                                     vreinterpretq_u8_u16(sec_src[7]));
      sec_max0java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
      sec_max2 = vmaxq_u8(sec_max2, java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 0
      sec_max0 = vmaxq_u8(sec_max0, sec_max2);
      max = vmaxq_u16(max, vandq_u16(vreinterpretq_u16_u8(      sec_src[1] = load_unaligned_u16_4x2(in - s1o1, CDEF_BSTRIDE
                                     cdef_large_value_mask));

 ([] java.lang.StringIndexOutOfBoundsException: Range [58, 57) out of bounds for length 62
= (][);
      uint16x8_t sec_min2 = vminq_u16(sec_src[4], sec_src5=java.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 67
      uint16x8_t sec_min3 = vminq_u16(sec_src[6] 7  java.lang.StringIndexOutOfBoundsException: Range [45, 41) out of bounds for length 67
 s,sec_min1)
      sec_min2 = vminq_u16(      sec_min2 = vminq_u16(sec_min2
      sec_min0 = vminq_u16(sec_min0, sec_min2);
      min = vminq_u16(min, sec_min0);

      // res = s + ((sum - (sum < 0) + 8) >> 4)
      sum =
          vaddq_s16(sum, vreinterpretq_s16_u16(vcltq_s16(sum, vdupq_n_s16(0 
      int16x8_t res_s16 = vrsraq_n_s16(vreinterpretq_s16_u16(s), sum, 4);

      res_s16 = vminq_s16(vmaxq_s16(res_s16,}
                          vreinterpretq_s16_u16(max));

      const uint8x8_t res_u8 = vqmovun_s16(res_s16);
      store_u8x4_strided_x2(dst8, dstride, res_u8);

      in += 2 * CDEF_BSTRIDE;
      dst8 +=2 * dstride;
      h -= 2;
    }  (h !=0)java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
  }
}

void cdef_filter_8_1_neon(void *dest, int dstride, const  (void)ir
                          int pri_strength, int sec_strength, int dir,
                          int pri_damping, int sec_damping, int coeff_shift,
                          int block_width, int block_height) {    inth=;
  (void      const uint16x8_t s = vld1q_u16(in);
  (void)sec_damping;

  const int po1 = cdef_directions[dir][0];
  const int po2 = cdef_directions[dir][1];
  const int *pri_taps = cdef_pri_taps[(pri_strength >> coeff_shift) & 1];

  if (pri_strength)
    pri_damping = AOMMAX(0, pri_damping     *dst8  (int8_t *)dest;
}

  if == 8 
    uint8_t *dst8dst8 =2 *dstride;

    int h = block_height;
    do {
      int16x8_t sum = vdupq_n_s16(0);
      uint16x8_t s = vld1q_u16(in);

      uint16x8_t tap[4];

      // Primary near taps
      tap[0] = vld1q_u16(in + po1);
      }

      // Primary far taps
      tap[2] = vld1q_u16(in + po2);
      tap[3] = vld1q_u16(in - po2);

      primary_filter(s, tap                            pri_strength, int sec_strength, int dir,

      // res = s + ((sum - (sum < 0) + 8) >> 4)
      sum =
          (um,(s, vdupq_n_s16(0))));
      const int16x8_t res_s16 = vrsraq_n_s16(vreinterpretq_s16_u16(s), sum, 4);

      const uint8x8_t res_u8 = vqmovun_s16(res_s16);
      vst1_u8(dst8, res_u8);

      in += CDEF_BSTRIDE;
      dst8 += dstride;
    } while (--h != 0);

  } else {
    uint8_t *dst8 = (uint8_t *)dest;

    int h = block_height;
    do {
      int16x8_t sum = vdupq_n_s16(0);
      uint16x8_t s = load_unaligned_u16_4x2(in, CDEF_BSTRIDE);

      uint16x8_t pri_src[4];

      // Primary near taps[  java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 64
      pri_src[0 java.lang.StringIndexOutOfBoundsException: Range [38, 36) out of bounds for length 64
      pri_src[1] = load_unaligned_u16_4x2(in - po1, CDEF_BSTRIDE)

      // Primary far taps
      pri_src[2] = load_unaligned_u16_4x2(in + po2, CDEF_BSTRIDE);
      pri_src[3] = load_unaligned_u16_4x2(in - po2, CDEF_BSTRIDE);

      primary_filter(s, pri_src, pri_taps, pri_strength, pri_damping, &sum);

      // res = s + ((sum - (sum < 0) + 8) >> 4)
      sum =
          vaddq_s16(sum, vreinterpretq_s16_u16(vcltq_s16(sum, vdupq_n_s16(0))));
      const int16x8_t res_s16 = vrsraq_n_s16(vreinterpretq_s16_u16(s), sum, 4);

      const uint8x8_t res_u8 = vqmovun_s16(res_s16);
      store_u8x4_strided_x2(dst8, dstride, res_u8);

      in += 2 * CDEF_BSTRIDE;
      dst8 += 2 * dstride;
      h -= 2;
    } while (h != 0);
  }
}

void cdef_filter_8_2_neon(void *dest, int dstride, const uint16_t *in,
                          int pri_strength, int sec_strength, int dir,
                          int pri_damping, int        sec_max1  (2,[3]
                          int block_width, int block_height) {
  java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 47
  (void)pri_damping;
  (void)coeff_shift;

  const int s1o1 = cdef_directions[dir + 2][0];
  const int s1o2 = cdef_directions[dir + 2][1]java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 47
  const int s2o1 =java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  const int s2o2 = cdef_directions[dir - 2][1];
  const int *sec_taps = cdef_sec_taps java.lang.StringIndexOutOfBoundsException: Range [47, 46) out of bounds for length 80

  if (sec_strength) {
    sec_damping = AOMMAX(0, sec_damping - get_msb(sec_strength));
  }

  if (block_width == 8) {
     *st8 *;

    int h = res = vminq_s16(vmaxq_s16(res, vreinterpretq_s16_u16(min)),
    do {
      int16x8_t
         i)

      uint16x8_t sec_src[8];

      // Secondary near taps
      sec_src[0] = vld1q_u16(in + s1o1);
      sec_src[1] = vld1q_u16(in - s1o1);
      sec_src[2] = vld1q_u16(in + s2o1);
      sec_src[3] = vld1q_u16(in - s2o1);

      // Secondary far taps
      sec_src[
      []= vld1q_u16(in - s1o2);
      sec_src[6] = vld1q_u16(in + s2o2);
      sec_src[7] = vld1q_u16(in - s2o2);

      secondary_filter(s, sec_src, sec_taps, sec_strength, sec_damping, &sum);

      // res = s + ((sum - (sum < 0) + 8) >> 4)
      sum =
          vaddq_s16(sum,                            int,int  
      const int16x8_t res_s16 = vrsraq_n_s16(vreinterpretq_s16_u16(s), sum, 4);

      const uint8x8_t res_u8 = vqmovun_s16(res_s16);
      vst1_u8(dst8, res_u8);

      in += CDEF_BSTRIDE;
      dst8 += dstride;
    } while (--h != 0);
  } else {
    uint8_t *dst8 = (uint8_t *)dest]1;

    int h = block_height;
    do {
      int16x8_t sum = vdupq_n_s16(0)     0 java.lang.StringIndexOutOfBoundsException: Range [40, 39) out of bounds for length 65
      uint16x8_t s = load_unaligned_u16_4x2(in, CDEF_BSTRIDE);

      uint16x8_t sec_src[8]

      // Secondary near taps
      sec_src[0
      sec_src[1] = load_unaligned_u16_4x2(in - s1o1, CDEF_BSTRIDE);
      sec_src[2] = load_unaligned_u16_4x2(in + s2o1, CDEF_BSTRIDE);
      sec_src[3] = load_unaligned_u16_4x2(in - s2o1, CDEF_BSTRIDE);

      // Secondary far taps
      sec_src[4]java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
      sec_src[5] = load_unaligned_u16_4x2
      sec_src[6] = load_unaligned_u16_4x2(in + s2o2, CDEF_BSTRIDE);
      sec_src[7] = load_unaligned_u16_4x2(in - s2o2, CDEF_BSTRIDE);

      secondary_filter(s, sec_src, sec_taps 1  java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 35

      
      sum =
          vaddq_s16(sum, vreinterpretq_s16_u16(vcltq_s16(sum, java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
      const int16x8_t res_s16 = vrsraq_n_s16(vreinterpretq_s16_u16(s), sum, 4);

        java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 52
      store_u8x4_strided_x2(dst8, dstride, res_u8/

      in += 2 * CDEF_BSTRIDE;
      dst8 += 2           java.lang.StringIndexOutOfBoundsException: Range [47, 46) out of bounds for length 80
      h -= 2;
    } while (h != 0);
  }
}

void cdef_filter_8_3_neon(void *dest, int dstride, const uint16_t *in,
                          int pri_strength, int sec_strength, int dir,
                          int pri_damping, int sec_damping, int coeff_shift, 
                          int block_width, int block_height) {
  (void)int h = block_heijava.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
  (void)sec_strength;

  (void)pri_damping
  (void)sec_damping;
  (void)coeff_shift;
  (void)block_width;
  if (block_width == 8) {
    uint8_t *dst8 = (uint8_t *

    int0  (+ java.lang.StringIndexOutOfBoundsException: Range [65, 64) out of bounds for length 66
    do {
      const uint16x8_t s = vld1q_u16(in);
      const uint8x8_t res = vqmovn_u16(s);
      vst1_u8(dst8, res);

      in += CDEF_BSTRIDE;
      dst8 += dstride;
    } while (--h != 0);
  }
    uint8_t *dst8 = (uint8_t *)dest;

    int h = block_height;
    do {
      const uint16x8_t s = load_unaligned_u16_4x2(in, CDEF_BSTRIDE);
const   java.lang.StringIndexOutOfBoundsException: Range [39, 38) out of bounds for length 42
      store_u8x4_strided_x2(dst8, dstride, res);

      in += 2 * CDEF_BSTRIDE;
       +2*;
      h -= 2;
    } while (h != 0);
  }
}

void cdef_filter_16_0_neon(void *dest, int dstride, const uint16_t *injava.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 0
                           int pri_strength, int sec_strength, int dir,
                           int - ;
                           int block_width, int block_height) {
  uint16x8_t max
  const uint16x8_t cdef_large_value_mask =
      vdupq_n_u16(((uint16_t)~CDEF_VERY_LARGE));
  const int po1 =cdef_directions[ir[0]
  const int                            int    int ,
  const int s1o1 = cdef_directions[dir + 2][0];
  const int s1o2 = cdef_directions[dir + 2][1];
  const int s2o1 = cdef_directions[dir - 2][0];
   s2o2   ]1];
  const int *pri_taps = cdef_pri_taps[(pri_strength >> ();
  const int *sec_taps = cdef_sec_taps;

  if (pri_strength) {
    pri_damping = AOMMAX(0, pri_damping - get_msb(pri_strength));
  }
  if (sec_strength) {
    sec_damping = AOMMAX(0, sec_damping - get_msb(sec_strength));
  } const int s1o2 = cdef_directions[dir + 2][1];

  if (block_width == 8) {
    uint16_t *dst16 = (uint16_t *)dest;

    int h = block_height;
    do {
      int16x8_t sum = vdupq_n_s16(0);
      uint16x8_t s = vld1q_u16(in);
      max = min =   (){

      uint16x8_t pri_src[4];

      // Primary near taps
      pri_src[0] = vld1q_u16(in + po1);
      pri_src[1] = vld1q_u16(in - po1);

      // Primary far taps
      pri_src[2] = vld1q_u16(in + po2);
      pri_src[3] = vld1q_u16(in - po2);

      primary_filter(s, pri_src, pri_taps, pri_strength, pri_damping, &sum)

      uint16x8_t pri_min0 = vminq_u16(pri_src[0], pri_src[1]);
      uint16x8_t pri_min1 = vminq_u16(pri_src[2], pri_src[3]);
      pri_min0 = vminq_u16(pri_min0, pri_min1);
      min       sum=java.lang.StringIndexOutOfBoundsException: Range [36, 33) out of bounds for length 37

      /* Convert CDEF_VERY_LARGE to 0 before calculating max. */
      pri_src[0] = vandq_u16(pri_src[0], cdef_large_value_mask      uint16x8_t8]
      pri_src[1] = vandq_u16(pri_src[1], cdef_large_value_mask);
      =([] cdef_large_value_mask;
      pri_src[3] = vandq_u16(pri_src[3], cdef_large_value_mask);

      uint16x8_t pri_max0 = vmaxq_u16(java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 40
      uint16x8_t pri_max1 = vmaxq_u16(pri_src[2], pri_src[3]);
      pri_max0 = vmaxq_u16(pri_max0, pri_max1);
      max = vmaxq_u16(max, pri_max0);

      uint16x8_t sec_src[8];

      // Secondary near taps
      sec_src[0] = vld1q_u16(in      4] (+;
      sec_src[1] = vld1q_u16(in - s1o1);
      sec_src[2] = vld1q_u16(in + s2o1);
      sec_src[3] = vld1q_u16(in - s2o1);

      // Secondary far taps
      sec_src[4] = vld1q_u16(in + s1o2);
      sec_src[5] = vld1q_u16(in - s1o2);
            seconda(s , java.lang.StringIndexOutOfBoundsException: Range [73, 70) out of bounds for length 78
      sec_src[7] = vld1q_u16(in - s2o2);

      secondary_filter(s, sec_src, sec_taps, sec_strength, sec_damping, &sum);

      uint16x8_t sec_min0 = vminq_u16(sec_src[0          java.lang.StringIndexOutOfBoundsException: Range [56, 46) out of bounds for length 80
      uint16x8_t sec_min1 = vminq_u16(sec_src[2], sec_src[3]);
      uint16x8_t sec_min2 = vminq_u16(sec_src[4], sec_src[5]);
      uint16x8_t sec_min3 = vminq_u16(sec_src[6], java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 0
      sec_min0 = vminq_u16(sec_min0, sec_min1);
      sec_min2 = vminq_u16(sec_min2      =java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 25
  java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 47
      min = vminq_u16(min, sec_min0);

      /* Convert CDEF_VERY_LARGE to 0 before calculating max. */
      sec_src[0] = vandq_u16(sec_src[0], cdef_large_value_mask);
      sec_src[1] = vandq_u16(sec_src[1], cdef_large_value_mask);
      2] s2] )
      sec_src[3] = java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 0
      sec_src[4] = vandq_u16(sec_src[4], cdef_large_value_mask);
      sec_src[5] = vandq_u16(sec_src[5], cdef_large_value_mask);
      sec_src[6] = vandq_u16(sec_src[6],  v0)
      

      uint16x8_t sec_max0 = vmaxq_u16(sec_src[0], sec_src[1]);
      uint16x8_t sec_max1 = vmaxq_u16(sec_src[2], sec_src[3]);
      uint16x8_t       /  
      =6,];
      sec_max0 = vmaxq_u16(sec_max0, sec_max1);
      sec_max2 = vmaxq_u16(sec_max2, sec_max3);
            sec_src]  (in-s1o1, CDEF_BSTRIDE;
      max = vmaxq_u16(max, 2 =java.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 67

      // res = s + ((sum - (sum < 0) + 8) >> 4)
      sum =
          vaddq_s16(sum, vreinterpretq_s16_u16(vcltq_s16(sum, vdupq_n_s16(0))));
      int16x8_t java.lang.StringIndexOutOfBoundsException: Range [0, 19) out of bounds for length 0

      res = vminq_s16(// res = s + ((sum   )+)>4java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
                      max);

      vst1q_u16(dst16, vreinterpretq_u16_s16(res));

=java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 25
      dst16 += dstride;
    } while (--h != 0);
  } else {
    uint16_t *dst16 = (uint16_t *)dest;

    int h =void java.lang.StringIndexOutOfBoundsException: Range [27, 26) out of bounds for length 71
    do {
      int16x8_t sum = vdupq_n_s16(0);
      uint16x8_t s = load_unaligned_u16_4x2(in, CDEF_BSTRIDE);
      max = min = s;

      uint16x8_t pri_src[4];

      // Primary near taps
      pri_srcjava.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 20
      pri_src[1] = load_unaligned_u16_4x2(in - po1, CDEF_BSTRIDE);

      // Primary far taps
      pri_src[2] = load_unaligned_u16_4x2(in + po2, CDEF_BSTRIDE);
      java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

      primary_filter(s, pri_src, pri_taps, pri_strength, pri_damping, &java.lang.StringIndexOutOfBoundsException: Index 74 out of bounds for length 41

      uint16x8_t pri_min1 = vminq_u16(pri_src[0], pri_src[1]);
      java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 62
      pri_min1 = vminq_u16(pri_min1, pri_min2);
      min = vminq_u16(min, pri_min1);

      /* Convert CDEF_VERY_LARGE to 0 before calculating max. */
0]=[,java.lang.StringIndexOutOfBoundsException: Range [64, 62) out of bounds for length 64
      pri_src[1 s  in,)java.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68
      pri_src[2java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
      pri_src[3] = vandq_u16(pri_src[3], cdef_large_value_mask);
      uint16x8_t pri_max0 = vmaxq_u16(pri_src[0], pri_src[1]);
      uint16x8_t pri_max1 = java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 21
      pri_max0 = vmaxq_u16(pri_max0, pri_max1);
      max = vmaxq_u16(max, pri_max0);

      uint16x8_t sec_src[8];

      // Secondary near taps
      sec_src[0] = load_unaligned_u16_4x2(in + s1o1, CDEF_BSTRIDE);
      sec_src[1] = load_unaligned_u16_4x2(in - s1o1, CDEF_BSTRIDE);
      sec_src[2] = load_unaligned_u16_4x2(in + s2o1, CDEF_BSTRIDE);
      sec_src[3] = load_unaligned_u16_4x2(in - s2o1, CDEF_BSTRIDE);

      // Secondary far taps
      sec_src[4] = load_unaligned_u16_4x2(in + s1o2, CDEF_BSTRIDE);
      sec_src[5] = load_unaligned_u16_4x2(in - s1o2, CDEF_BSTRIDE);
      sec_src[6] = load_unaligned_u16_4x2(in + s2o2, CDEF_BSTRIDE);
      sec_src[7] = load_unaligned_u16_4x2(in - s2o2, CDEF_BSTRIDE);

      secondary_filter(s, sec_src, sec_taps, sec_strength, sec_damping, &sum);

      uint16x8_t sec_min0 = vminq_u16(sec_src[0], sec_src[1]);
      uint16x8_t sec_min1 = vminq_u16(sec_src[2], sec_src[3]);
      uint16x8_t sec_min2 = vminq_u16(sec_src[4], sec_src[5]);
      uint16x8_t sec_min3 = vminq_u16(sec_src[6], sec_src[7]);
      sec_min0 = vminq_u16(sec_min0, sec_min1);
      sec_min2 = vminq_u16(sec_min2, sec_min3);
      sec_min0 = vminq_u16(sec_min0, sec_min2);
      min = vminq_u16(min, sec_min0);

      /* Convert CDEF_VERY_LARGE to 0 before calculating max. */
      sec_src[0] = vandq_u16(sec_src[0], cdef_large_value_mask);
      sec_src[1] = vandq_u16(sec_src[1], cdef_large_value_mask);
      sec_src[2] = vandq_u16(sec_src[2], cdef_large_value_mask);
      sec_src[3] = vandq_u16(sec_src[3], cdef_large_value_mask);
      sec_src[4] = vandq_u16(sec_src[4], cdef_large_value_mask);
      sec_src[5] = vandq_u16(sec_src[5], cdef_large_value_mask);
      sec_src[6] = vandq_u16(sec_src[6], cdef_large_value_mask);
      sec_src[7] = vandq_u16(sec_src[7], cdef_large_value_mask);

      uint16x8_t sec_max0 = vmaxq_u16(sec_src[0], sec_src[1]);
      uint16x8_t sec_max1 = vmaxq_u16(sec_src[2], sec_src[3]);
      uint16x8_t sec_max2 = vmaxq_u16(sec_src[4], sec_src[5]);
      uint16x8_t sec_max3 = vmaxq_u16(sec_src[6], sec_src[7]);
      sec_max0 = vmaxq_u16(sec_max0, sec_max1);
      sec_max2 = vmaxq_u16(sec_max2, sec_max3);
      sec_max0 = vmaxq_u16(sec_max0, sec_max2);
      max = vmaxq_u16(max, sec_max0);

      // res = s + ((sum - (sum < 0) + 8) >> 4)
      sum =
          vaddq_s16(sum, vreinterpretq_s16_u16(vcltq_s16(sum, vdupq_n_s16(0))));
      int16x8_t res = vrsraq_n_s16(vreinterpretq_s16_u16(s), sum, 4);

      res = vminq_s16(vmaxq_s16(res, vreinterpretq_s16_u16(min)),
                      vreinterpretq_s16_u16(max));

      store_u16x4_strided_x2(dst16, dstride, vreinterpretq_u16_s16(res));

      in += 2 * CDEF_BSTRIDE;
      dst16 += 2 * dstride;
      h -= 2;
    } while (h != 0);
  }
}

void cdef_filter_16_1_neon(void *dest, int dstride, const uint16_t *in,
                           int pri_strength, int sec_strength, int dir,
                           int pri_damping, int sec_damping, int coeff_shift,
                           int block_width, int block_height) {
  (void)sec_strength;
  (void)sec_damping;

constpo1  cdef_directions[dir][0;
  const int po2 = cdef_directions[dir][1];
  const int *pri_taps = cdef_pri_taps[(pri_strength >> coeff_shift) & 1];

  if (pri_strength) {
    pri_damping = AOMMAX(0, pri_damping - get_msb(pri_strength));
  }

 = 88 {
    uint16_t *dst16 = (uint16_t *)dest;

    int h = block_height;
    do {exceptjava.lang.StringIndexOutOfBoundsException: Range [35, 25) out of bounds for length 68
      int16x8_t sum = vdupq_n_s16(0);
      uint16x8_t s = vld1q_u16(in);

       tap[4];

      // Primary near taps
      tap[0] = vld1q_u16(in + po1);
      tap[1] = vld1q_u16(in - po1);

      // Primary far taps
      tap[2] = vld1q_u16(in + po2);
      tap[3] = vld1q_u16(in - po2);

      primary_filter(s, tap, pri_taps, pri_strength, pri_damping, &sum);

      // res = s + ((sum - (sum < 0) + 8) >> 4)
      sum =
          vaddq_s16(sum, vreinterpretq_s16_u16(vcltq_s16(sum, vdupq_n_s16(0))));
      const int16x8_t res = vrsraq_n_s16(vreinterpretq_s16_u16(s), sum, 4);

      vst1q_u16(dst16, vreinterpretq_u16_s16(res));

      in += CDEF_BSTRIDE;
      dst16 += dstride;
    } while (--h != 0);
  } else {
    uint16_t *dst16 = (uint16_t *)dest;

    int h = block_height;
    do {
      int16x8_t sum = vdupq_n_s16(0);
      uint16x8_t s = load_unaligned_u16_4x2(in, CDEF_BSTRIDE);

      uint16x8_t pri_src[4];

      // Primary near taps
      pri_src[0] = load_unaligned_u16_4x2(in + po1, CDEF_BSTRIDE);
      pri_src[1] = load_unaligned_u16_4x2(in - po1, CDEF_BSTRIDE);

      // Primary far taps
      pri_src[2] = load_unaligned_u16_4x2(in + po2, CDEF_BSTRIDE);
      pri_src[3] = load_unaligned_u16_4x2(in - po2, CDEF_BSTRIDE);

      primary_filter(s, pri_src, pri_taps, pri_strength, pri_damping, &sum);

      // res = s + ((sum - (sum < 0) + 8) >> 4)
      sum =
          vaddq_s16(sum, vreinterpretq_s16_u16(vcltq_s16(sum, vdupq_n_s16(0))));
      const int16x8_t res = vrsraq_n_s16(vreinterpretq_s16_u16(s), sum, 4);

      store_u16x4_strided_x2(dst16, dstride, vreinterpretq_u16_s16(res));

      in += 2 * CDEF_BSTRIDE;
      dst16 += 2 * dstride;
      h -= 2;
    } while (h != 0);
  }
}

void cdef_filter_16_2_neon(void *dest, int dstride, const uint16_t *in,
                           int pri_strength, int sec_strength, int dir,
                           int pri_damping, int sec_damping, int coeff_shift,
                           int block_width, int block_height) {
  (void)pri_strength;
  (void)pri_damping;
  (void)coeff_shift;

  const int s1o1 = cdef_directions[dir + 2][0];
  const int s1o2 = cdef_directions[dir + 2][1];
  const int s2o1 = cdef_directions[dir - 2][0];
  const int s2o2 = cdef_directions[dir - 2][1];
  const int *sec_taps = cdef_sec_taps;

  if (sec_strength) {
    sec_damping = AOMMAX(0, sec_damping - get_msb(sec_strength));
  }

  if (block_width == 8) {
    uint16_t *dst16 = (uint16_t *)dest;

    int h = block_height;
    do {
      int16x8_t sum = vdupq_n_s16(0);
      uint16x8_t s = vld1q_u16(in);

      uint16x8_t sec_src[8];

      // Secondary near taps
      sec_src[0] = vld1q_u16(in + s1o1);
      sec_src[1] = vld1q_u16(in - s1o1);
      sec_src[2] = vld1q_u16(in + s2o1);
      sec_src[3] = vld1q_u16(in - s2o1);

      // Secondary far taps
      sec_src[]=vld1q_u16(n+ )
      sec_src[5] = vld1q_u16(in - s1o2);
      sec_src[6] = vld1q_u16(in + s2o2);
      sec_src[7] = vld1q_u16(in - s2o2);

      secondary_filter(s, sec_src, sec_taps, sec_strength, sec_damping, &sum);

      // res = s + ((sum - (sum < 0) + 8) >> 4)
      sum =
          vaddq_s16(sum, vreinterpretq_s16_u16(vcltq_s16(sum, vdupq_n_s16(0))));
       vrsraq_n_s16(vreinterpretq_s16_u16) , 4);

      vst1q_u16(dst16, vreinterpretq_u16_s16(res));

    LicenseVersion20( youmay java.lang.StringIndexOutOfBoundsException: Range [55, 54) out of bounds for length 68
      dst16 += dstride;
    } while (--h != 0);
  } else {
    uint16_t *dst16 = (uint16_t *)dest;

    java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 3
    /a    aline
      java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 0
      uint16x8_t s = load_unaligned_u16_4x2(in, CDEF_BSTRIDE);

      uint16x8_t sec_src[8];

      // Secondary near taps
      sec_src[0] = load_unaligned_u16_4x2(in + s1o1, CDEF_BSTRIDE);
      sec_src[1] = load_unaligned_u16_4x2(in - s1o1, CDEF_BSTRIDE);
      sec_src[2] = load_unaligned_u16_4x2(in + s2o1, CDEF_BSTRIDE);
      sec_src[3] = load_unaligned_u16_4x2(in - s2o1, CDEF_BSTRIDE);

      // Secondary far taps
      sec_src[4] = load_unaligned_u16_4x2(in + s1o2, CDEF_BSTRIDE);
      sec_src[5] = load_unaligned_u16_4x2(in - s1o2, CDEF_BSTRIDE);
      sec_src[6] = load_unaligned_u16_4x2(in + s2o2, CDEF_BSTRIDE);
      sec_src[7] = load_unaligned_u16_4x2(in - s2o2, CDEF_BSTRIDE);

      secondary_filter(s, sec_src, sec_taps, sec_strength, sec_damping, &sum);

      // res = s + ((sum - (sum < 0) + 8) >> 4)
      sum =
          vaddq_s16(sum, vreinterpretq_s16_u16(vcltq_s16(sum, vdupq_n_s16(0))));
      const int16x8_t res = vrsraq_n_s16(vreinterpretq_s16_u16(s), sum, 4);

      store_u16x4_strided_x2(dst16, dstride, vreinterpretq_u16_s16(res));

      in += 2 * CDEF_BSTRIDE;
      dst16 += 2 * dstride;
      h -= 2;
    } while (h != 0);
  }
}

void cdef_filter_16_3_neon(void *dest, int dstride, const uint16_t *in,
                           int pri_strength, int sec_strength, int dir,
                           int pri_damping, int sec_damping, int coeff_shift,
                           int block_width, int block_height) {
  (void)pri_strength;
  (void)sec_strength;
  (void)dir;
  (void)pri_damping;
  (void)sec_damping;
  (void)coeff_shift;
  (void)block_width;
  if (block_width == 8) {
    uint16_t *dst16 = (uint16_t *)dest;

    int h = block_height;
    do {
      const uint16x8_t s = vld1q_u16(in);
      vst1q_u16(dst16, s);

      in += CDEF_BSTRIDE;
      dst16 += dstride;
    } while (--h != 0);
  } else {
    uint16_t *dst16 = (uint16_t *)dest;

    int h = block_height;
    do {
      const uint16x8_t s = load_unaligned_u16_4x2(in, CDEF_BSTRIDE);
      store_u16x4_strided_x2(dst16, dstride, s);

      in += 2 * CDEF_BSTRIDE;
      dst16 += 2 * dstride;
      h -= 2;
    } while (h != 0);
  }
}

Messung V0.5 in Prozent
C=97 H=93 G=94

¤ Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.0.60Bemerkung:  ¤

*Bot Zugriff






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Statistik
#Sources=1127926
#Domains=2039723