diff options
Diffstat (limited to 'libavcodec/ppc/fft_altivec.S')
-rw-r--r-- | libavcodec/ppc/fft_altivec.S | 32 |
1 files changed, 18 insertions, 14 deletions
diff --git a/libavcodec/ppc/fft_altivec.S b/libavcodec/ppc/fft_altivec.S index cb7c871..8cd68d6 100644 --- a/libavcodec/ppc/fft_altivec.S +++ b/libavcodec/ppc/fft_altivec.S @@ -5,20 +5,20 @@ * This algorithm (though not any of the implementation details) is * based on libdjbfft by D. J. Bernstein. * - * This file is part of Libav. + * This file is part of FFmpeg. * - * Libav is free software; you can redistribute it and/or + * FFmpeg is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * - * Libav is distributed in the hope that it will be useful, + * FFmpeg is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public - * License along with Libav; if not, write to the Free Software + * License along with FFmpeg; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ @@ -354,14 +354,18 @@ fft_data: .macro fft_calc interleave extfunc ff_fft_calc\interleave\()_altivec mflr r0 - stp r0, 2*PS(r1) - stpu r1, -(160+16*PS)(r1) + stp r0, 2*PS(R(1)) + stpu r1, -(160+16*PS)(R(1)) get_got r11 addi r6, r1, 16*PS stvm r6, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29 mfvrsave r0 - stw r0, 15*PS(r1) + stw r0, 15*PS(R(1)) +#if __APPLE__ li r6, 0xfffffffc +#else + li r6, -4 +#endif mtvrsave r6 movrel r6, fft_data, r11 @@ -372,7 +376,7 @@ extfunc ff_fft_calc\interleave\()_altivec movrel r12, X(ff_cos_tabs), r11 movrel r6, fft_dispatch_tab\interleave\()_altivec, r11 - lwz r3, 0(r3) + lwz r3, 0(R(3)) subi r3, r3, 2 slwi r3, r3, 2+ARCH_PPC64 lpx r3, r3, r6 @@ -382,10 +386,10 @@ extfunc ff_fft_calc\interleave\()_altivec addi r6, r1, 16*PS lvm r6, v20, v21, v22, v23, v24, v25, v26, v27, v28, v29 - lwz r6, 15*PS(r1) + lwz r6, 15*PS(R(1)) mtvrsave r6 - lp r1, 0(r1) - lp r0, 2*PS(r1) + lp r1, 0(R(1)) + lp r0, 2*PS(R(1)) mtlr r0 blr .endm @@ -393,15 +397,15 @@ extfunc ff_fft_calc\interleave\()_altivec .macro DECL_FFT suffix, bits, n, n2, n4 fft\n\suffix\()_altivec: mflr r0 - stp r0,PS*(\bits-3)(r1) + stp r0,PS*(\bits-3)(R(1)) bl fft\n2\()_altivec addi2 r3,\n*4 bl fft\n4\()_altivec addi2 r3,\n*2 bl fft\n4\()_altivec addi2 r3,\n*-6 - lp r0,PS*(\bits-3)(r1) - lp r4,\bits*PS(r12) + lp r0,PS*(\bits-3)(R(1)) + lp r4,\bits*PS(R(12)) mtlr r0 li r5,\n/16 b fft_pass\suffix\()_altivec |