Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Yushin Cho
aom-rav1e
Commits
44925b4c
Commit
44925b4c
authored
Jul 18, 2015
by
Jingning Han
Committed by
Gerrit Code Review
Jul 18, 2015
Browse files
Merge "Rename loop filter function from vp9_ to vpx_"
parents
479c669a
2992739b
Changes
42
Hide whitespace changes
Inline
Side-by-side
test/lpf_8_test.cc
View file @
44925b4c
...
...
@@ -60,49 +60,49 @@ typedef std::tr1::tuple<dual_loop_op_t, dual_loop_op_t, int> dualloop8_param_t;
void
wrapper_vertical_16_sse2
(
uint16_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
,
int
bd
)
{
vp
9
_highbd_lpf_vertical_16_sse2
(
s
,
p
,
blimit
,
limit
,
thresh
,
bd
);
vp
x
_highbd_lpf_vertical_16_sse2
(
s
,
p
,
blimit
,
limit
,
thresh
,
bd
);
}
void
wrapper_vertical_16_c
(
uint16_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
,
int
bd
)
{
vp
9
_highbd_lpf_vertical_16_c
(
s
,
p
,
blimit
,
limit
,
thresh
,
bd
);
vp
x
_highbd_lpf_vertical_16_c
(
s
,
p
,
blimit
,
limit
,
thresh
,
bd
);
}
void
wrapper_vertical_16_dual_sse2
(
uint16_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
,
int
bd
)
{
vp
9
_highbd_lpf_vertical_16_dual_sse2
(
s
,
p
,
blimit
,
limit
,
thresh
,
bd
);
vp
x
_highbd_lpf_vertical_16_dual_sse2
(
s
,
p
,
blimit
,
limit
,
thresh
,
bd
);
}
void
wrapper_vertical_16_dual_c
(
uint16_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
,
int
bd
)
{
vp
9
_highbd_lpf_vertical_16_dual_c
(
s
,
p
,
blimit
,
limit
,
thresh
,
bd
);
vp
x
_highbd_lpf_vertical_16_dual_c
(
s
,
p
,
blimit
,
limit
,
thresh
,
bd
);
}
#else
void
wrapper_vertical_16_sse2
(
uint8_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
)
{
vp
9
_lpf_vertical_16_sse2
(
s
,
p
,
blimit
,
limit
,
thresh
);
vp
x
_lpf_vertical_16_sse2
(
s
,
p
,
blimit
,
limit
,
thresh
);
}
void
wrapper_vertical_16_c
(
uint8_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
)
{
vp
9
_lpf_vertical_16_c
(
s
,
p
,
blimit
,
limit
,
thresh
);
vp
x
_lpf_vertical_16_c
(
s
,
p
,
blimit
,
limit
,
thresh
);
}
void
wrapper_vertical_16_dual_sse2
(
uint8_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
)
{
vp
9
_lpf_vertical_16_dual_sse2
(
s
,
p
,
blimit
,
limit
,
thresh
);
vp
x
_lpf_vertical_16_dual_sse2
(
s
,
p
,
blimit
,
limit
,
thresh
);
}
void
wrapper_vertical_16_dual_c
(
uint8_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
)
{
vp
9
_lpf_vertical_16_dual_c
(
s
,
p
,
blimit
,
limit
,
thresh
);
vp
x
_lpf_vertical_16_dual_c
(
s
,
p
,
blimit
,
limit
,
thresh
);
}
#endif // CONFIG_VP9_HIGHBITDEPTH
#endif // HAVE_SSE2
...
...
@@ -114,25 +114,25 @@ void wrapper_vertical_16_dual_c(uint8_t *s, int p, const uint8_t *blimit,
void
wrapper_vertical_16_neon
(
uint8_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
)
{
vp
9
_lpf_vertical_16_neon
(
s
,
p
,
blimit
,
limit
,
thresh
);
vp
x
_lpf_vertical_16_neon
(
s
,
p
,
blimit
,
limit
,
thresh
);
}
void
wrapper_vertical_16_c
(
uint8_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
)
{
vp
9
_lpf_vertical_16_c
(
s
,
p
,
blimit
,
limit
,
thresh
);
vp
x
_lpf_vertical_16_c
(
s
,
p
,
blimit
,
limit
,
thresh
);
}
void
wrapper_vertical_16_dual_neon
(
uint8_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
)
{
vp
9
_lpf_vertical_16_dual_neon
(
s
,
p
,
blimit
,
limit
,
thresh
);
vp
x
_lpf_vertical_16_dual_neon
(
s
,
p
,
blimit
,
limit
,
thresh
);
}
void
wrapper_vertical_16_dual_c
(
uint8_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
)
{
vp
9
_lpf_vertical_16_dual_c
(
s
,
p
,
blimit
,
limit
,
thresh
);
vp
x
_lpf_vertical_16_dual_c
(
s
,
p
,
blimit
,
limit
,
thresh
);
}
#endif // CONFIG_VP9_HIGHBITDEPTH
#endif // HAVE_NEON_ASM
...
...
@@ -141,13 +141,13 @@ void wrapper_vertical_16_dual_c(uint8_t *s, int p, const uint8_t *blimit,
void
wrapper_vertical_16_msa
(
uint8_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
)
{
vp
9
_lpf_vertical_16_msa
(
s
,
p
,
blimit
,
limit
,
thresh
);
vp
x
_lpf_vertical_16_msa
(
s
,
p
,
blimit
,
limit
,
thresh
);
}
void
wrapper_vertical_16_c
(
uint8_t
*
s
,
int
p
,
const
uint8_t
*
blimit
,
const
uint8_t
*
limit
,
const
uint8_t
*
thresh
,
int
count
)
{
vp
9
_lpf_vertical_16_c
(
s
,
p
,
blimit
,
limit
,
thresh
);
vp
x
_lpf_vertical_16_c
(
s
,
p
,
blimit
,
limit
,
thresh
);
}
#endif // HAVE_MSA && (!CONFIG_VP9_HIGHBITDEPTH)
...
...
@@ -534,46 +534,46 @@ using std::tr1::make_tuple;
INSTANTIATE_TEST_CASE_P
(
SSE2
,
Loop8Test6Param
,
::
testing
::
Values
(
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_4_sse2
,
&
vp
9
_highbd_lpf_horizontal_4_c
,
8
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_vertical_4_sse2
,
&
vp
9
_highbd_lpf_vertical_4_c
,
8
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_8_sse2
,
&
vp
9
_highbd_lpf_horizontal_8_c
,
8
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_16_sse2
,
&
vp
9
_highbd_lpf_horizontal_16_c
,
8
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_16_sse2
,
&
vp
9
_highbd_lpf_horizontal_16_c
,
8
,
2
),
make_tuple
(
&
vp
9
_highbd_lpf_vertical_8_sse2
,
&
vp
9
_highbd_lpf_vertical_8_c
,
8
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_4_sse2
,
&
vp
x
_highbd_lpf_horizontal_4_c
,
8
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_vertical_4_sse2
,
&
vp
x
_highbd_lpf_vertical_4_c
,
8
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_8_sse2
,
&
vp
x
_highbd_lpf_horizontal_8_c
,
8
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_16_sse2
,
&
vp
x
_highbd_lpf_horizontal_16_c
,
8
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_16_sse2
,
&
vp
x
_highbd_lpf_horizontal_16_c
,
8
,
2
),
make_tuple
(
&
vp
x
_highbd_lpf_vertical_8_sse2
,
&
vp
x
_highbd_lpf_vertical_8_c
,
8
,
1
),
make_tuple
(
&
wrapper_vertical_16_sse2
,
&
wrapper_vertical_16_c
,
8
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_4_sse2
,
&
vp
9
_highbd_lpf_horizontal_4_c
,
10
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_vertical_4_sse2
,
&
vp
9
_highbd_lpf_vertical_4_c
,
10
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_8_sse2
,
&
vp
9
_highbd_lpf_horizontal_8_c
,
10
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_16_sse2
,
&
vp
9
_highbd_lpf_horizontal_16_c
,
10
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_16_sse2
,
&
vp
9
_highbd_lpf_horizontal_16_c
,
10
,
2
),
make_tuple
(
&
vp
9
_highbd_lpf_vertical_8_sse2
,
&
vp
9
_highbd_lpf_vertical_8_c
,
10
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_4_sse2
,
&
vp
x
_highbd_lpf_horizontal_4_c
,
10
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_vertical_4_sse2
,
&
vp
x
_highbd_lpf_vertical_4_c
,
10
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_8_sse2
,
&
vp
x
_highbd_lpf_horizontal_8_c
,
10
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_16_sse2
,
&
vp
x
_highbd_lpf_horizontal_16_c
,
10
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_16_sse2
,
&
vp
x
_highbd_lpf_horizontal_16_c
,
10
,
2
),
make_tuple
(
&
vp
x
_highbd_lpf_vertical_8_sse2
,
&
vp
x
_highbd_lpf_vertical_8_c
,
10
,
1
),
make_tuple
(
&
wrapper_vertical_16_sse2
,
&
wrapper_vertical_16_c
,
10
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_4_sse2
,
&
vp
9
_highbd_lpf_horizontal_4_c
,
12
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_vertical_4_sse2
,
&
vp
9
_highbd_lpf_vertical_4_c
,
12
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_8_sse2
,
&
vp
9
_highbd_lpf_horizontal_8_c
,
12
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_16_sse2
,
&
vp
9
_highbd_lpf_horizontal_16_c
,
12
,
1
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_16_sse2
,
&
vp
9
_highbd_lpf_horizontal_16_c
,
12
,
2
),
make_tuple
(
&
vp
9
_highbd_lpf_vertical_8_sse2
,
&
vp
9
_highbd_lpf_vertical_8_c
,
12
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_4_sse2
,
&
vp
x
_highbd_lpf_horizontal_4_c
,
12
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_vertical_4_sse2
,
&
vp
x
_highbd_lpf_vertical_4_c
,
12
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_8_sse2
,
&
vp
x
_highbd_lpf_horizontal_8_c
,
12
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_16_sse2
,
&
vp
x
_highbd_lpf_horizontal_16_c
,
12
,
1
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_16_sse2
,
&
vp
x
_highbd_lpf_horizontal_16_c
,
12
,
2
),
make_tuple
(
&
vp
x
_highbd_lpf_vertical_8_sse2
,
&
vp
x
_highbd_lpf_vertical_8_c
,
12
,
1
),
make_tuple
(
&
wrapper_vertical_16_sse2
,
&
wrapper_vertical_16_c
,
12
,
1
),
make_tuple
(
&
wrapper_vertical_16_dual_sse2
,
...
...
@@ -586,10 +586,10 @@ INSTANTIATE_TEST_CASE_P(
INSTANTIATE_TEST_CASE_P
(
SSE2
,
Loop8Test6Param
,
::
testing
::
Values
(
make_tuple
(
&
vp
9
_lpf_horizontal_8_sse2
,
&
vp
9
_lpf_horizontal_8_c
,
8
,
1
),
make_tuple
(
&
vp
9
_lpf_horizontal_16_sse2
,
&
vp
9
_lpf_horizontal_16_c
,
8
,
1
),
make_tuple
(
&
vp
9
_lpf_horizontal_16_sse2
,
&
vp
9
_lpf_horizontal_16_c
,
8
,
2
),
make_tuple
(
&
vp
9
_lpf_vertical_8_sse2
,
&
vp
9
_lpf_vertical_8_c
,
8
,
1
),
make_tuple
(
&
vp
x
_lpf_horizontal_8_sse2
,
&
vp
x
_lpf_horizontal_8_c
,
8
,
1
),
make_tuple
(
&
vp
x
_lpf_horizontal_16_sse2
,
&
vp
x
_lpf_horizontal_16_c
,
8
,
1
),
make_tuple
(
&
vp
x
_lpf_horizontal_16_sse2
,
&
vp
x
_lpf_horizontal_16_c
,
8
,
2
),
make_tuple
(
&
vp
x
_lpf_vertical_8_sse2
,
&
vp
x
_lpf_vertical_8_c
,
8
,
1
),
make_tuple
(
&
wrapper_vertical_16_sse2
,
&
wrapper_vertical_16_c
,
8
,
1
)));
#endif // CONFIG_VP9_HIGHBITDEPTH
#endif
...
...
@@ -598,8 +598,8 @@ INSTANTIATE_TEST_CASE_P(
INSTANTIATE_TEST_CASE_P
(
AVX2
,
Loop8Test6Param
,
::
testing
::
Values
(
make_tuple
(
&
vp
9
_lpf_horizontal_16_avx2
,
&
vp
9
_lpf_horizontal_16_c
,
8
,
1
),
make_tuple
(
&
vp
9
_lpf_horizontal_16_avx2
,
&
vp
9
_lpf_horizontal_16_c
,
8
,
make_tuple
(
&
vp
x
_lpf_horizontal_16_avx2
,
&
vp
x
_lpf_horizontal_16_c
,
8
,
1
),
make_tuple
(
&
vp
x
_lpf_horizontal_16_avx2
,
&
vp
x
_lpf_horizontal_16_c
,
8
,
2
)));
#endif
...
...
@@ -608,42 +608,42 @@ INSTANTIATE_TEST_CASE_P(
INSTANTIATE_TEST_CASE_P
(
SSE2
,
Loop8Test9Param
,
::
testing
::
Values
(
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_4_dual_sse2
,
&
vp
9
_highbd_lpf_horizontal_4_dual_c
,
8
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_8_dual_sse2
,
&
vp
9
_highbd_lpf_horizontal_8_dual_c
,
8
),
make_tuple
(
&
vp
9
_highbd_lpf_vertical_4_dual_sse2
,
&
vp
9
_highbd_lpf_vertical_4_dual_c
,
8
),
make_tuple
(
&
vp
9
_highbd_lpf_vertical_8_dual_sse2
,
&
vp
9
_highbd_lpf_vertical_8_dual_c
,
8
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_4_dual_sse2
,
&
vp
9
_highbd_lpf_horizontal_4_dual_c
,
10
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_8_dual_sse2
,
&
vp
9
_highbd_lpf_horizontal_8_dual_c
,
10
),
make_tuple
(
&
vp
9
_highbd_lpf_vertical_4_dual_sse2
,
&
vp
9
_highbd_lpf_vertical_4_dual_c
,
10
),
make_tuple
(
&
vp
9
_highbd_lpf_vertical_8_dual_sse2
,
&
vp
9
_highbd_lpf_vertical_8_dual_c
,
10
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_4_dual_sse2
,
&
vp
9
_highbd_lpf_horizontal_4_dual_c
,
12
),
make_tuple
(
&
vp
9
_highbd_lpf_horizontal_8_dual_sse2
,
&
vp
9
_highbd_lpf_horizontal_8_dual_c
,
12
),
make_tuple
(
&
vp
9
_highbd_lpf_vertical_4_dual_sse2
,
&
vp
9
_highbd_lpf_vertical_4_dual_c
,
12
),
make_tuple
(
&
vp
9
_highbd_lpf_vertical_8_dual_sse2
,
&
vp
9
_highbd_lpf_vertical_8_dual_c
,
12
)));
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_4_dual_sse2
,
&
vp
x
_highbd_lpf_horizontal_4_dual_c
,
8
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_8_dual_sse2
,
&
vp
x
_highbd_lpf_horizontal_8_dual_c
,
8
),
make_tuple
(
&
vp
x
_highbd_lpf_vertical_4_dual_sse2
,
&
vp
x
_highbd_lpf_vertical_4_dual_c
,
8
),
make_tuple
(
&
vp
x
_highbd_lpf_vertical_8_dual_sse2
,
&
vp
x
_highbd_lpf_vertical_8_dual_c
,
8
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_4_dual_sse2
,
&
vp
x
_highbd_lpf_horizontal_4_dual_c
,
10
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_8_dual_sse2
,
&
vp
x
_highbd_lpf_horizontal_8_dual_c
,
10
),
make_tuple
(
&
vp
x
_highbd_lpf_vertical_4_dual_sse2
,
&
vp
x
_highbd_lpf_vertical_4_dual_c
,
10
),
make_tuple
(
&
vp
x
_highbd_lpf_vertical_8_dual_sse2
,
&
vp
x
_highbd_lpf_vertical_8_dual_c
,
10
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_4_dual_sse2
,
&
vp
x
_highbd_lpf_horizontal_4_dual_c
,
12
),
make_tuple
(
&
vp
x
_highbd_lpf_horizontal_8_dual_sse2
,
&
vp
x
_highbd_lpf_horizontal_8_dual_c
,
12
),
make_tuple
(
&
vp
x
_highbd_lpf_vertical_4_dual_sse2
,
&
vp
x
_highbd_lpf_vertical_4_dual_c
,
12
),
make_tuple
(
&
vp
x
_highbd_lpf_vertical_8_dual_sse2
,
&
vp
x
_highbd_lpf_vertical_8_dual_c
,
12
)));
#else
INSTANTIATE_TEST_CASE_P
(
SSE2
,
Loop8Test9Param
,
::
testing
::
Values
(
make_tuple
(
&
vp
9
_lpf_horizontal_4_dual_sse2
,
&
vp
9
_lpf_horizontal_4_dual_c
,
8
),
make_tuple
(
&
vp
9
_lpf_horizontal_8_dual_sse2
,
&
vp
9
_lpf_horizontal_8_dual_c
,
8
),
make_tuple
(
&
vp
9
_lpf_vertical_4_dual_sse2
,
&
vp
9
_lpf_vertical_4_dual_c
,
8
),
make_tuple
(
&
vp
9
_lpf_vertical_8_dual_sse2
,
&
vp
9
_lpf_vertical_8_dual_c
,
8
)));
make_tuple
(
&
vp
x
_lpf_horizontal_4_dual_sse2
,
&
vp
x
_lpf_horizontal_4_dual_c
,
8
),
make_tuple
(
&
vp
x
_lpf_horizontal_8_dual_sse2
,
&
vp
x
_lpf_horizontal_8_dual_c
,
8
),
make_tuple
(
&
vp
x
_lpf_vertical_4_dual_sse2
,
&
vp
x
_lpf_vertical_4_dual_c
,
8
),
make_tuple
(
&
vp
x
_lpf_vertical_8_dual_sse2
,
&
vp
x
_lpf_vertical_8_dual_c
,
8
)));
#endif // CONFIG_VP9_HIGHBITDEPTH
#endif
...
...
@@ -657,36 +657,36 @@ INSTANTIATE_TEST_CASE_P(
#if HAVE_NEON_ASM
// Using #if inside the macro is unsupported on MSVS but the tests are not
// currently built for MSVS with ARM and NEON.
make_tuple
(
&
vp
9
_lpf_horizontal_16_neon
,
&
vp
9
_lpf_horizontal_16_c
,
8
,
1
),
make_tuple
(
&
vp
9
_lpf_horizontal_16_neon
,
&
vp
9
_lpf_horizontal_16_c
,
8
,
2
),
make_tuple
(
&
vp
x
_lpf_horizontal_16_neon
,
&
vp
x
_lpf_horizontal_16_c
,
8
,
1
),
make_tuple
(
&
vp
x
_lpf_horizontal_16_neon
,
&
vp
x
_lpf_horizontal_16_c
,
8
,
2
),
make_tuple
(
&
wrapper_vertical_16_neon
,
&
wrapper_vertical_16_c
,
8
,
1
),
make_tuple
(
&
wrapper_vertical_16_dual_neon
,
&
wrapper_vertical_16_dual_c
,
8
,
1
),
#endif // HAVE_NEON_ASM
make_tuple
(
&
vp
9
_lpf_horizontal_8_neon
,
&
vp
9
_lpf_horizontal_8_c
,
8
,
1
),
make_tuple
(
&
vp
9
_lpf_vertical_8_neon
,
&
vp
9
_lpf_vertical_8_c
,
8
,
1
),
make_tuple
(
&
vp
9
_lpf_horizontal_4_neon
,
&
vp
9
_lpf_horizontal_4_c
,
8
,
1
),
make_tuple
(
&
vp
9
_lpf_vertical_4_neon
,
&
vp
9
_lpf_vertical_4_c
,
8
,
1
)));
make_tuple
(
&
vp
x
_lpf_horizontal_8_neon
,
&
vp
x
_lpf_horizontal_8_c
,
8
,
1
),
make_tuple
(
&
vp
x
_lpf_vertical_8_neon
,
&
vp
x
_lpf_vertical_8_c
,
8
,
1
),
make_tuple
(
&
vp
x
_lpf_horizontal_4_neon
,
&
vp
x
_lpf_horizontal_4_c
,
8
,
1
),
make_tuple
(
&
vp
x
_lpf_vertical_4_neon
,
&
vp
x
_lpf_vertical_4_c
,
8
,
1
)));
INSTANTIATE_TEST_CASE_P
(
NEON
,
Loop8Test9Param
,
::
testing
::
Values
(
#if HAVE_NEON_ASM
make_tuple
(
&
vp
9
_lpf_horizontal_8_dual_neon
,
&
vp
9
_lpf_horizontal_8_dual_c
,
8
),
make_tuple
(
&
vp
9
_lpf_vertical_8_dual_neon
,
&
vp
9
_lpf_vertical_8_dual_c
,
8
),
make_tuple
(
&
vp
x
_lpf_horizontal_8_dual_neon
,
&
vp
x
_lpf_horizontal_8_dual_c
,
8
),
make_tuple
(
&
vp
x
_lpf_vertical_8_dual_neon
,
&
vp
x
_lpf_vertical_8_dual_c
,
8
),
#endif // HAVE_NEON_ASM
make_tuple
(
&
vp
9
_lpf_horizontal_4_dual_neon
,
&
vp
9
_lpf_horizontal_4_dual_c
,
8
),
make_tuple
(
&
vp
9
_lpf_vertical_4_dual_neon
,
&
vp
9
_lpf_vertical_4_dual_c
,
8
)));
make_tuple
(
&
vp
x
_lpf_horizontal_4_dual_neon
,
&
vp
x
_lpf_horizontal_4_dual_c
,
8
),
make_tuple
(
&
vp
x
_lpf_vertical_4_dual_neon
,
&
vp
x
_lpf_vertical_4_dual_c
,
8
)));
#endif // CONFIG_VP9_HIGHBITDEPTH
#endif // HAVE_NEON
...
...
@@ -694,23 +694,23 @@ INSTANTIATE_TEST_CASE_P(
INSTANTIATE_TEST_CASE_P
(
MSA
,
Loop8Test6Param
,
::
testing
::
Values
(
make_tuple
(
&
vp
9
_lpf_horizontal_8_msa
,
&
vp
9
_lpf_horizontal_8_c
,
8
,
1
),
make_tuple
(
&
vp
9
_lpf_horizontal_16_msa
,
&
vp
9
_lpf_horizontal_16_c
,
8
,
1
),
make_tuple
(
&
vp
9
_lpf_horizontal_16_msa
,
&
vp
9
_lpf_horizontal_16_c
,
8
,
2
),
make_tuple
(
&
vp
9
_lpf_vertical_8_msa
,
&
vp
9
_lpf_vertical_8_c
,
8
,
1
),
make_tuple
(
&
vp
x
_lpf_horizontal_8_msa
,
&
vp
x
_lpf_horizontal_8_c
,
8
,
1
),
make_tuple
(
&
vp
x
_lpf_horizontal_16_msa
,
&
vp
x
_lpf_horizontal_16_c
,
8
,
1
),
make_tuple
(
&
vp
x
_lpf_horizontal_16_msa
,
&
vp
x
_lpf_horizontal_16_c
,
8
,
2
),
make_tuple
(
&
vp
x
_lpf_vertical_8_msa
,
&
vp
x
_lpf_vertical_8_c
,
8
,
1
),
make_tuple
(
&
wrapper_vertical_16_msa
,
&
wrapper_vertical_16_c
,
8
,
1
)));
INSTANTIATE_TEST_CASE_P
(
MSA
,
Loop8Test9Param
,
::
testing
::
Values
(
make_tuple
(
&
vp
9
_lpf_horizontal_4_dual_msa
,
&
vp
9
_lpf_horizontal_4_dual_c
,
8
),
make_tuple
(
&
vp
9
_lpf_horizontal_8_dual_msa
,
&
vp
9
_lpf_horizontal_8_dual_c
,
8
),
make_tuple
(
&
vp
9
_lpf_vertical_4_dual_msa
,
&
vp
9
_lpf_vertical_4_dual_c
,
8
),
make_tuple
(
&
vp
9
_lpf_vertical_8_dual_msa
,
&
vp
9
_lpf_vertical_8_dual_c
,
8
)));
make_tuple
(
&
vp
x
_lpf_horizontal_4_dual_msa
,
&
vp
x
_lpf_horizontal_4_dual_c
,
8
),
make_tuple
(
&
vp
x
_lpf_horizontal_8_dual_msa
,
&
vp
x
_lpf_horizontal_8_dual_c
,
8
),
make_tuple
(
&
vp
x
_lpf_vertical_4_dual_msa
,
&
vp
x
_lpf_vertical_4_dual_c
,
8
),
make_tuple
(
&
vp
x
_lpf_vertical_8_dual_msa
,
&
vp
x
_lpf_vertical_8_dual_c
,
8
)));
#endif // HAVE_MSA && (!CONFIG_VP9_HIGHBITDEPTH)
}
// namespace
test/test.mk
View file @
44925b4c
...
...
@@ -91,6 +91,7 @@ endif
## shared library builds don't make these functions accessible.
##
ifeq
($(CONFIG_SHARED),)
LIBVPX_TEST_SRCS-$(CONFIG_VP9)
+=
lpf_8_test.cc
## VP8
ifneq
($(CONFIG_VP8_ENCODER)$(CONFIG_VP8_DECODER),)
...
...
@@ -142,7 +143,6 @@ LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += fdct4x4_test.cc
LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER)
+=
fdct8x8_test.cc
LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER)
+=
variance_test.cc
LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER)
+=
vp9_subtract_test.cc
LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER)
+=
lpf_8_test.cc
LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER)
+=
vp9_avg_test.cc
LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER)
+=
vp9_error_block_test.cc
LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER)
+=
vp9_quantize_test.cc
...
...
vp9/common/mips/dspr2/vp9_convolve2_avg_dspr2.c
View file @
44925b4c
...
...
@@ -44,7 +44,7 @@ static void convolve_bi_avg_vert_4_dspr2(const uint8_t *src,
for
(
y
=
h
;
y
--
;)
{
/* prefetch data to cache memory */
vp9_
prefetch_store
(
dst
+
dst_stride
);
prefetch_store
(
dst
+
dst_stride
);
for
(
x
=
0
;
x
<
w
;
x
+=
4
)
{
src_ptr
=
src
+
x
;
...
...
@@ -148,8 +148,8 @@ static void convolve_bi_avg_vert_64_dspr2(const uint8_t *src,
for
(
y
=
h
;
y
--
;)
{
/* prefetch data to cache memory */
vp9_
prefetch_store
(
dst
+
dst_stride
);
vp9_
prefetch_store
(
dst
+
dst_stride
+
32
);
prefetch_store
(
dst
+
dst_stride
);
prefetch_store
(
dst
+
dst_stride
+
32
);
for
(
x
=
0
;
x
<
64
;
x
+=
4
)
{
src_ptr
=
src
+
x
;
...
...
@@ -245,7 +245,7 @@ void vp9_convolve2_avg_vert_dspr2(const uint8_t *src, ptrdiff_t src_stride,
:
[
pos
]
"r"
(
pos
)
);
vp9_
prefetch_store
(
dst
);
prefetch_store
(
dst
);
switch
(
w
)
{
case
4
:
...
...
@@ -257,7 +257,7 @@ void vp9_convolve2_avg_vert_dspr2(const uint8_t *src, ptrdiff_t src_stride,
filter_y
,
w
,
h
);
break
;
case
64
:
vp9_
prefetch_store
(
dst
+
32
);
prefetch_store
(
dst
+
32
);
convolve_bi_avg_vert_64_dspr2
(
src
,
src_stride
,
dst
,
dst_stride
,
filter_y
,
h
);
...
...
vp9/common/mips/dspr2/vp9_convolve2_avg_horiz_dspr2.c
View file @
44925b4c
...
...
@@ -40,9 +40,9 @@ static void convolve_bi_avg_horiz_4_dspr2(const uint8_t *src,
for
(
y
=
h
;
y
--
;)
{
/* prefetch data to cache memory */
vp9_
prefetch_load
(
src
+
src_stride
);
vp9_
prefetch_load
(
src
+
src_stride
+
32
);
vp9_
prefetch_store
(
dst
+
dst_stride
);
prefetch_load
(
src
+
src_stride
);
prefetch_load
(
src
+
src_stride
+
32
);
prefetch_store
(
dst
+
dst_stride
);
__asm__
__volatile__
(
"ulw %[tp1], 0(%[src])
\n\t
"
...
...
@@ -135,9 +135,9 @@ static void convolve_bi_avg_horiz_8_dspr2(const uint8_t *src,
for
(
y
=
h
;
y
--
;)
{
/* prefetch data to cache memory */
vp9_
prefetch_load
(
src
+
src_stride
);
vp9_
prefetch_load
(
src
+
src_stride
+
32
);
vp9_
prefetch_store
(
dst
+
dst_stride
);
prefetch_load
(
src
+
src_stride
);
prefetch_load
(
src
+
src_stride
+
32
);
prefetch_store
(
dst
+
dst_stride
);
__asm__
__volatile__
(
"ulw %[tp1], 0(%[src])
\n\t
"
...
...
@@ -290,9 +290,9 @@ static void convolve_bi_avg_horiz_16_dspr2(const uint8_t *src_ptr,
dst
=
dst_ptr
;
/* prefetch data to cache memory */
vp9_
prefetch_load
(
src_ptr
+
src_stride
);
vp9_
prefetch_load
(
src_ptr
+
src_stride
+
32
);
vp9_
prefetch_store
(
dst_ptr
+
dst_stride
);
prefetch_load
(
src_ptr
+
src_stride
);
prefetch_load
(
src_ptr
+
src_stride
+
32
);
prefetch_store
(
dst_ptr
+
dst_stride
);
for
(
c
=
0
;
c
<
count
;
c
++
)
{
__asm__
__volatile__
(
...
...
@@ -539,11 +539,11 @@ static void convolve_bi_avg_horiz_64_dspr2(const uint8_t *src_ptr,
dst
=
dst_ptr
;
/* prefetch data to cache memory */
vp9_
prefetch_load
(
src_ptr
+
src_stride
);
vp9_
prefetch_load
(
src_ptr
+
src_stride
+
32
);
vp9_
prefetch_load
(
src_ptr
+
src_stride
+
64
);
vp9_
prefetch_store
(
dst_ptr
+
dst_stride
);
vp9_
prefetch_store
(
dst_ptr
+
dst_stride
+
32
);
prefetch_load
(
src_ptr
+
src_stride
);
prefetch_load
(
src_ptr
+
src_stride
+
32
);
prefetch_load
(
src_ptr
+
src_stride
+
64
);
prefetch_store
(
dst_ptr
+
dst_stride
);
prefetch_store
(
dst_ptr
+
dst_stride
+
32
);
for
(
c
=
0
;
c
<
4
;
c
++
)
{
__asm__
__volatile__
(
...
...
@@ -781,9 +781,9 @@ void vp9_convolve2_avg_horiz_dspr2(const uint8_t *src, ptrdiff_t src_stride,
);
/* prefetch data to cache memory */
vp9_
prefetch_load
(
src
);
vp9_
prefetch_load
(
src
+
32
);
vp9_
prefetch_store
(
dst
);
prefetch_load
(
src
);
prefetch_load
(
src
+
32
);
prefetch_store
(
dst
);
switch
(
w
)
{
case
4
:
...
...
@@ -807,8 +807,8 @@ void vp9_convolve2_avg_horiz_dspr2(const uint8_t *src, ptrdiff_t src_stride,
filter_x
,
h
,
2
);
break
;
case
64
:
vp9_
prefetch_load
(
src
+
64
);
vp9_
prefetch_store
(
dst
+
32
);
prefetch_load
(
src
+
64
);
prefetch_store
(
dst
+
32
);
convolve_bi_avg_horiz_64_dspr2
(
src
,
src_stride
,
dst
,
dst_stride
,
...
...
vp9/common/mips/dspr2/vp9_convolve2_dspr2.c
View file @
44925b4c
...
...
@@ -41,8 +41,8 @@ static void convolve_bi_horiz_4_transposed_dspr2(const uint8_t *src,
for
(
y
=
h
;
y
--
;)
{
dst_ptr
=
dst
;
/* prefetch data to cache memory */
vp9_
prefetch_load
(
src
+
src_stride
);
vp9_
prefetch_load
(
src
+
src_stride
+
32
);
prefetch_load
(
src
+
src_stride
);
prefetch_load
(
src
+
src_stride
+
32
);
__asm__
__volatile__
(
"ulw %[tp1], 0(%[src])
\n\t
"
...
...
@@ -132,8 +132,8 @@ static void convolve_bi_horiz_8_transposed_dspr2(const uint8_t *src,
for
(
y
=
h
;
y
--
;)
{
/* prefetch data to cache memory */
vp9_
prefetch_load
(
src
+
src_stride
);
vp9_
prefetch_load
(
src
+
src_stride
+
32
);
prefetch_load
(
src
+
src_stride
);
prefetch_load
(
src
+
src_stride
+
32
);
dst_ptr
=
dst
;
odd_dst
=
(
dst_ptr
+
dst_stride
);
...
...
@@ -272,8 +272,8 @@ static void convolve_bi_horiz_16_transposed_dspr2(const uint8_t *src_ptr,
for
(
y
=
h
;
y
--
;)
{
/* prefetch data to cache memory */
vp9_
prefetch_load
(
src_ptr
+
src_stride
);
vp9_
prefetch_load
(
src_ptr
+
src_stride
+
32
);
prefetch_load
(
src_ptr
+
src_stride
);
prefetch_load
(
src_ptr
+
src_stride
+
32
);
src
=
src_ptr
;
dst
=
dst_ptr
;
...
...
@@ -504,9 +504,9 @@ static void convolve_bi_horiz_64_transposed_dspr2(const uint8_t *src_ptr,
for
(
y
=
h
;
y
--
;)
{
/* prefetch data to cache memory */
vp9_
prefetch_load
(
src_ptr
+
src_stride
);
vp9_
prefetch_load
(
src_ptr
+
src_stride
+
32
);
vp9_
prefetch_load
(
src_ptr
+
src_stride
+
64
);
prefetch_load
(
src_ptr
+
src_stride
);
prefetch_load
(
src_ptr
+
src_stride
+
32
);
prefetch_load
(
src_ptr
+
src_stride
+
64
);
src
=
src_ptr
;
dst
=
dst_ptr
;
...
...
@@ -747,8 +747,8 @@ void vp9_convolve2_dspr2(const uint8_t *src, ptrdiff_t src_stride,
);
/* prefetch data to cache memory */
vp9_
prefetch_load
(
src
);
vp9_
prefetch_load
(
src
+
32
);
prefetch_load
(
src
);
prefetch_load
(
src
+
32
);
switch
(
w
)
{
case
4
:
...
...
@@ -769,7 +769,7 @@ void vp9_convolve2_dspr2(const uint8_t *src, ptrdiff_t src_stride,
(
w
/
16
));
break
;
case
64
:
vp9_
prefetch_load
(
src
+
32
);
prefetch_load
(
src
+
32
);
convolve_bi_horiz_64_transposed_dspr2
(
src
,
src_stride
,
dst
,
dst_stride
,
filter
,
h
);
...
...
vp9/common/mips/dspr2/vp9_convolve2_horiz_dspr2.c
View file @
44925b4c
...
...
@@ -39,9 +39,9 @@ static void convolve_bi_horiz_4_dspr2(const uint8_t *src,
for
(
y
=
h
;
y
--
;)
{
/* prefetch data to cache memory */
vp9_
prefetch_load
(
src
+
src_stride
);
vp9_
prefetch_load
(
src
+
src_stride
+
32
);
vp9_
prefetch_store
(
dst
+
dst_stride
);
prefetch_load
(
src
+
src_stride
);
prefetch_load
(
src
+
src_stride
+
32
);
prefetch_store
(
dst
+
dst_stride
);
__asm__
__volatile__
(
"ulw %[tp1], 0(%[src])
\n\t
"
...
...
@@ -122,9 +122,9 @@ static void convolve_bi_horiz_8_dspr2(const uint8_t *src,
for
(
y
=
h
;
y
--
;)
{
/* prefetch data to cache memory */
vp9_
prefetch_load
(
src
+
src_stride
);
vp9_
prefetch_load
(
src
+
src_stride
+
32
);
vp9_
prefetch_store
(
dst
+
dst_stride
);