profile/ivi/pixman.git
15 years agoFix burn and dodge operators to match acroread output
Benjamin Otte [Mon, 13 Jul 2009 22:02:09 +0000 (18:02 -0400)]
Fix burn and dodge operators to match acroread output

15 years agoReturn immediately if the operator is CONJOINT_DST or DISJOINT_DST
Søren Sandmann Pedersen [Mon, 13 Jul 2009 09:58:43 +0000 (05:58 -0400)]
Return immediately if the operator is CONJOINT_DST or DISJOINT_DST

These are noops just like plain DST is.

15 years agoFix bits_image_fetch_{un}transformed() for 64 bit buffers.
Søren Sandmann Pedersen [Mon, 13 Jul 2009 09:39:40 +0000 (05:39 -0400)]
Fix bits_image_fetch_{un}transformed() for 64 bit buffers.

The buffer pointer has to advance twice as far as in the 32 bit case.

15 years agoMake sure we get all 64 bits in bits_image_fetch_solid_64()
Søren Sandmann Pedersen [Mon, 13 Jul 2009 08:43:37 +0000 (04:43 -0400)]
Make sure we get all 64 bits in bits_image_fetch_solid_64()

Previously we would only store the first 32 bits.

15 years agoFix typo in bits_image_fetch_solid_64().
Søren Sandmann Pedersen [Mon, 13 Jul 2009 08:04:59 +0000 (04:04 -0400)]
Fix typo in bits_image_fetch_solid_64().

Found by blitters-test.

15 years agoOnly destroy the regions when pixman_compute_composite_region() returns TRUE
Søren Sandmann Pedersen [Sun, 12 Jul 2009 07:55:23 +0000 (03:55 -0400)]
Only destroy the regions when pixman_compute_composite_region() returns TRUE

15 years agoMove workaround logic to pixman-bits-image.c.
Søren Sandmann Pedersen [Sat, 11 Jul 2009 07:25:25 +0000 (03:25 -0400)]
Move workaround logic to pixman-bits-image.c.

Instead of computing whether a workaround is needed on every call to
_pixman_run_fast_path(), just cache this information in the image.

Also, when workarounds are needed, clip against the source geometry to
prevent out of bound reads.

15 years agoOnly apply the workaround to source images when out_of_bounds_workaround is set.
Søren Sandmann Pedersen [Fri, 10 Jul 2009 22:18:00 +0000 (18:18 -0400)]
Only apply the workaround to source images when out_of_bounds_workaround is set.

Pointed out by Siarhei Siamashka.

15 years agoReturn nonzero code from scaling-test program in case of failure.
Siarhei Siamashka [Fri, 10 Jul 2009 17:50:15 +0000 (13:50 -0400)]
Return nonzero code from scaling-test program in case of failure.

This can potentially help in tests automation.

15 years agoFix scaling-test to work on big endian systems
Siarhei Siamashka [Fri, 10 Jul 2009 08:49:53 +0000 (11:49 +0300)]
Fix scaling-test to work on big endian systems

15 years agoConvert some leftover instances of Alpha() in pixman-vmx.c.
Michel Dänzer [Fri, 10 Jul 2009 09:28:11 +0000 (11:28 +0200)]
Convert some leftover instances of Alpha() in pixman-vmx.c.

They were probably missed due to the space before the parens.

15 years agoAdd workarounds for X servers doing out-of-bounds accesses.
Søren Sandmann Pedersen [Thu, 9 Jul 2009 05:35:11 +0000 (01:35 -0400)]
Add workarounds for X servers doing out-of-bounds accesses.

Old X servers rely on out-of-bounds accesses when they are asked
to composite with a window as the source. They create a pixman image
pointing to some bogus position in memory, but then they set a clip
region to the position where the actual bits are.

Due to a bug in old versions of pixman, where it would not clip
against the image bounds when a clip region was set, this would
actually work.

The workaround added by this commit is to try and detect whether a
source drawable is actually a window without a client clip set. Such a
window will generally have a clip region that corresponds exactly to
the hierarchy clip in the server, whereas pixmaps will have a clip
region that is an exact match to the drawable.

When we detect such a window, we allow a fast path to run that would
normally be rejected due to the sources not completely subsuming the
composite region.

Fixed X servers should call the new function
pixman_disable_out_of_bounds_workaround() to disable the workaround.

This was reported in bug 22484.

15 years agoAdd a BUILT_SOURCES with pixman-combine{32,64}.{c.h}
Søren Sandmann Pedersen [Fri, 10 Jul 2009 03:17:56 +0000 (23:17 -0400)]
Add a BUILT_SOURCES with pixman-combine{32,64}.{c.h}

Bug 22681.

