b=383960, moz cairo: MSVC compilation fixes
git-svn-id: svn://10.0.0.236/trunk@230771 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
742a27b5dd
commit
a04410e618
@ -1431,10 +1431,10 @@ _cairo_win32_surface_set_clip_region (void *abstract_surface,
|
||||
data->rdh.iType = RDH_RECTANGLES;
|
||||
data->rdh.nCount = num_boxes;
|
||||
data->rdh.nRgnSize = num_boxes * sizeof (RECT);
|
||||
data->rdh.rcBound.left = extents->x1;
|
||||
data->rdh.rcBound.top = extents->y1;
|
||||
data->rdh.rcBound.right = extents->x2;
|
||||
data->rdh.rcBound.bottom = extents->y2;
|
||||
data->rdh.rcBound.left = extents.x;
|
||||
data->rdh.rcBound.top = extents.y;
|
||||
data->rdh.rcBound.right = extents.x + extents.width;
|
||||
data->rdh.rcBound.bottom = extents.y + extents.height;
|
||||
|
||||
for (i = 0; i < num_boxes; i++) {
|
||||
rects[i].left = boxes[i].p1.x;
|
||||
@ -1443,7 +1443,7 @@ _cairo_win32_surface_set_clip_region (void *abstract_surface,
|
||||
rects[i].bottom = boxes[i].p2.y;
|
||||
}
|
||||
|
||||
_cairo_region_boxes_fini (region, &boxes);
|
||||
_cairo_region_boxes_fini (region, boxes);
|
||||
|
||||
gdi_region = ExtCreateRegion (NULL, data_size, data);
|
||||
free (data);
|
||||
|
||||
@ -96,7 +96,7 @@ FORCE_USE_PIC = 1
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
||||
CFLAGS += -DPACKAGE="mozpixman"
|
||||
CFLAGS += -DPACKAGE="mozpixman" -D_USE_MATH_DEFINES
|
||||
|
||||
ifdef MOZ_X11
|
||||
#CFLAGS += -mmmx -msse -Winline --param inline-unit-growth=10000 --param large-function-growth=10000
|
||||
|
||||
@ -1044,9 +1044,9 @@ fbCompositeSolid_nx0565mmx (pixman_op_t op,
|
||||
while (w && (unsigned long)dst & 7)
|
||||
{
|
||||
ullong d = *dst;
|
||||
__m64 vdest = expand565 ((__m64)d, 0);
|
||||
__m64 vdest = expand565 (_mm_cvtsi32_si64(d), 0);
|
||||
vdest = pack565(over(vsrc, vsrca, vdest), vdest, 0);
|
||||
*dst = (ullong)vdest;
|
||||
*dst = _mm_cvtsi64_si32(vdest);
|
||||
|
||||
w--;
|
||||
dst++;
|
||||
@ -1074,9 +1074,9 @@ fbCompositeSolid_nx0565mmx (pixman_op_t op,
|
||||
while (w)
|
||||
{
|
||||
ullong d = *dst;
|
||||
__m64 vdest = expand565 ((__m64)d, 0);
|
||||
__m64 vdest = expand565 (_mm_cvtsi32_si64(d), 0);
|
||||
vdest = pack565(over(vsrc, vsrca, vdest), vdest, 0);
|
||||
*dst = (ullong)vdest;
|
||||
*dst = _mm_cvtsi64_si32(vdest);
|
||||
|
||||
w--;
|
||||
dst++;
|
||||
@ -1502,11 +1502,11 @@ fbCompositeSrc_8888x0565mmx (pixman_op_t op,
|
||||
{
|
||||
__m64 vsrc = load8888 (*src);
|
||||
ullong d = *dst;
|
||||
__m64 vdest = expand565 ((__m64)d, 0);
|
||||
__m64 vdest = expand565 (_mm_cvtsi32_si64(d), 0);
|
||||
|
||||
vdest = pack565(over(vsrc, expand_alpha(vsrc), vdest), vdest, 0);
|
||||
|
||||
*dst = (ullong)vdest;
|
||||
*dst = _mm_cvtsi64_si32(vdest);
|
||||
|
||||
w--;
|
||||
dst++;
|
||||
@ -1545,11 +1545,11 @@ fbCompositeSrc_8888x0565mmx (pixman_op_t op,
|
||||
{
|
||||
__m64 vsrc = load8888 (*src);
|
||||
ullong d = *dst;
|
||||
__m64 vdest = expand565 ((__m64)d, 0);
|
||||
__m64 vdest = expand565 (_mm_cvtsi32_si64(d), 0);
|
||||
|
||||
vdest = pack565(over(vsrc, expand_alpha(vsrc), vdest), vdest, 0);
|
||||
|
||||
*dst = (ullong)vdest;
|
||||
*dst = _mm_cvtsi64_si32(vdest);
|
||||
|
||||
w--;
|
||||
dst++;
|
||||
@ -1614,7 +1614,7 @@ fbCompositeSolidMask_nx8x8888mmx (pixman_op_t op,
|
||||
|
||||
if (m)
|
||||
{
|
||||
__m64 vdest = in_over(vsrc, vsrca, expand_alpha_rev ((__m64)m), load8888(*dst));
|
||||
__m64 vdest = in_over(vsrc, vsrca, expand_alpha_rev (_mm_cvtsi32_si64(m)), load8888(*dst));
|
||||
*dst = store8888(vdest);
|
||||
}
|
||||
|
||||
@ -1642,8 +1642,8 @@ fbCompositeSolidMask_nx8x8888mmx (pixman_op_t op,
|
||||
|
||||
vdest = *(__m64 *)dst;
|
||||
|
||||
dest0 = in_over(vsrc, vsrca, expand_alpha_rev ((__m64)m0), expand8888(vdest, 0));
|
||||
dest1 = in_over(vsrc, vsrca, expand_alpha_rev ((__m64)m1), expand8888(vdest, 1));
|
||||
dest0 = in_over(vsrc, vsrca, expand_alpha_rev (_mm_cvtsi32_si64(m0)), expand8888(vdest, 0));
|
||||
dest1 = in_over(vsrc, vsrca, expand_alpha_rev (_mm_cvtsi32_si64(m1)), expand8888(vdest, 1));
|
||||
|
||||
*(__m64 *)dst = pack8888(dest0, dest1);
|
||||
}
|
||||
@ -1662,7 +1662,7 @@ fbCompositeSolidMask_nx8x8888mmx (pixman_op_t op,
|
||||
if (m)
|
||||
{
|
||||
__m64 vdest = load8888(*dst);
|
||||
vdest = in_over(vsrc, vsrca, expand_alpha_rev ((__m64)m), vdest);
|
||||
vdest = in_over(vsrc, vsrca, expand_alpha_rev (_mm_cvtsi32_si64(m)), vdest);
|
||||
*dst = store8888(vdest);
|
||||
}
|
||||
|
||||
@ -1715,7 +1715,7 @@ pixman_fill_mmx (uint32_t *bits,
|
||||
}
|
||||
|
||||
fill = ((ullong)xor << 32) | xor;
|
||||
vfill = (__m64)fill;
|
||||
vfill = _mm_cvtsi32_si64(fill);
|
||||
|
||||
#ifdef __GNUC__
|
||||
__asm__ (
|
||||
@ -1861,7 +1861,7 @@ fbCompositeSolidMaskSrc_nx8x8888mmx (pixman_op_t op,
|
||||
|
||||
if (m)
|
||||
{
|
||||
__m64 vdest = in(vsrc, expand_alpha_rev ((__m64)m));
|
||||
__m64 vdest = in(vsrc, expand_alpha_rev (_mm_cvtsi32_si64(m)));
|
||||
*dst = store8888(vdest);
|
||||
}
|
||||
else
|
||||
@ -1893,8 +1893,8 @@ fbCompositeSolidMaskSrc_nx8x8888mmx (pixman_op_t op,
|
||||
|
||||
vdest = *(__m64 *)dst;
|
||||
|
||||
dest0 = in(vsrc, expand_alpha_rev ((__m64)m0));
|
||||
dest1 = in(vsrc, expand_alpha_rev ((__m64)m1));
|
||||
dest0 = in(vsrc, expand_alpha_rev (_mm_cvtsi32_si64(m0)));
|
||||
dest1 = in(vsrc, expand_alpha_rev (_mm_cvtsi32_si64(m1)));
|
||||
|
||||
*(__m64 *)dst = pack8888(dest0, dest1);
|
||||
}
|
||||
@ -1917,7 +1917,7 @@ fbCompositeSolidMaskSrc_nx8x8888mmx (pixman_op_t op,
|
||||
if (m)
|
||||
{
|
||||
__m64 vdest = load8888(*dst);
|
||||
vdest = in(vsrc, expand_alpha_rev ((__m64)m));
|
||||
vdest = in(vsrc, expand_alpha_rev (_mm_cvtsi32_si64(m)));
|
||||
*dst = store8888(vdest);
|
||||
}
|
||||
else
|
||||
@ -1970,7 +1970,7 @@ fbCompositeSolidMask_nx8x0565mmx (pixman_op_t op,
|
||||
vsrc = load8888 (src);
|
||||
vsrca = expand_alpha (vsrc);
|
||||
|
||||
src16 = (ullong)pack565(vsrc, _mm_setzero_si64(), 0);
|
||||
src16 = _mm_cvtsi64_si32(pack565(vsrc, _mm_setzero_si64(), 0));
|
||||
|
||||
srcsrcsrcsrc = (ullong)src16 << 48 | (ullong)src16 << 32 |
|
||||
(ullong)src16 << 16 | (ullong)src16;
|
||||
@ -1992,9 +1992,9 @@ fbCompositeSolidMask_nx8x0565mmx (pixman_op_t op,
|
||||
if (m)
|
||||
{
|
||||
ullong d = *dst;
|
||||
__m64 vd = (__m64)d;
|
||||
__m64 vdest = in_over(vsrc, vsrca, expand_alpha_rev ((__m64)m), expand565(vd, 0));
|
||||
*dst = (ullong)pack565(vdest, _mm_setzero_si64(), 0);
|
||||
__m64 vd = _mm_cvtsi32_si64(d);
|
||||
__m64 vdest = in_over(vsrc, vsrca, expand_alpha_rev (_mm_cvtsi32_si64(m)), expand565(vd, 0));
|
||||
*dst = _mm_cvtsi64_si32(pack565(vdest, _mm_setzero_si64(), 0));
|
||||
}
|
||||
|
||||
w--;
|
||||
@ -2023,13 +2023,13 @@ fbCompositeSolidMask_nx8x0565mmx (pixman_op_t op,
|
||||
|
||||
vdest = *(__m64 *)dst;
|
||||
|
||||
vm0 = (__m64)m0;
|
||||
vm0 = _mm_cvtsi32_si64(m0);
|
||||
vdest = pack565(in_over(vsrc, vsrca, expand_alpha_rev(vm0), expand565(vdest, 0)), vdest, 0);
|
||||
vm1 = (__m64)m1;
|
||||
vm1 = _mm_cvtsi32_si64(m1);
|
||||
vdest = pack565(in_over(vsrc, vsrca, expand_alpha_rev(vm1), expand565(vdest, 1)), vdest, 1);
|
||||
vm2 = (__m64)m2;
|
||||
vm2 = _mm_cvtsi32_si64(m2);
|
||||
vdest = pack565(in_over(vsrc, vsrca, expand_alpha_rev(vm2), expand565(vdest, 2)), vdest, 2);
|
||||
vm3 = (__m64)m3;
|
||||
vm3 = _mm_cvtsi32_si64(m3);
|
||||
vdest = pack565(in_over(vsrc, vsrca, expand_alpha_rev(vm3), expand565(vdest, 3)), vdest, 3);
|
||||
|
||||
*(__m64 *)dst = vdest;
|
||||
@ -2049,9 +2049,9 @@ fbCompositeSolidMask_nx8x0565mmx (pixman_op_t op,
|
||||
if (m)
|
||||
{
|
||||
ullong d = *dst;
|
||||
__m64 vd = (__m64)d;
|
||||
__m64 vdest = in_over(vsrc, vsrca, expand_alpha_rev ((__m64)m), expand565(vd, 0));
|
||||
*dst = (ullong)pack565(vdest, _mm_setzero_si64(), 0);
|
||||
__m64 vd = _mm_cvtsi32_si64(d);
|
||||
__m64 vdest = in_over(vsrc, vsrca, expand_alpha_rev (_mm_cvtsi32_si64(m)), expand565(vd, 0));
|
||||
*dst = _mm_cvtsi64_si32(pack565(vdest, _mm_setzero_si64(), 0));
|
||||
}
|
||||
|
||||
w--;
|
||||
@ -2106,11 +2106,11 @@ fbCompositeSrc_8888RevNPx0565mmx (pixman_op_t op,
|
||||
{
|
||||
__m64 vsrc = load8888 (*src);
|
||||
ullong d = *dst;
|
||||
__m64 vdest = expand565 ((__m64)d, 0);
|
||||
__m64 vdest = expand565 (_mm_cvtsi32_si64(d), 0);
|
||||
|
||||
vdest = pack565(over_rev_non_pre(vsrc, vdest), vdest, 0);
|
||||
|
||||
*dst = (ullong)vdest;
|
||||
*dst = _mm_cvtsi64_si32(vdest);
|
||||
|
||||
w--;
|
||||
dst++;
|
||||
@ -2167,11 +2167,11 @@ fbCompositeSrc_8888RevNPx0565mmx (pixman_op_t op,
|
||||
{
|
||||
__m64 vsrc = load8888 (*src);
|
||||
ullong d = *dst;
|
||||
__m64 vdest = expand565 ((__m64)d, 0);
|
||||
__m64 vdest = expand565 (_mm_cvtsi32_si64(d), 0);
|
||||
|
||||
vdest = pack565(over_rev_non_pre(vsrc, vdest), vdest, 0);
|
||||
|
||||
*dst = (ullong)vdest;
|
||||
*dst = _mm_cvtsi64_si32(vdest);
|
||||
|
||||
w--;
|
||||
dst++;
|
||||
@ -2330,9 +2330,9 @@ fbCompositeSolidMask_nx8888x0565Cmmx (pixman_op_t op,
|
||||
if (m)
|
||||
{
|
||||
ullong d = *q;
|
||||
__m64 vdest = expand565 ((__m64)d, 0);
|
||||
__m64 vdest = expand565 (_mm_cvtsi32_si64(d), 0);
|
||||
vdest = pack565 (in_over (vsrc, vsrca, load8888 (m), vdest), vdest, 0);
|
||||
*q = (ullong)vdest;
|
||||
*q = _mm_cvtsi64_si32(vdest);
|
||||
}
|
||||
|
||||
twidth--;
|
||||
@ -2373,9 +2373,9 @@ fbCompositeSolidMask_nx8888x0565Cmmx (pixman_op_t op,
|
||||
if (m)
|
||||
{
|
||||
ullong d = *q;
|
||||
__m64 vdest = expand565((__m64)d, 0);
|
||||
__m64 vdest = expand565(_mm_cvtsi32_si64(d), 0);
|
||||
vdest = pack565 (in_over(vsrc, vsrca, load8888(m), vdest), vdest, 0);
|
||||
*q = (ullong)vdest;
|
||||
*q = _mm_cvtsi64_si32(vdest);
|
||||
}
|
||||
|
||||
twidth--;
|
||||
@ -2731,7 +2731,7 @@ fbCompositeSrcAdd_8888x8888mmx (pixman_op_t op,
|
||||
|
||||
while (w >= 2)
|
||||
{
|
||||
*(ullong*)dst = (ullong) _mm_adds_pu8(*(__m64*)src, *(__m64*)dst);
|
||||
*(ullong*)dst = _mm_cvtsi64_si32(_mm_adds_pu8(*(__m64*)src, *(__m64*)dst));
|
||||
dst += 2;
|
||||
src += 2;
|
||||
w -= 2;
|
||||
@ -2957,7 +2957,7 @@ fbCompositeOver_x888x8x8888mmx (pixman_op_t op,
|
||||
else
|
||||
{
|
||||
__m64 sa = expand_alpha (s);
|
||||
__m64 vm = expand_alpha_rev ((__m64)m);
|
||||
__m64 vm = expand_alpha_rev (_mm_cvtsi32_si64(m));
|
||||
__m64 vdest = in_over(s, sa, vm, load8888 (*dst));
|
||||
|
||||
*dst = store8888 (vdest);
|
||||
|
||||
@ -5,6 +5,8 @@
|
||||
#ifndef PIXMAN_PRIVATE_H
|
||||
#define PIXMAN_PRIVATE_H
|
||||
|
||||
#include "cairo-platform.h"
|
||||
|
||||
#include "pixman.h"
|
||||
#include <time.h>
|
||||
|
||||
@ -16,6 +18,30 @@
|
||||
#define TRUE 1
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
|
||||
#define snprintf _snprintf
|
||||
#undef inline
|
||||
#define inline __inline
|
||||
|
||||
# ifndef INT16_MIN
|
||||
# define INT16_MIN (-32767-1)
|
||||
# endif
|
||||
# ifndef INT16_MAX
|
||||
# define INT16_MAX (32767)
|
||||
# endif
|
||||
# ifndef INT32_MIN
|
||||
# define INT32_MIN (-2147483647-1)
|
||||
# endif
|
||||
# ifndef INT32_MAX
|
||||
# define INT32_MAX (2147483647)
|
||||
# endif
|
||||
# ifndef UINT32_MAX
|
||||
# define UINT32_MAX (4294967295)
|
||||
# endif
|
||||
|
||||
#endif
|
||||
|
||||
#define MSBFirst 0
|
||||
#define LSBFirst 1
|
||||
|
||||
@ -776,6 +802,8 @@ pixman_rasterize_edges_accessors (pixman_image_t *image,
|
||||
pixman_fixed_t b);
|
||||
|
||||
|
||||
#ifndef MOZILLA_CLIENT
|
||||
|
||||
/* Timing */
|
||||
static inline uint64_t
|
||||
oil_profile_stamp_rdtsc (void)
|
||||
@ -786,8 +814,6 @@ oil_profile_stamp_rdtsc (void)
|
||||
}
|
||||
#define OIL_STAMP oil_profile_stamp_rdtsc
|
||||
|
||||
#ifndef MOZILLA_CLIENT
|
||||
|
||||
typedef struct PixmanTimer PixmanTimer;
|
||||
|
||||
struct PixmanTimer
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user