Commit Graph

759 Commits

Author SHA1 Message Date
Justin Lebar
326fd2af64 Bug 832752 - On ARM, compile pixman without -mapcs-frame, even if that's specified in CFLAGS, since this calling convention appears to break the routines written in assembly. r=glandium,jrmuizel 2013-01-23 12:29:20 -05:00
Nicholas Nethercote
0293b60b78 Bug 394311 - Stop building with -pedantic. r=ted,dbaron.
--HG--
rename : content/svg/content/nsISVGPoint.cpp => content/svg/content/src/DOMSVGPoint.cpp
rename : docshell/test/browser/browser_bug234628-9.js => docshell/test/browser/browser_bug134911.js
rename : layout/reftests/w3c-css/submitted/values3/calc-background-image-gradient-1-ref.html => layout/reftests/css-calc/background-image-gradient-1-ref.html
rename : layout/reftests/w3c-css/submitted/values3/calc-background-image-gradient-1.html => layout/reftests/css-calc/background-image-gradient-1.html
rename : layout/reftests/w3c-css/submitted/values3/reftest.list => layout/reftests/css-calc/reftest.list
rename : layout/reftests/text/auto-hyphenation-10-ref.html => layout/reftests/text/auto-hyphenation-10.html
rename : layout/reftests/text/auto-hyphenation-8-ref.html => layout/reftests/text/auto-hyphenation-8.html
rename : layout/reftests/text/auto-hyphenation-9-ref.html => layout/reftests/text/auto-hyphenation-9.html
extra : rebase_source : 012df725d55b031ccc03d9bfcf785056d95a2ebe
2013-01-20 14:12:42 -08:00
Jeff Muizelaar
00dd720d3e Backout bug 828789 (bb755890ec69) because of bug 829335
Backout pixman update.
CLOSED TREE

--HG--
extra : transplant_source : Q%C9%98%DD%A3%83%8CW%22%18k%7B%26VR%8C%5B%FF%91%3E
2013-01-10 18:50:12 -05:00
Jeff Muizelaar
593109063a Bug 828789. Update to pixman 0.26.2.
Alan Coopersmith (2):
      Make mmx code compatible with Solaris Studio 12.3 compilers
      Just use xmmintrin.h when building with Solaris Studio compilers

Andrea Canciani (7):
      Remove useless checks for NULL before freeing
      test: Cleanup includes
      Use the ARRAY_LENGTH() macro when possible
      test: Reuse the ARRAY_LENGTH() macro
      demos: Consistently use G_N_ELEMENTS()
      test: Produce autotools-looking report in the win32 build system
      build: Fix compilation on win32

Antti S. Lankila (5):
      Faster unorm_to_unorm for wide processing.
      Remove unnecessary dst initialization
      Add support for sRGB surfaces
      Add sRGB blending demo program
      Add tests to validate new sRGB behavior

Bobby Salazar (2):
      Android Runtime Detection Support For ARM NEON
      iOS Runtime Detection Support For ARM NEON

Chun-wei Fan (1):
      Just include xmmintrin.h on MSVC as well

Colin Walters (1):
      autogen.sh: Support GNOME Build API

Ingmar Runge (1):
      Fix MSVC compilation

Jeremy Huddleston (7):
      configure.ac: Add an --enable-libpng option
      Revert "Disable MMX when Clang is being used."
      Silence a warning about unused pixman_have_mmx
      Disable MMX when incompatible clang is being used.
      Expand TLS support beyond __thread to __declspec(thread)
      Fix a false-negative in MMX check
      configure.ac: Fix a copy-paste-o in TLS detection

Matt Turner (60):
      Use AC_LANG_SOURCE for iwMMXt configure program
      Make sure to run AC_SUBST IWMMXT_CFLAGS
      Convert while (w) to if (w) when possible
      autoconf: use #error instead of error
      mmx: enable over_x888_8_8888 on ARM/iwMMXt
      mmx: Use _mm_mulhi_pu16
      mmx: Use _mm_shuffle_pi16
      mmx: fix typo in pix_add_mul on MSVC
      Update .gitignore with more demos and tests
      mmx: make store8888 take uint32_t *dest as argument
      mmx: make load8888 take a pointer to data instead of the data itself
      lowlevel-blt: add over_8888_8888
      lowlevel-blt: add over_x888_n_8888
      lowlevel-blt-bench: add in_8_8 and in_n_8_8
      Use AC_LANG_SOURCE for DSPr2 configure program
      mmx: enable over_n_0565 for b5g6r5
      mmx: Use force_inline instead of __inline__ (bug 46906)
      configure.ac: require >= gcc-4.5 for ARM iwMMXt
      mmx: fix _mm_shuffle_pi16 function when compiling without optimization
      configure.ac: fix iwMMXt/gcc version error message
      mmx: add store function and use it in add_8888_8888
      mmx: add load function and use it in add_8888_8888
      mmx: make ldq_u take __m64* directly
      mmx: compile on MIPS for Loongson MMI optimizations
      mmx: remove unnecessary uint64_t<->__m64 conversions
      mmx: simplify srcsrcsrcsrc calculation in over_n_8_0565
      mmx: introduce is_equal, is_opaque, and is_zero functions
      mmx: don't pack and unpack src unnecessarily
      mmx: Use Loongson pinsrh instruction in pack_565
      mmx: Use Loongson pextrh instruction in expand565
      mmx: add r5g6b5 fetcher
      mmx: add a8 fetcher
      mmx: add x8f8g8b8 fetcher
      mmx: add src_8888_0565
      mmx: Use wpackhus in src_x888_0565 on iwMMXt
      .gitignore: add demos/checkerboard and demos/quad2quad
      configure.ac: make -march=loongson2f come before CFLAGS
      mmx: add and use pack_4x565 function
      configure.ac: Fix loongson-mmi out-of-tree builds
      configure.ac: Rename loongson -> loongson-mmi
      configure.ac: Fail the ARM/iwMMXt test if not compiling with -march=iwmmxt
      mmx: add and use expand_4xpacked565 function
      mmx: implement expand_4x565 in terms of expand_4xpacked565
      fast: add add_0565_0565 function
      mmx: add add_0565_0565
      mmx: add over_reverse_n_8888
      mmx: add missing _mm_empty calls
      autotools: use custom build rule to build iwMMXt code
      configure.ac: add iwmmxt2 configure flag
      .gitignore: add test/glyph-test
      sse2: enable over_n_0565 for b5g6r5
      sse2: add src_x888_0565
      Fix distcheck due to custom iwMMXt rules
      mmx: Use expand_alpha instead of mask/shift
      mmx: add scaled bilinear src_8888_8888
      mmx: add scaled bilinear over_8888_8888
      mmx: add scaled bilinear over_8888_8_8888
      mmx: optimize bilinear function when using 7-bit precision
      loongson: optimize _mm_set_pi* functions with shuffle instructions
      sse2: add missing ABGR entires for bilinear src_8888_8888

Naohiro Aota (1):
      Don't use non-POSIX test

Nemanja Lukic (9):
      MIPS: DSPr2: Basic infrastructure for MIPS architecture
      MIPS: DSPr2: Added fast-paths for SRC operation.
      MIPS: DSPr2: Added mips_dspr2_blt and mips_dspr2_fill routines.
      MIPS: DSPr2: Added over_n_8888_8888_ca and over_n_8888_0565_ca fast paths.
      MIPS: DSPr2: Added over_n_8_8888 and over_n_8_0565 fast paths.
      MIPS: DSPr2: Fix bug in over_n_8888_8888_ca/over_n_8888_0565_ca routines
      MIPS: DSPr2: Added bilinear over_8888_8_8888 fast path.
      MIPS: DSPr2: Added several bilinear fast paths with a8 mask
      MIPS: DSPr2: Added more bilinear fast paths (without mask)

Sebastian Bauer (4):
      Qualify the static variables in pixman_f_transform_invert() with the const keyword.
      Changed the style of two function headers
      Added HAVE_CONFIG_H check before including config.h
      Use angle brackets form of including config.h

Siarhei Siamashka (8):
      test: OpenMP 2.5 requires signed loop iteration variables
      test: fix bisecting issue in fuzzer-find-diff.pl
      test: Fix for strict aliasing issue in 'get_random_seed'
      test: support nearest/bilinear scaling in lowlevel-blt-bench
      sse2: faster bilinear scaling (use _mm_loadl_epi64)
      Bilinear interpolation precision is now configurable at compile time
      sse2: _mm_madd_epi16 for faster bilinear scaling with 7-bit precision
      Change default bilinear interpolation precision to 7 bits

Søren Sandmann Pedersen (81):
      Post-release version bump to 0.25.1
      region: Add pixman_region{,32}_clear() functions.
      Modify gradient-test to show a bug in NONE processing
      gradient-walker: For NONE repeats, when x < 0 or x > 1, set both colors to 0
      pixman-image.c: Fix typo in pixman_image_set_transform()
      Fix some signed overflow bugs
      Add missing cast in _pixman_edge_multi_init()
      Fix a bunch of signed overflow issues
      In MUL_UNc() cast to comp2_t
      Reject trapezoids where top (botttom) is above (below) the edges
      Fix rounding for DIV_UNc()
      test: In the alphamap test, also test that we get the right red value
      Fix bugs with alpha maps
      test/alphamap.c: Make dst and orig_dst more independent of each other
      Get rid of delegates for combiners
      Move the color_correct() function from composite.c to utils.c
      Rename color_correct() to round_color()
      test: Add a new "pixel_checker_t" object.
      test: Port composite test over to use new pixel_checker_t object.
      Revert "Reject trapezoids where top (botttom) is above (below) the edges"
      mmx: Enable over_x888_8_8888() for x86 as well
      mmx: Delete unused function in_over_full_src_alpha()
      Disable MMX when Clang is being used.
      Disable implementations mentioned in the PIXMAN_DISABLE environment variable.
      Move fetching for solid bits images to pixman-noop.c
      pixman-accessors.h: Delete unused macros
      pixman-access.c: Remove some unused macros
      mmx: Squash a warning by making the argument to ldl_u() const
      Pre-release version bump to 0.25.2
      Post-release version bump to 0.25.3
      Use "=a" and "=d" constraints for rdtsc inline assembly
      demos: Add quad2quad program
      demos: Add checkerboard demo
      composite-test.c: Use similar gradient to the one in the PDF spec.
      composite-test.c: Add a parrot image
      Add the original parrot image.
      Rename fast_composite_add_1000_1000 to _add_1_1()
      gtk-utils.c: Don't include pixman-private.h
      test/utils.c: Rename and export the pngify_pixels() function.
      gtk-utils.c: In pixbuf_from_argb32() use a8r8g8b8_to_rgba_np()
      test/utils.c: Clip values to the [0, 255] interval
      bits_image_fetch_pixel_convolution(): Make sure channels are signed
      Add Makefile.win32 and Makefile.win32.common to EXTRA_DIST
      demos/Makefile.am: Add parrot.c to EXTRA_DIST
      Pre-release version bump to 0.25.6
      Post-release version bump to 0.25.7
      demos: Add parrot.jpg to EXTRA_DIST
      test: Composite with solid images instead of using pixman_image_fill_*
      Pre-release version bump to 0.26.0
      Post-release version bump to 0.27.1
      Pass the full image flags to iterators
      Make use of image flags in mmx and sse2 iterators
      Add doubly linked lists
      Add pixman_glyph_cache_t API
      Move CRC32 computation from blitters-test.c into utils.c
      Add support for alpha maps to compute_crc32_for_image().
      test: Add glyph-test
      Speed up pixman_composite_glyphs()
      Speed up _pixman_composite_glyphs_no_mask()
      Speed up _pixman_image_get_solid() in common cases
      bits-image: Turn all the fetchers into iterator getters
      test: Make glyph test pass on big endian
      test: Add missing break in stress-test.c
      test: Make stress-test more likely to actually composite something
      In fast_composite_tiled_repeat() don't clone images with a palette
      Use a compile-time constant for the "K" constraint in the MMX detection.
      pixman-cpu.c: Rename disabled to _pixman_disabled() and export it
      Move x86 specific CPU detection to a new file pixman-x86.c
      Move ARM specific CPU detection to a new file pixman-arm.c
      Move PowerPC specific CPU detection to its own file pixman-ppc.c
      Move MIPS specific CPU detection to its own file, pixman-mips.c
      Move the remaining bits of pixman-cpu into pixman-implementation.c
      Simplify MIPS CPU detection
      Simplifications to ARM CPU detection
      Simplify CPU detection on PPC.
      Cleanups and simplifications in x86 CPU feature detection
      Make pixman-mmx.c compile on x86-32 without optimization
      Add make-srgb.pl to EXTRA_DIST
      stress-test: Avoid overflows in clip rectangles
      glyph-test: Avoid setting solid images as alpha maps.
      Pre-release version bump to 0.27.2
* * *

--HG--
extra : rebase_source : 979841b7b315ca9ed7995ece39333dce541238fd
2013-01-08 14:09:48 -05:00
Robert O'Callahan
7e64bf967a Bug 717178. Part 3 alternative: don't put Win32 cairo_font_face_ts into the font-face cache if they were created with an explicit HFONT. r=jrmuizel
--HG--
extra : rebase_source : 8bbba7328f422807de458cb64e0e5ce4e8060b31
2013-01-02 19:18:53 +13:00
Adrian Johnson
4633e0a303 win32: fix font_face hashing
win32: Use a font_face hash table to provide unique font faces

win32-font: Improve static data reset function

Bug 717178. Part 2: Import changesets eb29a25d, 6e3e3291 and 101fab7c from upstream.
======

From 101fab7cd8a90f7cf3d8113c792b3f8c2a9afb7d Mon Sep 17 00:00:00 2001
The hashtable is guaranteed to only contain font faces which are
currently referenced, hence there is no need to remove any font face
when it is reset (just like for toy-font).

This makes the function simpler and fixes the assertion

Assertion failed: predicate != NULL, file cairo-hash.c, line 373

hit by multiple tests (the first one being "clear").

See https://bugs.freedesktop.org/show_bug.cgi?id=38049

======

From eb29a25dd6dddc511388bf883c9b95843ecdb823 Mon Sep 17 00:00:00 2001
Similar to the freetype and toy font backends, use a hash table
to map logfont,hfont to font faces.

This fixes the multiple embedding of the same font in PDF.

https://bugs.freedesktop.org/show_bug.cgi?id=24849

======

From 6e3e329170ab4b96bc0d587c8071e869e228e758 Mon Sep 17 00:00:00 2001
some bugs were discovered while testing with firefox

======

--HG--
extra : rebase_source : 6bbb299194f2296522e36bfeb68d1e8ebc2d1f17
2010-11-18 12:37:45 +00:00
Ms2ger
c2ee1dbbf0 Backout bug 814718, bug 717178 for exceptions in test_text.html on Windows. 2013-01-01 13:34:34 +01:00
Robert O'Callahan
eb2eb1fc96 bug 717178. Part 2.5: Make cairo_win32_font_face_create_for_logfontw_hfont take ownership of the HFONT. r=jrmuizel 2013-01-01 17:53:32 +13:00
Andrea Canciani
59d032236b win32-font: Improve static data reset function
Bug 717178. Part 2: Import changesets eb29a25d, 6e3e3291 and 101fab7c from upstream.
======

From 101fab7cd8a90f7cf3d8113c792b3f8c2a9afb7d Mon Sep 17 00:00:00 2001
The hashtable is guaranteed to only contain font faces which are
currently referenced, hence there is no need to remove any font face
when it is reset (just like for toy-font).

This makes the function simpler and fixes the assertion

Assertion failed: predicate != NULL, file cairo-hash.c, line 373

hit by multiple tests (the first one being "clear").

See https://bugs.freedesktop.org/show_bug.cgi?id=38049

======

From eb29a25dd6dddc511388bf883c9b95843ecdb823 Mon Sep 17 00:00:00 2001
From: Adrian Johnson <ajohnson@redneon.com>
Date: Tue, 16 Nov 2010 13:18:39 +0000
Subject: win32: Use a font_face hash table to provide unique font faces

Similar to the freetype and toy font backends, use a hash table
to map logfont,hfont to font faces.

This fixes the multiple embedding of the same font in PDF.

https://bugs.freedesktop.org/show_bug.cgi?id=24849

======

From 6e3e329170ab4b96bc0d587c8071e869e228e758 Mon Sep 17 00:00:00 2001
From: Adrian Johnson <ajohnson@redneon.com>
Date: Thu, 18 Nov 2010 12:37:45 +0000
Subject: win32: fix font_face hashing

some bugs were discovered while testing with firefox

======
2011-06-15 09:37:36 +00:00
George Wright
bcde5c4018 Bug 815795 - Fix an integer overflow by casting unit_x to int64_t. From upstream commit de60e2e0e3eb6084f8f14b63f25b3cbfb r=jrmuizel 2012-12-19 18:10:07 -05:00
Justin Lebar
b24ea3769f Bug 820540 - Build more things with -funwind-tables when DMD is enabled on ARM. r=glandium
This allows our backtraces to trace into more files.