15 years agoFix the NEON build after "Convert CamelCase names to underscore_names."
Adrian Bunk [Thu, 9 Jul 2009 21:11:15 +0000 (00:11 +0300)]
Fix the NEON build after "Convert CamelCase names to underscore_names."

    This patch fixes the following build error caused
    by commit a98b71eff4041df58c9dcc2b1e25cefa38f364ff
    (Convert CamelCase names to underscore_names.):

    <--   snip  -->

    ...
    pixman-arm-neon.c: In function 'neon_composite_over_n_8_0565':
    pixman-arm-neon.c:1784: error: 'x_dst' undeclared (first use in this function)
    pixman-arm-neon.c:1784: error: (Each undeclared identifier is reported only once
    pixman-arm-neon.c:1784: error: for each function it appears in.)
    pixman-arm-neon.c:1785: error: 'p_dst' undeclared (first use in this function)
    pixman-arm-neon.c: In function 'neon_composite_over_n_0565':
    pixman-arm-neon.c:1937: error: 'x_dst' undeclared (first use in this function)
    pixman-arm-neon.c:1938: error: 'p_dst' undeclared (first use in this function)
    pixman-arm-neon.c: In function 'neon_composite_over_8888_0565':
    pixman-arm-neon.c:2074: error: 'x_dst' undeclared (first use in this function)
    pixman-arm-neon.c:2075: error: 'p_dst' undeclared (first use in this function)
    make[3]: *** [libpixman_arm_neon_la-pixman-arm-neon.lo] Error 1
    ...

    <--  snip  -->

15 years agoUpdate the CRC value in scaling-test.c.
Søren Sandmann Pedersen [Thu, 9 Jul 2009 08:04:00 +0000 (04:04 -0400)]
Update the CRC value in scaling-test.c.

The changes in pixman behavior justifying this are:

- New clipping rules

- Bug fixes in region code. In particular, when
  pixman_region_init_rects() is called on these two boxes:

{ 2, 6, 7, 6 }
{ 4, 1, 6, 7 }

  it now ignores the first one, which is empty and produces

{ 4, 1, 6, 7 }

  Previously, it would produce:

{ 2, 1, 7, 7 }

  for some reason.

15 years agoFix bug in pixman-region.c where empty regions would not be properly initialized.
Søren Sandmann Pedersen [Thu, 9 Jul 2009 08:00:19 +0000 (04:00 -0400)]
Fix bug in pixman-region.c where empty regions would not be properly initialized.

Also add a couple more tests to region-test.c.

15 years agoFix a couple of problems with the tests when HAVE_GTK is not defined.
Søren Sandmann Pedersen [Thu, 9 Jul 2009 05:47:19 +0000 (01:47 -0400)]
Fix a couple of problems with the tests when HAVE_GTK is not defined.

- Make sure the non-gtk+ test programs are added to noinst_PROGRAMS
  when HAVE_GTK is not set.

- Don't include glib.h in oob-test.c

15 years agoMerge branch 'naming'
Søren Sandmann Pedersen [Wed, 8 Jul 2009 22:59:15 +0000 (18:59 -0400)]
Merge branch 'naming'

15 years agoEliminate boxes with x1 > x2 or y1 > y2 in pixman_region_init_rects().
Søren Sandmann Pedersen [Wed, 8 Jul 2009 22:41:41 +0000 (18:41 -0400)]
Eliminate boxes with x1 > x2 or y1 > y2 in pixman_region_init_rects().

15 years agoAdd a box with y2 < y1 in region-test.c
Søren Sandmann Pedersen [Wed, 8 Jul 2009 22:39:43 +0000 (18:39 -0400)]
Add a box with y2 < y1 in region-test.c

15 years agoFix up some overeager search-and-replace renamings
Søren Sandmann Pedersen [Tue, 7 Jul 2009 00:33:05 +0000 (20:33 -0400)]
Fix up some overeager search-and-replace renamings

15 years agoRename num_rects back to numRects.
Søren Sandmann Pedersen [Mon, 6 Jul 2009 16:48:59 +0000 (12:48 -0400)]
Rename num_rects back to numRects.

The name numRects is public API and can't be changed.

15 years agoRename combine_*_c to combine_*_ca
Søren Sandmann Pedersen [Sun, 5 Jul 2009 06:12:21 +0000 (02:12 -0400)]
Rename combine_*_c to combine_*_ca

s/combine_(.+)_c([^a-z0-9A-Z])/combine_$1_ca$2/g;

15 years agoVarious sse2 renamings
Søren Sandmann Pedersen [Sun, 5 Jul 2009 05:42:28 +0000 (01:42 -0400)]
Various sse2 renamings

15 years agos/sse2combine/sse2_combine/g
Søren Sandmann Pedersen [Sun, 5 Jul 2009 05:38:10 +0000 (01:38 -0400)]
s/sse2combine/sse2_combine/g

15 years agoConvert CamelCase names to underscore_names.
Søren Sandmann Pedersen [Sun, 5 Jul 2009 05:35:14 +0000 (01:35 -0400)]
Convert CamelCase names to underscore_names.

