summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/video/rgbutil.h
blob: acf7abb8f82c39fb91163d557e38b842fbc5a113 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
// license:BSD-3-Clause
// copyright-holders:Aaron Giles
/***************************************************************************

    rgbutil.h

    Utility definitions for RGB manipulation. Allows RGB handling to be
    performed in an abstracted fashion and optimized with SIMD.

***************************************************************************/

#ifndef MAME_EMU_VIDEO_RGBUTIL_H
#define MAME_EMU_VIDEO_RGBUTIL_H

// use SSE on 64-bit implementations, where it can be assumed
#if (!defined(MAME_DEBUG) || defined(__OPTIMIZE__)) && (defined(__SSE2__) || (defined(_M_IX86_FP) && (_M_IX86_FP >= 2)))

#define MAME_RGB_HIGH_PRECISION
#include "rgbsse.h"

#elif defined(__ALTIVEC__)

#define MAME_RGB_HIGH_PRECISION
#include "rgbvmx.h"

#else

#include "rgbgen.h"

#endif

#endif // MAME_EMU_VIDEO_RGBUTIL_H