Skip to content
GitLab
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
635ba269
Commit
635ba269
authored
Aug 14, 2013
by
Mans Rullgard
Browse files
vp9: neon: add vp9_convolve_copy_neon
Change-Id: I15adbbda15d1842e9f15f21878a5ffbb75c3c0c9
parent
54979b43
Changes
3
Hide whitespace changes
Inline
Side-by-side
vp9/common/arm/neon/vp9_copy_neon.asm
0 → 100644
View file @
635ba269
;
; Copyright (c) 2013 The WebM project authors. All Rights Reserved.
;
; Use of this source code is governed by a BSD-style license
; that can be found in the LICENSE 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.
;
EXPORT
|
vp9_convolve_copy_neon
|
ARM
REQUIRE8
PRESERVE8
AREA
||
.text
||
,
CODE
,
READONLY
,
AL
IGN
=
2
|
vp9_convolve_copy_neon
|
PROC
push
{
r4
-
r5
,
lr
}
ldrd
r4
,
r5
,
[
sp
,
#
28
]
cmp
r4
,
#
32
bgt
copy64
beq
copy32
cmp
r4
,
#
8
bgt
copy16
beq
copy8
b
copy4
copy64
sub
lr
,
r1
,
#
32
sub
r3
,
r3
,
#
32
copy64_h
pld
[
r0
,
r1
,
lsl
#
1
]
vld1.8
{
q0
-
q1
}
,
[
r0
]
!
vld1.8
{
q2
-
q3
}
,
[
r0
],
lr
vst1.8
{
q0
-
q1
}
,
[
r2@128
]
!
vst1.8
{
q2
-
q3
}
,
[
r2@128
],
r3
subs
r5
,
r5
,
#
1
bgt
copy64_h
pop
{
r4
-
r5
,
pc
}
copy32
pld
[
r0
,
r1
,
lsl
#
1
]
vld1.8
{
q0
-
q1
}
,
[
r0
],
r1
pld
[
r0
,
r1
,
lsl
#
1
]
vld1.8
{
q2
-
q3
}
,
[
r0
],
r1
vst1.8
{
q0
-
q1
}
,
[
r2@128
],
r3
vst1.8
{
q2
-
q3
}
,
[
r2@128
],
r3
subs
r5
,
r5
,
#
2
bgt
copy32
pop
{
r4
-
r5
,
pc
}
copy16
pld
[
r0
,
r1
,
lsl
#
1
]
vld1.8
{
q0
}
,
[
r0
],
r1
pld
[
r0
,
r1
,
lsl
#
1
]
vld1.8
{
q1
}
,
[
r0
],
r1
vst1.8
{
q0
}
,
[
r2@128
],
r3
vst1.8
{
q1
}
,
[
r2@128
],
r3
subs
r5
,
r5
,
#
2
bgt
copy16
pop
{
r4
-
r5
,
pc
}
copy8
pld
[
r0
,
r1
,
lsl
#
1
]
vld1.8
{
d0
}
,
[
r0
],
r1
pld
[
r0
,
r1
,
lsl
#
1
]
vld1.8
{
d2
}
,
[
r0
],
r1
vst1.8
{
d0
}
,
[
r2@64
],
r3
vst1.8
{
d2
}
,
[
r2@64
],
r3
subs
r5
,
r5
,
#
2
bgt
copy8
pop
{
r4
-
r5
,
pc
}
copy4
ldr
r12
,
[
r0
],
r1
str
r12
,
[
r2
],
r3
subs
r5
,
r5
,
#
1
bgt
copy4
pop
{
r4
-
r5
,
pc
}
ENDP
END
vp9/common/vp9_rtcd_defs.sh
View file @
635ba269
...
...
@@ -268,7 +268,7 @@ specialize vp9_blend_b
# Sub Pixel Filters
#
prototype void vp9_convolve_copy
"const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h"
specialize vp9_convolve_copy
$sse2_x86inc
specialize vp9_convolve_copy
$sse2_x86inc
neon
prototype void vp9_convolve_avg
"const uint8_t *src, ptrdiff_t src_stride, uint8_t *dst, ptrdiff_t dst_stride, const int16_t *filter_x, int x_step_q4, const int16_t *filter_y, int y_step_q4, int w, int h"
specialize vp9_convolve_avg
$sse2_x86inc
...
...
vp9/vp9_common.mk
View file @
635ba269
...
...
@@ -98,5 +98,6 @@ VP9_COMMON_SRCS-$(HAVE_NEON) += common/arm/neon/vp9_dc_only_idct_add_neon$(ASM)
VP9_COMMON_SRCS-$(HAVE_NEON)
+=
common/arm/neon/vp9_short_idct4x4_add_neon
$(ASM)
VP9_COMMON_SRCS-$(HAVE_NEON)
+=
common/arm/neon/vp9_short_idct8x8_add_neon
$(ASM)
VP9_COMMON_SRCS-$(HAVE_NEON)
+=
common/arm/neon/vp9_mb_lpf_neon
$(ASM)
VP9_COMMON_SRCS-$(HAVE_NEON)
+=
common/arm/neon/vp9_copy_neon
$(ASM)
$(eval
$(call
rtcd_h_template,vp9_rtcd,vp9/common/vp9_rtcd_defs.sh))
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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