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
Xiph.Org
aom-rav1e
Commits
242157c7
Commit
242157c7
authored
Jul 25, 2013
by
Jingning Han
Committed by
Gerrit Code Review
Jul 25, 2013
Browse files
Merge "SSE2 inverse 4x4 2D-DCT with DC only"
parents
a0e8b45f
384e37e3
Changes
2
Hide whitespace changes
Inline
Side-by-side
vp9/common/vp9_rtcd_defs.sh
View file @
242157c7
...
@@ -292,7 +292,7 @@ specialize vp9_convolve8_avg_vert ssse3 neon
...
@@ -292,7 +292,7 @@ specialize vp9_convolve8_avg_vert ssse3 neon
# dct
# dct
#
#
prototype void vp9_short_idct4x4_1_add
"int16_t *input, uint8_t *dest, int dest_stride"
prototype void vp9_short_idct4x4_1_add
"int16_t *input, uint8_t *dest, int dest_stride"
specialize vp9_short_idct4x4_1_add
specialize vp9_short_idct4x4_1_add
sse2
prototype void vp9_short_idct4x4_add
"int16_t *input, uint8_t *dest, int dest_stride"
prototype void vp9_short_idct4x4_add
"int16_t *input, uint8_t *dest, int dest_stride"
specialize vp9_short_idct4x4_add sse2
specialize vp9_short_idct4x4_add sse2
...
...
vp9/common/x86/vp9_idct_intrin_sse2.c
View file @
242157c7
...
@@ -148,6 +148,23 @@ void vp9_short_idct4x4_add_sse2(int16_t *input, uint8_t *dest, int stride) {
...
@@ -148,6 +148,23 @@ void vp9_short_idct4x4_add_sse2(int16_t *input, uint8_t *dest, int stride) {
RECON_AND_STORE4X4
(
dest
,
input3
);
RECON_AND_STORE4X4
(
dest
,
input3
);
}
}
void
vp9_short_idct4x4_1_add_sse2
(
int16_t
*
input
,
uint8_t
*
dest
,
int
stride
)
{
__m128i
dc_value
;
const
__m128i
zero
=
_mm_setzero_si128
();
int
a
;
a
=
dct_const_round_shift
(
input
[
0
]
*
cospi_16_64
);
a
=
dct_const_round_shift
(
a
*
cospi_16_64
);
a
=
ROUND_POWER_OF_TWO
(
a
,
4
);
dc_value
=
_mm_set1_epi16
(
a
);
RECON_AND_STORE4X4
(
dest
,
dc_value
);
RECON_AND_STORE4X4
(
dest
,
dc_value
);
RECON_AND_STORE4X4
(
dest
,
dc_value
);
RECON_AND_STORE4X4
(
dest
,
dc_value
);
}
void
vp9_idct4_1d_sse2
(
int16_t
*
input
,
int16_t
*
output
)
{
void
vp9_idct4_1d_sse2
(
int16_t
*
input
,
int16_t
*
output
)
{
const
__m128i
zero
=
_mm_setzero_si128
();
const
__m128i
zero
=
_mm_setzero_si128
();
const
__m128i
c1
=
_mm_setr_epi16
((
int16_t
)
cospi_16_64
,
(
int16_t
)
cospi_16_64
,
const
__m128i
c1
=
_mm_setr_epi16
((
int16_t
)
cospi_16_64
,
(
int16_t
)
cospi_16_64
,
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment