diff options
author | nplourde <nplourde@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-04-15 20:46:54 +0000 |
---|---|---|
committer | nplourde <nplourde@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-04-15 20:46:54 +0000 |
commit | a3713ceb29828cce576fa3ea6f936f3ab1d61a38 (patch) | |
tree | 7c3284eed13ac128e3b5a9a56874f269d437fc1a /liba52 | |
parent | 563dca1090f8cf7f2d683277a197ff3b6a2c3aaf (diff) |
add support for intel mac. mp3lib is not fixed yet.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18105 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'liba52')
-rw-r--r-- | liba52/downmix.c | 55 | ||||
-rw-r--r-- | liba52/imdct.c | 21 |
2 files changed, 39 insertions, 37 deletions
diff --git a/liba52/downmix.c b/liba52/downmix.c index 52955c6335..67eee7a89e 100644 --- a/liba52/downmix.c +++ b/liba52/downmix.c @@ -28,6 +28,7 @@ */ #include "config.h" +#include "asmalign.h" #include <string.h> #include <inttypes.h> @@ -691,7 +692,7 @@ static void mix2to1_SSE (sample_t * dest, sample_t * src, sample_t bias) "movlps %2, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps (%0, %%"REG_S"), %%xmm0 \n\t" "movaps 16(%0, %%"REG_S"), %%xmm1\n\t" @@ -714,7 +715,7 @@ static void mix3to1_SSE (sample_t * samples, sample_t bias) "movlps %1, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps (%0, %%"REG_S"), %%xmm0 \n\t" "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t" @@ -735,7 +736,7 @@ static void mix4to1_SSE (sample_t * samples, sample_t bias) "movlps %1, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps (%0, %%"REG_S"), %%xmm0 \n\t" "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t" @@ -757,7 +758,7 @@ static void mix5to1_SSE (sample_t * samples, sample_t bias) "movlps %1, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps (%0, %%"REG_S"), %%xmm0 \n\t" "movaps 1024(%0, %%"REG_S"), %%xmm1\n\t" @@ -780,7 +781,7 @@ static void mix3to2_SSE (sample_t * samples, sample_t bias) "movlps %1, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t" "addps %%xmm7, %%xmm0 \n\t" //common @@ -803,7 +804,7 @@ static void mix21to2_SSE (sample_t * left, sample_t * right, sample_t bias) "movlps %2, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps 1024(%1, %%"REG_S"), %%xmm0\n\t" "addps %%xmm7, %%xmm0 \n\t" //common @@ -826,7 +827,7 @@ static void mix21toS_SSE (sample_t * samples, sample_t bias) "movlps %1, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps 2048(%0, %%"REG_S"), %%xmm0\n\t" // surround "movaps (%0, %%"REG_S"), %%xmm1 \n\t" @@ -850,7 +851,7 @@ static void mix31to2_SSE (sample_t * samples, sample_t bias) "movlps %1, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t" "addps 3072(%0, %%"REG_S"), %%xmm0\n\t" @@ -874,7 +875,7 @@ static void mix31toS_SSE (sample_t * samples, sample_t bias) "movlps %1, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t" "movaps 3072(%0, %%"REG_S"), %%xmm3\n\t" // surround @@ -900,7 +901,7 @@ static void mix22toS_SSE (sample_t * samples, sample_t bias) "movlps %1, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps 2048(%0, %%"REG_S"), %%xmm0\n\t" "addps 3072(%0, %%"REG_S"), %%xmm0\n\t" // surround @@ -925,7 +926,7 @@ static void mix32to2_SSE (sample_t * samples, sample_t bias) "movlps %1, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t" "addps %%xmm7, %%xmm0 \n\t" // common @@ -949,7 +950,7 @@ static void mix32toS_SSE (sample_t * samples, sample_t bias) "movlps %1, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps 1024(%0, %%"REG_S"), %%xmm0\n\t" "movaps 3072(%0, %%"REG_S"), %%xmm2\n\t" @@ -976,7 +977,7 @@ static void move2to1_SSE (sample_t * src, sample_t * dest, sample_t bias) "movlps %2, %%xmm7 \n\t" "shufps $0x00, %%xmm7, %%xmm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movaps (%0, %%"REG_S"), %%xmm0 \n\t" "movaps 16(%0, %%"REG_S"), %%xmm1\n\t" @@ -998,7 +999,7 @@ static void zero_MMX(sample_t * samples) asm volatile( "mov $-1024, %%"REG_S" \n\t" "pxor %%mm0, %%mm0 \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq %%mm0, (%0, %%"REG_S") \n\t" "movq %%mm0, 8(%0, %%"REG_S") \n\t" @@ -1258,7 +1259,7 @@ static void mix2to1_3dnow (sample_t * dest, sample_t * src, sample_t bias) "movd %2, %%mm7 \n\t" "punpckldq %2, %%mm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq (%0, %%"REG_S"), %%mm0 \n\t" "movq 8(%0, %%"REG_S"), %%mm1 \n\t" @@ -1289,7 +1290,7 @@ static void mix3to1_3dnow (sample_t * samples, sample_t bias) "movd %1, %%mm7 \n\t" "punpckldq %1, %%mm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq (%0, %%"REG_S"), %%mm0 \n\t" "movq 8(%0, %%"REG_S"), %%mm1 \n\t" @@ -1316,7 +1317,7 @@ static void mix4to1_3dnow (sample_t * samples, sample_t bias) "movd %1, %%mm7 \n\t" "punpckldq %1, %%mm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq (%0, %%"REG_S"), %%mm0 \n\t" "movq 8(%0, %%"REG_S"), %%mm1 \n\t" @@ -1345,7 +1346,7 @@ static void mix5to1_3dnow (sample_t * samples, sample_t bias) "movd %1, %%mm7 \n\t" "punpckldq %1, %%mm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq (%0, %%"REG_S"), %%mm0 \n\t" "movq 8(%0, %%"REG_S"), %%mm1 \n\t" @@ -1376,7 +1377,7 @@ static void mix3to2_3dnow (sample_t * samples, sample_t bias) "movd %1, %%mm7 \n\t" "punpckldq %1, %%mm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq 1024(%0, %%"REG_S"), %%mm0\n\t" "movq 1032(%0, %%"REG_S"), %%mm1\n\t" @@ -1407,7 +1408,7 @@ static void mix21to2_3dnow (sample_t * left, sample_t * right, sample_t bias) "movd %2, %%mm7 \n\t" "punpckldq %2, %%mm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq 1024(%1, %%"REG_S"), %%mm0\n\t" "movq 1032(%1, %%"REG_S"), %%mm1\n\t" @@ -1438,7 +1439,7 @@ static void mix21toS_3dnow (sample_t * samples, sample_t bias) "movd %1, %%mm7 \n\t" "punpckldq %1, %%mm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq 2048(%0, %%"REG_S"), %%mm0\n\t" // surround "movq 2056(%0, %%"REG_S"), %%mm1\n\t" // surround @@ -1471,7 +1472,7 @@ static void mix31to2_3dnow (sample_t * samples, sample_t bias) "movd %1, %%mm7 \n\t" "punpckldq %1, %%mm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq 1024(%0, %%"REG_S"), %%mm0\n\t" "movq 1032(%0, %%"REG_S"), %%mm1\n\t" @@ -1504,7 +1505,7 @@ static void mix31toS_3dnow (sample_t * samples, sample_t bias) "movd %1, %%mm7 \n\t" "punpckldq %1, %%mm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq 1024(%0, %%"REG_S"), %%mm0\n\t" "movq 1032(%0, %%"REG_S"), %%mm1\n\t" @@ -1541,7 +1542,7 @@ static void mix22toS_3dnow (sample_t * samples, sample_t bias) "movd %1, %%mm7 \n\t" "punpckldq %1, %%mm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq 2048(%0, %%"REG_S"), %%mm0\n\t" "movq 2056(%0, %%"REG_S"), %%mm1\n\t" @@ -1576,7 +1577,7 @@ static void mix32to2_3dnow (sample_t * samples, sample_t bias) "movd %1, %%mm7 \n\t" "punpckldq %1, %%mm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq 1024(%0, %%"REG_S"), %%mm0\n\t" "movq 1032(%0, %%"REG_S"), %%mm1\n\t" @@ -1608,7 +1609,7 @@ static void mix32toS_3dnow (sample_t * samples, sample_t bias) { asm volatile( "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movd %1, %%mm7 \n\t" "punpckldq %1, %%mm7 \n\t" @@ -1649,7 +1650,7 @@ static void move2to1_3dnow (sample_t * src, sample_t * dest, sample_t bias) "movd %2, %%mm7 \n\t" "punpckldq %2, %%mm7 \n\t" "mov $-1024, %%"REG_S" \n\t" - ".balign 16\n\t" + ASMALIGN16 "1: \n\t" "movq (%0, %%"REG_S"), %%mm0 \n\t" "movq 8(%0, %%"REG_S"), %%mm1 \n\t" diff --git a/liba52/imdct.c b/liba52/imdct.c index 24505e17ab..a535823584 100644 --- a/liba52/imdct.c +++ b/liba52/imdct.c @@ -31,6 +31,7 @@ */ #include "config.h" +#include "asmalign.h" #include <math.h> #include <stdio.h> @@ -792,7 +793,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) "lea "MANGLE(bit_reverse_512)", %%"REG_a"\n\t" "mov $1008, %%"REG_D" \n\t" "push %%"REG_BP" \n\t" //use ebp without telling gcc - ".balign 16 \n\t" + ASMALIGN16 "1: \n\t" "movlps (%0, %%"REG_S"), %%xmm0 \n\t" // XXXI "movhps 8(%0, %%"REG_D"), %%xmm0 \n\t" // RXXI @@ -851,7 +852,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) "xorps %%xmm1, %%xmm1 \n\t" "xorps %%xmm2, %%xmm2 \n\t" "mov %0, %%"REG_S" \n\t" - ".balign 16 \n\t" + ASMALIGN16 "1: \n\t" "movlps (%%"REG_S"), %%xmm0\n\t" //buf[p] "movlps 8(%%"REG_S"), %%xmm1\n\t" //buf[q] @@ -872,7 +873,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) asm volatile( "movaps "MANGLE(ps111_1)", %%xmm7\n\t" // 1,1,1,-1 "mov %0, %%"REG_S" \n\t" - ".balign 16 \n\t" + ASMALIGN16 "1: \n\t" "movaps 16(%%"REG_S"), %%xmm2 \n\t" //r2,i2,r3,i3 "shufps $0xB4, %%xmm2, %%xmm2 \n\t" //r2,i2,i3,r3 @@ -903,7 +904,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) "xorps %%xmm5, %%xmm5 \n\t" "xorps %%xmm2, %%xmm2 \n\t" "mov %0, %%"REG_S" \n\t" - ".balign 16 \n\t" + ASMALIGN16 "1: \n\t" "movaps 32(%%"REG_S"), %%xmm2 \n\t" //r4,i4,r5,i5 "movaps 48(%%"REG_S"), %%xmm3 \n\t" //r6,i6,r7,i7 @@ -944,7 +945,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) buf_offset = buf+128; asm volatile( "mov %0, %%"REG_S" \n\t" - ".balign 16 \n\t" + ASMALIGN16 "1: \n\t" "xor %%"REG_D", %%"REG_D" \n\t" // k "lea (%%"REG_S", %3), %%"REG_d" \n\t" @@ -976,7 +977,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) /* Post IFFT complex multiply plus IFFT complex conjugate*/ asm volatile( "mov $-1024, %%"REG_S" \n\t" - ".balign 16 \n\t" + ASMALIGN16 "1: \n\t" "movaps (%0, %%"REG_S"), %%xmm0 \n\t" "movaps (%0, %%"REG_S"), %%xmm1 \n\t" @@ -1002,7 +1003,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) "xor %%"REG_S", %%"REG_S" \n\t" // 0 "movss %3, %%xmm2 \n\t" // bias "shufps $0x00, %%xmm2, %%xmm2 \n\t" // bias, bias, ... - ".balign 16 \n\t" + ASMALIGN16 "1: \n\t" "movlps (%0, %%"REG_S"), %%xmm0 \n\t" // ? ? A ? "movlps 8(%0, %%"REG_S"), %%xmm1 \n\t" // ? ? C ? @@ -1029,7 +1030,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) "xor %%"REG_S", %%"REG_S" \n\t" // 0 "movss %3, %%xmm2 \n\t" // bias "shufps $0x00, %%xmm2, %%xmm2 \n\t" // bias, bias, ... - ".balign 16 \n\t" + ASMALIGN16 "1: \n\t" "movlps (%0, %%"REG_S"), %%xmm0 \n\t" // ? ? ? A "movlps 8(%0, %%"REG_S"), %%xmm1 \n\t" // ? ? ? C @@ -1056,7 +1057,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) asm volatile( "xor %%"REG_D", %%"REG_D" \n\t" // 0 "xor %%"REG_S", %%"REG_S" \n\t" // 0 - ".balign 16 \n\t" + ASMALIGN16 "1: \n\t" "movlps (%0, %%"REG_S"), %%xmm0 \n\t" // ? ? ? A "movlps 8(%0, %%"REG_S"), %%xmm1 \n\t" // ? ? ? C @@ -1078,7 +1079,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) asm volatile( "mov $1024, %%"REG_D" \n\t" // 1024 "xor %%"REG_S", %%"REG_S" \n\t" // 0 - ".balign 16 \n\t" + ASMALIGN16 "1: \n\t" "movlps (%0, %%"REG_S"), %%xmm0 \n\t" // ? ? A ? "movlps 8(%0, %%"REG_S"), %%xmm1 \n\t" // ? ? C ? |