Søren Sandmann [Fri, 22 Jun 2007 17:37:46 +0000 (13:37 -0400)]
Revert "Add a cache of images to reduce malloc/free time"
Revert the image cache since it isn't thread safe.
This reverts commit
deb09d769ae4fc55cde595c170f417692284b3e8.
Søren Sandmann Pedersen [Fri, 22 Jun 2007 04:58:05 +0000 (00:58 -0400)]
Don't treat void as a value. Bug 11322, Alan Coopersmith.
Vladimir Vukicevic [Wed, 20 Jun 2007 19:13:30 +0000 (15:13 -0400)]
Add pixman_region_init_rects()
Søren Sandmann Pedersen [Wed, 20 Jun 2007 16:12:43 +0000 (12:12 -0400)]
Fix typo
Alex Larsson [Wed, 20 Jun 2007 16:01:12 +0000 (12:01 -0400)]
Add non-mmx fast paths for In_8x8 and In_nx8x8. Bug 4191, patch by
Alex Larsson.
Søren Sandmann Pedersen [Wed, 20 Jun 2007 15:36:22 +0000 (11:36 -0400)]
Add fbCompositeSrc_8888xx888(); comment out
fbCompositeOver_x888x8x8888{mmx} since they are not actually faster
than the generic code.
Søren Sandmann Pedersen [Tue, 19 Jun 2007 18:41:04 +0000 (14:41 -0400)]
Optimize pixman_fill_rectangles() in a few more cases
Søren Sandmann Pedersen [Tue, 19 Jun 2007 16:41:21 +0000 (12:41 -0400)]
Add a cache of images to reduce malloc/free time
Søren Sandmann Pedersen [Tue, 19 Jun 2007 15:23:05 +0000 (11:23 -0400)]
Also store the g3 part correctly
Søren Sandmann Pedersen [Tue, 19 Jun 2007 15:19:43 +0000 (11:19 -0400)]
Fix fbStore_b2g3r3(). Pointed out by Dan Amelang
Søren Sandmann Pedersen [Tue, 19 Jun 2007 14:46:36 +0000 (10:46 -0400)]
Smplify the 1x1r optimization for the general compositing and fix the
1xn and nx1 cases.
Søren Sandmann Pedersen [Tue, 19 Jun 2007 14:40:58 +0000 (10:40 -0400)]
Fix pixman_fill() to return TRUE when it succeeded
Søren Sandmann Pedersen [Tue, 19 Jun 2007 04:57:33 +0000 (00:57 -0400)]
Add in 0xff alpha channel in Over_x888x8x8888mmx
Søren Sandmann Pedersen [Tue, 19 Jun 2007 04:35:58 +0000 (00:35 -0400)]
Fix solid fill optimization to compute the src correctly
Søren Sandmann Pedersen [Mon, 18 Jun 2007 18:29:02 +0000 (14:29 -0400)]
Add non-mmx solid fills. Update TODO
Søren Sandmann Pedersen [Mon, 18 Jun 2007 17:37:20 +0000 (13:37 -0400)]
Make sure the output of fbCompositeOver_x888x8x8888 is actually stored
Søren Sandmann Pedersen [Mon, 18 Jun 2007 03:10:23 +0000 (23:10 -0400)]
Also use this function in the xBGR case
Søren Sandmann Pedersen [Mon, 18 Jun 2007 02:57:47 +0000 (22:57 -0400)]
Add new fbCompositeOver_x888x8x8888mmx() operation
Søren Sandmann Pedersen [Mon, 18 Jun 2007 02:43:55 +0000 (22:43 -0400)]
Add fbCompositeOver_x888x8x8888() fast path
Søren Sandmann Pedersen [Mon, 18 Jun 2007 02:24:46 +0000 (22:24 -0400)]
Rename fbCompositeSrc_x888x8x8888 to x888xnx8888
Søren Sandmann Pedersen [Sun, 17 Jun 2007 22:50:00 +0000 (18:50 -0400)]
Remove accidentally committed use of TIMER_BEGIN/END
Søren Sandmann Pedersen [Sun, 17 Jun 2007 22:49:02 +0000 (18:49 -0400)]
Merge branch 'master' of ssh+git://sandmann@git.freedesktop.org/git/pixman
Søren Sandmann [Sun, 17 Jun 2007 22:55:37 +0000 (18:55 -0400)]
Add timer macros
Søren Sandmann Pedersen [Sun, 17 Jun 2007 22:02:06 +0000 (18:02 -0400)]
Update TODO
Søren Sandmann Pedersen [Sun, 17 Jun 2007 05:00:07 +0000 (01:00 -0400)]
Optimize fill rectangles in the op=PIXMAN_OP_CLEAR case
Søren Sandmann [Sun, 17 Jun 2007 03:08:53 +0000 (23:08 -0400)]
Use the general code in some cases even when a fast path is available
If src or mask are repeating 1x1 images and srcRepeat or
maskRepeat are still TRUE, it means the fast path we
selected does not actually handle repeating images.
So rather than call the "fast path" with a zillion
1x1 requests, we just use the general code (which does
do something sensible with 1x1 repeating images).
Søren Sandmann [Sun, 17 Jun 2007 02:10:36 +0000 (22:10 -0400)]
Remove ACCESS_MEM macro; define READ and WRITE to directly use the wrapper functions
Søren Sandmann [Sun, 17 Jun 2007 01:40:43 +0000 (21:40 -0400)]
Move some utility functions from pixman-edge.c to pixman-utils.c
Set up so pixman-edge.c is compiled twice.
Søren Sandmann [Sun, 17 Jun 2007 01:23:20 +0000 (21:23 -0400)]
Slight tweak to the definition of pixman_composeFunctions
Søren Sandmann [Sun, 17 Jun 2007 01:19:51 +0000 (21:19 -0400)]
Add #defines etc to compile pixman-compose.c twice
Søren Sandmann Pedersen [Sat, 16 Jun 2007 19:13:04 +0000 (15:13 -0400)]
Make fbCompositeSrc_8888x8888mmx() check if the mask is 0
Søren Sandmann Pedersen [Sat, 16 Jun 2007 18:56:25 +0000 (14:56 -0400)]
Unroll loop in fbComposite_x888x8x8888()
Søren Sandmann Pedersen [Sat, 16 Jun 2007 18:49:11 +0000 (14:49 -0400)]
Optimize 1x1 repeating images in the general case
Reinstate checks for empty masks in mmxCombineOverU() and mmxCombineMaskU()
Søren Sandmann Pedersen [Sat, 16 Jun 2007 16:55:59 +0000 (12:55 -0400)]
Add a few optimizations for solid fills
Søren Sandmann Pedersen [Sat, 16 Jun 2007 05:40:07 +0000 (01:40 -0400)]
Plug leak of the gradient stops
Søren Sandmann Pedersen [Sat, 16 Jun 2007 05:15:05 +0000 (01:15 -0400)]
Plug leak in the bits=NULL case for pixman_image_create_bits()
Søren Sandmann Pedersen [Fri, 15 Jun 2007 18:33:57 +0000 (14:33 -0400)]
When setting identity transformations store them as NULL to prevent
hitting the general compositing code.
Søren Sandmann [Fri, 15 Jun 2007 05:45:04 +0000 (01:45 -0400)]
Turn off debug spew for incorrect arguments
Søren Sandmann [Fri, 15 Jun 2007 04:15:03 +0000 (00:15 -0400)]
Disable source clipping by default
Søren Sandmann [Thu, 14 Jun 2007 21:37:12 +0000 (17:37 -0400)]
Update TODO
Søren Sandmann [Thu, 14 Jun 2007 21:35:28 +0000 (17:35 -0400)]
Update TODO
Søren Sandmann [Thu, 14 Jun 2007 21:34:42 +0000 (17:34 -0400)]
Update TODO
Søren Sandmann [Thu, 14 Jun 2007 16:59:15 +0000 (12:59 -0400)]
Reset clip regions correctly when NULL is passed
Søren Sandmann [Wed, 13 Jun 2007 03:50:04 +0000 (23:50 -0400)]
Make default clip region the full image
Søren Sandmann [Wed, 13 Jun 2007 03:37:25 +0000 (23:37 -0400)]
Don't complain if users try to read non-existing data from images
Søren Sandmann [Wed, 13 Jun 2007 02:53:35 +0000 (22:53 -0400)]
Don't require rowstride to be a multiple of 4 when bits is NULL
Søren Sandmann [Wed, 13 Jun 2007 02:14:32 +0000 (22:14 -0400)]
Add pixman_fill_rectangles()
Søren Sandmann [Tue, 12 Jun 2007 19:32:27 +0000 (15:32 -0400)]
Add pixman_add_trapezoids() function
Søren Sandmann [Tue, 12 Jun 2007 19:27:31 +0000 (15:27 -0400)]
Add boolean returns to various setters
Søren Sandmann [Tue, 12 Jun 2007 18:30:53 +0000 (14:30 -0400)]
Allow bits to be NULL when bit images are created
Søren Sandmann [Tue, 12 Jun 2007 18:24:40 +0000 (14:24 -0400)]
Add various accessors; remove composite_rect
Søren Sandmann Pedersen [Tue, 12 Jun 2007 02:02:03 +0000 (22:02 -0400)]
Bump version number
Søren Sandmann Pedersen [Tue, 12 Jun 2007 01:39:24 +0000 (21:39 -0400)]
Make use of pixman_fill_mmx() in various places. Delete #if0'ed code
Søren Sandmann Pedersen [Tue, 12 Jun 2007 01:35:14 +0000 (21:35 -0400)]
Add pixman_fill_mmx() function
Søren Sandmann Pedersen [Mon, 11 Jun 2007 18:55:31 +0000 (14:55 -0400)]
Forgotten fbHaveMMX()
Søren Sandmann Pedersen [Mon, 11 Jun 2007 18:54:44 +0000 (14:54 -0400)]
Rename fbHaveMMX() pixman_have_mmx()
Guard pixman_blt_mmx() with pixman_have_mmx()
Søren Sandmann Pedersen [Mon, 11 Jun 2007 18:41:01 +0000 (14:41 -0400)]
Add pixman_blt_mmx() based on fbBltmmx() from the X server.
Implement fbCompositeAreammx() in terms of it.
Uncomment calls to fbCompositeAreammx() in pixman-pict.c
Add public pixman_blt() that just returns false if not using mmx.
Søren Sandmann Pedersen [Mon, 11 Jun 2007 13:15:05 +0000 (09:15 -0400)]
Bump version number
Søren Sandmann Pedersen [Mon, 11 Jun 2007 04:22:19 +0000 (00:22 -0400)]
Add a version of miComputeCompositeRegion; call it from
pixman_image_composite(). Remove const from return value of
pixman_region_rectangles().
Søren Sandmann Pedersen [Tue, 5 Jun 2007 15:33:17 +0000 (11:33 -0400)]
Fix bug in pixman_image_set_filter() where only the parameters were
updated, not the filter type. Reported by Michel Dänzer.
Daniel Stone [Thu, 24 May 2007 13:24:39 +0000 (16:24 +0300)]
Add .gitignore file
Daniel Stone [Thu, 24 May 2007 13:19:40 +0000 (16:19 +0300)]
Use canonical autogen.sh
Use the standard autogen.sh, which allows for srcdir != builddir.
Soren Sandmann Pedersen [Wed, 23 May 2007 20:38:38 +0000 (16:38 -0400)]
Declare the two new trapezoid functions in pixman.h
Søren Sandmann [Wed, 23 May 2007 20:40:23 +0000 (16:40 -0400)]
Add pixman-trap with the trapezoid rasterization code from the X server.
Add two different trapezoid types that X makes use of.
Soren Sandmann Pedersen [Wed, 23 May 2007 20:09:49 +0000 (16:09 -0400)]
Make sure gradient-test.c builds when srcdir != buildir. Patch from
Julien Cristau <jcristau@debian.org>.
Søren Sandmann [Wed, 23 May 2007 19:39:03 +0000 (15:39 -0400)]
Fix bug in rasterizeEdges() where the stride was treated as if in
bytes, when it was in uint32_t's. Formatting fixes. Delete misleading
comment from pixman-private.h
Soren Sandmann Pedersen [Wed, 23 May 2007 16:18:09 +0000 (12:18 -0400)]
Fix function name
Soren Sandmann Pedersen [Tue, 22 May 2007 17:39:25 +0000 (13:39 -0400)]
Add more edge functions
Soren Sandmann Pedersen [Tue, 22 May 2007 16:52:52 +0000 (12:52 -0400)]
Add implementation of edge rasterization
Soren Sandmann Pedersen [Tue, 22 May 2007 15:58:46 +0000 (11:58 -0400)]
Add edge data types
Søren Sandmann [Tue, 22 May 2007 14:00:46 +0000 (10:00 -0400)]
Detect endianness
Søren Sandmann [Tue, 22 May 2007 13:54:19 +0000 (09:54 -0400)]
Include string.h in pixman-pict.c
Søren Sandmann [Tue, 22 May 2007 13:51:54 +0000 (09:51 -0400)]
Check for getisax() support
Søren Sandmann [Tue, 22 May 2007 13:49:23 +0000 (09:49 -0400)]
Check for MMX in the build system
Søren Sandmann [Tue, 22 May 2007 04:04:39 +0000 (00:04 -0400)]
Update TODO
Søren Sandmann [Tue, 22 May 2007 04:03:31 +0000 (00:03 -0400)]
Make the mmx code compile
Søren Sandmann [Tue, 22 May 2007 03:46:24 +0000 (23:46 -0400)]
Add pixman-mmx.[ch] and move macros around to make it compile.
Not yet hooked up.
Soren Sandmann Pedersen [Tue, 22 May 2007 00:03:37 +0000 (20:03 -0400)]
Use the general code if the images have read/write functions
Soren Sandmann Pedersen [Mon, 21 May 2007 21:51:41 +0000 (17:51 -0400)]
Update TODO
Soren Sandmann Pedersen [Mon, 21 May 2007 19:03:41 +0000 (15:03 -0400)]
Fix bug in fbCompositeGetSolid() where a format was compared to a format type
Soren Sandmann Pedersen [Mon, 21 May 2007 18:27:40 +0000 (14:27 -0400)]
Make pixman_image_composite() take a region parameter; comment out non-implemented functions from the switch of doom
Søren Sandmann [Mon, 21 May 2007 14:00:05 +0000 (10:00 -0400)]
Add slightly changed copy of miComputeCompositeRegion() to pixman-pict.c
Søren Sandmann [Sat, 19 May 2007 21:19:39 +0000 (17:19 -0400)]
Move mod and div macros to pixman-private.h
Søren Sandmann [Sat, 19 May 2007 21:13:02 +0000 (17:13 -0400)]
Add fbComposeGetStart() macro
Søren Sandmann [Sat, 19 May 2007 21:05:23 +0000 (17:05 -0400)]
Add fbComposeGetSolid() macro
Søren Sandmann [Sat, 19 May 2007 20:44:40 +0000 (16:44 -0400)]
Add implementation of can_get_solid()
Søren Sandmann [Sat, 19 May 2007 20:40:10 +0000 (16:40 -0400)]
Various formatting/style tweaks
Søren Sandmann [Sat, 19 May 2007 19:53:37 +0000 (15:53 -0400)]
Add macro FUNC that expands to __PRETTY_FUNCTION__ or __func__
depending on the compiler.
Søren Sandmann [Sat, 19 May 2007 16:04:21 +0000 (12:04 -0400)]
Include limits.h in pixman-compose.c; patch from Alan Coopersmith
Soren Sandmann Pedersen [Fri, 18 May 2007 19:21:51 +0000 (15:21 -0400)]
Add pixman-pict.c which is a version of fbpict.c. It compiles, but
isn't hooked up to anything.
Soren Sandmann Pedersen [Fri, 18 May 2007 17:38:26 +0000 (13:38 -0400)]
Make pixman_image_set_indexed() not copy its argument
Soren Sandmann Pedersen [Fri, 18 May 2007 16:04:16 +0000 (12:04 -0400)]
Free the indexed table when the image is freed
Soren Sandmann Pedersen [Fri, 18 May 2007 15:54:01 +0000 (11:54 -0400)]
Add new function pixman_image_set_indexed()
Soren Sandmann Pedersen [Thu, 17 May 2007 14:19:29 +0000 (10:19 -0400)]
Fix wrong type in composite-test.c
Soren Sandmann Pedersen [Thu, 17 May 2007 13:12:09 +0000 (09:12 -0400)]
Add a TODO file. Indent pixman-compose.c
Søren Sandmann [Wed, 16 May 2007 23:35:55 +0000 (19:35 -0400)]
Add macro magic in pixman-private.h to allow reading and writing to
happen through functions. Use them in pixman-compose.c; also delete
unnecessary READ and WRITE macros that always operate on host memory.
Add accessor functions to composite-test.c
Soren Sandmann Pedersen [Wed, 16 May 2007 15:13:11 +0000 (11:13 -0400)]
Add an image argument to all the store functions
Some tweaks to composite-test.c
Soren Sandmann Pedersen [Wed, 16 May 2007 15:07:54 +0000 (11:07 -0400)]
Add an image argument to all the fetch functions
Soren Sandmann Pedersen [Wed, 16 May 2007 15:03:09 +0000 (11:03 -0400)]
Move some macros from pixman-compose.c to pixman-private.h
Soren Sandmann Pedersen [Wed, 16 May 2007 14:56:08 +0000 (10:56 -0400)]
Add API to have accessor functions on pixman