s/sizeRI/size_ri/g;
s/numRI/num_ri/g;
s/RepeatNone/REPEAT_NONE/g;
s/fbOver/over/g;
s/fbIn/in/g;
s/iSrc/src_image/g;
s/iMask/mask_image/g;
s/iDst/dest_image/g;
s/SaDa/Sa.Da/g;
s/FbMaskBits/MASK_BITS/g;
s/RenderSamplesX/RENDER_SAMPLES_X/g;
s/MMXData/mmx_data_t/g;
s/RegionInfo/region_info_t/g;

s/([^0x])([a-z])([A-Z])/$1$2_\l$3/g;
s/([^0x])([A-Z])([A-Z])([a-z])/$1$2_\l$3$4/g;
s/([^0x])([A-Z])([a-z]+)_([a-z])/$1\l$2$3_$4/g;
s/([a-z])_([A-Z])/$1_\l$2/g;

s/su_sE/SuSE/g;
s/X_Free86/XFree86/g;
s/X_free86/XFree86/g;

s/_ULL/ULL/g;
s/_uLL/ULL/g;

s/U_nc/UNc/g;
s/combine ##/combine_ ##/g;
s/## U/## _u/g;
s/## C/## _c/g;
s/UNc_aDD/UNc_ADD/g;

s/BLEND_MODE \((.+)\)/BLEND_MODE (\l$1)/g;
s/blend_(.+)/blend_\l$1/g;

s/AN_ds/ANDs/g;
s/O_rs/ORs/g;
s/over565/over_565/g;
s/8pix/8_pix/g;
s/Over565/over_565/g;
s/inU/in_u/g;
s/inPart/in_part/g;
s/inC/in_c/g;
s/inreverse/in_reverse/g;
s/get_exception_code/GetExceptionCode/g; # GetExceptionCode is WinCE API
s/CP_us/CPUs/g;
s/authentic_aMD/AuthenticAMD/g;
s/op_sR_cx_mAS_kx_dST/op_src_mask_dest/g;
s/no_VERBOSE/noVERBOSE/g;
s/mc_cormack/McCormack/g;
s/r1band/r1_band/g;
s/r2band/r2_band/g;
s/as GOOD things/as good things/g;
s/brokendata/broken_data/g;
s/X_render/XRender/g;
s/__open_bSD__/__OpenBSD__/g;
s/^Quick/quick/g;
s/NextRect/next_rect/g;
s/RectIn/rect_in/g;
s/pboxout/pbox_out/g;
s/F_sorted/FSorted/g;
s/usse2/u_sse2/g;
s/csse2/c_sse2/g;
s/cPixelsse2/c_pixel_sse2/g;
s/Mask565/mask_565/g;
s/565fix_rB/565_fix_rb/g;
s/565fix_g/565_fix_g/g;
s/565r/565_r/g;
s/565g/565_g/g;
s/565b/565_b/g;
s/uPixelsse2/u_pixel_sse2/g;
s/Mask00ff/mask_00ff/g;
s/Mask0080/mask_0080/g;
s/Mask0101/mask_0101/g;
s/Maskffff/mask_ffff/g;
s/Maskff000000/mask_ff000000/g;
s/load128Aligned/load_128_aligned/g;
s/load128Unaligned/load_128_unaligned/g;
s/save128Aligned/save_128_aligned/g;
s/save128Unaligned/save_128_unaligned/g;
s/fillsse2/fill_sse2/g;
s/unpack565/unpack_565/g;
s/pack565/pack_565/g;
s/bltsse2/blt_sse2/g;
s/x565Unpack/x565_unpack/g;
s/r1End/r1_end/g;
s/r2End/r2_end/g;
s/argb8Pixels/argb8_pixels/g;

15 years agoRemove reference to 8888_RevNP
Søren Sandmann Pedersen [Sun, 5 Jul 2009 05:34:07 +0000 (01:34 -0400)]
Remove reference to 8888_RevNP

15 years agoRemove reference to 8888RevNP
Søren Sandmann Pedersen [Sun, 5 Jul 2009 04:55:45 +0000 (00:55 -0400)]
Remove reference to 8888RevNP

15 years agoNoFeatures => NO_FEATURES
Søren Sandmann Pedersen [Sun, 5 Jul 2009 04:41:53 +0000 (00:41 -0400)]
NoFeatures => NO_FEATURES

15 years agos/FbScrRight/SCREEN_SHIFT_RIGHT/g
Søren Sandmann Pedersen [Sun, 5 Jul 2009 04:31:07 +0000 (00:31 -0400)]
s/FbScrRight/SCREEN_SHIFT_RIGHT/g

15 years agoCPUFeatures => cpu_features
Søren Sandmann Pedersen [Sun, 5 Jul 2009 04:26:30 +0000 (00:26 -0400)]
CPUFeatures => cpu_features

15 years agoRename FbGet8 to GET8
Søren Sandmann Pedersen [Sun, 5 Jul 2009 04:19:18 +0000 (00:19 -0400)]
Rename FbGet8 to GET8

15 years agoRename RBmask/Gmask => rb_mask/g_mask in pixman-arm-neon.c
Søren Sandmann Pedersen [Sun, 5 Jul 2009 04:11:57 +0000 (00:11 -0400)]
Rename RBmask/Gmask => rb_mask/g_mask in pixman-arm-neon.c

15 years agoUse ALPHA_8 in pixman-image.c instead of Alpha
Søren Sandmann Pedersen [Sun, 5 Jul 2009 04:06:59 +0000 (00:06 -0400)]
Use ALPHA_8 in pixman-image.c instead of Alpha

15 years agoUppercase a few more macros in pixman-combine.c.template
Søren Sandmann Pedersen [Sun, 5 Jul 2009 04:05:42 +0000 (00:05 -0400)]
Uppercase a few more macros in pixman-combine.c.template

15 years agoRename macros for non-separable blend modes
Søren Sandmann Pedersen [Sun, 5 Jul 2009 04:02:45 +0000 (00:02 -0400)]
Rename macros for non-separable blend modes

Lum => LUM
Sat => SAT
Min => CH_MIN
Max => CH_MAX

15 years agoRename some macros in pixman-combine.c.template
Søren Sandmann Pedersen [Sun, 5 Jul 2009 03:45:01 +0000 (23:45 -0400)]
Rename some macros in pixman-combine.c.template

s/Combine([AB])([a-zA-Z]+)([^a-zA-Z])/COMBINE_$1_\U$2$3/g;
s/CombineA/COMBINE_A/g;
s/CombineB/COMBINE_B/g;
s/CombineXor/COMBINE_XOR/g;
s/CombineClear/COMBINE_CLEAR/g;

15 years agoRename U{no}mask => U_{no_}mask in pixman-vmx.c
Søren Sandmann Pedersen [Sun, 5 Jul 2009 03:24:27 +0000 (23:24 -0400)]
Rename U{no}mask => U_{no_}mask in pixman-vmx.c

15 years agoChange name fbComposeGetStart to PIXMAN_IMAGE_GET_LINE.
Søren Sandmann Pedersen [Sun, 5 Jul 2009 03:13:55 +0000 (23:13 -0400)]
Change name fbComposeGetStart to PIXMAN_IMAGE_GET_LINE.

15 years agoRename fbCombine* to combine*
Søren Sandmann Pedersen [Sun, 5 Jul 2009 03:12:18 +0000 (23:12 -0400)]
Rename fbCombine* to combine*

    s/fbCombine/combine/g;

15 years agoFix overeager search and replace
Søren Sandmann Pedersen [Mon, 29 Jun 2009 16:51:28 +0000 (12:51 -0400)]
Fix overeager search and replace

15 years agoUppercase some more macro names
Søren Sandmann Pedersen [Mon, 29 Jun 2009 16:07:56 +0000 (12:07 -0400)]
Uppercase some more macro names

15 years agoConsolidate channel macros in pixman-combine.h
Søren Sandmann Pedersen [Mon, 29 Jun 2009 15:40:21 +0000 (11:40 -0400)]
Consolidate channel macros in pixman-combine.h

There are now RED_8/RED_16 etc. macros instead of the old Red/Green/Blue.

15 years agoChange some macro names to be all uppercase
Søren Sandmann Pedersen [Mon, 29 Jun 2009 15:17:28 +0000 (11:17 -0400)]
Change some macro names to be all uppercase

15 years agoChange names of the FbByte* macros to be more descriptive.
Søren Sandmann Pedersen [Mon, 29 Jun 2009 13:29:32 +0000 (09:29 -0400)]
Change names of the FbByte* macros to be more descriptive.

But also more cryptic unfortunately. For example FbByteMul() becomes
UN8x4_MUL_UN8() to indicate that it multiplies 4 UN8 numbers with one
UN8 number.

15 years agoClarify a couple of comments
Søren Sandmann Pedersen [Mon, 29 Jun 2009 12:42:19 +0000 (08:42 -0400)]
Clarify a couple of comments

15 years agoChange name of macros that operate on normalized integers.
Søren Sandmann Pedersen [Mon, 29 Jun 2009 12:30:36 +0000 (08:30 -0400)]
Change name of macros that operate on normalized integers.

For example IntMul becomes MUL_UN8 to indicate that it multiplies two
unsigned normalized 8 bit integers.

15 years agoFix names in the trap rasterizer.
Søren Sandmann Pedersen [Mon, 29 Jun 2009 12:10:20 +0000 (08:10 -0400)]
Fix names in the trap rasterizer.

s/Shift4/SHIFT_4/g;
s/Get4/GET_4/g;
s/Put4/PUT_4/g;
s/DefineAlpha/DEFINE_ALPHA/g;
s/AddAlpha/ADD_ALPHA/g;
s/StepAlpha/STEP_ALPHA/g;
s/add_saturate_8/ADD_SATURATE_8/g;
s/RenderEdgeStepSmall/RENDER_EDGE_STEP_SMALL/g;
s/RenderEdgeStepBig/RENDER_EDGE_STEP_BIG/g;
s/fbRasterizeEdges/b00_re/g;
s/rasterizeEdges/RASTERIZE_EDGES/g;
s/b00_re/rasterize_edges_/g;

15 years agoRename QuadwordCopy_neon to neon_quadword_copy
Søren Sandmann Pedersen [Mon, 29 Jun 2009 12:02:45 +0000 (08:02 -0400)]
Rename QuadwordCopy_neon to neon_quadword_copy

    s/QuadwordCopy_neon/neon_quadword_copy/g;

15 years agoFix up the names in pixman_compute_composite_region()
Søren Sandmann Pedersen [Mon, 29 Jun 2009 12:00:56 +0000 (08:00 -0400)]
Fix up the names in pixman_compute_composite_region()

    s/miClipPictureSrc/clip_source_image/g;
    s/miClipPictureReg/clip_general_image/g;

15 years agoFix some more pFoo names
Søren Sandmann Pedersen [Mon, 29 Jun 2009 11:59:10 +0000 (07:59 -0400)]
Fix some more pFoo names

s/([^a-z])pReg/$1region/g;
s/([^a-z])pY/$1y_line/g;
s/([^a-z])pU/$1u_line/g;
s/([^a-z])pV/$1v_line/g;
s/([^a-z])p([A-Z])/$1\l$2/g;

15 years agoFix the names of some common parameters
Søren Sandmann Pedersen [Mon, 29 Jun 2009 11:54:10 +0000 (07:54 -0400)]
Fix the names of some common parameters

    s/xDst/dest_x/g;
    s/yDst/dest_y/g;
    s/xMask/mask_x/g;
    s/yMask/mask_y/g;
    s/xSrc/src_x/g;
    s/ySrc/src_y/g;

