vlc | branch: master | Brad Smith <[email protected]> | Thu Jan 3 00:03:52 2013 -0500| [b7c3e67da9da6c8fdaad5f2263ec222567fa0a33] | committer: Jean-Baptiste Kempf
Fix building with Clang/LLVM The following diff provides some fixes for VLC to allow building with LLVM. Signed-off-by: Jean-Baptiste Kempf <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b7c3e67da9da6c8fdaad5f2263ec222567fa0a33 --- include/vlc_common.h | 4 ++-- include/vlc_cpu.h | 4 ++-- modules/video_filter/deinterlace/yadif.h | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/include/vlc_common.h b/include/vlc_common.h index 1ef288c..b10ae6e 100644 --- a/include/vlc_common.h +++ b/include/vlc_common.h @@ -582,7 +582,7 @@ static inline uint16_t bswap16 (uint16_t x) VLC_USED static inline uint32_t bswap32 (uint32_t x) { -#if VLC_GCC_VERSION(4,3) +#if VLC_GCC_VERSION(4,3) || defined(__clang__) return __builtin_bswap32 (x); #else return ((x & 0x000000FF) << 24) @@ -596,7 +596,7 @@ static inline uint32_t bswap32 (uint32_t x) VLC_USED static inline uint64_t bswap64 (uint64_t x) { -#if VLC_GCC_VERSION(4,3) +#if VLC_GCC_VERSION(4,3) || defined(__clang__) return __builtin_bswap64 (x); #elif !defined (__cplusplus) return ((x & 0x00000000000000FF) << 56) diff --git a/include/vlc_cpu.h b/include/vlc_cpu.h index 0a9d6e8..611121c 100644 --- a/include/vlc_cpu.h +++ b/include/vlc_cpu.h @@ -50,7 +50,7 @@ VLC_API unsigned vlc_CPU(void); # define VLC_MMX # else # define vlc_CPU_MMX() ((vlc_CPU() & VLC_CPU_MMX) != 0) -# if VLC_GCC_VERSION(4, 4) +# if VLC_GCC_VERSION(4, 4) || defined(__clang__) # define VLC_MMX __attribute__ ((__target__ ("mmx"))) # else # define VLC_MMX VLC_MMX_is_not_implemented_on_this_compiler @@ -64,7 +64,7 @@ VLC_API unsigned vlc_CPU(void); # else # define vlc_CPU_MMXEXT() ((vlc_CPU() & VLC_CPU_MMXEXT) != 0) # define vlc_CPU_SSE() ((vlc_CPU() & VLC_CPU_SSE) != 0) -# if VLC_GCC_VERSION(4, 4) +# if VLC_GCC_VERSION(4, 4) || defined(__clang__) # define VLC_SSE __attribute__ ((__target__ ("sse"))) # else # define VLC_SSE VLC_SSE_is_not_implemented_on_this_compiler diff --git a/modules/video_filter/deinterlace/yadif.h b/modules/video_filter/deinterlace/yadif.h index 3c4bbab..219b7a4 100644 --- a/modules/video_filter/deinterlace/yadif.h +++ b/modules/video_filter/deinterlace/yadif.h @@ -39,7 +39,7 @@ DECLARE_ASM_CONST(16, const xmm_reg, pw_1) = {0x0001000100010001ULL, 0x000100010 #ifdef CAN_COMPILE_SSSE3 -#if defined(__SSE__) || VLC_GCC_VERSION(4, 4) +#if defined(__SSE__) || VLC_GCC_VERSION(4, 4) || defined(__clang__) // ================ SSSE3 ================= #define HAVE_YADIF_SSSE3 #define COMPILE_TEMPLATE_SSE 1 @@ -55,7 +55,7 @@ DECLARE_ASM_CONST(16, const xmm_reg, pw_1) = {0x0001000100010001ULL, 0x000100010 #endif #ifdef CAN_COMPILE_SSE2 -#if defined(__SSE__) || VLC_GCC_VERSION(4, 4) +#if defined(__SSE__) || VLC_GCC_VERSION(4, 4) || defined(__clang__) // ================= SSE2 ================= #define HAVE_YADIF_SSE2 #define COMPILE_TEMPLATE_SSE 1 @@ -69,7 +69,7 @@ DECLARE_ASM_CONST(16, const xmm_reg, pw_1) = {0x0001000100010001ULL, 0x000100010 #endif #ifdef CAN_COMPILE_MMX -#if defined(__MMX__) || VLC_GCC_VERSION(4, 4) +#if defined(__MMX__) || VLC_GCC_VERSION(4, 4) || defined(__clang__) // ================ MMX ================= #define HAVE_YADIF_MMX #define VLC_TARGET VLC_MMX _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
