Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(802)

Unified Diff: source/libvpx/vp9/common/arm/neon/vp9_idct16x16_neon.c

Issue 812033011: libvpx: Pull from upstream (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/deps/third_party/libvpx/
Patch Set: Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: source/libvpx/vp9/common/arm/neon/vp9_idct16x16_neon.c
===================================================================
--- source/libvpx/vp9/common/arm/neon/vp9_idct16x16_neon.c (revision 293588)
+++ source/libvpx/vp9/common/arm/neon/vp9_idct16x16_neon.c (working copy)
@@ -30,18 +30,24 @@
uint8_t *dest,
int dest_stride);
+#if HAVE_NEON_ASM
/* For ARM NEON, d8-d15 are callee-saved registers, and need to be saved. */
extern void vp9_push_neon(int64_t *store);
extern void vp9_pop_neon(int64_t *store);
+#endif // HAVE_NEON_ASM
void vp9_idct16x16_256_add_neon(const int16_t *input,
uint8_t *dest, int dest_stride) {
+#if HAVE_NEON_ASM
int64_t store_reg[8];
+#endif
int16_t pass1_output[16*16] = {0};
int16_t row_idct_output[16*16] = {0};
+#if HAVE_NEON_ASM
// save d8-d15 register values.
vp9_push_neon(store_reg);
+#endif
/* Parallel idct on the upper 8 rows */
// First pass processes even elements 0, 2, 4, 6, 8, 10, 12, 14 and save the
@@ -103,8 +109,10 @@
dest+8,
dest_stride);
+#if HAVE_NEON_ASM
// restore d8-d15 register values.
vp9_pop_neon(store_reg);
+#endif
return;
}
@@ -111,12 +119,16 @@
void vp9_idct16x16_10_add_neon(const int16_t *input,
uint8_t *dest, int dest_stride) {
+#if HAVE_NEON_ASM
int64_t store_reg[8];
+#endif
int16_t pass1_output[16*16] = {0};
int16_t row_idct_output[16*16] = {0};
+#if HAVE_NEON_ASM
// save d8-d15 register values.
vp9_push_neon(store_reg);
+#endif
/* Parallel idct on the upper 8 rows */
// First pass processes even elements 0, 2, 4, 6, 8, 10, 12, 14 and save the
@@ -165,8 +177,10 @@
dest+8,
dest_stride);
+#if HAVE_NEON_ASM
// restore d8-d15 register values.
vp9_pop_neon(store_reg);
+#endif
return;
}

Powered by Google App Engine
This is Rietveld 408576698