Commit 94ad6724 authored by Sebastian Dröge's avatar Sebastian Dröge

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>
parent f83b2d33
......@@ -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
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment