Jonathan Morton
0bfd9904e4
Enable NEON straight blits.
2009-06-03 10:43:41 -04:00
Jonathan Morton
4da5316285
Enable NEON copies.
2009-06-03 10:43:41 -04:00
Jonathan Morton
15ec397784
Enable NEON fills.
2009-06-03 10:43:41 -04:00
Jonathan Morton
78faaa58d6
Add more NEON fast paths
2009-06-03 10:43:41 -04:00
Søren Sandmann Pedersen
d4d716cc25
Only advance the Z coordinate for non-affine transformations
2009-06-02 16:54:10 -04:00
Søren Sandmann Pedersen
c2b1194929
Consistently use 256 pixels as the size of the temp buffers
2009-06-02 16:54:10 -04:00
Søren Sandmann Pedersen
10bc25b01a
Inline repeating instead of doing it as a separate pass
2009-06-02 16:54:10 -04:00
Søren Sandmann Pedersen
db4f7fc9df
Move pixman_expand/contract to pixman-utils.c
2009-06-02 16:54:10 -04:00
Søren Sandmann Pedersen
abb60f43f4
Change pixel wise fetcher to fetch many pixels at a time instead of just one
2009-06-02 16:54:10 -04:00
Søren Sandmann Pedersen
9a7ded161c
Remove unused access macro
2009-06-02 16:54:10 -04:00
Søren Sandmann Pedersen
2b82a4c14d
Add a 64 bit pixel fetcher and use it for solid colors
2009-06-02 16:54:10 -04:00
Søren Sandmann Pedersen
f9fa5bcac0
Move simple fetchers after transformed fetcher
2009-06-02 16:54:10 -04:00
Søren Sandmann Pedersen
c981eb95bb
Rename some of the fetchers
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
e043530553
Split filter switching into its own bits_image_fetch_filtered() function
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
cb04bfd6b4
Move 'adjust' code into the individual filters
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
94c6abe8fc
Add bits_image prefix to fetchers
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
5b8304fd17
Move some code around - use image->fetch_pixel in FbFetchSolid
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
48a2d0bba2
Rename _pixman_image_fetch_pixels() to bits_image_fetch_alpha_pixels
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
0486f0f324
Get rid of the StoreExternalAlpha() functions
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
d9b045d18e
Add fetch_scanline_raw{32,64}
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
67cd7fcbdf
Add store_scanline_raw_{32,64} virtual functions to bits image
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
2434524fd9
Move remaining pixman-transformed.c code into pixman-bits-image.c
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
4bd73c4d6a
Fix coordinate computation for perspective transformations
...
- Don't convert to integer
- Saturate to INT16_MIN/MAX on overflow
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
3dd2496890
Get rid of pixman-transformed-accessors
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
df23b360a0
Remove unused code from pixman-transformed.c
2009-06-02 16:54:09 -04:00
Søren Sandmann Pedersen
2557931bac
Handle alpha maps in _pixman_image_fetch_pixels()
2009-06-02 16:54:08 -04:00
Søren Sandmann Pedersen
72ae714b74
Only do region lookups when the source region is different from the full region
2009-06-02 16:54:08 -04:00
Søren Sandmann Pedersen
ccbe5cf8f3
Fix typo in fetch_bilinear_pixels()
...
Change the number of temp pixels in FbFetchTransformed() to something a little more reasonable.
2009-06-02 16:54:08 -04:00
Søren Sandmann Pedersen
72a3e20c72
Process the correct number of coordinates for the NEAREST filter
...
The number of coordinates to process is twice the number of pixels.
2009-06-02 16:54:08 -04:00
Søren Sandmann Pedersen
e8b4ebf591
Fix a couple of bugs in the bilinear fetcher
...
- The x and y distances are the most significant fractional bits.
- We need to fetch four times the number pixels produced.
2009-06-02 16:54:08 -04:00
Søren Sandmann Pedersen
b24fc024fa
Make fbFetchTransformed() used the new filtered many-pixel fetchers
2009-06-02 16:54:08 -04:00
Søren Sandmann Pedersen
8e0ad050e7
Add fetch_convolution_pixels() function
2009-06-02 16:54:08 -04:00
Søren Sandmann Pedersen
1510ffb750
Add fetch_bilinear_pixels() function
...
A bilinear fetcher that fetches many pixels instead of just one.
2009-06-02 16:54:08 -04:00
Søren Sandmann Pedersen
a156e4e097
Add fetch_extended() function
...
This function takes a list of coordinates and transforms it into
another list of coordinates, according to the repeat method of the
picture.
2009-06-02 16:54:08 -04:00
Søren Sandmann Pedersen
d2cbfeca0e
Add _pixman_image_fetch_pixels()
...
Including a virtual fetch_pixel() function in bits_image_t.
2009-06-02 16:54:08 -04:00
Søren Sandmann Pedersen
bd1cc87da3
Get rid of toplevel argument to implementation constructors.
...
It was always NULL anyway.
2009-06-02 16:51:28 -04:00
Søren Sandmann Pedersen
8d523bd9f3
Make sure the whole delegate chain has the correct toplevel
2009-06-02 07:47:29 -04:00
Søren Sandmann Pedersen
812a993843
Post-release version bump
2009-05-30 22:23:27 -04:00
Søren Sandmann Pedersen
3bad5eefd0
Pre-release version bump.
...
Also delete non-existant header files from pixman/Makefile.am
2009-05-30 22:09:11 -04:00
Søren Sandmann Pedersen
e3dba0f61a
Create a vmx pixman_implementation_t
2009-05-30 21:54:28 -04:00
Luca Barbato
0c92309a8a
Update vmxCombine*U to the new interface
...
Make the functions use different codepaths depending on mask being non
NULL. It could be speed up a bit more but should work as before
speedwise. Conformance checked with cairo tests.
2009-05-30 20:15:58 -04:00
Siarhei Siamashka
21034db1da
Scaling test updated to provide better coverage for problematic cases
...
Now scaling test should reliably detect problems in new scaling code.
Maximum image size reduced to improve performance (more tests can be
run per second) and also simplify detected errors analysis.
2009-05-29 22:23:22 -04:00
Søren Sandmann Pedersen
53ce883825
In pixman-sse2.c test for non-zero source, not just non-zero source alpha.
2009-05-29 22:21:37 -04:00
Søren Sandmann Pedersen
da9f3266fd
In the mmx implementation, check for source == 0 rather than alpha == 0.
...
Otherwise we compute the incorrect value when the source has zero in
the alpha channel, but non-zero in the color channels.
2009-05-29 21:20:20 -04:00
Jonathan Morton
f889ad9f36
Fixup the arm-simd and arm-neon implementations.
2009-05-29 13:38:45 -07:00
Magnus Kessler
d6dfafd958
pixman: define pixman_have_{mmx,sse2} on 64-bit Linux
...
The refactoring of pixman removed pixman-sse2.h and pixman-mmx.h in commit
41a9a17e03
(http://cgit.freedesktop.org/pixman/commit/?id=41a9a17e0308f2075bb1bd59c4411e43a67d49ec ).
On 64-bit Linux this breaks linking of new programs as well as execution of
existing programs with the following errors:
../pixman/.libs/libpixman-1.so: undefined reference to `pixman_have_mmx'
../pixman/.libs/libpixman-1.so: undefined reference to `pixman_have_sse2'
This patch fixes the issue for me by re-introducing the definitions for these
functions. It might be preferable, though, to create proper trivial static
inline functions instead.
Signed-off-by: Magnus Kessler <Magnus.Kessler@gmx.net>
2009-05-28 12:08:15 -04:00
Søren Sandmann Pedersen
3d93070db8
Really fix PPC build.
...
Add a pixman_composeFunctions variable to pixman-vmx.c.
2009-05-27 21:58:52 -04:00
Søren Sandmann Pedersen
3f5c2936c6
Add back pixman_composeFunctions since vmx is not ported to implementations yet
2009-05-27 21:15:18 -04:00
Søren Sandmann Pedersen
6f93d36915
In _pixman_implementation_fill() don't call the delegate; call the actual implementation
2009-05-23 12:12:42 -04:00
Søren Sandmann Pedersen
a5a249613b
Call the toplevel implementation for combining
2009-05-23 12:12:42 -04:00