As part of this fix, fix typo in gfx/cairo/cairo/src/Makefile.in introduced in bug 785422.
2012-12-12 11:15:35 -05:00
Tobias Netzel
87e6033bb0 Bug 817045 - Note and patch in gfx/cairo. r=jmuizelaar 2012-12-03 20:26:16 -05:00
Tobias Netzel
d010e2972f Bug 817045 - Enable libpixman VMX acceleration. r=jmuizelaar 2012-12-03 20:26:16 -05:00
Joe Drew
3e41b25008 Bug 813124 - Make Cairo's image surface correctly handle having multiple clip paths set on the context. r=jrmuizel,roc 2012-11-23 11:57:10 -05:00
Nicolas Silva
499651a424 b=811115 - remove MOZ_EGL_XRENDER_COMPOSITE dead code. r=jgilbert 2012-11-18 16:47:57 +01:00
Jonathan Kew
aa0dfab72a bug 715798 pt 2.1 - add patch for huge emoji support to the gfx/cairo directory (NPOTB) 2012-10-23 10:05:53 +01:00
Jonathan Kew
f02066c4bb bug 715798 pt 2 - fall back to show_text_glyphs even at huge sizes if scaled_font_glyph_path didn't work. r=jrmuizel 2012-10-23 10:04:32 +01:00
Jonathan Kew
e05d1cc423 bug 715798 pt 1.1 - add patch for Apple color emoji support to the gfx/cairo directory (NPOTB) 2012-10-23 10:03:12 +01:00
Jonathan Kew
5d6d10ae42 bug 715798 pt 1 - support Apple Color Emoji font in cairo-quartz backend. r=jrmuizel 2012-10-23 09:58:13 +01:00
Robert O'Callahan
8c694ead4c Backing out 20279718e3c7 (bug 717178 part 2) for test bustage on a CLOSED TREE 2012-10-23 16:31:12 +13:00
Adrian Johnson ext:(%2C%20Andrea%20Canciani%20%3Cranma42%40gmail.com%3E)
e273d9a236 Bug 717178. Part 2: Import changesets eb29a25d, 6e3e3291 and 101fab7c from upstream. r=jrmuizel
======

From eb29a25dd6dddc511388bf883c9b95843ecdb823 Mon Sep 17 00:00:00 2001
From: Adrian Johnson <ajohnson@redneon.com>
Date: Tue, 16 Nov 2010 13:18:39 +0000
Subject: win32: Use a font_face hash table to provide unique font faces

Similar to the freetype and toy font backends, use a hash table
to map logfont,hfont to font faces.

This fixes the multiple embedding of the same font in PDF.

https://bugs.freedesktop.org/show_bug.cgi?id=24849

======

From 6e3e329170ab4b96bc0d587c8071e869e228e758 Mon Sep 17 00:00:00 2001
From: Adrian Johnson <ajohnson@redneon.com>
Date: Thu, 18 Nov 2010 12:37:45 +0000
Subject: win32: fix font_face hashing

some bugs were discovered while testing with firefox

======

From 101fab7cd8a90f7cf3d8113c792b3f8c2a9afb7d Mon Sep 17 00:00:00 2001
From: Andrea Canciani <ranma42@gmail.com>
Date: Wed, 15 Jun 2011 09:37:36 +0000
Subject: win32-font: Improve static data reset function

The hashtable is guaranteed to only contain font faces which are
currently referenced, hence there is no need to remove any font face
when it is reset (just like for toy-font).

This makes the function simpler and fixes the assertion

Assertion failed: predicate != NULL, file cairo-hash.c, line 373

hit by multiple tests (the first one being "clear").

See https://bugs.freedesktop.org/show_bug.cgi?id=38049

======

--HG--
extra : rebase_source : 73172c901f80e2f6e9f52035e1d6eab2a220642f
2012-10-23 12:43:29 +13:00
Robert O'Callahan
0c634d7c05 Bug 717178. Part 1: Don't crash when passing a nil scaled-font to _name_tables_match. r=jfkthame
--HG--
extra : rebase_source : ba6ada662a871fbf3bdd2ee3b2a8f031fd213e4b
2012-10-23 12:37:28 +13:00
Brad Lassey
415ed19020 bug 790139 - crash in FT2FontEntry::CreateFontEntry when visiting any site in CM10 r=jfkthame 2012-10-05 17:46:02 -04:00
Adrian Johnson
a4ecfc373d From: Adrian Johnson <ajohnson@redneon.com>
Bug 691061 - Don't use patterns with padded images. r=jmuizelaar
2012-09-21 15:19:01 +12:00
Adrian Johnson
1eb79198fb From: Adrian Johnson <ajohnson@redneon.com>
Bug 691061 - Check if EXTEND_PAD group can be painted with EXTEND_NONE. r=jmuizelaar
2012-09-21 15:18:42 +12:00
Robert O'Callahan
bc17ca2619 Cairo patch update for bug 792903. DONTBUILD 2012-09-26 21:34:30 +12:00
Robert O'Callahan
8d196dd5fa Bug 792903. Prevent num_stops from being set to zero. r=bas 2012-09-26 12:19:32 +12:00
Jeff Muizelaar
db63614544 Bug 792993. cairo: use proper loop bounds in make_opaque(). r=nsilva
The new version of the code is more obviously correct. Hopefully
the compiler is smart enough to turn it into something fast.

--HG--
extra : rebase_source : bdf2f00c5eae5d5a1bf6dff223b1b05f561384ab
2012-09-25 18:59:12 -04:00
Bas Schouten
0f492946e6 Bug 784382 - Part 1: Use new ID2D1DeviceContext interface for subpixel AA with clipping in cairo. r=jrmuizel 2012-09-25 20:14:53 +02:00
Robert O'Callahan
45a2d1f1e1 Bug 468568. Part 0.5: _cairo_dwrite_scaled_font_create_win32_scaled_font should check font names to ensure that GDI gave us back the correct font. r=jfkthame
--HG--
extra : rebase_source : 2411f4946cb5d95900bf413546db508474448ab5
2012-09-17 16:25:24 +12:00
Jeff Muizelaar
8b611e824d Bug 788794. Use BitBlt to do SOURCE and OVER from RGB24 to ARGB32. r=nical
This seems to give a speed up of about 23x for this operation.

--HG--
extra : transplant_source : %AA%E9T%24%E5%97KR%A2%FC%E2%DB%A3ga%5C%82K%7DW
2012-09-12 22:57:25 -04:00
Nathan Froyd
308f8bfb0c Bug 785422 - remove -pedantic from cairo OS_CFLAGS; r=BenWa 2012-08-24 12:38:40 -04:00
Gregory Szorc
f03f6794f9 Bug 776077 - Silence hundreds of conversion errors in cairo; r=jmuizelaar
Cairo is a 3rd party project and we decided in bug that silencing the
warnings was easier than patching.

--HG--
extra : rebase_source : aa7a22b208e62d0d84d1b4a6e5c58d366d957bb9
2012-08-20 14:04:42 -07:00
Karl Tomlinson
63b934ae82 b=709477 use precise region extents instead of loose clip extents for clip rect r=jrmuizel 2012-08-18 08:43:21 +12:00
Siddharth Agarwal
f5ea284189 Bug 780421 - Use $(PYTHON) to run config.status. r=glandium 2012-08-05 12:42:57 +02:00
Mike Hommey
c1b35e7b2a Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted 2012-08-04 20:26:44 +02:00
Mike Hommey
be451c22dc Backout changeset 2ef51674316a (bug 774032 bonus) for various Mochitest bustages on a CLOSED TREE 2012-08-04 10:38:41 +02:00
Mike Hommey
e79d87471e Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted 2012-08-04 08:48:56 +02:00
Mike Hommey
6de82c7f66 Bug 774032 part 6 - Replace autoconf handling of config files and headers with our own. r=ted 2012-08-04 08:47:28 +02:00
Robert O'Callahan
348b690758 Bug 768775. Improve the precision of the calculation of the number of stops that need to be added to handle 'repeat' and 'reflect', when we're filling a path. r=bas 2012-07-25 21:35:28 +12:00
Jeff Muizelaar
4201121765 Bug 683243. Dither 16 bit gradients. r=BenWa
This does a 2x2 ordered dither in the same way that Skia does.

One of the things I'm currently unhappy with is that it duplicates
the gradient walker code for 16 bits. We could turn it into a large
macro that does the appropriate things for 16 bit and 32 bit
versions, but that's not particularly appealing.
2012-07-04 11:42:29 -04:00
Jeff Muizelaar
5505f36353 Bug 683243. Add a 16 bit pipeline. r=BenWa
This is to support dithering 16 bit gradients with decent performance.
2012-07-11 12:58:17 -04:00
Phil Ringnalda
ee765a147f Back out 0c1f34eb5b93 and 0f987ac28e8c (bug 683243) for Android R2 bustage 2012-07-12 22:27:34 -07:00
Jeff Muizelaar
ae283d4494 Bug 683243. Dither 16 bit gradients. r=BenWa
This does a 2x2 ordered dither in the same way that Skia does.

