Showing the changes to codec/processing/src/arm (1 of 8 files). Show all
Unified · Split
| @@ -161,7 +161,7 @@ WELS_ASM_FUNC_END · 160 unmodified lines | |||
| 161 | 161 | ||
| 162 | 162 | ||
| 163 | #ifdef __APPLE__ | 163 | #ifdef __APPLE__ |
| 164 | .macro SAD_SD_MAD_16BYTES | 164 | .macro SAD_SD_MAD_16BYTES |
| 165 | vld1.32 {q0}, [$0], $2 | 165 | vld1.32 {q0}, [$0], $2 |
| 166 | vld1.32 {q1}, [$1], $2 | 166 | vld1.32 {q1}, [$1], $2 |
| 167 | 167 | ||
| @@ -173,7 +173,7 @@ WELS_ASM_FUNC_END · 5 unmodified lines | |||
| 173 | vpadal.u8 $6, q0 | 173 | vpadal.u8 $6, q0 |
| 174 | .endm | 174 | .endm |
| 175 | 175 | ||
| 176 | .macro SAD_SD_MAD_8x16BYTES | 176 | .macro SAD_SD_MAD_8x16BYTES |
| 177 | vld1.32 {q0}, [$0], $2 | 177 | vld1.32 {q0}, [$0], $2 |
| 178 | vld1.32 {q1}, [$1], $2 | 178 | vld1.32 {q1}, [$1], $2 |
| 179 | 179 | ||
| @@ -195,7 +195,7 @@ WELS_ASM_FUNC_END · 15 unmodified lines | |||
| 195 | vsub.u16 $5, q2, q3 | 195 | vsub.u16 $5, q2, q3 |
| 196 | .endm | 196 | .endm |
| 197 | 197 | ||
| 198 | .macro SAD_SD_MAD_CALC | 198 | .macro SAD_SD_MAD_CALC |
| 199 | vpmax.u8 d0, $0, $1 //8bytes | 199 | vpmax.u8 d0, $0, $1 //8bytes |
| 200 | vpmax.u8 d0, d0, d0 //4bytes | 200 | vpmax.u8 d0, d0, d0 //4bytes |
| 201 | vpmax.u8 $2, d0, d0 //2bytes | 201 | vpmax.u8 $2, d0, d0 //2bytes |
| @@ -206,7 +206,7 @@ WELS_ASM_FUNC_END · 4 unmodified lines | |||
| 206 | vpaddl.s32 $4, $4 | 206 | vpaddl.s32 $4, $4 |
| 207 | .endm | 207 | .endm |
| 208 | #else | 208 | #else |
| 209 | .macro SAD_SD_MAD_16BYTES arg0, arg1, arg2, arg3, arg4, arg5, arg6 | 209 | .macro SAD_SD_MAD_16BYTES arg0, arg1, arg2, arg3, arg4, arg5, arg6 |
| 210 | vld1.32 {q0}, [\arg0], \arg2 | 210 | vld1.32 {q0}, [\arg0], \arg2 |
| 211 | vld1.32 {q1}, [\arg1], \arg2 | 211 | vld1.32 {q1}, [\arg1], \arg2 |
| 212 | 212 | ||
| @@ -218,7 +218,7 @@ WELS_ASM_FUNC_END · 5 unmodified lines | |||
| 218 | vpadal.u8 \arg6, q0 | 218 | vpadal.u8 \arg6, q0 |
| 219 | .endm | 219 | .endm |
| 220 | 220 | ||
| 221 | .macro SAD_SD_MAD_8x16BYTES arg0, arg1, arg2, arg3, arg4, arg5 | 221 | .macro SAD_SD_MAD_8x16BYTES arg0, arg1, arg2, arg3, arg4, arg5 |
| 222 | vld1.32 {q0}, [\arg0], \arg2 | 222 | vld1.32 {q0}, [\arg0], \arg2 |
| 223 | vld1.32 {q1}, [\arg1], \arg2 | 223 | vld1.32 {q1}, [\arg1], \arg2 |
| 224 | 224 | ||
| @@ -240,7 +240,7 @@ WELS_ASM_FUNC_END · 15 unmodified lines | |||
| 240 | vsub.u16 \arg5, q2, q3 | 240 | vsub.u16 \arg5, q2, q3 |
| 241 | .endm | 241 | .endm |
| 242 | 242 | ||
| 243 | .macro SAD_SD_MAD_CALC arg0, arg1, arg2, arg3, arg4 | 243 | .macro SAD_SD_MAD_CALC arg0, arg1, arg2, arg3, arg4 |
| 244 | vpmax.u8 d0, \arg0, \arg1 //8bytes | 244 | vpmax.u8 d0, \arg0, \arg1 //8bytes |
| 245 | vpmax.u8 d0, d0, d0 //4bytes | 245 | vpmax.u8 d0, d0, d0 //4bytes |
| 246 | vpmax.u8 \arg2, d0, d0 //2bytes | 246 | vpmax.u8 \arg2, d0, d0 //2bytes |
| @@ -315,7 +315,7 @@ WELS_ASM_FUNC_END · 68 unmodified lines | |||
| 315 | 315 | ||
| 316 | 316 | ||
| 317 | #ifdef __APPLE__ | 317 | #ifdef __APPLE__ |
| 318 | .macro SSD_MUL_SUM_16BYTES_RESET | 318 | .macro SSD_MUL_SUM_16BYTES_RESET |
| 319 | vmull.u8 $3, $0, $0 | 319 | vmull.u8 $3, $0, $0 |
| 320 | vpaddl.u16 $2, $3 | 320 | vpaddl.u16 $2, $3 |
| 321 | 321 | ||
| @@ -323,7 +323,7 @@ WELS_ASM_FUNC_END · 1 unmodified line | |||
| 323 | vpadal.u16 $2, $3 | 323 | vpadal.u16 $2, $3 |
| 324 | .endm | 324 | .endm |
| 325 | 325 | ||
| 326 | .macro SSD_MUL_SUM_16BYTES | 326 | .macro SSD_MUL_SUM_16BYTES |
| 327 | vmull.u8 $3, $0, $0 | 327 | vmull.u8 $3, $0, $0 |
| 328 | vpadal.u16 $2, $3 | 328 | vpadal.u16 $2, $3 |
| 329 | 329 | ||
| @@ -467,13 +467,13 @@ WELS_ASM_FUNC_END · 137 unmodified lines | |||
| 467 | SAD_SSD_BGD_CALC_8x16 d27, q15, q7 | 467 | SAD_SSD_BGD_CALC_8x16 d27, q15, q7 |
| 468 | .endm | 468 | .endm |
| 469 | 469 | ||
| 470 | .macro SSD_SAD_SD_MAD_PADDL | 470 | .macro SSD_SAD_SD_MAD_PADDL |
| 471 | vpaddl.s16 $0, $0 | 471 | vpaddl.s16 $0, $0 |
| 472 | vpaddl.s32 $0, $0 | 472 | vpaddl.s32 $0, $0 |
| 473 | vadd.i32 $1, $1, $2 | 473 | vadd.i32 $1, $1, $2 |
| 474 | .endm | 474 | .endm |
| 475 | #else | 475 | #else |
| 476 | .macro SSD_MUL_SUM_16BYTES_RESET arg0, arg1, arg2, arg3 | 476 | .macro SSD_MUL_SUM_16BYTES_RESET arg0, arg1, arg2, arg3 |
| 477 | vmull.u8 \arg3, \arg0, \arg0 | 477 | vmull.u8 \arg3, \arg0, \arg0 |
| 478 | vpaddl.u16 \arg2, \arg3 | 478 | vpaddl.u16 \arg2, \arg3 |
| 479 | 479 | ||
| @@ -481,7 +481,7 @@ WELS_ASM_FUNC_END · 1 unmodified line | |||
| 481 | vpadal.u16 \arg2, \arg3 | 481 | vpadal.u16 \arg2, \arg3 |
| 482 | .endm | 482 | .endm |
| 483 | 483 | ||
| 484 | .macro SSD_MUL_SUM_16BYTES arg0, arg1, arg2, arg3 | 484 | .macro SSD_MUL_SUM_16BYTES arg0, arg1, arg2, arg3 |
| 485 | vmull.u8 \arg3, \arg0, \arg0 | 485 | vmull.u8 \arg3, \arg0, \arg0 |
| 486 | vpadal.u16 \arg2, \arg3 | 486 | vpadal.u16 \arg2, \arg3 |
| 487 | 487 | ||
| @@ -625,7 +625,7 @@ WELS_ASM_FUNC_END · 137 unmodified lines | |||
| 625 | SAD_SSD_BGD_CALC_8x16 d27, q15, q7 | 625 | SAD_SSD_BGD_CALC_8x16 d27, q15, q7 |
| 626 | .endm | 626 | .endm |
| 627 | 627 | ||
| 628 | .macro SSD_SAD_SD_MAD_PADDL arg0, arg1, arg2 | 628 | .macro SSD_SAD_SD_MAD_PADDL arg0, arg1, arg2 |
| 629 | vpaddl.s16 \arg0, \arg0 | 629 | vpaddl.s16 \arg0, \arg0 |
| 630 | vpaddl.s32 \arg0, \arg0 | 630 | vpaddl.s32 \arg0, \arg0 |
| 631 | vadd.i32 \arg1, \arg1, \arg2 | 631 | vadd.i32 \arg1, \arg1, \arg2 |