It does not help as an abstraction and adds dsputil dependencies.
Showing the changes to libavcodec/arm (17 of 163 files). Show all
Unified · Split
| @@ -23,12 +23,12 @@ · 22 unmodified lines | |||
| 23 | #include "libavcodec/dsputil.h" | 23 | #include "libavcodec/dsputil.h" |
| 24 | #include "dsputil_arm.h" | 24 | #include "dsputil_arm.h" |
| 25 | 25 | ||
| 26 | void ff_j_rev_dct_arm(DCTELEM *data); | 26 | void ff_j_rev_dct_arm(int16_t *data); |
| 27 | void ff_simple_idct_arm(DCTELEM *data); | 27 | void ff_simple_idct_arm(int16_t *data); |
| 28 | 28 | ||
| 29 | /* XXX: local hack */ | 29 | /* XXX: local hack */ |
| 30 | static void (*ff_put_pixels_clamped)(const DCTELEM *block, uint8_t *pixels, int line_size); | 30 | static void (*ff_put_pixels_clamped)(const int16_t *block, uint8_t *pixels, int line_size); |
| 31 | static void (*ff_add_pixels_clamped)(const DCTELEM *block, uint8_t *pixels, int line_size); | 31 | static void (*ff_add_pixels_clamped)(const int16_t *block, uint8_t *pixels, int line_size); |
| 32 | 32 | ||
| 33 | void ff_put_pixels8_arm(uint8_t *block, const uint8_t *pixels, int line_size, int h); | 33 | void ff_put_pixels8_arm(uint8_t *block, const uint8_t *pixels, int line_size, int h); |
| 34 | void ff_put_pixels8_x2_arm(uint8_t *block, const uint8_t *pixels, int line_size, int h); | 34 | void ff_put_pixels8_x2_arm(uint8_t *block, const uint8_t *pixels, int line_size, int h); |
| @@ -48,27 +48,27 @@ CALL_2X_PIXELS(ff_put_no_rnd_pixels16_x2_arm, ff_put_no_rnd_pixels8_x2_arm, 8) · 13 unmodified lines | |||
| 48 | CALL_2X_PIXELS(ff_put_no_rnd_pixels16_y2_arm, ff_put_no_rnd_pixels8_y2_arm, 8) | 48 | CALL_2X_PIXELS(ff_put_no_rnd_pixels16_y2_arm, ff_put_no_rnd_pixels8_y2_arm, 8) |
| 49 | CALL_2X_PIXELS(ff_put_no_rnd_pixels16_xy2_arm, ff_put_no_rnd_pixels8_xy2_arm,8) | 49 | CALL_2X_PIXELS(ff_put_no_rnd_pixels16_xy2_arm, ff_put_no_rnd_pixels8_xy2_arm,8) |
| 50 | 50 | ||
| 51 | void ff_add_pixels_clamped_arm(const DCTELEM *block, uint8_t *dest, | 51 | void ff_add_pixels_clamped_arm(const int16_t *block, uint8_t *dest, |
| 52 | int line_size); | 52 | int line_size); |
| 53 | 53 | ||
| 54 | /* XXX: those functions should be suppressed ASAP when all IDCTs are | 54 | /* XXX: those functions should be suppressed ASAP when all IDCTs are |
| 55 | converted */ | 55 | converted */ |
| 56 | static void j_rev_dct_arm_put(uint8_t *dest, int line_size, DCTELEM *block) | 56 | static void j_rev_dct_arm_put(uint8_t *dest, int line_size, int16_t *block) |
| 57 | { | 57 | { |
| 58 | ff_j_rev_dct_arm (block); | 58 | ff_j_rev_dct_arm (block); |
| 59 | ff_put_pixels_clamped(block, dest, line_size); | 59 | ff_put_pixels_clamped(block, dest, line_size); |
| 60 | } | 60 | } |
| 61 | static void j_rev_dct_arm_add(uint8_t *dest, int line_size, DCTELEM *block) | 61 | static void j_rev_dct_arm_add(uint8_t *dest, int line_size, int16_t *block) |
| 62 | { | 62 | { |
| 63 | ff_j_rev_dct_arm (block); | 63 | ff_j_rev_dct_arm (block); |
| 64 | ff_add_pixels_clamped(block, dest, line_size); | 64 | ff_add_pixels_clamped(block, dest, line_size); |
| 65 | } | 65 | } |
| 66 | static void simple_idct_arm_put(uint8_t *dest, int line_size, DCTELEM *block) | 66 | static void simple_idct_arm_put(uint8_t *dest, int line_size, int16_t *block) |
| 67 | { | 67 | { |
| 68 | ff_simple_idct_arm (block); | 68 | ff_simple_idct_arm (block); |
| 69 | ff_put_pixels_clamped(block, dest, line_size); | 69 | ff_put_pixels_clamped(block, dest, line_size); |
| 70 | } | 70 | } |
| 71 | static void simple_idct_arm_add(uint8_t *dest, int line_size, DCTELEM *block) | 71 | static void simple_idct_arm_add(uint8_t *dest, int line_size, int16_t *block) |
| 72 | { | 72 | { |
| 73 | ff_simple_idct_arm (block); | 73 | ff_simple_idct_arm (block); |
| 74 | ff_add_pixels_clamped(block, dest, line_size); | 74 | ff_add_pixels_clamped(block, dest, line_size); |
| @@ -21,9 +21,9 @@ · 20 unmodified lines | |||
| 21 | #include "libavcodec/dsputil.h" | 21 | #include "libavcodec/dsputil.h" |
| 22 | #include "dsputil_arm.h" | 22 | #include "dsputil_arm.h" |
| 23 | 23 | ||
| 24 | void ff_simple_idct_armv5te(DCTELEM *data); | 24 | void ff_simple_idct_armv5te(int16_t *data); |
| 25 | void ff_simple_idct_put_armv5te(uint8_t *dest, int line_size, DCTELEM *data); | 25 | void ff_simple_idct_put_armv5te(uint8_t *dest, int line_size, int16_t *data); |
| 26 | void ff_simple_idct_add_armv5te(uint8_t *dest, int line_size, DCTELEM *data); | 26 | void ff_simple_idct_add_armv5te(uint8_t *dest, int line_size, int16_t *data); |
| 27 | 27 | ||
| 28 | av_cold void ff_dsputil_init_armv5te(DSPContext *c, AVCodecContext *avctx) | 28 | av_cold void ff_dsputil_init_armv5te(DSPContext *c, AVCodecContext *avctx) |
| 29 | { | 29 | { |
| @@ -24,9 +24,9 @@ · 23 unmodified lines | |||
| 24 | #include "libavcodec/dsputil.h" | 24 | #include "libavcodec/dsputil.h" |
| 25 | #include "dsputil_arm.h" | 25 | #include "dsputil_arm.h" |
| 26 | 26 | ||
| 27 | void ff_simple_idct_armv6(DCTELEM *data); | 27 | void ff_simple_idct_armv6(int16_t *data); |
| 28 | void ff_simple_idct_put_armv6(uint8_t *dest, int line_size, DCTELEM *data); | 28 | void ff_simple_idct_put_armv6(uint8_t *dest, int line_size, int16_t *data); |
| 29 | void ff_simple_idct_add_armv6(uint8_t *dest, int line_size, DCTELEM *data); | 29 | void ff_simple_idct_add_armv6(uint8_t *dest, int line_size, int16_t *data); |
| 30 | 30 | ||
| 31 | void ff_put_pixels16_armv6(uint8_t *, const uint8_t *, int, int); | 31 | void ff_put_pixels16_armv6(uint8_t *, const uint8_t *, int, int); |
| 32 | void ff_put_pixels16_x2_armv6(uint8_t *, const uint8_t *, int, int); | 32 | void ff_put_pixels16_x2_armv6(uint8_t *, const uint8_t *, int, int); |
| @@ -46,12 +46,12 @@ void ff_put_pixels8_y2_no_rnd_armv6(uint8_t *, const uint8_t *, int, int); · 13 unmodified lines | |||
| 46 | 46 | ||
| 47 | void ff_avg_pixels8_armv6(uint8_t *, const uint8_t *, int, int); | 47 | void ff_avg_pixels8_armv6(uint8_t *, const uint8_t *, int, int); |
| 48 | 48 | ||
| 49 | void ff_add_pixels_clamped_armv6(const DCTELEM *block, | 49 | void ff_add_pixels_clamped_armv6(const int16_t *block, |
| 50 | uint8_t *restrict pixels, | 50 | uint8_t *restrict pixels, |
| 51 | int line_size); | 51 | int line_size); |
| 52 | 52 | ||
| 53 | void ff_get_pixels_armv6(DCTELEM *block, const uint8_t *pixels, int stride); | 53 | void ff_get_pixels_armv6(int16_t *block, const uint8_t *pixels, int stride); |
| 54 | void ff_diff_pixels_armv6(DCTELEM *block, const uint8_t *s1, | 54 | void ff_diff_pixels_armv6(int16_t *block, const uint8_t *s1, |
| 55 | const uint8_t *s2, int stride); | 55 | const uint8_t *s2, int stride); |
| 56 | 56 | ||
| 57 | int ff_pix_abs16_armv6(void *s, uint8_t *blk1, uint8_t *blk2, | 57 | int ff_pix_abs16_armv6(void *s, uint8_t *blk1, uint8_t *blk2, |
| @@ -25,12 +25,12 @@ · 24 unmodified lines | |||
| 25 | #include "libavcodec/dsputil.h" | 25 | #include "libavcodec/dsputil.h" |
| 26 | #include "dsputil_arm.h" | 26 | #include "dsputil_arm.h" |
| 27 | 27 | ||
| 28 | void ff_simple_idct_neon(DCTELEM *data); | 28 | void ff_simple_idct_neon(int16_t *data); |
| 29 | void ff_simple_idct_put_neon(uint8_t *dest, int line_size, DCTELEM *data); | 29 | void ff_simple_idct_put_neon(uint8_t *dest, int line_size, int16_t *data); |
| 30 | void ff_simple_idct_add_neon(uint8_t *dest, int line_size, DCTELEM *data); | 30 | void ff_simple_idct_add_neon(uint8_t *dest, int line_size, int16_t *data); |
| 31 | 31 | ||
| 32 | void ff_clear_block_neon(DCTELEM *block); | 32 | void ff_clear_block_neon(int16_t *block); |
| 33 | void ff_clear_blocks_neon(DCTELEM *blocks); | 33 | void ff_clear_blocks_neon(int16_t *blocks); |
| 34 | 34 | ||
| 35 | void ff_put_pixels16_neon(uint8_t *, const uint8_t *, int, int); | 35 | void ff_put_pixels16_neon(uint8_t *, const uint8_t *, int, int); |
| 36 | void ff_put_pixels16_x2_neon(uint8_t *, const uint8_t *, int, int); | 36 | void ff_put_pixels16_x2_neon(uint8_t *, const uint8_t *, int, int); |
| @@ -62,9 +62,9 @@ void ff_avg_pixels8_x2_no_rnd_neon(uint8_t *, const uint8_t *, int, int); · 25 unmodified lines | |||
| 62 | void ff_avg_pixels8_y2_no_rnd_neon(uint8_t *, const uint8_t *, int, int); | 62 | void ff_avg_pixels8_y2_no_rnd_neon(uint8_t *, const uint8_t *, int, int); |
| 63 | void ff_avg_pixels8_xy2_no_rnd_neon(uint8_t *, const uint8_t *, int, int); | 63 | void ff_avg_pixels8_xy2_no_rnd_neon(uint8_t *, const uint8_t *, int, int); |
| 64 | 64 | ||
| 65 | void ff_add_pixels_clamped_neon(const DCTELEM *, uint8_t *, int); | 65 | void ff_add_pixels_clamped_neon(const int16_t *, uint8_t *, int); |
| 66 | void ff_put_pixels_clamped_neon(const DCTELEM *, uint8_t *, int); | 66 | void ff_put_pixels_clamped_neon(const int16_t *, uint8_t *, int); |
| 67 | void ff_put_signed_pixels_clamped_neon(const DCTELEM *, uint8_t *, int); | 67 | void ff_put_signed_pixels_clamped_neon(const int16_t *, uint8_t *, int); |
| 68 | 68 | ||
| 69 | void ff_put_h264_qpel16_mc00_neon(uint8_t *, uint8_t *, int); | 69 | void ff_put_h264_qpel16_mc00_neon(uint8_t *, uint8_t *, int); |
| 70 | void ff_put_h264_qpel16_mc10_neon(uint8_t *, uint8_t *, int); | 70 | void ff_put_h264_qpel16_mc10_neon(uint8_t *, uint8_t *, int); |
| @@ -50,22 +50,22 @@ void ff_biweight_h264_pixels_4_neon(uint8_t *dst, uint8_t *src, int stride, · 49 unmodified lines | |||
| 50 | int height, int log2_den, int weightd, | 50 | int height, int log2_den, int weightd, |
| 51 | int weights, int offset); | 51 | int weights, int offset); |
| 52 | 52 | ||
| 53 | void ff_h264_idct_add_neon(uint8_t *dst, DCTELEM *block, int stride); | 53 | void ff_h264_idct_add_neon(uint8_t *dst, int16_t *block, int stride); |
| 54 | void ff_h264_idct_dc_add_neon(uint8_t *dst, DCTELEM *block, int stride); | 54 | void ff_h264_idct_dc_add_neon(uint8_t *dst, int16_t *block, int stride); |
| 55 | void ff_h264_idct_add16_neon(uint8_t *dst, const int *block_offset, | 55 | void ff_h264_idct_add16_neon(uint8_t *dst, const int *block_offset, |
| 56 | DCTELEM *block, int stride, | 56 | int16_t *block, int stride, |
| 57 | const uint8_t nnzc[6*8]); | 57 | const uint8_t nnzc[6*8]); |
| 58 | void ff_h264_idct_add16intra_neon(uint8_t *dst, const int *block_offset, | 58 | void ff_h264_idct_add16intra_neon(uint8_t *dst, const int *block_offset, |
| 59 | DCTELEM *block, int stride, | 59 | int16_t *block, int stride, |
| 60 | const uint8_t nnzc[6*8]); | 60 | const uint8_t nnzc[6*8]); |
| 61 | void ff_h264_idct_add8_neon(uint8_t **dest, const int *block_offset, | 61 | void ff_h264_idct_add8_neon(uint8_t **dest, const int *block_offset, |
| 62 | DCTELEM *block, int stride, | 62 | int16_t *block, int stride, |
| 63 | const uint8_t nnzc[6*8]); | 63 | const uint8_t nnzc[6*8]); |
| 64 | 64 | ||
| 65 | void ff_h264_idct8_add_neon(uint8_t *dst, DCTELEM *block, int stride); | 65 | void ff_h264_idct8_add_neon(uint8_t *dst, int16_t *block, int stride); |
| 66 | void ff_h264_idct8_dc_add_neon(uint8_t *dst, DCTELEM *block, int stride); | 66 | void ff_h264_idct8_dc_add_neon(uint8_t *dst, int16_t *block, int stride); |
| 67 | void ff_h264_idct8_add4_neon(uint8_t *dst, const int *block_offset, | 67 | void ff_h264_idct8_add4_neon(uint8_t *dst, const int *block_offset, |
| 68 | DCTELEM *block, int stride, | 68 | int16_t *block, int stride, |
| 69 | const uint8_t nnzc[6*8]); | 69 | const uint8_t nnzc[6*8]); |
| 70 | 70 | ||
| 71 | static void ff_h264dsp_init_neon(H264DSPContext *c, const int bit_depth, const int chroma_format_idc) | 71 | static void ff_h264dsp_init_neon(H264DSPContext *c, const int bit_depth, const int chroma_format_idc) |
| @@ -66,7 +66,7 @@ row_loop: · 65 unmodified lines | |||
| 66 | ldrsh r2, [lr, # 2] @ r2 = 'd2' | 66 | ldrsh r2, [lr, # 2] @ r2 = 'd2' |
| 67 | 67 | ||
| 68 | @ Optimization for row that have all items except the first set to 0 | 68 | @ Optimization for row that have all items except the first set to 0 |
| 69 | @ (this works as the DCTELEMS are always 4-byte aligned) | 69 | @ (this works as the int16_t are always 4-byte aligned) |
| 70 | ldr r5, [lr, # 0] | 70 | ldr r5, [lr, # 0] |
| 71 | ldr r6, [lr, # 4] | 71 | ldr r6, [lr, # 4] |
| 72 | ldr r3, [lr, # 8] | 72 | ldr r3, [lr, # 8] |
| @@ -34,9 +34,9 @@ CHK_OFFS(MpegEncContext, inter_scantable.raster_end, INTER_SCANTAB_RASTER_END); · 33 unmodified lines | |||
| 34 | CHK_OFFS(MpegEncContext, h263_aic, H263_AIC); | 34 | CHK_OFFS(MpegEncContext, h263_aic, H263_AIC); |
| 35 | #endif | 35 | #endif |
| 36 | 36 | ||
| 37 | void ff_dct_unquantize_h263_inter_neon(MpegEncContext *s, DCTELEM *block, | 37 | void ff_dct_unquantize_h263_inter_neon(MpegEncContext *s, int16_t *block, |
| 38 | int n, int qscale); | 38 | int n, int qscale); |
| 39 | void ff_dct_unquantize_h263_intra_neon(MpegEncContext *s, DCTELEM *block, | 39 | void ff_dct_unquantize_h263_intra_neon(MpegEncContext *s, int16_t *block, |
| 40 | int n, int qscale); | 40 | int n, int qscale); |
| 41 | 41 | ||
| 42 | void ff_MPV_common_init_arm(MpegEncContext *s) | 42 | void ff_MPV_common_init_arm(MpegEncContext *s) |
| @@ -24,7 +24,7 @@ · 23 unmodified lines | |||
| 24 | #include "libavcodec/mpegvideo.h" | 24 | #include "libavcodec/mpegvideo.h" |
| 25 | #include "mpegvideo_arm.h" | 25 | #include "mpegvideo_arm.h" |
| 26 | 26 | ||
| 27 | void ff_dct_unquantize_h263_armv5te(DCTELEM *block, int qmul, int qadd, int count); | 27 | void ff_dct_unquantize_h263_armv5te(int16_t *block, int qmul, int qadd, int count); |
| 28 | 28 | ||
| 29 | #ifdef ENABLE_ARM_TESTS | 29 | #ifdef ENABLE_ARM_TESTS |
| 30 | /** | 30 | /** |
| @@ -32,7 +32,7 @@ void ff_dct_unquantize_h263_armv5te(DCTELEM *block, int qmul, int qadd, int coun · 1 unmodified line | |||
| 32 | * have optimized implementations for each architecture. Is also used as a reference | 32 | * have optimized implementations for each architecture. Is also used as a reference |
| 33 | * implementation in regression tests | 33 | * implementation in regression tests |
| 34 | */ | 34 | */ |
| 35 | static inline void dct_unquantize_h263_helper_c(DCTELEM *block, int qmul, int qadd, int count) | 35 | static inline void dct_unquantize_h263_helper_c(int16_t *block, int qmul, int qadd, int count) |
| 36 | { | 36 | { |
| 37 | int i, level; | 37 | int i, level; |
| 38 | for (i = 0; i < count; i++) { | 38 | for (i = 0; i < count; i++) { |
| @@ -50,7 +50,7 @@ static inline void dct_unquantize_h263_helper_c(DCTELEM *block, int qmul, int qa · 11 unmodified lines | |||
| 50 | #endif | 50 | #endif |
| 51 | 51 | ||
| 52 | static void dct_unquantize_h263_intra_armv5te(MpegEncContext *s, | 52 | static void dct_unquantize_h263_intra_armv5te(MpegEncContext *s, |
| 53 | DCTELEM *block, int n, int qscale) | 53 | int16_t *block, int n, int qscale) |
| 54 | { | 54 | { |
| 55 | int level, qmul, qadd; | 55 | int level, qmul, qadd; |
| 56 | int nCoeffs; | 56 | int nCoeffs; |
| @@ -79,7 +79,7 @@ static void dct_unquantize_h263_intra_armv5te(MpegEncContext *s, · 22 unmodified lines | |||
| 79 | } | 79 | } |
| 80 | 80 | ||
| 81 | static void dct_unquantize_h263_inter_armv5te(MpegEncContext *s, | 81 | static void dct_unquantize_h263_inter_armv5te(MpegEncContext *s, |
| 82 | DCTELEM *block, int n, int qscale) | 82 | int16_t *block, int n, int qscale) |
| 83 | { | 83 | { |
| 84 | int qmul, qadd; | 84 | int qmul, qadd; |
| 85 | int nCoeffs; | 85 | int nCoeffs; |
| @@ -24,11 +24,11 @@ · 23 unmodified lines | |||
| 24 | #include "libavcodec/rv34dsp.h" | 24 | #include "libavcodec/rv34dsp.h" |
| 25 | #include "libavutil/arm/cpu.h" | 25 | #include "libavutil/arm/cpu.h" |
| 26 | 26 | ||
| 27 | void ff_rv34_inv_transform_noround_neon(DCTELEM *block); | 27 | void ff_rv34_inv_transform_noround_neon(int16_t *block); |
| 28 | 28 | ||
| 29 | void ff_rv34_inv_transform_noround_dc_neon(DCTELEM *block); | 29 | void ff_rv34_inv_transform_noround_dc_neon(int16_t *block); |
| 30 | 30 | ||
| 31 | void ff_rv34_idct_add_neon(uint8_t *dst, ptrdiff_t stride, DCTELEM *block); | 31 | void ff_rv34_idct_add_neon(uint8_t *dst, ptrdiff_t stride, int16_t *block); |
| 32 | void ff_rv34_idct_dc_add_neon(uint8_t *dst, ptrdiff_t stride, int dc); | 32 | void ff_rv34_idct_dc_add_neon(uint8_t *dst, ptrdiff_t stride, int dc); |
| 33 | 33 | ||
| 34 | void ff_rv34dsp_init_arm(RV34DSPContext *c, DSPContext* dsp) | 34 | void ff_rv34dsp_init_arm(RV34DSPContext *c, DSPContext* dsp) |
| @@ -67,7 +67,7 @@ · 66 unmodified lines | |||
| 67 | vsub.s32 q15, q14, q9 @ z0 - z3 | 67 | vsub.s32 q15, q14, q9 @ z0 - z3 |
| 68 | .endm | 68 | .endm |
| 69 | 69 | ||
| 70 | /* void rv34_idct_add_c(uint8_t *dst, int stride, DCTELEM *block) */ | 70 | /* void rv34_idct_add_c(uint8_t *dst, int stride, int16_t *block) */ |
| 71 | function ff_rv34_idct_add_neon, export=1 | 71 | function ff_rv34_idct_add_neon, export=1 |
| 72 | mov r3, r0 | 72 | mov r3, r0 |
| 73 | rv34_inv_transform r2 | 73 | rv34_inv_transform r2 |
| @@ -97,7 +97,7 @@ function ff_rv34_idct_add_neon, export=1 · 23 unmodified lines | |||
| 97 | bx lr | 97 | bx lr |
| 98 | endfunc | 98 | endfunc |
| 99 | 99 | ||
| 100 | /* void rv34_inv_transform_noround_neon(DCTELEM *block); */ | 100 | /* void rv34_inv_transform_noround_neon(int16_t *block); */ |
| 101 | function ff_rv34_inv_transform_noround_neon, export=1 | 101 | function ff_rv34_inv_transform_noround_neon, export=1 |
| 102 | rv34_inv_transform r0 | 102 | rv34_inv_transform r0 |
| 103 | vshl.s32 q11, q2, #1 | 103 | vshl.s32 q11, q2, #1 |
| @@ -142,7 +142,7 @@ function ff_rv34_idct_dc_add_neon, export=1 · 38 unmodified lines | |||
| 142 | bx lr | 142 | bx lr |
| 143 | endfunc | 143 | endfunc |
| 144 | 144 | ||
| 145 | /* void rv34_inv_transform_dc_noround_c(DCTELEM *block) */ | 145 | /* void rv34_inv_transform_dc_noround_c(int16_t *block) */ |
| 146 | function ff_rv34_inv_transform_noround_dc_neon, export=1 | 146 | function ff_rv34_inv_transform_noround_dc_neon, export=1 |
| 147 | vld1.16 {d28[]}, [r0,:16] @ block[0] | 147 | vld1.16 {d28[]}, [r0,:16] @ block[0] |
| 148 | vmov.i16 d4, #251 | 148 | vmov.i16 d4, #251 |
| @@ -375,7 +375,7 @@ endfunc · 374 unmodified lines | |||
| 375 | sub r0, r0, #(16*7) | 375 | sub r0, r0, #(16*7) |
| 376 | .endm | 376 | .endm |
| 377 | 377 | ||
| 378 | /* void ff_simple_idct_armv6(DCTELEM *data); */ | 378 | /* void ff_simple_idct_armv6(int16_t *data); */ |
| 379 | function ff_simple_idct_armv6, export=1 | 379 | function ff_simple_idct_armv6, export=1 |
| 380 | push {r4-r11, lr} | 380 | push {r4-r11, lr} |
| 381 | sub sp, sp, #128 | 381 | sub sp, sp, #128 |
| @@ -390,7 +390,7 @@ function ff_simple_idct_armv6, export=1 · 8 unmodified lines | |||
| 390 | pop {r4-r11, pc} | 390 | pop {r4-r11, pc} |
| 391 | endfunc | 391 | endfunc |
| 392 | 392 | ||
| 393 | /* ff_simple_idct_add_armv6(uint8_t *dest, int line_size, DCTELEM *data); */ | 393 | /* ff_simple_idct_add_armv6(uint8_t *dest, int line_size, int16_t *data); */ |
| 394 | function ff_simple_idct_add_armv6, export=1 | 394 | function ff_simple_idct_add_armv6, export=1 |
| 395 | push {r0, r1, r4-r11, lr} | 395 | push {r0, r1, r4-r11, lr} |
| 396 | sub sp, sp, #128 | 396 | sub sp, sp, #128 |
| @@ -407,7 +407,7 @@ function ff_simple_idct_add_armv6, export=1 · 10 unmodified lines | |||
| 407 | pop {r4-r11, pc} | 407 | pop {r4-r11, pc} |
| 408 | endfunc | 408 | endfunc |
| 409 | 409 | ||
| 410 | /* ff_simple_idct_put_armv6(uint8_t *dest, int line_size, DCTELEM *data); */ | 410 | /* ff_simple_idct_put_armv6(uint8_t *dest, int line_size, int16_t *data); */ |
| 411 | function ff_simple_idct_put_armv6, export=1 | 411 | function ff_simple_idct_put_armv6, export=1 |
| 412 | push {r0, r1, r4-r11, lr} | 412 | push {r0, r1, r4-r11, lr} |
| 413 | sub sp, sp, #128 | 413 | sub sp, sp, #128 |
| @@ -261,7 +261,7 @@ endconst · 260 unmodified lines | |||
| 261 | pop {r4-r7, pc} | 261 | pop {r4-r7, pc} |
| 262 | .endm | 262 | .endm |
| 263 | 263 | ||
| 264 | /* void ff_simple_idct_put_neon(uint8_t *dst, int line_size, DCTELEM *data); */ | 264 | /* void ff_simple_idct_put_neon(uint8_t *dst, int line_size, int16_t *data); */ |
| 265 | function ff_simple_idct_put_neon, export=1 | 265 | function ff_simple_idct_put_neon, export=1 |
| 266 | idct_start r2 | 266 | idct_start r2 |
| 267 | 267 | ||
| @@ -316,7 +316,7 @@ function idct_col4_add8_neon · 48 unmodified lines | |||
| 316 | bx lr | 316 | bx lr |
| 317 | endfunc | 317 | endfunc |
| 318 | 318 | ||
| 319 | /* void ff_simple_idct_add_neon(uint8_t *dst, int line_size, DCTELEM *data); */ | 319 | /* void ff_simple_idct_add_neon(uint8_t *dst, int line_size, int16_t *data); */ |
| 320 | function ff_simple_idct_add_neon, export=1 | 320 | function ff_simple_idct_add_neon, export=1 |
| 321 | idct_start r2 | 321 | idct_start r2 |
| 322 | 322 | ||
| @@ -355,7 +355,7 @@ function idct_col4_st16_neon · 32 unmodified lines | |||
| 355 | bx lr | 355 | bx lr |
| 356 | endfunc | 356 | endfunc |
| 357 | 357 | ||
| 358 | /* void ff_simple_idct_neon(DCTELEM *data); */ | 358 | /* void ff_simple_idct_neon(int16_t *data); */ |
| 359 | function ff_simple_idct_neon, export=1 | 359 | function ff_simple_idct_neon, export=1 |
| 360 | idct_start r0 | 360 | idct_start r0 |
| 361 | 361 | ||
| @@ -24,9 +24,9 @@ · 23 unmodified lines | |||
| 24 | #include "libavcodec/dsputil.h" | 24 | #include "libavcodec/dsputil.h" |
| 25 | #include "libavcodec/vp3dsp.h" | 25 | #include "libavcodec/vp3dsp.h" |
| 26 | 26 | ||
| 27 | void ff_vp3_idct_put_neon(uint8_t *dest, int line_size, DCTELEM *data); | 27 | void ff_vp3_idct_put_neon(uint8_t *dest, int line_size, int16_t *data); |
| 28 | void ff_vp3_idct_add_neon(uint8_t *dest, int line_size, DCTELEM *data); | 28 | void ff_vp3_idct_add_neon(uint8_t *dest, int line_size, int16_t *data); |
| 29 | void ff_vp3_idct_dc_add_neon(uint8_t *dest, int line_size, const DCTELEM *data); | 29 | void ff_vp3_idct_dc_add_neon(uint8_t *dest, int line_size, const int16_t *data); |
| 30 | 30 | ||
| 31 | void ff_vp3_v_loop_filter_neon(uint8_t *, int, int *); | 31 | void ff_vp3_v_loop_filter_neon(uint8_t *, int, int *); |
| 32 | void ff_vp3_h_loop_filter_neon(uint8_t *, int, int *); | 32 | void ff_vp3_h_loop_filter_neon(uint8_t *, int, int *); |
| @@ -23,7 +23,7 @@ · 22 unmodified lines | |||
| 23 | 23 | ||
| 24 | #if HAVE_ARMV6_EXTERNAL | 24 | #if HAVE_ARMV6_EXTERNAL |
| 25 | #define decode_block_coeffs_internal ff_decode_block_coeffs_armv6 | 25 | #define decode_block_coeffs_internal ff_decode_block_coeffs_armv6 |
| 26 | int ff_decode_block_coeffs_armv6(VP56RangeCoder *rc, DCTELEM block[16], | 26 | int ff_decode_block_coeffs_armv6(VP56RangeCoder *rc, int16_t block[16], |
| 27 | uint8_t probs[8][3][NUM_DCT_TOKENS-1], | 27 | uint8_t probs[8][3][NUM_DCT_TOKENS-1], |
| 28 | int i, uint8_t *token_prob, int16_t qmul[2]); | 28 | int i, uint8_t *token_prob, int16_t qmul[2]); |
| 29 | #endif | 29 | #endif |
| @@ -56,7 +56,7 @@ · 55 unmodified lines | |||
| 56 | 56 | ||
| 57 | @ idct | 57 | @ idct |
| 58 | 58 | ||
| 59 | @ void vp8_luma_dc_wht(DCTELEM block[4][4][16], DCTELEM dc[16]) | 59 | @ void vp8_luma_dc_wht(int16_t block[4][4][16], int16_t dc[16]) |
| 60 | function ff_vp8_luma_dc_wht_armv6, export=1 | 60 | function ff_vp8_luma_dc_wht_armv6, export=1 |
| 61 | push {r4-r10, lr} | 61 | push {r4-r10, lr} |
| 62 | 62 | ||
| @@ -179,7 +179,7 @@ function ff_vp8_luma_dc_wht_armv6, export=1 · 116 unmodified lines | |||
| 179 | pop {r4-r10, pc} | 179 | pop {r4-r10, pc} |
| 180 | endfunc | 180 | endfunc |
| 181 | 181 | ||
| 182 | @ void vp8_luma_dc_wht_dc(DCTELEM block[4][4][16], DCTELEM dc[16]) | 182 | @ void vp8_luma_dc_wht_dc(int16_t block[4][4][16], int16_t dc[16]) |
| 183 | function ff_vp8_luma_dc_wht_dc_armv6, export=1 | 183 | function ff_vp8_luma_dc_wht_dc_armv6, export=1 |
| 184 | ldrsh r2, [r1] | 184 | ldrsh r2, [r1] |
| 185 | mov r3, #0 | 185 | mov r3, #0 |
| @@ -192,7 +192,7 @@ function ff_vp8_luma_dc_wht_dc_armv6, export=1 · 6 unmodified lines | |||
| 192 | bx lr | 192 | bx lr |
| 193 | endfunc | 193 | endfunc |
| 194 | 194 | ||
| 195 | @ void vp8_idct_add(uint8_t *dst, DCTELEM block[16], int stride) | 195 | @ void vp8_idct_add(uint8_t *dst, int16_t block[16], int stride) |
| 196 | function ff_vp8_idct_add_armv6, export=1 | 196 | function ff_vp8_idct_add_armv6, export=1 |
| 197 | push {r4-r12, lr} | 197 | push {r4-r12, lr} |
| 198 | sub sp, sp, #32 | 198 | sub sp, sp, #32 |
| @@ -314,7 +314,7 @@ function ff_vp8_idct_add_armv6, export=1 · 115 unmodified lines | |||
| 314 | pop {r4-r12, pc} | 314 | pop {r4-r12, pc} |
| 315 | endfunc | 315 | endfunc |
| 316 | 316 | ||
| 317 | @ void vp8_idct_dc_add(uint8_t *dst, DCTELEM block[16], int stride) | 317 | @ void vp8_idct_dc_add(uint8_t *dst, int16_t block[16], int stride) |
| 318 | function ff_vp8_idct_dc_add_armv6, export=1 | 318 | function ff_vp8_idct_dc_add_armv6, export=1 |
| 319 | push {r4-r6, lr} | 319 | push {r4-r6, lr} |
| 320 | add r6, r0, r2, lsl #1 | 320 | add r6, r0, r2, lsl #1 |
| @@ -355,7 +355,7 @@ function ff_vp8_idct_dc_add_armv6, export=1 · 34 unmodified lines | |||
| 355 | pop {r4-r6, pc} | 355 | pop {r4-r6, pc} |
| 356 | endfunc | 356 | endfunc |
| 357 | 357 | ||
| 358 | @ void vp8_idct_dc_add4uv(uint8_t *dst, DCTELEM block[4][16], int stride) | 358 | @ void vp8_idct_dc_add4uv(uint8_t *dst, int16_t block[4][16], int stride) |
| 359 | function ff_vp8_idct_dc_add4uv_armv6, export=1 | 359 | function ff_vp8_idct_dc_add4uv_armv6, export=1 |
| 360 | push {r4, lr} | 360 | push {r4, lr} |
| 361 | 361 | ||
| @@ -371,7 +371,7 @@ function ff_vp8_idct_dc_add4uv_armv6, export=1 · 9 unmodified lines | |||
| 371 | pop {r4, pc} | 371 | pop {r4, pc} |
| 372 | endfunc | 372 | endfunc |
| 373 | 373 | ||
| 374 | @ void vp8_idct_dc_add4y(uint8_t *dst, DCTELEM block[4][16], int stride) | 374 | @ void vp8_idct_dc_add4y(uint8_t *dst, int16_t block[4][16], int stride) |
| 375 | function ff_vp8_idct_dc_add4y_armv6, export=1 | 375 | function ff_vp8_idct_dc_add4y_armv6, export=1 |
| 376 | push {r4, lr} | 376 | push {r4, lr} |
| 377 | 377 | ||
| @@ -22,13 +22,13 @@ · 21 unmodified lines | |||
| 22 | #include "libavcodec/vp8dsp.h" | 22 | #include "libavcodec/vp8dsp.h" |
| 23 | #include "vp8dsp.h" | 23 | #include "vp8dsp.h" |
| 24 | 24 | ||
| 25 | void ff_vp8_luma_dc_wht_armv6(DCTELEM block[4][4][16], DCTELEM dc[16]); | 25 | void ff_vp8_luma_dc_wht_armv6(int16_t block[4][4][16], int16_t dc[16]); |
| 26 | void ff_vp8_luma_dc_wht_dc_armv6(DCTELEM block[4][4][16], DCTELEM dc[16]); | 26 | void ff_vp8_luma_dc_wht_dc_armv6(int16_t block[4][4][16], int16_t dc[16]); |
| 27 | 27 | ||
| 28 | void ff_vp8_idct_add_armv6(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride); | 28 | void ff_vp8_idct_add_armv6(uint8_t *dst, int16_t block[16], ptrdiff_t stride); |
| 29 | void ff_vp8_idct_dc_add_armv6(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride); | 29 | void ff_vp8_idct_dc_add_armv6(uint8_t *dst, int16_t block[16], ptrdiff_t stride); |
| 30 | void ff_vp8_idct_dc_add4y_armv6(uint8_t *dst, DCTELEM block[4][16], ptrdiff_t stride); | 30 | void ff_vp8_idct_dc_add4y_armv6(uint8_t *dst, int16_t block[4][16], ptrdiff_t stride); |
| 31 | void ff_vp8_idct_dc_add4uv_armv6(uint8_t *dst, DCTELEM block[4][16], ptrdiff_t stride); | 31 | void ff_vp8_idct_dc_add4uv_armv6(uint8_t *dst, int16_t block[4][16], ptrdiff_t stride); |
| 32 | 32 | ||
| 33 | VP8_LF(armv6); | 33 | VP8_LF(armv6); |
| 34 | 34 | ||
| @@ -22,12 +22,12 @@ · 21 unmodified lines | |||
| 22 | #include "libavcodec/vp8dsp.h" | 22 | #include "libavcodec/vp8dsp.h" |
| 23 | #include "vp8dsp.h" | 23 | #include "vp8dsp.h" |
| 24 | 24 | ||
| 25 | void ff_vp8_luma_dc_wht_neon(DCTELEM block[4][4][16], DCTELEM dc[16]); | 25 | void ff_vp8_luma_dc_wht_neon(int16_t block[4][4][16], int16_t dc[16]); |
| 26 | 26 | ||
| 27 | void ff_vp8_idct_add_neon(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride); | 27 | void ff_vp8_idct_add_neon(uint8_t *dst, int16_t block[16], ptrdiff_t stride); |
| 28 | void ff_vp8_idct_dc_add_neon(uint8_t *dst, DCTELEM block[16], ptrdiff_t stride); | 28 | void ff_vp8_idct_dc_add_neon(uint8_t *dst, int16_t block[16], ptrdiff_t stride); |
| 29 | void ff_vp8_idct_dc_add4y_neon(uint8_t *dst, DCTELEM block[4][16], ptrdiff_t stride); | 29 | void ff_vp8_idct_dc_add4y_neon(uint8_t *dst, int16_t block[4][16], ptrdiff_t stride); |
| 30 | void ff_vp8_idct_dc_add4uv_neon(uint8_t *dst, DCTELEM block[4][16], ptrdiff_t stride); | 30 | void ff_vp8_idct_dc_add4uv_neon(uint8_t *dst, int16_t block[4][16], ptrdiff_t stride); |
| 31 | 31 | ||
| 32 | VP8_LF(neon); | 32 | VP8_LF(neon); |
| 33 | 33 | ||