One of the things I'm currently unhappy with is that it duplicates
the gradient walker code for 16 bits. We could turn it into a large
macro that does the appropriate things for 16 bit and 32 bit
versions, but that's not particularly appealing.

--HG--
extra : rebase_source : ef89cd53d68166db825bb993e1262db342ba9b5d
2012-07-04 11:42:29 -04:00
Jeff Muizelaar
c5f96c52da Bug 683243. Add a 16 bit pipeline. r=BenWa
This is to support dithering 16 bit gradients with decent performance.

--HG--
extra : rebase_source : cffa90d5959211c8c1953867d85c7799ed52d662
2012-07-11 12:58:17 -04:00
Robert O'Callahan
b1211aeed9 Bug 768348. Avoid ExtCreatePen failures by avoiding rounding widths and dash lengths down to zero. r=jrmuizel
--HG--
extra : rebase_source : 5231a02af67486dbd0e663d3756ad60fe1483157
2012-07-02 11:49:34 +12:00
Jeff Muizelaar
9faf9b9e17 Bug 757878. Add a fast path for 8888_over_565 with NEON. r=bgirard,joe
Add a 2 pass implementation of this op. This uses Siarhei Siamashka's
idea mentioned here:
http://lists.freedesktop.org/archives/pixman/2011-April/001156.html
2012-05-17 19:23:53 -04:00
Gervase Markham
638c878b13 Bug 759095 - upgrade license to MPL 2, and other licensing cleanups.
--HG--
extra : rebase_source : da55a4937383eda2baf7c9a362501da8ee664146
2012-05-29 16:52:43 +01:00
Benoit Girard
886844596f Bug 681114 - Diagnostic patch to crash earlier when cairo_array is corrupted. r=jmuizelaar
--HG--
rename : b2g/config/mozconfigs/linux32/nightly => b2g/config/mozconfigs/linux32/debug
rename : mobile/android/config/mozconfigs/android-x86/debug => mobile/android/config/mozconfigs/android/debug
rename : mobile/android/config/mozconfigs/android-armv6/l10n-nightly => mobile/android/config/mozconfigs/android/l10n-nightly
rename : mobile/android/config/mozconfigs/android-x86/l10n-release => mobile/android/config/mozconfigs/android/l10n-release
rename : mobile/android/config/mozconfigs/android-armv6/nightly => mobile/android/config/mozconfigs/android/nightly
rename : mobile/android/config/mozconfigs/android-x86/release => mobile/android/config/mozconfigs/android/release
extra : rebase_source : e2f84d0e8df8dcd3aed4301f8911eeb18412601d
2012-05-28 10:15:48 -04:00
Takanori MATSUURA
5c9f3f4809 Bug 751521 - Separate pixman detection from cairo. r=glandium 2012-05-26 08:44:00 +02:00
Jeff Muizelaar
1420f5a06f Bug 749976. Reduce the curve tolerance to be closer to skia on mobile. r=bgirard
Skia uses a value of 0.5, however using such a high value causes some reftest failures.
Switch to 0.3 because we can do that without changing the reftests too much. We
can still use a higher value if we need to later. This should give us sqrt(3)
reduction in the number of segments.

--HG--
extra : rebase_source : 39f1892a61f7e242460deb1bc21adb30778147e3
2012-05-25 00:49:54 -04:00
Benoit Girard
4d73f1dfec Bug 681114 - Diagnostic patch to crash earlier when cairo_array is corrupted. r=jmuizelaar
--HG--
extra : rebase_source : 97efb782c0ceba76330edf7a1be3b9cd14c11f15
2012-05-22 14:40:07 -04:00
Bas Schouten
e438db859d Bug 595375: Fail brush creation when bitmap creation fails. r=jrmuizel 2012-05-20 22:29:07 +02:00
Jeff Muizelaar
22391d9a7a Bug 755834. Use even lower precision bilinear interpolation when scaling 565 to 565. r=joe
This takes a trick from skia to go faster. For now, it's only
used on non-NEON devices.

--HG--
extra : rebase_source : c2ddce91cc8cf71ee609420107b0922d1166db43
2012-05-17 16:54:02 -04:00
Jeff Muizelaar
3388f68759 Bug 754364. Fix bustage from changing the wrong #if 0 2012-05-16 02:04:31 -04:00
Jeff Muizelaar
e80b46f17e Bug 754364. Add bilinear non-repeat and repeat fast paths. r=joe
This gives significantly faster bilinear sampling when we
don't have NEON.

--HG--
extra : rebase_source : 4473dd220020e65e4bc22b84fa780c7828b357a7
2012-05-15 18:26:16 -04:00
Ryan VanderMeulen
28caa3b877 Backout df38ed62a24a (bug 754364) due to Windows red. a=CLOSED TREE 2012-05-15 20:29:13 -04:00
Jeff Muizelaar
45a184cabb Bug 754364. Add bilinear non-repeat and repeat fast paths. r=joe
This gives significantly faster bilinear sampling when we
don't have NEON.
2012-05-15 18:26:16 -04:00
Mike Hommey
ae655ec44e Bug 755277 - Avoid duplicate rules after bug 748001. r=ted 2012-05-15 19:01:01 +02:00
Jeff Muizelaar
a7f8653d6a Bug 754872. Avoid using two passes to draw glyphs on mobile. r=joe
Chrome & Safari both use a single pass for overlapping glyphs. We shouldn't try
so hard when running on mobile.
2012-05-15 00:48:00 -04:00
Siarhei Siamashka
4e5674d074 Bug 754364. pixman: Add scaled nearest repeat fast paths. r=jrmuizel
This will allows us to scale and repeat in a single pass instead
of doing it in two.

--HG--
extra : rebase_source : 8f40aec620494d9c584a3c58cd70ac39723041a4
2012-05-12 10:01:17 -04:00
Jeff Muizelaar
2f4b7dc2b9 Bug 689707. Use lower precision bilinear interpolation. r=joe
This takes the bilinear interpolation code from Skia. It
uses 4 bits of precision instead of 8. This lets it interpolate
two components at a time because the results fit in 16 bits.

The lower precision code is only used in the fallback code
and not in any of the specialized code for NEON. This means
pixman gives different results depending on the cpu which isn't
great. However, this was easiest and the NEON code doesn't
gain as much from using lower precision.

Skia actually uses even lower interpolation when working with
565 but that's harder to plug in right now, and this gives
a reasonable improvement.
2012-05-10 22:12:52 -04:00
Jeff Muizelaar
2c07bcfc75 Bug 751668. Avoid incorrectly using EXTEND_NONE. r=joe
It seems like we sometimes end up using EXTEND_NONE unintentionally, this is
likely caused by different rounding between cairo and pixman. Pixman already
does a similar reduction to EXTEND_NONE so there's not point in duplicating it
here.

--HG--
extra : rebase_source : 5649a2583a8a01084567bfb06cb3c788437210f5
2012-05-03 15:21:52 -04:00
Ehsan Akhgari
52885d5cd3 Bug 751273 - Part 1: Remove the debugging code in Cairo which we don't use any more; r=jrmuizel
Landing on a CLOSED TREE
2012-05-02 16:28:13 -04:00
Jeff Muizelaar
8feca18ee2 Bug 746695. Update libpixman to 0.24.4 a=joe
Alan Coopersmith (2):
      Change MMX ldq_u to return _m64 instead of forcing all callers to cast
      Make mmx code compatible with Solaris Studio 12.3 compilers

Andrea Canciani (13):
      Include noop in win32 builds
      Silence autoconf warnings
      radial: Improve documentation and naming
      radial: Fix typos and trailing whitespace
      win32: Build benchmarks
      Workaround bug in llvm-gcc
      test: Fix compilation on win32
      build: Reuse sources and pixman-combine build rules
      build: Reuse test sources
      build-win32: Share targets and variables across win32 makefiles
      build-win32: Add root Makefile.win32
      test: Do not include config.h unless HAVE_CONFIG_H is defined
      build-win32: Add 'check' target

Benjamin Otte (2):
      tests: Add PNG_CFLAGS/LIBS to tests
      build: replace @VAR@ with $(VAR) in makefiles

Bobby Salazar (1):
      Android Runtime Detection Support For ARM NEON

Chris Wilson (1):
      bits: optimise fetching width==1 repeats

Colin Walters (1):
      autogen.sh: Support GNOME Build API

Jeff Muizelaar (1):
      Add definitions of INT64_MIN and INT64_MAX

Jon TURNEY (1):
      Fix build on cygwin after commit efdf65c0c4fff551fb3cd9104deda9adb6261e22

