mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 12:11:13 +00:00
goom: Fix MMX assembly compilation with clang
clang does not want or need a clobber list for emms: error: clobbers must be last on the x87 stack Patch taken from the FreeBSD ports, provided by Dan McGregor <dan.mcgregor@usask.ca>
This commit is contained in:
parent
f83b2d3371
commit
94ad6724ba
1 changed files with 12 additions and 0 deletions
|
@ -711,17 +711,29 @@ void zoom_filter_xmmx (int prevX, int prevY, Pixel *expix1, Pixel *expix2,
|
|||
*/
|
||||
#ifdef MMX_TRACE
|
||||
|
||||
#ifdef __clang__
|
||||
#define emms() \
|
||||
{ \
|
||||
printf("emms()\n"); \
|
||||
__asm__ __volatile__ ("emms"); \
|
||||
}
|
||||
#else
|
||||
#define emms() \
|
||||
{ \
|
||||
printf("emms()\n"); \
|
||||
__asm__ __volatile__ ("emms" \
|
||||
"st(1)","st(2)","st(3)","st(4)","st(5)","st(6)","st(7)"); \
|
||||
}
|
||||
#endif
|
||||
|
||||
#else
|
||||
|
||||
#ifdef __clang__
|
||||
#define emms() __asm__ __volatile__ ("emms")
|
||||
#else
|
||||
#define emms() __asm__ __volatile__ ("emms"::: \
|
||||
"st(1)","st(2)","st(3)","st(4)","st(5)","st(6)","st(7)")
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Reference in a new issue