aboutsummaryrefslogtreecommitdiffstats
path: root/android
diff options
context:
space:
mode:
authorDavid 'Digit' Turner <digit@google.com>2011-11-23 12:31:38 +0100
committerDavid 'Digit' Turner <digit@google.com>2011-11-23 12:31:38 +0100
commit4e61742d4f26cefb1baf8d2dc5e7dc8b85a78549 (patch)
tree35863ba454316ea91a3327ee0045463baa49654b /android
parente080a45d3e29e41bce06669b79d5eb04f0fd05ef (diff)
downloadexternal_qemu-4e61742d4f26cefb1baf8d2dc5e7dc8b85a78549.zip
external_qemu-4e61742d4f26cefb1baf8d2dc5e7dc8b85a78549.tar.gz
external_qemu-4e61742d4f26cefb1baf8d2dc5e7dc8b85a78549.tar.bz2
Fix 64-bit build.
This fixes the 64-bit Linux build (i.e. ./android-rebuild.sh --try-64). You can't really call _mm_empty() when your target CPU doesn't support MMX. We should probably try to use XMM registers instead of MMX for this in the future, but this should be good enough for now. Change-Id: If5abf747939022ef47daf7eb4badf1798e22bf95
Diffstat (limited to 'android')
-rw-r--r--android/skin/argb.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/android/skin/argb.h b/android/skin/argb.h
index d71a914..ce0f1f5 100644
--- a/android/skin/argb.h
+++ b/android/skin/argb.h
@@ -118,6 +118,7 @@ mmx_interp255( mmx_t m1, mmx_t m2, mmx_t zero, int alpha )
#define ARGB_MULSHIFT(x1,x2,v,s) \
x1 = mmx_mulshift(x2, v, s, _zero)
+#define ARGB_BEGIN _mm_empty()
#define ARGB_DONE _mm_empty()
#define ARGB_RESCALE_SHIFT 10
@@ -200,6 +201,7 @@ typedef uint32_t argb_t;
x1##_rb = (x2##_rb >> _s) & 0xff00ff; \
})
+#define ARGB_BEGIN ((void)0)
#define ARGB_DONE ((void)0)
#define ARGB_RESCALE_SHIFT 8
@@ -231,7 +233,7 @@ ARGB_SCALE_GENERIC( ScaleOp* op )
int ix = op->ix;
int iy = op->iy;
- _mm_empty();
+ ARGB_BEGIN;
src_line += (sx >> 16)*4 + (sy >> 16)*src_pitch;
sx &= 0xffff;
@@ -327,7 +329,7 @@ scale_05_to_10( ScaleOp* op )
int ix = op->ix;
int iy = op->iy;
- _mm_empty();
+ ARGB_BEGIN;
src_line += (sx >> 16)*4 + (sy >> 16)*src_pitch;
sx &= 0xffff;
@@ -466,7 +468,7 @@ scale_up_bilinear( ScaleOp* op )
int xlimit, ylimit;
int h, sx0;
- _mm_empty();
+ ARGB_BEGIN;
/* the center pixel is at (sx+ix/2, sy+iy/2), we then want to get */
/* the four nearest source pixels, which are at (0.5,0.5) offsets */
@@ -553,7 +555,7 @@ ARGB_SCALE_UP_QUICK_4x4( ScaleOp* op )
int xlimit, ylimit;
int h, sx0;
- _mm_empty();
+ ARGB_BEGIN;
/* the center pixel is at (sx+ix/2, sy+iy/2), we then want to get */
/* the four nearest source pixels, which are at (0.5,0.5) offsets */
@@ -807,7 +809,7 @@ ARGB_SCALE_NEAREST( ScaleOp* op )
int xlimit, ylimit;
int h, sx0;
- _mm_empty();
+ ARGB_BEGIN;
/* the center pixel is at (sx+ix/2, sy+iy/2), we then want to get */
/* the four nearest source pixels, which are at (0.5,0.5) offsets */