Matt Turner (11):
      lowlevel-blt: add over_x888_8_8888
      mmx: fix formats in commented code
      mmx: convert while (w) to if (w) when possible
      mmx: rename USE_MMX to USE_X86_MMX
      mmx: wrap x86/MMX inline assembly in ifdef USE_X86_MMX
      mmx: fix unaligned accesses
      mmx: prepare pixman-mmx.c to be compiled for ARM/iwmmxt
      mmx: compile on ARM for iwmmxt optimizations
      mmx: optimize unaligned 64-bit ARM/iwmmxt loads
      Make sure iwMMXt is only detected on ARM
      Correct the minimum gcc version needed for iwmmxt

Naohiro Aota (1):
      Don't use non-POSIX test

Nis Martensen (1):
      Fix a few typos in pixman-combine.c.template

Siarhei Siamashka (4):
      C fast path for scaled src_x888_8888 with nearest filter
      ARM: workaround binutils bug #12931 (code sections alignment)
      test: better coverage for BILINEAR->NEAREST filter optimization
      BILINEAR->NEAREST filter optimization for simple rotation and translation

Søren Sandmann (5):
      mmx: Delete some unused variables
      sse2: Delete some unused variables
      demos: Comment out some unused variables
      ARM: Fix two bugs in neon_composite_over_n_8888_0565_ca().
      test: Make fuzzer-find-diff.pl executable

Søren Sandmann Pedersen (63):
      Add a "noop" implementation.
      Add a noop composite function for the DST operator
      Move noop dest fetching to noop implementation
      Add a noop src iterator
      Move NULL iterator into pixman-noop.c
      Move NOP src iterator into noop implementation.
      Replace instances of "dst_*" with "dest_*"
      In pixman-general.c rename image_parameters to {src, mask, dest}_image
      Replace argumentxs to composite functions with a pointer to a struct
      blitters-test: Make common formats more likely to be tested.
      Pre-release version bump to 0.23.2
      Post-release version bump to 0.23.3
      Makefile.am: Add pixman@lists.freedesktop.org to RELEASE_ANNOUNCE_LIST
      Fix lcg_rand_u32() to return 32 random bits.
      New test of pixman_region_contains_{rectangle,point}
      Speed up pixman_region{,32}_contains_rectangle()
      Use find_box_for_y() in pixman_region_contains_point() too
      Don't include stdint.h in lowlevel-blt-bench.c
      In pixman_image_create_bits() allow images larger than 2GB
      Rename pixman-fast-path.h to pixman-inlines.h
      Use repeat() function from pixman-inlines.h in pixman-bits-image.c
      Move bilinear interpolation to pixman-inlines.h
      Pre-release version bump to 0.23.4
      Post-release version bump to 0.23.5
      test: New function to save a pixman image to .png
      Use pkg-config to determine the flags to use with libpng
      test: Use smaller boxes in region_contains_test()
      A few tweaks to a comment in pixman-combine.c.template
      Add a generic unorm_to_unorm() conversion utility
      Add general pixel converter
      Add initial version of the MAKE_ACCESSORS() macro
      Use MAKE_ACCESSORS() to generate all the 32 bit accessors
      Use MAKE_ACCESSORS() to generate accessors for all the 16bpp formats
      Use MAKE_ACCESSORS() to generate accessors for 8bpp RGB formats
      Use MAKE_ACCESSORS() to generate accessors for 4 bpp RGB formats
      Use MAKE_ACCESSORS() to generate accessors for 24bpp formats
      Use MAKE_ACCESSORS() to generate accessors for the a1 format.
      Use MAKE_ACCESSORS() to generate accessors for paletted formats
      Remove x and y coordinates from analyze_extents() and compute_sample_extents()
      Split computation of sample area into own function
      Eliminate compute_sample_extents() function
      test: Occasionally use a BILINEAR filter in blitters-test
      Strength-reduce BILINEAR filter to NEAREST filter for identity transforms
      Don't include stdint.h in scaling-helpers-test.
      Add src, mask, and dest flags to the composite args struct.
      Pre-release version bump to 0.23.6
      Post-release version bump to 0.23.7
      Add stable release / development snapshot to draft release notes
      gradient walker: Correct types and fix formatting
      Use sentinels instead of special casing first and last stops
      Simplify gradient_walker_reset()
      Merge branch 'gradients'
      Fix use of uninitialized fields reported by valgrind
      Pre-release version bump to 0.23.8
      Post-release version bump to 0.23.9
      Pre-release version bump to 0.24.0
      Post-release version bump to 0.24.1
      gradient-walker: For NONE repeats, when x < 0 or x > 1, set both colors to 0
      pixman-image.c: Fix typo in pixman_image_set_transform()
      Fix some signed overflow bugs
      Reject trapezoids where top (botttom) is above (below) the edges
      Fix bugs with alpha maps
      Pre-release version bump to 0.24.2

Taekyun Kim (25):
      Replace boolean arguments with flags for bilinear fast path template
      REPEAT_NORMAL support for bilinear fast path template
      sse2: Declare bilinear src_8888_8888 REPEAT_NORMAL composite function
      ARM: Add REPEAT_NORMAL functions to bilinear BIND macros
      Enable REPEAT_NORMAL bilinear fast path entries
      Bilinear REPEAT_NORMAL source line extension for too short src_width
      ARM NEON: Standard fast path out_reverse_8_8888
      ARM: NEON better instruction scheduling of over_n_8_8888
      ARM: NEON better instruction scheduling of over_n_8888
      sse2: Macros for assembling bilinear interpolation code fractions
      sse2: Bilinear scaled over_8888_8888
      sse2: Bilinear scaled over_8888_8_8888
      init/fini functions for pixman_image_t
      Add new fast path flag FAST_PATH_BITS_IMAGE
      Move _pixman_lookup_composite_function() to pixman-utils.c
      Simple repeat fast path
      Simple repeat: Extend too short source scanlines into temporary buffer
      ARM: NEON: Some cleanup of bilinear scanline functions
      ARM: NEON: Bilinear macro template for instruction scheduling
      ARM: NEON: Replace old bilinear scanline generator with new template
      ARM: NEON: Instruction scheduling of bilinear over_8888_8888
      ARM: NEON: Instruction scheduling of bilinear over_8888_8_8888
      ARM: NEON: Standard fast path src_n_8_8888
      ARM: NEON: Standard fast path src_n_8_8
      ARM: NEON: Fix assembly typo error in src_n_8_8888
