comparison src/audio/SDL_mixer_MMX.c @ 1411:efb34e597d21

Fixed assembly alignment error on Intel Macs. Do we really need 16-bit alignment here?
author Sam Lantinga <slouken@libsdl.org>
date Tue, 21 Feb 2006 19:28:45 +0000
parents d910939febfa
children 97d0966f4bf7
comparison
equal deleted inserted replaced
1410:93c48ff6d41f 1411:efb34e597d21
57 " psllq $16,%%mm0\n" 57 " psllq $16,%%mm0\n"
58 " por %%mm1,%%mm0\n" 58 " por %%mm1,%%mm0\n"
59 " psllq $16,%%mm0\n" 59 " psllq $16,%%mm0\n"
60 " por %%mm1,%%mm0\n" // mm0 = vol|vol|vol|vol 60 " por %%mm1,%%mm0\n" // mm0 = vol|vol|vol|vol
61 61
62 ".align 16\n" 62 ".align 8\n"
63 " .mixloopS16:\n" 63 " .mixloopS16:\n"
64 64
65 " movq (%1),%%mm1\n" // mm1 = a|b|c|d 65 " movq (%1),%%mm1\n" // mm1 = a|b|c|d
66 66
67 " movq %%mm1,%%mm2\n" // mm2 = a|b|c|d 67 " movq %%mm1,%%mm2\n" // mm2 = a|b|c|d
157 " shr $3,%%edx\n" // process 8 bytes per iteration = 8 samples 157 " shr $3,%%edx\n" // process 8 bytes per iteration = 8 samples
158 158
159 " cmp $0,%%edx\n" 159 " cmp $0,%%edx\n"
160 " je .endS8\n" 160 " je .endS8\n"
161 161
162 ".align 16\n" 162 ".align 8\n"
163 " .mixloopS8:\n" 163 " .mixloopS8:\n"
164 164
165 " pxor %%mm2,%%mm2\n" // mm2 = 0 165 " pxor %%mm2,%%mm2\n" // mm2 = 0
166 " movq (%1),%%mm1\n" // mm1 = a|b|c|d|e|f|g|h 166 " movq (%1),%%mm1\n" // mm1 = a|b|c|d|e|f|g|h
167 167