diff options
author | 2016-07-12 15:50:24 +1000 | |
---|---|---|
committer | 2016-07-12 15:50:24 +1000 | |
commit | f45998872cb23c9a5143bbf108989c66db69bd99 (patch) | |
tree | f749423f284f3c652e346b49b1758dc3012eba10 /src/emu/video | |
parent | 91973008fafb20283a8660b333880570e2c99cff (diff) |
rgbvmx: fix the last little endian issue
Diffstat (limited to 'src/emu/video')
-rw-r--r-- | src/emu/video/rgbvmx.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/emu/video/rgbvmx.h b/src/emu/video/rgbvmx.h index e54aafe6727..e034261461e 100644 --- a/src/emu/video/rgbvmx.h +++ b/src/emu/video/rgbvmx.h @@ -421,8 +421,13 @@ public: const VECU32 zero = { 0, 0, 0, 0 }; m_value = VECS32(vec_packs(m_value, m_value)); m_value = VECS32(vec_packsu(VECS16(m_value), VECS16(m_value))); +#ifdef __LITTLE_ENDIAN__ + m_value = VECS32(vec_mergeh(VECU8(m_value), VECU8(zero))); + m_value = VECS32(vec_mergeh(VECS16(m_value), VECS16(zero))); +#else m_value = VECS32(vec_mergeh(VECU8(zero), VECU8(m_value))); m_value = VECS32(vec_mergeh(VECS16(zero), VECS16(m_value))); +#endif } inline void sign_extend(const UINT32 compare, const UINT32 sign) |