2012-04-20 00:07:56 -04:00
Jacek Caban
1ba02bc7fd Bug 742361 - GCC 4.7 mingw fails to compile cairo due to missing ffs declaration r=jrmuizel 2012-04-10 10:20:07 +02:00
Ehsan Akhgari
e5bc80f370 Bug 737909 - Add a patch file to gfx/cairo; r=joe
DONTBUILD
2012-03-22 11:37:19 -04:00
Ehsan Akhgari
cbb5ccd3ae Bug 737909 - Address Joe's review comment; r=joe 2012-03-22 11:32:08 -04:00
Rafael Ávila de Espíndola
9f88ba1725 Bug 737909 - Fix opt -Werror build with clang; r=joe 2012-03-22 11:30:08 -04:00
Oleg Romashin
d2bdd4d246 Bug 726461 - cairo-qt-surface not compiling with Qt5. r=jrmuizel 2012-03-16 18:36:28 -04:00
Pallavi Kumarijha
b0d44855be Bug 712554 - Remove MSVC6 support from Cairo Readme. r=jmuizelaar 2012-03-10 13:14:29 -05:00
Jonathan Kew
21fcc850ec bug 719410 pt 1 - don't use subpixel AA under GDI/DirectWrite if ClearType is disabled system-wide. r=bas 2012-03-06 17:38:55 +00:00
Mark Capella
ac9283f6e1 Bug 718359 - remove useless SANITY_CHECKING_FEATURE and XCB_SURFACE_FEATURE. r=khuey 2012-02-25 22:01:09 +01:00
Steven Michaud
7af8d9da30 Bug 721663 - [10.5] Crash in unpackImageRow @ CGAccessSessionGetBytes while printing or previewing. r=joe 2012-02-17 11:04:03 -06:00
Jacek Caban
ef894d245c Bug 670096 - cairo fails to compile on mingw with D2D and DWrite enabled r=bas.schouten 2012-02-09 11:04:54 +01:00
Bas Schouten
67de65ca66 Bug 715658: Properly invalidate cached SourceSurfaces. r=jrmuizel 2012-01-31 06:15:23 +01:00
Jonathan Kew
aff3b5b7de bug 721511 - use stack-based buffers for moderate-sized glyph runs in cairo/dwrite backend. r=bas 2012-01-28 12:25:53 +00:00
Jonathan Kew
fdfb43a629 backout changeset 2ea682dba295 (bug 721511) due to windows crashtest orange. 2012-01-28 09:50:31 +00:00
Jonathan Kew
7f9bb5f2a6 bug 721511 - use stack-based buffers for moderate-sized glyph runs in cairo/dwrite backend. r=bas 2012-01-28 08:28:56 +00:00
Bas Schouten
9dd197ae61 Bug 657141 - Part 2: Only optimize away clip levels when using solid alpha masks. r=jrmuizel DONTBUILD 2012-01-23 12:03:44 +01:00
Dão Gottwald
f31624a659 Backed out changeset 17933c63c7b6 2012-01-23 12:01:37 +01:00
Dão Gottwald
d9160ce229 Bug 657141 - Part 2: Only optimize away clip levels when using solid alpha masks. r=jrmuizel 2012-01-23 12:00:24 +01:00
Stefan
c4cca865ca bug 668263 - fix erratic spacing in print-to-PDF by cherry-picking Cairo fixes from https://bugs.freedesktop.org/show_bug.cgi?id=31062. r=jrmuizel,ajohnson 2012-01-17 10:01:36 +00:00
Jeff Muizelaar
ef1915b288 Bug 513702. Remove gfx/cairo/cairo/test/. r=joe
We have never used these files and they are terribly
out of date.
2012-01-14 14:32:14 -05:00
Jeff Muizelaar
ff5b0961f6 Bug 715704. Add a quartz implementation of mark_dirty_rectangle. r=roc
We need to drop our CGImage cache when the surface has been changed by outside users.
2012-01-05 18:40:01 -05:00
Thomas Prip Vestergaard
3f6ddf6af6 Bug 710992 - Fix third argument in memcmp call in pixman-image.c; r=roc 2012-01-02 19:15:04 +01:00
Jacek Caban
8a8e5f32ff Bug 670096 - cairo fails to compile on mingw with D2D and DWrite enabled r=jones.chris.g 2011-12-19 14:04:39 +01:00
Bill McCloskey
60a6742def Bug 705332 - Re-enable printing filename in quiet builds (r=njn) 2011-12-08 10:14:06 -08:00
Nicholas Nethercote
f3486bc8ce Bug 703456 - Kill REPORT_BUILD; kill it dead. r=ted. 2011-11-21 18:47:54 -08:00
Matt Woodrow
2f712b3b4b Bug 700179 - Add GetSize() support for the windows surfaces. r=Bas 2011-11-18 17:00:37 +13:00
Jacek Caban
7440444b52 Backed out changeset a21668ea9597 for Windows test failures 2011-11-15 14:09:06 +01:00
Jacek Caban
0d85d047f6 Bug 670096 - cairo fails to compile on mingw with D2D and DWrite enabled r=cjones 2011-11-15 12:58:12 +01:00
Marco Bonardo
8c72c90eb0 Merge mozilla-central and mozilla-inbound 2011-11-11 11:09:58 +01:00
Gregory Szorc
3c849fad59 Merge b-s to m-c 2011-11-10 15:15:29 -08:00
Michael Wu
34d5f356e4 Bug 694206 - Add Gonk (B2G) widget backend, r=cjones 2011-11-10 16:17:46 -08:00
Gregory Szorc
de5e3e4887 Bug 698248 - Remove unused FORCE_USE_PIC variable; r=khuey 2011-11-01 15:45:23 -07:00
Matt Woodrow
3390cb421d Bug 688333 - Build changes to compile skia. r=khuey 2011-10-28 20:05:35 +13:00
Ehsan Akhgari
ba92e80802 Bug 694797 - Cairo fails to build with VC11 because it tries to #define inline, which is a keyword in C++; r=jrmuizel 2011-10-17 10:42:45 -04:00
Jonathan Kew
2b0c2eef67 bug 692744 - don't create a 1x1 image surface when it should really be empty. r=jrmuizel 2011-10-12 22:29:40 +01:00
Ted Mielczarek
50422c9345 bug 686371 - Use pixman C fallback on iOS. r=jmuizelaar 2011-10-10 16:01:55 -04:00
Jim Chen
ff43470eb0 Bug 672787 - Use proper alignment for libpixman ARM assembly; r=siarhei.siamashka 2011-09-21 09:01:07 -04:00
Jeff Muizelaar
57378a1364 Bug 699507. cairo-win32: remove dead fallbacks. r=ajuma
This code was never used.
2011-11-04 12:07:12 -04:00
Jeff Muizelaar
21e5d17d05 Bug 699507. cairo-win32: remove dead create_span_renderer. r=ajuma
We create our span renderer ourselves so we don't need to implement
create_span_renderer anymore.
2011-11-04 12:06:46 -04:00
Jeff Muizelaar
9d6a1069b9 Bug 699507. cairo-win32: inline check_span_renderer. r=ajuma
There's no need to call through _cairo_surface_check_span_renderer() because
we can make the decision directly.

--HG--
extra : rebase_source : 610b624d398665bc1ca9b47c35bd129d601c232b
2011-11-04 12:05:29 -04:00
Adrian Johnson
f5ccf3e8a4 Bug 454532. cairo: Print as Unicode. r=jrmuizel
--HG--
extra : rebase_source : 3b10e50f3763535d7eee5aa5dcdc6ca2ad445ad3
2011-09-14 11:44:15 -07:00
Ehsan Akhgari
78f4e1ccb9 Revert to 176fae7de173 which was fine.
Sorry for breaking the history, won't trust TBPL, ever again. :(
2011-09-02 09:15:54 -04:00
Ehsan Akhgari
a171549936 Revert to changeset e6fc4594c22e which was the last one to get a green Win7 tp run 2011-09-02 09:03:08 -04:00
Ehsan Akhgari
effcb104f8 Bug 684049 - cairoint.h should only use lround in C99 programs; r=jrmuizel 2011-09-01 17:46:52 -04:00
Jonathan Kew
c9ea4b6537 bug 675383 - add a tiny delta to x-coordinates to avoid erratic spacing of DWrite font using GDI rendering mode when a transform (e.g. synthetic italics) is in effect. r=bas 2011-08-30 20:44:34 +01:00
Matt Woodrow
5e32aaf40c Bug 675837 - Only flush Quartz surfaces on the success paths during cairo_quartz_get_image. r=roc 2011-08-27 12:02:03 +12:00
Jeff Muizelaar
037d7d743d Bug 668921. cairo: Fix fixup_unbounded_boxes() to work even if the box is smaller than the extents. r=ickle
Currently fixup_unbounded_boxes assumes that the extents are tight when we only
have one box. This is not always true. e.g. when we tesselate boxes we can end
up with only one box which is smaller than the extents and the extents are not
updated.

--HG--
extra : rebase_source : 5e01da7d845c1cd34f9e87d5c7de22dafe9df7a4
2011-08-19 11:26:23 -04:00
Jeff Muizelaar
c39caffd5a Bug 671428. cairo: Handle bad strides in acquire_source_surface. r=bas
Cairo requires image surfaces to have a particular stride alignment.
Sometimes the texture we get back from Direct3D doesn't meet these
requirements. In that case, copy to a different buffer that meets
these requirments.

