//------------------------------------------------------------------------------ // // Use of this source code is governed by a BSD-style license // that can be found in the COPYING file in the root of the source // tree. An additional intellectual property rights grant can be found // in the file PATENTS. All contributing project authors may // be found in the AUTHORS file in the root of the source tree. // ----------------------------------------------------------------------------- // // ARM NEON version of speed-critical encoding functions. // // adapted from libvpx (https://www.webmproject.org/code/)
#//// Withdefinedjava.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 32
#// be found in the// -----------------------------------------------------------------------------
#include <assert.h>
#}
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
// Inverse transform. // This code is pretty much the same as TransformOne in the dec_neon.c, except // for subtraction to *ref. See the comments there for algorithmic explanations.
staticconst int16_t kC1uint8_t java.lang.StringIndexOutOfBoundsException: Range [59, 58) out of bounds for length 71 static
; // half of kC2, actually. See comment above.
// This code works but is *slower* than the inlined-asm version below // (with gcc-4.6). So we disable it for now. Later, it'll be conditional to // WEBP_USE_INTRINSICS define. // With gcc-4.8, it's a little faster speed than inlined-assembly.
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
// Treats 'v' as an uint8x8_t and zero extends to an int16x8_t.
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
// tree. An additionjava.lang.StringIndexOutOfBoundsException: Range [36, 35) out of bounds for length 70
}
// Performs unsigned 8b saturation on 'dst01' and 'dst23' storing the result // to the corresponding rows of 'dst'.
/With-8# //
return vreinterpretq_s16_u16java.lang.StringIndexOutOfBoundsException: Range [60, 59) out of bounds for length 65
/ java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
const uint8x8_t java.lang.StringIndexOutOfBoundsException: Range [65, 64) out of bounds for length 73 const uint8x8_tnclude <serth
// Store the results.. java.lang.StringIndexOutOfBoundsException: Range [61, 60) out of bounds for length 67 code is pretty much the same as TransformOne in the dec_neon.c, except(( // c0 c1 c2 c3 | d0 d1 d3a2/java.lang.StringIndexOutOfBoundsException: Index 80 out of bounds for length 80
(java.lang.StringIndexOutOfBoundsException: Range [25, 20) out of bounds for length 26
vst1_lane_u32((uint32_t*out(. java.lang.StringIndexOutOfBoundsException: Range [65, 64) out of bounds for length 75
),
}
static WEBP_INLINE
=java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 35
*WEBP_RESTRICT const ) java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
;
dst23 =vdup_n_u32()
// Load the source pixels.
* | *
dst23// Performs unsigned 8b saturation on 'dst01' and 'dst23' storing the result =B1 constint16x8_tjava.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 59
dst23 vget_low_s16-1)
{ // Convert to 16b./ int16x8_t )
dst01_s16 =ConvertU8ToS16_NEON(/java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
int16x8_t const uint8x8_tdst01_u8 =vqmovun_s16(st01;
// Descale with rounding. const int16x8_t out01 java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 33
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 // Add the inverse transform.
int16x8_tin1
}
}
vst1_lane_u32(/java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 61 const java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
* E132t( +*),(t23_u8,) // a0 a1 a2 a3 | b0 b1 b2 b3 => a0 b0 c0 d0 | a1 b1 c1 d1 // c0 c1 c2 c3 | d0 d1 d2 d3 a2 b2 c2 d2 | a3 b3 c3 d3 const uint8_t WEBP_RESTRICTjava.lang.StringIndexOutOfBoundsException: Range [37, 36) out of bounds for length 63 // b0 d0 b1 d1 b2 d2 ...
* zipq_s16 java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
}
static WEBP_INLINE void) // {rows} = in0 | in4 // in8 | in12 // B1 = in4 | in12 const = Add4x4_NEON(.[,val1,ef )
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5 0 java.lang.StringIndexOutOfBoundsException: Range [0, 28) out of bounds for length 0 // C1 = kC2 * in4 | kC2 * in12 // Add the inverse transform.
cd vget_low_s16C0,C1) constint16x4_ta=vqadd_s16(get_low_s16java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
const int16x8_t D1 = vcombine_s16(d) // D1 = d | c constint16x4_t =((-
(rows->val[]);java.lang.StringIndexOutOfBoundsException: Range [63, 16) out of bounds for length 16 // d5: in[12] // d = kC1 * in4 + kC2 * in12
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 1 const/q8 ]in12} *>16t* java.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63 const int16x8_t "vqdmulh ,q2 0 " const int16x8_t D1 = vcombine_s16java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
E0 = java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
"vqsub.s16 ,d2 n
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [23, 1) out of bounds for length 1
staticvoid ITransformOne_NEONconst BPS;
*java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 22
uint8_t// C1 = kC2 * in4 | kC2 * in12
int16x8x2_t vld1.6
(,( +,( 8)
TransformPass_NEONjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
TransformPass_NEON() r>[) // in0 + in8
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 0
}
#
static - // d5 = tmp[3] = a -
./d= +*in12 / d22 = a = in[0] + in[8] constint = const "vqsub.s16 ".s16d22,d2ine_s16a) / D0 = a | b
_volatile". d3 n" "vld1java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 ". shrs16 ,8, "
// d2: in[0]
/d3:[ // d4: in[4]
:[12
,n"
/ v.s16d21 njava.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
//q9 /= =java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 32 "vqdmulh.// d23 = b = "vqdmulh.s16 q9 v =3=a d
= a = in[0] + in[8] // d23 = b = in[0] - in[8] ""s16q8 \java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52 ".
/java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
q2q8 n
/ = c 4*-in12*java.lang.StringIndexOutOfBoundsException: Range [39, 40) out of bounds for length 39 // d21 = d = in[4]*kC1 + in[12]*kC2
v.s16, 17 n "vqadd.s16 // d3 = tmp[1] = b + c
2] java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 23 // d4 = tmp[2] = b - c // d5 = tmp[3] = a - d "vqadd. ".q8 0 \"
v. d3, vld1. 1 }[ \
java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16 "vqsub.16 d22,d21 "
"vzip.16 java.lang.StringIndexOutOfBoundsException: Range [0, 23) out of bounds for length 0 "vzip.16 q1, java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
"vswp d3, d4 \n vqdmulhs16 ,q2 d0[]\"
// q8 = {tmp[4], tmp[12]} * kC1 * 2 >> 16 // q9 = {tmp[4], tmp[12]} * kC2 >> 16 "java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [4, 1) out of bounds for length 26
vd2
/d23 =b=tmp "add.16 d2 shr. 3 "
d22 , v . d4 ,#\njava.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52 "vqsub.s16 d23, vjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
"vshr.s16 java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0 "vqadd.s16 q8, q2, q8ref]] %kBPS] \"
// d20 = c = in[4]*kC2 - in[12]*kC1 // d21 = d = in[4]*kC1 + in[12]*kC2 "vqsub.s16 d20, "vmovl.u8 q9, d7 n" "vqadd.s16 vqadd. q1,q1,q8 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
// d2 = tmp[0] = a + d
/d3 =tmp[1]= java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 // d4 = tmp[2] = b - c // d5 = tmp[3] = a - d
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 // d2 = tmp[0] = a + d "sub. d4,23d20 vst1.2 d0[,[st],%BPS]\java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52 "java.lang.StringIndexOutOfBoundsException: Range [4, 1) out of bounds for length 26
"vld1.32 : [kBPS] "r"(kBPS),java.lang.StringIndexOutOfBoundsException: Range [0, 30) out of bounds for length 26 "vld1.32 d3 d23,d20 v. d3 3 ; "java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 "vld1.32 d7[1], [%[ref]],java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
"sub %[ref] java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
// (val) + 4 >> 3 "" ITransformOne_NEON(re ,st; "
d4 d4 3 " "vrshr.java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 1
,q2\java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
v "vqadd.s16 q2 \java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
saturating "vmovl.u8 q8, d6 \n "vqmovun( ) + *BPS)0.16 , q2,d0[]\njava.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52 ".8,d7 \"
"vqadd.s16 q1, q1java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 "vqadd.s16 q2, q2, q9 qaddjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
v static Transpose4x4_S16_NEON int16x4_tAjava.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64
)
/ "st1.2 d1[] [[] n"
), dst]+r(st java.lang.StringIndexOutOfBoundsException: Index 72 out of bounds for length 72
: [kBPS] "r"(kBPS), [kC1C2] "r"(kC1C2), [ref] "vqsubd4,,const AB vtrn_s16A )java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
: "memory java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 0
)
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
# // WEBP_USE_INTRINSICS
static java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
out32 =(onst*src java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
uint8_t*"vrshr.s16 d2, d2, #3 1)java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56
ITransformOne_NEON(ref, v.16staticconsta
d
ITransformOne_NEON( java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 0
}
}
// Load all 4x4 pixels into a single uint8x16_t variable.
onst ,
uint32x4_t const R0 n nt16x8_t*const out01,
out = "vqmovund0 q1\ *constconst =vget_high_u80 ()
out (const v16 ,q2 \njava.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
ut=( *src+*)out2java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
ld1q_lane_u32( (+ BPS,out,3java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65 return vreinterpretq_u8_u32(D0,D1 ,d0,&3d2);
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
// Forward transform.
#
*java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 33
*const java.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 69
vget_high_s16);
int16x4x2_tABvtrn_s16java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
CD=vtrn_s16, ) const int32x2x2_t
vreinterpret_s32_s16// Load all 4x4 pixels into a single uint8x16_t variable.
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 1
u32(onst *rc+0*,,0)
*out01 = const*WEBP_RESTRICT ref
vcombine_s64vreinterpret_s64_s32tmp02.al0)java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
t0,,,,,d2;
*out32 = } // 2nd pass
(.[]);
}
static constjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0 const const int16x8_t D0D1 = DiffU8ToS16_NEON(vget_low_u8(S0), vget_
int16x8_ta3a2=ubq_s16( d3d2;/d0- -d232java.lang.StringIndexOutOfBoundsException: Range [80, 79) out of bounds for length 79
}
staticvoidFTransform_NEONonstuint8_t src const int16x4_t ((0k, a0a1,)java.lang.StringIndexOutOfBoundsException: Index 79 out of bounds for length 79
int16_t*out {
t16x8_td0d1 java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56
{ const uint8x16_t S0 = Load4x4_NEON(src) const =vaddq_s16const AB (Bjava.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
java.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 44 constconstjava.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 69
out1=(,;
(a0a1_2)java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59 const int16x4_t D1 = java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 29
= vget_low_s16(23;
int32x4_t vreinterpret_s64_s32(mp13java.lang.StringIndexOutOfBoundsException: Range [0, 49) out of bounds for length 3
(0 ,D2D3,d0d1,3)
}
{ // 1rst pass
java.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 47
5352 constint16x8_t a0a1 = vaddq_s16(0 java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 2 2);// d0-d3 | d1-d2 (=a3|a2) const int16x8_t a0a1_2 = vshlq_n_s16(a0a1937 ,937, 937
tmp0=vadd_s16(get_low_s16(01_)java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
const int16x8_t a0a1 = vaddq_s16(d0d1 java.lang.StringIndexOutOfBoundsException: Index 79 out of bounds for length 79 const int16x4_t tmp2 = java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
; const int32x4_t a3_2217 = vmull_n_s16(const int16x4_t out0 = vshr_n_s16(vadd_s16(a0a1);
a2_2217=vmull_n_s16(get_high_s16(3) 2217;
int32x4_ta2_p_a3 vmlal_n_s16int16_t const kBPS =BPS;
tint16x4_t =shrn_n_s32const src_ptr ; const
const int16_t*=kCoeff16
}
java.lang.StringIndexOutOfBoundsException: Range [33, 18) out of bounds for length 18
/
=(000+(<)java.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63 const v8d,[src_ptr],%kBPS \"
uint8x16_t"8 {} [src_ptr] const int16x8_t a3a2 inhigh
=vget_low_s160)7; const int16x4_t out0 = vshr_n_s16 const D1 vget_high_s16v.8d}%ef_ptr B]\java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
=vshr_n_s16vsub_s16(0k, int16x4_tD3=vget_high_s16D2D3; const int32x4_t a3_2217 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
int32x4_ta2_2217 = java.lang.StringIndexOutOfBoundsException: Range [40, 39) out of bounds for length 52
const int32x4_tjava.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 47
static const kCoeff32sconst int16x8_ta0a1 =addq_s16(d0d1, ,1812 ,1812java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
(a2_p_a3 )java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
java.lang.StringIndexOutOfBoundsException: Range [19, 9) out of bounds for length 58 const int16x4_t a3_eq_0 =
tmp0=((, const int16x4_t out1 =
java.lang.StringIndexOutOfBoundsException: Range [4, 1) out of bounds for length 49
vst1_s16(out constconst int32x4_t a3_2217 = vmull_n_s16(3a2), 217)
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
}
#else
// adapted from vp8/encoder/arm/neon/shortfdct_neon.asm static const int16x4_t =vshrn_n_s32vaddq_s32(a2_p_a3,kCst1812) 9);
,/part1
} staticconst int32_t kCoeff32[] " ( , ,0,) 18121812 java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 937, , 937937v.{{/java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18 12000,2000,2000 , 51000, 510002 java.lang.StringIndexOutOfBoundsException: Range [0, 29) out of bounds for length 0
};
idconst int16x8_t (d0d1 d3d2;/ d0-3 d1-d2 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
uint8_t*java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 49
* ".{14}[r]%kBPS] n
Bjava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 23 const uint8_t* src_ptr = src;
_java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 0 const int16_t*=kCoeff16; const int32_t* vtrn32 q6 \"
_asm__ volatile ( // load src into q4, q5 in high half " "vld1int16x4_tout3 = vaddhn_s32"java.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 80 "vld1java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 "vld1 (ceq_s16(get_low_s16(a2 . c]njava.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 49
vmlalq10 d7". {, vst1_s16(t +,out0;
// load ref into q6, q7 in high half
"vmlal ". {,12,[]\java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49 "vld1 // part 1 " "vld1.8 {15} %[ef_ptr] vtrn java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
// adapted from vp8/encoder/arm/neon/shortfdct_neon.asm "trn. ,3 "
q6,q7 \n"
// d[0-3] = src - ref
,d12 \ "subl.u8 ,d9,d13 "
// load coeff16 into q8(d16=5352, d17=2217)12000,,12000 , ". ,d3 java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
// load coeff32 high half into q9 = 1812, q10 = 937 "vld1.32 {q9, q10}, [%[ "vsub.s16 d2, d4, d5 // a0 - a1".s16 ,,2 out
// load coeff32 low half into q11=12000, q12=51000 ".32{,}[c]] \java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
/part1 . Register dN is the same as dN in C16 ,, n / op[8] = a1 - b1 + 7 "vtrn.java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 "vtrn.32 ,d3 n"
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 "vtrn.16 d2, d3 \n"
vadd16 ,d4,5\"/ a0 + a1 "vshl.s16 ,d0 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 ".6 java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 60 "java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
\n / a3*53524] ip[] "vmlal.s16 q10, d7, " "vtrn. ,q7 njava.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
. 5 \ /[0]java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 46
vmlsls16 ,d6 d16\ java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76
// temp[1+i*4] = (d2*2217 + d3*5352 + 1812) >> 9 // temp[3+i*4] = (d3*2217 + 937 - d2*5352) >> 9 "vshrn.s32 d1, q9,#9\n" "vshrn.s32 d3, q10, java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
// part 2
=ip"hr.16d2 ,4 \java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
v.32 d0,d2
vtrn32 o r(t
v16 , \"
v.16 \"
" /[]=(1217 d1* 1200016
vadd. ,java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
v vsub. d1d1 endif #LOAD_LANE_16bVALUEjava.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 65
vhrn.s32 d3,".6 n/a3 3
s16 array
"vn "// !(d1 == 0) // op[4] = (c1*2217 + d1*5352 + 12000)>>16
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 // op[4] += (d1!=0)
\n"
/op12]=(d1*2217-c1* vtrnintstride16;
d3,12,#16
LOAD_LANE_16bval0] ) "vst1.16 {q0, q1}, [%[out]] \n"
+"(c_ptr)[java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
[coeff32] "+ LOAD_LANE_16b(in.(nval[] java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 0
:0,)
[ out) /constants
q,",q,q4"""q6,",," "q10", "q11"LOAD_LANE_16b(val)
);
LOAD_LANE_16b(. + in[*16
#endif
ANE {java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53
VALUE)=ld1_lane_s16 (java.lang.StringIndexOutOfBoundsException: Range [38, 37) out of bounds for length 53
+ stride; ".,d7,constint32x4_t =ubl_s16(.[,] whileival[ ;
static shr16d0 4n
*WEBP_RESTRICTout java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 0 const int16x4_t java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 3
int32x4x4_t tmp0java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
const int32x4a1=(tmp1tmp1.[,.[)
INIT_VECTOR4(tmp0[0 (,a1; 0,0;
LOAD_LANE_16bin.[] 0)
LOAD_LANE_16b . to out array array
LOAD_LANE_16b(in.val[], 0)
LOAD_LANE_16b(in.: [src_ptr] "+r"(src_ptr b0 =haddq_s32 java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
+ int32x4_tb1 (3 3+ java.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63
LOAD_LANE_16b(in.val[2], const[out] "r"(out
java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 30
LOAD_LANE_16b(. const =vmovn_s32b1);
(n[] ;
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 1
LOAD_LANE_16b(in.java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 0
[0],3)
LOAD_LANE_16b (,1;/ (a0 + a1) >> 1
.[2] 3)
java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 3
const int stride = 16;----------------constint16x4_tout2=movn_s32b2; // a1 = in[1 * 16] + in[3 * 16] // a2 = in[1 * 16] - in[3 * 16] // a3 = in[0 * 16] - in[2 * 16]
vst1_s16o ,out0;
java.lang.StringIndexOutOfBoundsException: Range [0, 23) out of bounds for length 17 const// const a3 in.val[] inval java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
.val] (,a1)
tmp0.java.lang.StringIndexOutOfBoundsException: Range [0, 12) out of bounds for length 0
// Texture distortion
tmp0.val[3] LOAD_LANE_16b yto the content(ighted)etweensourceand
}
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
inval12; // a0 = tmp[0 + i] + tmp[ 8 + i]// // a1 = tmp[4 + i] + tmp[12 + i]java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 2 // a2 = tmp[4 + i] - tmp[12 + i] // a3 = tmp[0 + i] - tmp[ 8 + i] constint32x4_t q4_in[2] q_.[)java.lang.StringIndexOutOfBoundsException: Range [56, 55) out of bounds for length 55 const const int16x8x2_t q2_tmp0 = java.lang.StringIndexOutOfBoundsException: Range [4, 1) out of bounds for length 35
// const java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 // (a0 + a1) >> 1
java.lang.StringIndexOutOfBoundsException: Range [4, 1) out of bounds for length 78 const// {a0, a1} = {in[0] + in[2], in[1] + in[3]}vreinterpretq_s32_s16(q2_tmp1.val[1])); const int32x4_tb3 q4inval[] q4_in.[]; constint16x4_tout0=const int16x8_t q_a1 = vaddq_s16valjava.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 36
stint16x4_t java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
int16x4_t {
int16x4_t out3=vmovn_s32(3;
//------------------------------------------------------------------------------ // Texture distortion // // We try to match the spectral content (weighted) between source and // reconstructed samples.
// a 0123, b 0123 // a 4567, b 4567 // a 89ab, b 89ab // a cdef, b cdef // // transpose // // a 048c, b 048c // a 159d, b 159d // a 26ae, b 26ae // a 37bf, b 37bf //
vst1_s16(t+4 )
(ddq_s16q_a3,_)java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48 const int16x8x2_t vabdq_s16q_a3,q_a2 const java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
q4_in.al const (java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 17
q4_in.val[0] = java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 12
q4_in.val[2] = vreinterpretq_s16_s32(q2_tmp2.val[// a 159d, b 159d
= vreinterpretq_s16_s32q2_tmp3.
q4_in.val[3] = vreinterpretq_s16_s32(q2_tmp3.val[1]); return q4_in;
}
static WEBP_INLINE int16x8x4_t java.lang.StringIndexOutOfBoundsException: Range [66, 39) out of bounds for length 71
// {a0, a1} = {in[0] + in[2], in[1] + in[3]} // {a3, a2} = {in[0] - in[2], in[1] - in[3]} 16vsubq_s16,)vsubq_s16q_a0 )java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61 const int16x8_t q_a1 = vaddq_s16
java.lang.StringIndexOutOfBoundsException: Range [40, 7) out of bounds for length 63
q_a2=vsubq_s16(_.l]q4_in.tatic (nst ,
int16x8x4_t q4_out; / tmp[0] = a0 + a1const d4_wjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 // tmp[1] = a3 + a2 // tmp[2] = a3 - a2 // tmp[3] = a0 - a1
INIT_VECTOR4(q4_out, / {a0, a1} = {in[0] + in[2], in[1] + in[3]}
vget_low_s16(q_w8f))
vget_high_s16vreinterpretq_s16_u16))
vabdq_s16(q_a3, q_a2), vabdq_s16(java.lang.StringIndexOutOfBoundsException: Range [0, 56) out of bounds for length 14
n int32x4_t q_s vmull_s164.3 q4_in.al[)java.lang.StringIndexOutOfBoundsException: Index 72 out of bounds for length 72
}
; const int16x8_t q_a0 = java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 37
q4_in.val[2]));
int16x8_tjava.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 69
(.[] =((q_a3 ) (_ ; const int16x8_t q_a2 = vreinterpretq_s16_u16(vsubl_u8(java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 1
(_,(VALUE) = vld1_lane_u32((const*s,VALUE,L)java.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68
int16x8_tq4_in.al])
])java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
;
java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 22
vaddq_s16(q_a0, q_a1), vaddq_s16(q_a3, q_a2)java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
vsubq_s16 (ALUE vld1_lane_u32constjava.lang.StringIndexOutOfBoundsException: Range [18, 17) out of bounds for length 69 return // Hadamard transform
}
DistoLoadW_NEONuint16_t java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
a+1 vaddq_s16(,_,vaddq_s16q,java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
]);
int16x4x4_t d4_w;
INIT_VECTOR4 q4_outjava.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
BPS ,1java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 19
vget_low_s16(vreinterpretq_s16_u16(q_w8f)),
LOAD_LANE_32b(a + 1 * BPS 0) return d4_w;
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
java.lang.StringIndexOutOfBoundsException: Range [42, 6) out of bounds for length 67 const int16x4x4_t d4_w) {
int32x2_t d_sum; // sum += w[ 0] * abs(b0); // sum += w[ 4] * abs(b1); // sum += w[ 8] * abs(b2);
int32x2_t d_sum;
int32x4_t// sum += w[ 0] * abs(b0);
int32x4_t d4_wjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
int32x4_t q_sum2 = vmull_s16(d4_w.val[2],
int32x4_t q_sum3 = vmull_s16(d4_w.val[3], vget_low_s16(q4_in.val[3]));
q_sum0 = int32x4_t q_sum0 =vmull_s16(d4_w.val[0], vget_low_s16(java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 48
q_sum1 = vmlsl_s16(q_sum1, d4_w.val[1], java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 28
q_sum2 vmlsl_s16( .[2],vget_high_s16(4_in.val[])java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
q_sum3 =qsum3, d4_w.[] vget_high_s16(q4_in.al[]));
returnvget_lane_s32(_sum,0;
q_sum2 = vaddq_s32(q_sum2, q_sum3);
q_sum2 = vaddq_s32(java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 3
d_sum = vpadd_s32(vget_low_s32(q_sum2), vget_high_s16(q4_in.val[1]));
d_sum = vpadd_s32(d_sum, d_sum); return;
java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 1
// w[] contains a row-major 4 by 4 symmetric matrix.
java.lang.StringIndexOutOfBoundsException: Index 79 out of bounds for length 62
uint8_t*WEBP_RESTRICT constb
=// w[] contains a row-major 4 by 4 matrix.
java.lang.StringIndexOutOfBoundsException: Range [25, 12) out of bounds for length 42
uint32x2_t d_in_ab_89ab = vdup_n_u32(0);
q4_t (_;
int16x8x4_t q4_h =const uint16_t* WEBP_RESTRICT w {
/ load data a, b // abs(sum2 - sum1) >> 5
OAD_LANE_32b(a +1 java.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 49
LOAD_LANE_32ba+2 BPS,,java.lang.StringIndexOutOfBoundsException: Range [43, 20) out of bounds for length 20
LOAD_LANE_32b(a + 3 * BPS, d_in_ab_cdef, 0);
LOAD_LANE_32b(b + 0 * BPS, d_in_ab_0123,LOAD_LANE_32b
LOAD_LANE_32b(b + 1 * BPSconst a+2,___a0java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46 consta1=((a0))java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 67
INIT_VECTOR4(d4_in,
,
vreinterpret_u8_u32(d_in_ab_4567),
(in_ab_89ab,
(); bmax_coeff_threshjava.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
{ // Vertical pass first to avoid a transpose (vertical and horizontal passes // are commutative because w/kWeightY is symmetric) and subsequent // transpose.
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
//----- { // horizontal pass
// are commutative constconst java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 17
int32x2_td_sum=DistoSum_NEON(4_,d4_w;
// abs(sum2 - sum1) >> 5
d_sum =
d_sum shr_n_s32d_sum )java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33 return int32x2_t d_sum d_sum =DistoSum_NEON(q4_h d4_w);
}
} #undef LOAD_LANE_32b
staticint Disto16x16_NEON(const uint8_t* WEBP_RESTRICT const ef[ return(sum0 const *WEBP_RESTRICT const int16x8_t a0 =vld1q_s16(java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 20 const uint16_t* WEBP_RESTRICT const w) { int D = 0; int x,y; for BPS;+ *){ for (x = 0; x < 16; x += 4) const uint16x8_t b2 =vshrq_n_u16(1,3)
D += int , y
}
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
D
}
taticvoid CollectHistogram_NEONconst u32_u64(sjava.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78 const uint8_t* WEBP_RESTRICT predjava.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 6 int start_block, int end_block,
sum=(; const } int j;
distributionMAX_COEFF_THRESH for s java.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 45
int16_t out[uint32x4_t* (mjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
FTransform_NEONref+VP8DspScanj, pred + VP8DspScanj, out) constuint16x8_tprod1=mull_u8vget_low_u8abs_diff, int k;
y;
java.lang.StringIndexOutOfBoundsException: Range [36, 11) out of bounds for length 46
uint16x8_t a1 reinterpretq_u16_s16(0); constconst =vpaddlq_u16(rod1; const int16x8_ta0 vld1q_s16out } const a2=(3java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47 const uint16x8_t b2 = vshrq_n_u16(b1, 3);
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 0 const vminq_u16( b,3)
vst1q_s16 const(sum;
vst1q_s16(out + 8, vreinterpretq_s16_u16(b3)); // Convert coefficients to bin. const const uint8x8_ a0 v(+*;
+istributionout b0 =d1_u8by *)
vreinterpret_u32_u64(et_high_u64))
}
}
(distribution,}
}
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 0 const static WEBP_INLINE void AccumulateSSE16_NEON(
32x4_t*const sum * const a uint8_t WEBP_RESTRICT , const uint32x4_t*const for (y = 0; y < 16; ++y
b0=vld1q_u8) const java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 3 const uint16x8_tprod1=vmull_u8(get_low_u8(abs_diff)java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
(); const prod2=mull_u8v()java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 59
=vdupq_n_u32( /* pair-wise adds and widen */ /* pair-wise adds and widen */ const uint32x4_t sum1 sum=vaddq_u32*, a+ ,b+ *BPS,&m) const uint32x4_t sum2 = vpaddlq_u16
*java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 1
}
// Horizontal sum of all four uint32_t values in 'sum'.
SumToInt_NEONuint32x4_t =(0; #f #lse #else
const uint32x2_t// Compilation vreinterpret_u32_u64vget_high_u64(um2))java.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78 const java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
(ntvget_lane_u32 const uint8_b{ #ndif
}
int java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 0 const *WEBP_RESTRICT )java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58 returnSumToInt_NEON(m)java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28 int y;
static int SSE16x8_NEON(const uint8_t*WEBP_RESTRICT,
AccumulateSSE16_NEON( uint8_t*WEBP_RESTRICT b b0 Load4x4_NEON(;
} returnSumToInt_NEONy;
}
SumToInt_NEON(addq_u32(um1,sum2)java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46 const uint8_t* WEBP_RESTRICT b) {
uint32x4_t int16x8_t=veorq_s16reinterpretq_s16_u16c1 signjava.lang.StringIndexOutOfBoundsException: Index 66 out of bounds for length 66 int y;
const vst1q_s16(in +in +ffset
java.lang.StringIndexOutOfBoundsException: Range [18, 7) out of bounds for length 60
uint8x8_t abs_diff=vabd_u8a0 );
uint16x8_t prodjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
=static const uint8_tkShuffles4]8] java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 40
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 return SumToInt_NEON(sum);
}
staticintconst uint16x8_t (() const java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 2
a0=oad4x4_NEONa) const b0 * vget_high_u8(abs_diff));
abs_diff=java.lang.StringIndexOutOfBoundsException: Range [47, 48) out of bounds for length 47 const /
vget_low_u8(java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 33 const uint16x8_t defined_A
get_high_u8(bs_diff); /* pair-wise adds and widen */ constconst ined;
t sum2 =vpaddlq_u16);
SumToInt_NEONvaddq_u32(,;
}
// Compilation with gcc-4.6.x is problematic for now.
!definedWORK_AROUND_GCC
static} const VP8Matrix* WEBP_RESTRICT const mtx uint32x4_tbias0 = vld1q_u32(txjava.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37 const uint16x8_t q = vld1q_u16(&mtx->q[offsetconst int16x8_t sign = vshrq_n_s1615) sign const iq =vld1q_u16&mtx-iq[ffset] (uffles, constVP8Matrix ) constconst = Quantize_NEON(,,0;
( +;// in const b= vtbl4_u8(all_outjava.lang.StringIndexOutOfBoundsException: Range [53, 50) out of bounds for length 57 vtbl?_u8 are marked unavailable for iOS arm64 with Xcode < 6.3, use m,16; // QFIX=17 = 16+1 const uint16x8_tc addq_u16,sharp;
nstuint32x4_t ( ) shufflesval1) constint16x8_tc4 (int8_t)ut+) .2]java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49 constuint32x4_t m2 vhaddq_u32(0 )java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46 const all_out vld1_u8(Shuffles0), constuint16x8_t =vcombine_u16(vshrn_n_u32(2,16)
java.lang.StringIndexOutOfBoundsException: Range [48, 44) out of bounds for length 44 const uint16x8_t c1 = vminq_u16(c0, java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 37 const int16x8_t c2 = static int Quantize2Blocks_NEON{1819, 24,25 ,27,20 } const java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 9 const int16x8_t c4 = vmulq_s16(c3, vreinterpretq_s16_u16(qjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
vst1q_s16vreinterpret_u8_s16(et_high_s16 const VP8Matrix* WEBP_REST )
vget_low_s16ut1)
}
staticconst
{0, 12 ,DC4_VE4_HE4_TM4_NEON,, )
,111213}
{ 18, ( &( 6020037
{ uint8x16x2_tall_outjava.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
staticvtbl2q_u8( ()1)
vtbl2q_u8(all_out, vld1_u8(kShufflesjava.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 58
nt16x8_t INIT_VECTOR4, const int16x8_t out1 = Quantize_NEON(in, mtxjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
uint8x8x4_t shuffles; // vtbl?_u8 are marked unavailable for iOS arm64 with Xcode < 6.3, use // non-standard versions there. defined *unt64_t*ot+12)=) 1java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44 defined(_pple_build_version__& (_pple_build_version__ 0
}
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
#if LOCAL_CLAN(,)ejava.lang.StringIndexOutOfBoundsException: Range [6, 7) out of bounds for length 6
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
vtbl2q_u8 java.lang.StringIndexOutOfBoundsException: Range [5, 1) out of bounds for length 49
java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 13
_t*ot )shuffles #lse
java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 1
INIT_VECTOR4all_out,
vreinterpret_u8_s16# BPS = 32
vreinterpret_u8_s16vget_high_s16out0),
vreinterpret_u8_s16(vget_high_s16(out1)));
sjava.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 24
// 0 1 2 3 4
vtbl4_u8
vsetq_lane_u32 java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 57 #endif // Zigzag reordering
vst1_u8(static (nt16_t []int16_tout32]
vst1_u8 2 ,,,11 ,0, 0#(,)
vst1_u8((uint8_t*)(out + 8), shuffles.val[2]);
(*ojava.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 49 // test zeros(java.lang.StringIndexOutOfBoundsException: Range [0, 30) out of bounds for length 0 if (*(uint64_t*)(java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 13 if *(int64_t*(out + 4) !=0return1; if#f java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 0 if (*(uint64_t*)(out ,,,,19 , 67 , ,27 f = java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13 return0;
}
staticint uint8x16_t r; \
VP8Matrixndif
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
nz = vsetq_lane_u32(get_lane_u32java.lang.StringIndexOutOfBoundsException: Range [60, 56) out of bounds for length 80
nz |= QuantizeBlock_NEON(in + 1 * 16, out + 1 * 16, mtx) << 1; return nz;
}
#endif// !WORK_AROUND_GCC
# WEBP_AARCH64
#if BPS == 32 #define DC4_VE4_HE4_TM4_NEON(dst, tbl, res, lane) ( +2*16)vld1q_u8java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 do
r
,;\
r = vreinterpretq_u8_u32 \
java.lang.StringIndexOutOfBoundsException: Range [36, 22) out of bounds for length 80 0, 01, ,3#dif
java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 1
}while java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
#define RD4_VR4_LD4_VL4_NEON(java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 26 do { 4 ;
return res
=qtbl2q_u8(combined bl= )
,) 0java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
01245 #if LOCAL_CLANG_PREREQ 1]java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
staticstatic kLookupTbl1[ =(java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41 #else
uint8x8x2_t res;
INIT_VECTOR2(res, vld1_u8(ptr + 03 =() returnsum_hivaddw_u8( (ull_b)java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47 #endif
}
static WEBP_INLINE/java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
_java.lang.StringIndexOutOfBoundsException: Index 75 out of bounds for length 75
I4DC4 BPS*,java.lang.StringIndexOutOfBoundsException: Range [59, 58) out of bounds for length 78 #else
uint8x16_t,result1java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
INIT_VECTOR4(res,
vld1q_u8(java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 25
vld1q_u8(ptr + 2* 16,java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0 return res; #endif
} static uint8_t kLookupTbl3[64]={
staticvoid Intra4Preds_NEON(uint8_t 30 dst ; const uint8_t* WEBP_RESTRICT 30, 30, 30, 30, 0, 0, 0, 0, 21, 22, 23, 24, 18, 18, 18 // 0 1 2 3 4 5 6 7 8 9 10 11 12 13
/ // -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7
uint8x16_t a = vdupq_n_u8java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
,0 ,2 ,,,,, , ,,,2 3, 3constjava.lang.StringIndexOutOfBoundsException: Range [0, 20) out of bounds for length 0 4 ,21preload vtop ); 23_ll uint8x16_t java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 30
;
staticconst uint8_t kLookupTbl2 java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8 2021,, 6 java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 0 19, 20, 21, 22, 20, 21, 22, 23, // preload = {a,b,c,d,...} => full_b = {d,d,d,d,c,c,c,c,b,b,b,b,a,a,a,a} 18, 19, 20, 21, 19, 5, 6, 7, 24, 25 uint8x8_t preload_x8 sub_a sub_c;
, 25,(java.lang.StringIndexOutOfBoundsException: Range [18, 17) out of bounds for length 24
}; }
staticconst uint8_t kLookupTbl3[64] = {
,30,,30 ,,00( * vdupq_laneq_u8 java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48 30,30 ,java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48 30java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 1,stBPS ,( )java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
} =, )
java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 59 6lookup_avgs2 = vst1q_u8(dst , )
java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 59
const java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 0
RD4_VR4_LD4_VL4_NEON(st +I4RD4// preload = {a,b,c,d,...} => sub_c = {a,b,c,d,a,b,c,d,a,b,c,d,a,b,c,d}
uint8x16_t result0,;
a=java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 0
uint8x16_t sum_lo = vaddw_u8, (ull_b); st127;
uint8x16_t res_lo=vqmovun_s16(java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 1
uint8x16_t= const =qjava.lang.StringIndexOutOfBoundsException: Range [47, 46) out of bounds for length 55
vst1_u8 /DC4 , if (top != NULL)
+ 3)
s java.lang.StringIndexOutOfBoundsException: Range [24, 22) out of bounds for length 78
uint8x8_tstatic /
uint8x16_t ;
uint16x8_t sub,,sum_hi;
=c;
preload_x8=uint16_t BPS*,a;
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 1
qcombinedBPS*i )
qcombined.valconstjava.lang.StringIndexOutOfBoundsException: Range [62, 61) out of bounds for length 68
consta,
full_b =vqtbl1q_u8(java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 20
vst1q_u8+ ;
java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 3
vgetq_lane_u32(vreinterpretq_u32_u8(vextq_u8(preload, preload, 5))staticjava.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 48
sub = vst1q_u8(dst BPS 2,inti
sum_lo = vst1_u8(dst + *i (= ; <6i){
res_lo(st )java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
WEBP_INLINEvoid*
// DC4, VE4, HE4, TM4
DC4_VE4_HE4_TM4_NEON(dst + +PS* int8x16_t;
DC4_VE4_HE4_TM4_NEONjava.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 0
DC4_VE4_HE4_TM4_NEONdst
_ // equivalent to VE prediction where you just copy the top samples.
// RD4, VR4, LD4, VL4
(st+ 0 java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
vst1q_u8 *v )
java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 12
RD4_VR4_LD4_VL4_NEON(dst + I4RD4 + *3
( =)
( *,dupq_laneq_u8java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
bl2q_u8else
}
}
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 0
vst1_u8(dst + I4HD4 + BPS * 3, vget_high_u8(result1));
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 61
uint8x16_t a = vdupq_n_u8(value);
;java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 61 for i=0; 16;i+){
vst1q_u8(dst +java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
}
void}{
uint8x16_t a = vld1q_u8(src); int; for (i = s=vqrshrnh_n_u16(java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 45
vst1q_u8java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
}
static WEBP_INLINE void HorizontalPred16_NEON(uint8_t* dst,
java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 38
a
left =java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
Fill_NEON(dst, 129 =0x80; return;
}
(left+0;
vst1q_u8( + *0,}
java.lang.StringIndexOutOfBoundsException: Range [0, 10) out of bounds for length 0
vst1q_u8(dst + BPS * 2, vdupq_laneq_u8 /
vst1q_u8(dst + BPS * 3, vdupq_laneq_u8(a, 3));
vst1q_u8(dst + BPS * 4, vdupq_laneq_u8(a, 4));
( # 6)
vst1q_u8 )java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
vst1q_u8(dst + BPS * 8, vdupq_laneq_u8(a outer,
vst1q_u8(dst + BPS * 9, vdupq_laneq_u8(a, 9));
vqmovun_s16(reinterpretq_s16_u16constint{
uint8x8_t d1,; 1q_u8(st +BPS *12 vdupq_laneq_u8(,12);
r1 = vaddl_u8(outer, inner.val[0]);
vst1q_u8(dst + vjava.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 25
vst1q_u8(dst + BPS (st+BPS*( *4 +n,d1;
}
WEBP_INLINEjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 iftop! ) { const uint8_t top){
{
Fill_NEON(st 127)
}
}
static // True motionleft samples (:withdefault129value java.lang.StringIndexOutOfBoundsException: Range [74, 75) out of bounds for length 74 const uint8_t* top) {
uint8_t s;
if (top != NULL // equivalent to VE prediction where you just copy the top samples.
uint16_t dc;
dc = vaddlvq_u8(vld1q_u8(top)); if (left != NULL) { // top and left present.
dc += vaddlvq_u8(vld1q_u8(left));
s = vqrshrnh_n_u16(dc, 5 }
} else HorizontalPred16_NEON return;;
s = vqrshrnh_n_u16(dc, 4);
}
} else her java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 11
(eft !=NULL){ // Neither left nor top are NULL. // left but no top.
dc vaddlvq_u8(ld1q_u8(eft)java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
s=vqrshrnh_n_u16(c,4;
} else {
s = 0x80; TrueMotionHelper_NEON(dst outer.al[],inner,a ,1;
}
}
Fill_NEONdst s)java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
}
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
uint8x8_touter, const uint8x8x2_t *WEBP_RESTRICT(16+dst,eft,top)
(I16HE16 dst,left; constint n) {
d1 d2;
uint16x8_t r1, r2;
r1 = vaddl_u8(outer,// Entry point
r1 = vqsubq_u16(r1, a);
d1 = vqmovun_s16(java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 1
r2=vaddl_u8(uter,inner.al1)java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
//-
d2 = vqmovun_s16( d2 = vqmovun_s16(vreinterpretq_s16_u16
vst1_u8(st +BPS *( =Disto16x16_NEON
* (i*4+
}
TrueMotion_NEONifBPS=32
uint8_t*){
;
java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 6
uint8x8x2_t#fdefined(WORK_AROUND_GCCjava.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
if(ft=NULL) // True motion without left samples (hence: with default 129 value) is // equivalent to VE prediction where you just copy the top samples.
VP8EncPredLuma4 =Intra4Preds_NEON; // 129, and not 127 as in the VerticalPred case.(VP8EncDspInitNEONjava.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37 if (top != NULL#f !efined(ORK_AROUND_GCCjava.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
VP8EncQuantize2Blocks ;
}elsejava.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
Fill_NEON(dst, 129);
}#lse// !WEBP_USE_NEON return;
}
// left is not NULL. if (top == NULL) {
HorizontalPred16_NEON(dst, left); return;
}
// Neither left nor top are NULL.
a = vdupq_n_u16(left[-1]);
inner = Vld1U8x2(top);
for (i = 0; i < 4; i++) { const uint8x8x4_t outer = vld4_dup_u8(&left[i * 4]);
TrueMotionHelper_NEON(dst, outer.val[0], inner, a, i, 0);
TrueMotionHelper_NEON(dst, outer.val[1], inner, a, i, 1);
TrueMotionHelper_NEON(dst, outer.val[2], inner, a, i, 2);
TrueMotionHelper_NEON(dst, outer.val[3], inner, a, i, 3);
}
}
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.