shithub: openh264

Download patch

ref: 0b8cdcaff8eb9d81c7cb24defc1a34d2576b52a3
parent: 50daa8f737fe174d723a10f97fa7ec24f54a6178
author: Guangwei Wang <[email protected]>
date: Sun Apr 17 15:41:57 EDT 2016

extension 32-bit parameters to 64-bit on arm64 assembly function

--- a/codec/decoder/core/arm64/block_add_aarch64_neon.S
+++ b/codec/decoder/core/arm64/block_add_aarch64_neon.S
@@ -121,6 +121,7 @@
 
 WELS_ASM_AARCH64_FUNC_BEGIN WelsBlockZero8x8_AArch64_neon
     eor v0.16b, v0.16b, v0.16b
+	SIGN_EXTENSION x1, w1
     lsl x1, x1, 1
 .rept 8
     st1 {v0.16b}, [x0], x1
--- a/codec/encoder/core/arm64/reconstruct_aarch64_neon.S
+++ b/codec/encoder/core/arm64/reconstruct_aarch64_neon.S
@@ -469,7 +469,10 @@
     st1    {v0.16b, v1.16b}, [x0]
 WELS_ASM_AARCH64_FUNC_END
 
+//void WelsDctT4_AArch64_neon (int16_t* pDct,  uint8_t* pPixel1, int32_t iStride1, uint8_t* pPixel2, int32_t iStride2);
 WELS_ASM_AARCH64_FUNC_BEGIN WelsDctT4_AArch64_neon
+    SIGN_EXTENSION x2, w2
+	SIGN_EXTENSION x4, w4
     LOAD_4x4_DATA_FOR_DCT   v0, v1, x1, x2, x3, x4
     usubl  v2.8h, v0.8b, v1.8b
     usubl2 v4.8h, v0.16b, v1.16b