--HG--
extra : rebase_source : b4a09d5dd33c921d36158f33fc2cd386ebe57883
2011-08-16 19:07:49 -04:00
Jeff Muizelaar
49d871e1d4 Bug 664930 - Handle the case where an edge lies at the left most coordinate and initialize the rest of the data; r=bjacob 2011-08-12 15:18:06 -04:00
Jeff Muizelaar
98172b4cb6 Bug 671428. cairo: Crash even earlier to try to figure out what went wrong with the image surface. r=bjacob
--HG--
extra : rebase_source : 42891c468199c1ae8a2bae09e00c1f4d2f55df9b
2011-08-10 19:34:18 -04:00
Jeff Muizelaar
e741cc4d8a Bug 671428. cairo: try to crash earlier and record some stuff about the crash. r=joe. 2011-08-04 16:30:51 -04:00
Steven Michaud
d922d20572 Bug 671064 - Work around bug in Cairo 1.10 that causes Print Preview to crash. r=jmuizelaar 2011-08-02 12:30:42 +02:00
Mike Hommey
d1ce73f80c Bug 654049 - Use global optimization flags for jemalloc, cairo, pixman and sqlite. r=ted 2011-07-21 08:32:23 +02:00
Scott Ruff
a1835137c8 Bug 649525 - WebGL layer compositing through the BasicCanvasLayer is very slow (desktop version). r=jmuizelaar 2011-07-27 13:00:17 +02:00
Daniel Holbert
452e2996ff backout 36b64e9837f5 (Bug 668764) due to reftest orange on Win7 2011-07-11 18:24:03 -07:00
Bas Schouten
b4f2c613de Bug 668764: Properly specify stroke offset in Direct2D cairo backend. r=jrmuizel 2011-07-11 16:37:01 +02:00
Ed Morley
3bd1c95cf1 Bug 631155 - undefined return value in function '_cairo_surface_wrapper_flush'; r=jrmuizel 2011-07-11 09:14:12 -04:00
Makoto Kato
09ff6f5746 Bug 413019 - Remove PGO workaround for some modules. r=ted 2011-07-01 12:46:02 +09:00
Bas Schouten
1c08a19bd8 Bug 651858 - Part 2: Add glue code in gfx for thebes-azure interop. r=jrmuizel 2011-06-24 19:41:18 +02:00
Jeff Muizelaar
5db1ac6018 Bug 661658. Fix pointer as int size problem on Win64. r=joedrew
The glyph cache uses a pointer for a hash value, and uses
that hash value as a pointer. We need to ensure that the
hash type is large enough to fit a pointer.
2011-06-22 14:38:25 -04:00
Ed Morley
c8157ac7e6 Bug 664311 - Remove WinCE code from gfx/; r=jmuizelaar 2011-06-18 11:04:30 +02:00
Jonathan Kew
4e89d25c0d bug 647560 followup - put the color components in the right order. a=test-bustage 2011-06-17 09:14:09 +01:00
Robert O'Callahan
3c21113890 Bug 647560. Implement non-fallbacky behavior for _cairo_win32_surface_fill_rectangles on an ARGB surface, using StretchDIBits. r=jrmuizel 2011-06-17 15:36:37 +12:00
Joe Drew
638fc56959 Bug 660448 - look up FT_Library_SetLcdFilter via dlsym at runtime to fix terrible subpixel rendering on up-to-date Linux systems. r=karlt,bjacob
This will need to be reverted once our build systems are upgraded to a newer
version of FreeType. In the long run, we need to increase our runtime
dependency to this newer version.
2011-06-10 21:06:23 -04:00
Matheus Kerschbaum
5a7b295546 Bug 614721 - Remove some DirectDraw left overs. r=joedrew,jrmuizel 2011-06-10 18:27:01 +02:00
Bas Schouten
9c51d7683c Bug 655836: Flush surface A when B changes and A has a pending drawing command depending on B. r=jrmuizel 2011-06-09 17:28:12 -04:00
Jonathan Kew
4ce8038dca Bug 661471. Part 7: Only force GDI_CLASSIC rendering for specified fonts if a rendering mode has not been explicitly chosen in prefs. r=roc 2011-06-09 08:17:20 +01:00
Jonathan Kew
37cc5bd232 Bug 661471. Part 6.3: Only force DW to use specific ClearType modes if ClearType is actually enabled. r=roc 2011-06-09 08:13:13 +01:00
Robert O'Callahan
d7aa0ae8f6 Bug 661471. Part 6.1: Expose cairo_win32_get_system_text_quality. r=jfkthame 2011-06-09 08:13:02 +01:00
Robert O'Callahan
0e9af9395b Bug 661471. Part 1: Create preference to force particular font families to use 'GDI Classic' rendering with DirectWrite. r=jdaggett,jfkthame 2011-06-03 16:31:07 +12:00
Jeff Muizelaar
e9dec64aff Bug 659676 - remove debugging code that snuck in. r=khuey 2011-05-26 09:29:25 +02:00
Jeff Muizelaar
8f912ae15e Bug 562746. Update cairo to 1.10.
A lot of changes from upstream here that will hopefully be smoothed
out a bit soon.
2011-03-10 14:52:15 -05:00
Neil Rashbrook
a823051c1e Fix DOS line endings rs=joedrew!
DONTBUILD
2011-05-26 20:41:33 +01:00
Ehsan Akhgari
bfd552d30a Backout bug 562746 (Cairo update to version 1.10) because of the possible Dromaeo regression on Mac OS X 10.5) 2011-05-26 14:57:50 -04:00
Ehsan Akhgari
d463f51425 Backout changeset ecbe9bb3433f (bug 659676) because of the backout of bug 562746, which introduced the removed line here 2011-05-26 14:52:54 -04:00
Jeff Muizelaar
f49a520423 Bug 659676 - remove debugging code that snuck in. r=khuey 2011-05-26 09:29:25 +02:00
Jeff Muizelaar
f9513e5a85 Bug 562746. Update cairo to 1.10.
A lot of changes from upstream here that will hopefully be smoothed
out a bit soon.
2011-03-10 14:52:15 -05:00
Matheus Kerschbaum
35f86c76ad Bug 648911 - Remove support for non-libxul builds. r=ted,joedrew 2011-05-23 18:54:47 +02:00
Jeff Muizelaar
0ffb2687b5 Bug 658249. Update pixman to 0f6a4d45886d64b244d57403609f0377b58cc7fb.
Andrea Canciani (1):
      test: Fix compilation on win32

Dave Yeo (1):
      Check for working mmap()

Gilles Espinasse (2):
      Fix missing AC_MSG_RESULT value from Werror test
      Fix OpenMP not supported case

Siarhei Siamashka (7):
      ARM: tweaked horizontal weights update in NEON bilinear scaling code
      ARM: use aligned memory writes in NEON bilinear scaling code
      ARM: support for software pipelining in bilinear macros
      ARM: use less ARM instructions in NEON bilinear scaling code
      ARM: support different levels of loop unrolling in bilinear scaler
      ARM: pipelined NEON implementation of bilinear scaled 'src_8888_8888'
      ARM: pipelined NEON implementation of bilinear scaled 'src_8888_0565'

Søren Sandmann Pedersen (8):
      Makefile.am: Put development releases in "snapshots" directory
      ARM: Tiny improvement in over_n_8888_8888_ca_process_pixblock_head
      ARM: Add 'neon_composite_over_n_8888_0565_ca' fast path
      Offset rendering in pixman_composite_trapezoids() by (x_dst, y_dst)
      Pre-release version bump to 0.21.8
      Post-release version bump to 0.21.9
      Pre-release version bump to 0.22.0
      Post-release version bump to 0.23.1

Taekyun Kim (3):
      ARM: Common macro for scaled bilinear scanline function with A8 mask
      ARM: NEON scanline functions for bilinear scaling
      ARM: Enable bilinear fast paths using scanline functions in pixman-arm-neon-asm-bilinear.S

--HG--
extra : rebase_source : aff729718af3e7d25577603241d204bf02ecfb90
2011-05-18 13:43:30 -04:00
Bas Schouten
de12263c7f Bug 657141: Avoid excessive clipping by only popping to the common ancestor. r=jrmuizel 2011-05-17 21:27:05 +02:00
Siarhei Siamashka
45f3e58d85 Bug 656782 - Runtime CPU features detection does not work for pixman in Android [r=jmuizelaar]
Pixman upgrade from bug 640250 resulted in ARM cpu features
not being detected properly in Android. As a result, NEON
optimizations were not used at all.
2011-05-12 15:26:00 -04:00
Jonathan Kew
8e92dd97a6 bug 642589 - expose prefs for tweaking DirectWrite/D2D antialiasing behavior. r=jdaggett 2011-04-21 07:29:50 +01:00
Bas Schouten
9f51158443 Bug 600760: Optimize mask with rectangular clip. r=jrmuizel 2011-04-11 16:42:05 -07:00
Jonathan Kew
5b310ec5f3 bug 638764 - followup, fix a bunch of compilation warnings in cairo build. r=bas 2011-04-11 13:02:51 +01:00
Jonathan Kew
97dc391126 bug 638764 - print DirectWrite text via ExtTextOut using a GDI font, to get decent PDF output. r=bas 2011-04-11 13:02:31 +01:00
Jeff Muizelaar
bbf0b70e51 Update pixman to ad3cbfb073fc325e1b3152898ca71b8255675957
Alan Coopersmith (1):
      Sun's copyrights belong to Oracle now

Alexandros Frantzis (2):
      Add simple support for the r8g8b8a8 and r8g8b8x8 formats.
      Add support for the r8g8b8a8 and r8g8b8x8 formats to the tests.

Andrea Canciani (14):
      Improve precision of linear gradients
      Make classification consistent with rasterization
      Remove unused enum value
      Fix an overflow in the new radial gradient code
      Remove unused stop_range field
      Fix opacity check
      Improve conical gradients opacity check
      Improve handling of tangent circles
      Add a test for radial gradients
      Fix compilation on Win32
      test: Fix tests for compilation on Windows
      test: Add Makefile for Win32
      Do not include unused headers
      test: Silence MSVC warnings

Cyril Brulebois (2):
      Fix argument quoting for AC_INIT.
      Fix linking issues when HAVE_FEENABLEEXCEPT is set.

