Reorganize vector constants to work around gcc 4.1 bug:

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27006

This bug caused certain movies (444P or RGB/BGR-based) to become brighter
and more purple when played on a YV12 vo.


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18047 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
pacman
2006-04-06 10:08:54 +00:00
parent 7882100299
commit b2e9d4082d
+3 -4
View File
@@ -26,14 +26,13 @@
#define AVV(x...) {x}
#endif
static const vector signed int vzero =
(const vector signed int)AVV(0, 0, 0, 0);
static const vector unsigned int altivec_vectorShiftInt19 =
(const vector unsigned int)AVV(19, 19, 19, 19);
#define vzero vec_splat_s32(0)
static inline void
altivec_packIntArrayToCharArray(int *val, uint8_t* dest, int dstW) {
register int i;
vector unsigned int altivec_vectorShiftInt19 =
vec_add(vec_splat_u32(10),vec_splat_u32(9));
if ((unsigned long)dest % 16) {
/* badly aligned store, we force store alignement */
/* and will handle load misalignement on val w/ vec_perm */