The apple assembler for arm64 can handle the gnu binutils style macros just fine, so there is no need to duplicate all of these macros in two syntaxes, when the new one works fine in all cases. We already require a new enough assembler to support the gnu binutils style features since we use the .rept directive in a few places.
Showing the changes to codec/processing/src (1 of 8 files). Show all
Unified · Split
| @@ -33,29 +33,6 @@ · 32 unmodified lines | |||
| 33 | #ifdef HAVE_NEON_AARCH64 | 33 | #ifdef HAVE_NEON_AARCH64 |
| 34 | #include "arm_arch64_common_macro.S" | 34 | #include "arm_arch64_common_macro.S" |
| 35 | 35 | ||
| 36 | #ifdef __APPLE__ | ||
| 37 | .macro ABS_SUB_SUM_16BYTES | ||
| 38 | ld1 {v0.16b}, [x0], x4 | ||
| 39 | ld1 {v1.16b}, [x1], x4 | ||
| 40 | uabal $0, v0.8b, v1.8b | ||
| 41 | uabal2 $1, v0.16b,v1.16b | ||
| 42 | .endm | ||
| 43 | |||
| 44 | .macro ABS_SUB_SUM_8x16BYTES | ||
| 45 | ld1 {v0.16b}, [x0], x4 | ||
| 46 | ld1 {v1.16b}, [x1], x4 | ||
| 47 | uabdl $0, v0.8b, v1.8b | ||
| 48 | uabdl2 $1, v0.16b,v1.16b | ||
| 49 | |||
| 50 | ABS_SUB_SUM_16BYTES $0, $1 | ||
| 51 | ABS_SUB_SUM_16BYTES $0, $1 | ||
| 52 | ABS_SUB_SUM_16BYTES $0, $1 | ||
| 53 | ABS_SUB_SUM_16BYTES $0, $1 | ||
| 54 | ABS_SUB_SUM_16BYTES $0, $1 | ||
| 55 | ABS_SUB_SUM_16BYTES $0, $1 | ||
| 56 | ABS_SUB_SUM_16BYTES $0, $1 | ||
| 57 | .endm | ||
| 58 | #else | ||
| 59 | .macro ABS_SUB_SUM_16BYTES arg0, arg1 | 36 | .macro ABS_SUB_SUM_16BYTES arg0, arg1 |
| 60 | ld1 {v0.16b}, [x0], x4 | 37 | ld1 {v0.16b}, [x0], x4 |
| 61 | ld1 {v1.16b}, [x1], x4 | 38 | ld1 {v1.16b}, [x1], x4 |
| @@ -77,7 +54,6 @@ · 15 unmodified lines | |||
| 77 | ABS_SUB_SUM_16BYTES \arg0, \arg1 | 54 | ABS_SUB_SUM_16BYTES \arg0, \arg1 |
| 78 | ABS_SUB_SUM_16BYTES \arg0, \arg1 | 55 | ABS_SUB_SUM_16BYTES \arg0, \arg1 |
| 79 | .endm | 56 | .endm |
| 80 | #endif | ||
| 81 | 57 | ||
| 82 | /* | 58 | /* |
| 83 | * void vaa_calc_sad_neon(uint8_t *cur_data, uint8_t *ref_data, int32_t pic_width, int32_t pic_height, int32_t pic_stride, | 59 | * void vaa_calc_sad_neon(uint8_t *cur_data, uint8_t *ref_data, int32_t pic_width, int32_t pic_height, int32_t pic_stride, |