Jon TURNEY (2):
      Plug another leak in alphamap test
      Remove stray #include <fenv.h>

Rolland Dudemaine (4):
      test: Fix for mismatched 'fence_malloc' prototype/implementation
      Correct the initialization of 'max_vx'
      test: Use the right enum types instead of int to fix warnings
      Fix "variable was set but never used" warnings

Scott McCreary (1):
      Added check to find pthread on Haiku.

Siarhei Siamashka (62):
      Fixed broken configure check for __thread support
      Do CPU features detection from 'constructor' function when compiled with gcc
      ARM: fix 'vld1.8'->'vld1.32' typo in add_8888_8888 NEON fast path
      ARM: NEON: source image pixel fetcher can be overrided now
      ARM: nearest scaling support for NEON scanline compositing functions
      ARM: macro template in C code to simplify using scaled fast paths
      ARM: performance tuning of NEON nearest scaled pixel fetcher
      ARM: NEON optimization for scaled over_8888_8888 with nearest filter
      ARM: NEON optimization for scaled over_8888_0565 with nearest filter
      ARM: NEON optimization for scaled src_8888_0565 with nearest filter
      ARM: NEON optimization for scaled src_0565_8888 with nearest filter
      ARM: optimization for scaled src_0565_0565 with nearest filter
      C fast path for a1 fill operation
      ARM: added 'neon_composite_over_n_8_8' fast path
      ARM: introduced 'fetch_mask_pixblock' macro to simplify code
      ARM: better NEON instructions scheduling for over_n_8_0565
      ARM: added 'neon_composite_over_8888_n_0565' fast path
      ARM: reuse common NEON code for over_{n_8|8888_n|8888_8}_0565
      ARM: added 'neon_composite_over_0565_n_0565' fast path
      ARM: added 'neon_composite_add_8888_8_8888' fast path
      ARM: better NEON instructions scheduling for add_8888_8888_8888
      ARM: added 'neon_composite_add_n_8_8888' fast path
      ARM: added 'neon_composite_add_8888_n_8888' fast path
      ARM: added flags parameter to some asm fast path wrapper macros
      ARM: added 'neon_composite_in_n_8' fast path
      ARM: added 'neon_src_rpixbuf_8888' fast path
      Fix for potential unaligned memory accesses
      COPYING: added Nokia to the list of copyright holders
      Revert "Fix "syntax error: empty declaration" warnings."
      Fix for "syntax error: empty declaration" Solaris Studio warnings
      Workaround for a preprocessor issue in old Sun Studio
      Bugfix for a corner case in 'pixman_transform_is_inverse'
      Make 'fast_composite_scaled_nearest_*' less suspicious
      A new configure option --enable-static-testprogs
      ARM: do /proc/self/auxv based cpu features detection only in linux
      The code in 'bitmap_addrect' already assumes non-null 'reg->data'
      test: affine-test updated to stress 90/180/270 degrees rotation more
      New flags for 90/180/270 rotation
      C fast paths for a simple 90/270 degrees rotation
      Use const modifiers for source buffers in nearest scaling fast paths
      test: Extend scaling-test to support a8/solid mask and ADD operation
      Support for a8 and solid mask in nearest scaling main loop template
      Better support for NONE repeat in nearest scaling main loop template
      ARM: new macro template for using scaled fast paths with a8 mask
      ARM: NEON optimization for nearest scaled over_8888_8_0565
      ARM: NEON optimization for nearest scaled over_0565_8_0565
      SSE2 optimization for nearest scaled over_8888_n_8888
      Ensure that tests run as the last step of a build for 'make check'
      Main loop template for fast single pass bilinear scaling
      test: check correctness of 'bilinear_pad_repeat_get_scanline_bounds'
      SSE2 optimization for bilinear scaled 'src_8888_8888'
      ARM: NEON optimization for bilinear scaled 'src_8888_8888'
      ARM: use prefetch in nearest scaled 'src_0565_0565'
      ARM: common macro for nearest scaling fast paths
      ARM: assembly optimized nearest scaled 'src_8888_8888'
      ARM: new bilinear fast path template macro in 'pixman-arm-common.h'
      ARM: NEON: common macro template for bilinear scanline scalers
      ARM: use common macro template for bilinear scaled 'src_8888_8888'
      ARM: NEON optimization for bilinear scaled 'src_8888_0565'
      ARM: NEON optimization for bilinear scaled 'src_0565_x888'
      ARM: NEON optimization for bilinear scaled 'src_0565_0565'
      ARM: a bit faster NEON bilinear scaling for r5g6b5 source images

Søren Sandmann Pedersen (79):
      Remove the class field from source_image_t
      Pre-release version bump to 0.19.6
      Post-release version bump to 0.19.7
      Pre-release version bump to 0.20.0
      Post-release version bump to 0.20.1
      Version bump 0.21.1.
      COPYING: Stop saying that a modification is currently under discussion.
      Remove workaround for a bug in the 1.6 X server.
      [mmx] Mark some of the output variables as early-clobber.
      Delete the source_image_t struct.
      Generate {a,x}8r8g8b8, a8, 565 fetchers for nearest/affine images
      Pre-release version bump
      Post-release version bump to 0.21.3
      test: Make composite test use some existing macros instead of defining its own
      Add enable_fp_exceptions() function in utils.[ch]
      Extend gradient-crash-test
      test: Move palette initialization to utils.[ch]
      test/utils.c: Initialize palette->rgba to 0.
      Make the argument to fence_malloc() an int64_t
      Add a stress-test program.
      Add a test compositing with the various PDF operators.
      Fix divide-by-zero in set_lum().
      sse2: Skip src pixels that are zero in sse2_composite_over_8888_n_8888()
      Add iterators in the general implementation
      Move initialization of iterators for bits images to pixman-bits-image.c
      Eliminate the _pixman_image_store_scanline_32/64 functions
      Move iterator initialization to the respective image files
      Virtualize iterator initialization
      Use an iterator in pixman_image_get_solid()
      Move get_scanline_32/64 to the bits part of the image struct
      Allow NULL property_changed function
      Consolidate the various get_scanline_32() into get_scanline_narrow()
      Linear: Optimize for horizontal gradients
      Get rid of the classify methods
      Add direct-write optimization back
      Skip fetching pixels when possible
      Turn on testing for destination transformation
      Fix destination fetching
      Fix dangling-pointer bug in bits_image_fetch_bilinear_no_repeat_8888().
      Pre-release version bump to 0.21.4
      Post-release version bump to 0.21.5
      Print a warning when a development snapshot is being configured.
      Move fallback decisions from implementations into pixman-cpu.c.
      Add a test for over_x888_8_0565 in lowlevel_blt_bench().
      Add SSE2 fetcher for x8r8g8b8
      Add SSE2 fetcher for a8
      Improve performance of sse2_combine_over_u()
      Add SSE2 fetcher for 0565
      Add pixman-conical-gradient.c to Makefile.win32.
      Move all the GTK+ based test programs to a new subdir, "demos"
      Add @TESTPROGS_EXTRA_LDFLAGS@ to AM_LDFLAGS
      test/Makefile.am: Move all the TEST_LDADD into a new global LDADD.
      Add pixman_composite_trapezoids().
      Add a test program for pixman_composite_trapezoids().
      Add support for triangles to pixman.
      Add a test program, tri-test
      Optimize adding opaque trapezoids onto a8 destination.
      Add new public function pixman_add_triangles()
      Avoid marking images dirty when properties are reset
      In pixman_image_set_transform() allow NULL for transform
      Coding style:  core_combine_in_u_pixelsse2 -> core_combine_in_u_pixel_sse2
      sse2: Convert all uses of MMX registers to use SSE2 registers instead.
      sse2: Delete unused MMX functions and constants and all _mm_empty()s
      sse2: Don't compile pixman-sse2.c with -mmmx anymore
      sse2: Remove all the core_combine_* functions
      sse2: Delete obsolete or redundant comments
      sse2: Remove pixman-x64-mmx-emulation.h
      sse2: Minor coding style cleanups.
      Delete pixman-x64-mmx-emulation.h from pixman/Makefile.am
      Minor fix to the RELEASING file
      Pre-release version bump to 0.21.6
      Post-release version bump to 0.21.7
      test: In image_endian_swap() use pixman_image_get_format() to get the bpp.
      test: Do endian swapping of the source and destination images.
      In delegate_{src,dest}_iter_init() call delegate directly.
      Fill out parts of iters in _pixman_implementation_{src,dest}_iter_init()
      Simplify the prototype for iterator initializers.
      test: Randomize some tests if PIXMAN_RANDOMIZE_TESTS is set
      test: Fix infinite loop in composite
2011-03-28 13:52:09 -04:00