| OLD | NEW |
| 1 /* | 1 /* |
| 2 * ARM optimized DSP utils | 2 * ARM optimized DSP utils |
| 3 * Copyright (c) 2001 Lionel Ulmer | 3 * Copyright (c) 2001 Lionel Ulmer |
| 4 * | 4 * |
| 5 * This file is part of FFmpeg. | 5 * This file is part of FFmpeg. |
| 6 * | 6 * |
| 7 * FFmpeg is free software; you can redistribute it and/or | 7 * FFmpeg is free software; you can redistribute it and/or |
| 8 * modify it under the terms of the GNU Lesser General Public | 8 * modify it under the terms of the GNU Lesser General Public |
| 9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
| 10 * version 2.1 of the License, or (at your option) any later version. | 10 * version 2.1 of the License, or (at your option) any later version. |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 { | 66 { |
| 67 ff_simple_idct_arm (block); | 67 ff_simple_idct_arm (block); |
| 68 ff_put_pixels_clamped(block, dest, line_size); | 68 ff_put_pixels_clamped(block, dest, line_size); |
| 69 } | 69 } |
| 70 static void simple_idct_arm_add(uint8_t *dest, int line_size, DCTELEM *block) | 70 static void simple_idct_arm_add(uint8_t *dest, int line_size, DCTELEM *block) |
| 71 { | 71 { |
| 72 ff_simple_idct_arm (block); | 72 ff_simple_idct_arm (block); |
| 73 ff_add_pixels_clamped(block, dest, line_size); | 73 ff_add_pixels_clamped(block, dest, line_size); |
| 74 } | 74 } |
| 75 | 75 |
| 76 int mm_support(void) | |
| 77 { | |
| 78 return HAVE_IWMMXT * FF_MM_IWMMXT; | |
| 79 } | |
| 80 | |
| 81 void dsputil_init_arm(DSPContext* c, AVCodecContext *avctx) | 76 void dsputil_init_arm(DSPContext* c, AVCodecContext *avctx) |
| 82 { | 77 { |
| 83 ff_put_pixels_clamped = c->put_pixels_clamped; | 78 ff_put_pixels_clamped = c->put_pixels_clamped; |
| 84 ff_add_pixels_clamped = c->add_pixels_clamped; | 79 ff_add_pixels_clamped = c->add_pixels_clamped; |
| 85 | 80 |
| 86 if (!avctx->lowres) { | 81 if (!avctx->lowres) { |
| 87 if(avctx->idct_algo == FF_IDCT_AUTO || | 82 if(avctx->idct_algo == FF_IDCT_AUTO || |
| 88 avctx->idct_algo == FF_IDCT_ARM){ | 83 avctx->idct_algo == FF_IDCT_ARM){ |
| 89 c->idct_put = j_rev_dct_arm_put; | 84 c->idct_put = j_rev_dct_arm_put; |
| 90 c->idct_add = j_rev_dct_arm_add; | 85 c->idct_add = j_rev_dct_arm_add; |
| (...skipping 26 matching lines...) Expand all Loading... |
| 117 c->put_no_rnd_pixels_tab[1][1] = ff_put_no_rnd_pixels8_x2_arm; | 112 c->put_no_rnd_pixels_tab[1][1] = ff_put_no_rnd_pixels8_x2_arm; |
| 118 c->put_no_rnd_pixels_tab[1][2] = ff_put_no_rnd_pixels8_y2_arm; | 113 c->put_no_rnd_pixels_tab[1][2] = ff_put_no_rnd_pixels8_y2_arm; |
| 119 c->put_no_rnd_pixels_tab[1][3] = ff_put_no_rnd_pixels8_xy2_arm; | 114 c->put_no_rnd_pixels_tab[1][3] = ff_put_no_rnd_pixels8_xy2_arm; |
| 120 | 115 |
| 121 if (HAVE_ARMV5TE) ff_dsputil_init_armv5te(c, avctx); | 116 if (HAVE_ARMV5TE) ff_dsputil_init_armv5te(c, avctx); |
| 122 if (HAVE_ARMV6) ff_dsputil_init_armv6(c, avctx); | 117 if (HAVE_ARMV6) ff_dsputil_init_armv6(c, avctx); |
| 123 if (HAVE_IWMMXT) ff_dsputil_init_iwmmxt(c, avctx); | 118 if (HAVE_IWMMXT) ff_dsputil_init_iwmmxt(c, avctx); |
| 124 if (HAVE_ARMVFP) ff_dsputil_init_vfp(c, avctx); | 119 if (HAVE_ARMVFP) ff_dsputil_init_vfp(c, avctx); |
| 125 if (HAVE_NEON) ff_dsputil_init_neon(c, avctx); | 120 if (HAVE_NEON) ff_dsputil_init_neon(c, avctx); |
| 126 } | 121 } |
| OLD | NEW |