15 years agoVarious simple renamings
Søren Sandmann Pedersen [Mon, 29 Jun 2009 11:46:11 +0000 (07:46 -0400)]
Various simple renamings

    s/CvtR8G8B8toY15/CONVERT_RGB24_TO_Y15/g;
    s/cvt8888to0565/CONVERT_8888_TO_0565/g;
    s/cvt0565to0888/CONVERT_0565_TO_0888/g;
    s/miIndexToEnt15/RGB16_TO_ENTRY/g;
    s/miIndexToEnt24/RGB24_TO_ENTRY/g;
    s/miIndexToEntY24/RGB24_TO_ENTRY_Y/g;
    s/miCvtR8G8B8to15/CONVERT_RGB24_TO_RGB15/g;
    s/is_same/IS_SAME/g;
    s/is_zero/IS_ZERO/g;
    s/is_int([ (])/IS_INT$1/g;
    s/is_one/IS_ONE/g;
    s/is_unit/IS_UNIT/g;
    s/Fetch4/FETCH_4/g;
    s/Store4/STORE_4/g;
    s/Fetch8/FETCH_8/g;
    s/Store8/STORE_8/g;
    s/Fetch24/fetch_24/g;
    s/Store24/store_24/g;
    s/_64_generic/64_generic/g;
    s/64_generic/_generic_64/g;
    s/32_generic_lossy/_generic_lossy_32/g;
    s/PdfSeparableBlendMode/PDF_SEPARABLE_BLEND_MODE/g;
    s/PdfNonSeparableBlendMode/PDF_NON_SEPARABLE_BLEND_MODE/g;
    s/([^_])HSL/$1Hsl/g;
    s/Blend/blend_/g;
    s/FbScrLeft/SCREEN_SHIFT_LEFT/g;
    s/FbScrRigth/SCREEN_SHIFT_RIGHT/g;
    s/FbLeftMask/LEFT_MASK/g;
    s/FbRightMask/RIGHT_MASK/g;
    s/Splita/SPLIT_A/g;
    s/Split/SPLIT/g;
    s/MMX_Extensions/MMX_EXTENSIONS/g;

15 years agoGet rid of pFoo names.
Søren Sandmann Pedersen [Mon, 29 Jun 2009 11:35:40 +0000 (07:35 -0400)]
Get rid of pFoo names.

    s/([^o])pSrc/$1src_image/g;
    s/([^o])pDst/$1dst_image/g;
    s/([^o])pMask/$1mask_image/g;
    s/pRegion/region/g;
    s/pNextRect/next_rect/g;

15 years agoChange the name of some routines that were simply misnamed.
Søren Sandmann Pedersen [Mon, 29 Jun 2009 11:30:47 +0000 (07:30 -0400)]
Change the name of some routines that were simply misnamed.

    s/Src_pixbuf/_over_pixbuf/g;
    s/Src_x888_n/_over_x888_n/g;
    s/CompositeSrc_8888_8888/composite_over_8888_8888/g;
    s/CompositeSrc_8888_0565/composite_over_8888_0565/g;
    s/CompositeSrc_8888_8_8888/composite_over_8888_n_8888/g;

15 years agoFix up names of compositing functions
Søren Sandmann Pedersen [Mon, 29 Jun 2009 01:06:01 +0000 (21:06 -0400)]
Fix up names of compositing functions

    s/SrcAdd/Add/g;
    s/SolidMaskSrc/Src/g;
    s/SolidMaskIn/In/g;
    s/SolidMask/Over/g;
    s/Solid_n/Over_n/g;
    s/SrcIn/In/g;

    s/(fb)(Composite.*)sse2/sse2_$2/g;
    s/(fb)(Composite.*)mmx/mmx_$2/g;
    s/(fb)(Composite.*)neon/neon_$2/g;
    s/(fb)(Composite.*)arm/arm_$2/g;
    s/(fb)(Composite.*)vmx/vmx_$2/g;
    s/(fb)(Composite.*)/fast_$2/g;

    s/b8g8r8x8/f00bar/g;
    s/8888C/8888_ca/g;
    s/0565C/0565_ca/g;
    s/8888RevNPx/pixbuf_x_/g;
    s/8x0/8_x_0/g;
    s/00x8/00_x_8/g;
    s/8x8/8_x_8/g;
    s/8x8/8_x_8/g;
    s/nx8/n_x_8/g;
    s/24x16/24_x_16/g;
    s/16x16/16_x_16/g;
    s/8xx8/8_x_x8/g;
    s/8xn/8_x_n/g;
    s/nx0/n_x_0/g;
    s/_x_/_/g;
    s/f00bar/b8g8r8x8/;

    # Fix up NEON type names
    s/uint8_8/uint8x8/g;

15 years agoRename fetchers.
Søren Sandmann Pedersen [Mon, 29 Jun 2009 00:45:58 +0000 (20:45 -0400)]
Rename fetchers.

s/fbFetchPixel/fetch_pixels/g;
s/fbFetch/fetch_scanline/g;
s/fbStore/store_scanline/g;

15 years agoUse postfix decrement, not prefix, in region-test.c
Søren Sandmann Pedersen [Wed, 8 Jul 2009 04:38:28 +0000 (00:38 -0400)]
Use postfix decrement, not prefix, in region-test.c

15 years agoEliminate empty rectangles in pixman_region_init_rects().
Søren Sandmann Pedersen [Wed, 8 Jul 2009 04:08:49 +0000 (00:08 -0400)]
Eliminate empty rectangles in pixman_region_init_rects().

Otherwise they show up in the validated regions.

15 years agoAdd an initialization with an empty rectangle to region-test.c
Søren Sandmann Pedersen [Wed, 8 Jul 2009 02:55:32 +0000 (22:55 -0400)]
Add an initialization with an empty rectangle to region-test.c

This should produce a valid region without empty rectangles in
it. Currently it doesn't.

15 years agoExpand comment in miClipPictureSrc() to explain why a client clip is required.
Søren Sandmann Pedersen [Tue, 7 Jul 2009 00:37:14 +0000 (20:37 -0400)]
Expand comment in miClipPictureSrc() to explain why a client clip is required.

15 years agoFix forgotten use BITMAP_BIT_ORDER to be ifndef WORDS_BIG_ENDIAN
Søren Sandmann Pedersen [Sun, 5 Jul 2009 04:35:31 +0000 (00:35 -0400)]
Fix forgotten use BITMAP_BIT_ORDER to be ifndef WORDS_BIG_ENDIAN

15 years agoReturn TRUE for the two new formats in pixman_format_supported_source().
Søren Sandmann Pedersen [Sun, 5 Jul 2009 02:49:16 +0000 (22:49 -0400)]
Return TRUE for the two new formats in pixman_format_supported_source().

15 years agoInlucde pixman-private.h in pixman-region.c
Søren Sandmann Pedersen [Mon, 29 Jun 2009 15:21:33 +0000 (11:21 -0400)]
Inlucde pixman-private.h in pixman-region.c

Delete some duplicated macros.

15 years agoRename OptimizedOperatorInfo to optimized_operator_info_t
Søren Sandmann Pedersen [Mon, 29 Jun 2009 15:07:20 +0000 (11:07 -0400)]
Rename OptimizedOperatorInfo to optimized_operator_info_t

15 years agoAdd accessor functions for PIXMAN_x2r10g10b10 and PIXMAN_a2r10g10b10
Ben Skeggs [Wed, 1 Jul 2009 00:18:29 +0000 (10:18 +1000)]
Add accessor functions for PIXMAN_x2r10g10b10 and PIXMAN_a2r10g10b10

15 years agoAvoid overrunning scanlines in NEON blitters.
Jonathan Morton [Wed, 1 Jul 2009 13:29:48 +0000 (16:29 +0300)]
Avoid overrunning scanlines in NEON blitters.

15 years agoChange comma to semicolon in pixman-combine.c.template
Søren Sandmann Pedersen [Sun, 28 Jun 2009 22:54:32 +0000 (18:54 -0400)]
Change comma to semicolon in pixman-combine.c.template

15 years agoReally fix ARM build.
Siarhei Siamashka [Sat, 27 Jun 2009 08:56:38 +0000 (11:56 +0300)]
Really fix ARM build.

Commit 9d3f71d726c8b959b64c3e6b43ca4d3ccb320c32 broke the build
on ARM architectures by just removing custom include files and
not providing "pixman-private.h" as a replacement.

15 years agoFix ARM build.
Guillaume Letellier [Fri, 26 Jun 2009 23:02:08 +0000 (19:02 -0400)]
Fix ARM build.

Commit 6e20c2574354d1cb071a1201ff166cb5e92c00d2 broke the build on ARM
architectures by not updating the use of fbComposeGetSolid()
correctly.

15 years agoChange checks for srca == 0 to src == 0
Søren Sandmann Pedersen [Fri, 26 Jun 2009 22:58:23 +0000 (18:58 -0400)]
Change checks for srca == 0 to src == 0

It is not generally correct to bail out just because the source alpha
is 0. The color channels still mig not be and in that case the correct
result is:

       s + (1 - srca) * d = s + d

which is not generally 0.

15 years agoMake arm compositing functions static
Søren Sandmann Pedersen [Thu, 25 Jun 2009 16:42:03 +0000 (12:42 -0400)]
Make arm compositing functions static

15 years agoDelete ARM header files
Søren Sandmann Pedersen [Thu, 25 Jun 2009 14:20:44 +0000 (10:20 -0400)]
Delete ARM header files

15 years agoUse -mcpu instead of -march for ARM SIMD runtime autodetection
Siarhei Siamashka [Tue, 23 Jun 2009 22:30:34 +0000 (01:30 +0300)]
Use -mcpu instead of -march for ARM SIMD runtime autodetection

Option -mcpu has higher priority than -march with the current versions
of gcc and that's why it is better to use. There is no particular
reason why 'arm1136j-s' is used in this patch, it could be any armv6
compatible core.

15 years agoAdd test cases to oob-test using PIXMAN_{a,x}2b10g10r10
Søren Sandmann Pedersen [Thu, 25 Jun 2009 00:08:50 +0000 (20:08 -0400)]
Add test cases to oob-test using PIXMAN_{a,x}2b10g10r10

15 years agoPost-release version bump
Søren Sandmann Pedersen [Wed, 24 Jun 2009 17:12:07 +0000 (13:12 -0400)]
Post-release version bump

15 years agoPre-release version bump
Søren Sandmann Pedersen [Wed, 24 Jun 2009 16:51:40 +0000 (12:51 -0400)]
Pre-release version bump

15 years agoDelete scanFetchProc type. Use fetch_scanline_t instead.
Søren Sandmann Pedersen [Wed, 24 Jun 2009 09:44:18 +0000 (05:44 -0400)]
Delete scanFetchProc type. Use fetch_scanline_t instead.

fetch_scanline_t now takes a pixman_image_t argument instead of an
bits_image_t, so there is also a bunch of updates in pixman-access.c

15 years agoConstify the mask argument to scanline fetchers.
Søren Sandmann Pedersen [Wed, 24 Jun 2009 01:28:28 +0000 (21:28 -0400)]
Constify the mask argument to scanline fetchers.

15 years agoAdd a mask and mask_bits argument to the raw scanline fetchers.
Søren Sandmann Pedersen [Wed, 24 Jun 2009 01:22:06 +0000 (21:22 -0400)]
Add a mask and mask_bits argument to the raw scanline fetchers.

15 years agoRename fetchProc32 to fetch_scanline_t and fetch_pixels_32_t to fetch_pixels_t
Søren Sandmann Pedersen [Wed, 24 Jun 2009 01:10:52 +0000 (21:10 -0400)]
Rename fetchProc32 to fetch_scanline_t and fetch_pixels_32_t to fetch_pixels_t

15 years agoGet rid of the 64 bit fetcher types.
Søren Sandmann Pedersen [Wed, 24 Jun 2009 00:58:39 +0000 (20:58 -0400)]
Get rid of the 64 bit fetcher types.

It's simpler to just declare everything as 32 bit fetchers and do the
conversion in the few functions that actually need to know the size of
the pixel type.

15 years agoConsolidate the three scanline store types into one.
Søren Sandmann Pedersen [Wed, 24 Jun 2009 00:38:58 +0000 (20:38 -0400)]
Consolidate the three scanline store types into one.

The 64 bit storers do their own type conversion.

15 years agoGet rid of remaining scanFetchProc casts
Søren Sandmann Pedersen [Tue, 23 Jun 2009 23:03:11 +0000 (19:03 -0400)]
Get rid of remaining scanFetchProc casts

15 years agoGet rid of scanFetchProc casts in pixman-radial-gradient.c
Søren Sandmann Pedersen [Tue, 23 Jun 2009 23:02:10 +0000 (19:02 -0400)]
Get rid of scanFetchProc casts in pixman-radial-gradient.c

15 years agoGet rid of scanFetchProc casts in pixman-conical-gradient.c
Søren Sandmann Pedersen [Tue, 23 Jun 2009 23:00:52 +0000 (19:00 -0400)]
Get rid of scanFetchProc casts in pixman-conical-gradient.c

15 years agoGet rid of casts to scanFetchProc in pixman-bits-image.c
Søren Sandmann Pedersen [Tue, 23 Jun 2009 22:58:39 +0000 (18:58 -0400)]
Get rid of casts to scanFetchProc in pixman-bits-image.c

Instead just declare the functions with the required type and do any
type conversions in the function itself.

15 years agoFix bug where 64 bit pixel were fetched as 32 bit ones.
Søren Sandmann Pedersen [Tue, 23 Jun 2009 22:44:01 +0000 (18:44 -0400)]
Fix bug where 64 bit pixel were fetched as 32 bit ones.

15 years agoDelete FbIntMult and FbIntDiv macros, and move FbIntAdd to pixman-combine.h
Søren Sandmann Pedersen [Tue, 23 Jun 2009 22:41:35 +0000 (18:41 -0400)]
Delete FbIntMult and FbIntDiv macros, and move FbIntAdd to pixman-combine.h

15 years agoAdd a table to oob-test so that it can test more than one setup.
Søren Sandmann Pedersen [Wed, 24 Jun 2009 16:10:48 +0000 (12:10 -0400)]
Add a table to oob-test so that it can test more than one setup.

15 years agoFix offset bug in pixman_run_fast_path().
Søren Sandmann Pedersen [Wed, 24 Jun 2009 15:28:03 +0000 (11:28 -0400)]
Fix offset bug in pixman_run_fast_path().

Fast paths should only run when the source images complete cover the
composite region, because otherwise they would be required to sample
the border, and fast paths generally don't know how to do that.

The check for this did not work right because it didn't take the
offset generated by the composite coordinates into account. This
commits fixes that by adding (x, y) coordinates to image cover
indicating the new position of the source in destination coordinates.

Based on this we now compare against the region extents which are
already in destination coordinates.

15 years agoFix typo in oob-test.c
Søren Sandmann Pedersen [Wed, 24 Jun 2009 15:23:04 +0000 (11:23 -0400)]
Fix typo in oob-test.c

15 years agoAdd test case for out-of-bounds memory access.
Søren Sandmann Pedersen [Wed, 24 Jun 2009 14:37:07 +0000 (10:37 -0400)]
Add test case for out-of-bounds memory access.

15 years agoFix comment in pixman-utils to have the right sense.
Søren Sandmann Pedersen [Wed, 24 Jun 2009 13:04:54 +0000 (09:04 -0400)]
Fix comment in pixman-utils to have the right sense.

15 years agoSubtract x_off/y_off before conversion to integer.
Søren Sandmann Pedersen [Tue, 23 Jun 2009 20:55:53 +0000 (16:55 -0400)]
Subtract x_off/y_off before conversion to integer.

They are fixed-point values, not integers.

Bug 22437, reported by Michel Dänzer.

15 years agoAdd convolution-test.c program
Søren Sandmann Pedersen [Tue, 23 Jun 2009 20:37:35 +0000 (16:37 -0400)]
Add convolution-test.c program

15 years agoDelete leftover use of PIXMAN_OP_FLASH_SUBTRACT
Søren Sandmann Pedersen [Tue, 23 Jun 2009 20:23:26 +0000 (16:23 -0400)]
Delete leftover use of PIXMAN_OP_FLASH_SUBTRACT

15 years agoRemove support for component alpha with HSL blend modes.
Søren Sandmann Pedersen [Tue, 23 Jun 2009 18:55:36 +0000 (14:55 -0400)]
Remove support for component alpha with HSL blend modes.

It isn't clear that component alpha makes sense with HSL blend modes.

15 years agoRemove FLASH_SUBTRACT blend mode.
Søren Sandmann Pedersen [Tue, 23 Jun 2009 18:39:49 +0000 (14:39 -0400)]
Remove FLASH_SUBTRACT blend mode.

We may resurrect it later, but leave it out for now, as the closest
thing we have to a spec:

http://www.kaourantin.net/2005/09/some-word-on-blend-modes-in-flash.html

claims that alpha values should be subtracted, whereas real-world flash
files indicate that they shouldn't.

15 years agoFix BlendColorBurn
Carlos Garcia Campos [Tue, 23 Jun 2009 15:12:39 +0000 (17:12 +0200)]
Fix BlendColorBurn

It should return 0 when sa == 0