Closed Bug 870258 Opened 12 years ago Closed 4 years ago

Update libpixman to 0.34.0

Categories

(Core :: Graphics, defect)

defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1689998

People

(Reporter: ionnv, Unassigned)

References

(Blocks 1 open bug)

Details

Attachments

(1 file, 5 obsolete files)

http://lists.cairographics.org/archives/cairo-announce/2013-May/000214.html A new major release 0.30.0 of the pixman rendering library is now available. Highlights of this release: - Support for high-quality image downscaling [Søren] - Much improved ARMv6 assembly [Ben Avison] - Improved rendering quality for gradients [Søren] - Improvements to the SSE2 backend [Chris Wilson, Siarhei Siamashka] - Improvements to MIPS DSPr2 backend [Nemanja Lukic] - Improvements to test suite [Siarhei, Søren Sandmann]
I have a patch to update present libpixman to latest git, but only used for x86 and x64 target. BTW, how can I test the patch's performance?
Flags: needinfo?(jmuizelaar)
(In reply to xunxun from comment #1) > Created attachment 755776 [details] [diff] [review] > Update libpixman to latest git (only for x86 and x64 target) > > I have a patch to update present libpixman to latest git, but only used for > x86 and x64 target. > > BTW, how can I test the patch's performance? You could try FishIE. I wouldn't expect too much change though.
Flags: needinfo?(jmuizelaar)
Flags: needinfo?(xunxun1982)
I tested FishIE some days ago, but I can't find the perf difference with the patch.
Flags: needinfo?(xunxun1982)
http://lists.cairographics.org/archives/cairo-announce/2013-August/000215.html A new pixman release 0.30.2 is now available. This is a stable release in the 0.30 series and contains only bug fixes relative to 0.30.0.
Summary: Update libpixman to 0.30.0 → Update libpixman to 0.30.2
Attached patch Update libpixman to 0.30.2 (obsolete) (deleted) — Splinter Review
Update libpixman to 0.30.2 for m-c patch
Attachment #755776 - Attachment is obsolete: true
Attachment #811466 - Flags: review?
Attachment #811466 - Flags: feedback?
(In reply to xunxun from comment #5) > Created attachment 811466 [details] [diff] [review] > Update libpixman to 0.30.2 > > Update libpixman to 0.30.2 for m-c patch Xunxun, it looks like upstream pixman have removed pixman-cpu.c as all its functionality was moved into other files. Perhaps pixman-cpu.c should be deleted as part of your patch?
(In reply to Maksim Lin from comment #6) > (In reply to xunxun from comment #5) > > Created attachment 811466 [details] [diff] [review] > > Update libpixman to 0.30.2 > > > > Update libpixman to 0.30.2 for m-c patch > > Xunxun, it looks like upstream pixman have removed pixman-cpu.c as all its > functionality was moved into other files. Perhaps pixman-cpu.c should be > deleted as part of your patch? Thanks for pointing it. I check the libpixman commit, pixman-cpu.c was removed in 16502dd3ae3bf1d49faf1de533bd58013e168e64, which is early in 20120618 ( edition should be 0.27.2 ). So someone forgot moving it on Mozilla's last pixman lib update. In fact, at present Mozilla libpixman's Makefile and moz.build don't contain pixman-cpu.c, so pixman-cpu.c is not built, too.
Ah yes good point, it should have been removed long before your patch. And yes(In reply to xunxun from comment #7) > (In reply to Maksim Lin from comment #6) > > (In reply to xunxun from comment #5) > > > Created attachment 811466 [details] [diff] [review] > > > Update libpixman to 0.30.2 > > > > > > Update libpixman to 0.30.2 for m-c patch > > > > Xunxun, it looks like upstream pixman have removed pixman-cpu.c as all its > > functionality was moved into other files. Perhaps pixman-cpu.c should be > > deleted as part of your patch? > > Thanks for pointing it. > I check the libpixman commit, pixman-cpu.c was removed in > 16502dd3ae3bf1d49faf1de533bd58013e168e64, which is early in 20120618 ( > edition should be 0.27.2 ). So someone forgot moving it on Mozilla's last > pixman lib update. > > In fact, at present Mozilla libpixman's Makefile and moz.build don't contain > pixman-cpu.c, so pixman-cpu.c is not built, too. Yes good point, it should have been removed long before your patch. And yes the reason I spotted this was because I noticed it wasn't in moz.build and wasn't being built.
Summary: Update libpixman to 0.30.2 → Update libpixman to 0.32.2
Xunxun, in the future you should make sure to request review from an actual person, so it doesn't get lost. You can find suggested reviewers when you upload an attachment and click the 'suggested reviewers' link. Anyway version 0.32.4 of pixman is realesed by now. Are you planning to update your patch to the new version?
Flags: needinfo?(xunxun1982)
Summary: Update libpixman to 0.32.2 → Update libpixman to 0.32.4
Attachment #811466 - Flags: review?
Attachment #811466 - Flags: feedback?(jmuizelaar)
Attachment #811466 - Flags: feedback?
Thanks for pointing it. I haven't used libpixman 0.32.4 at present, at least for a next month, I have no time to update it. But in future, if no one update it, I will do the work.
Flags: needinfo?(xunxun1982)
To create a new patch, I want to know how the file pixman-combine.*.template created. It seems that pixman-combine*.* are created using make-combine.pl from pixman-combine.*.template
Well, I see, the related code has been removed in libpixman: 8ccda2be30adf9dfcc3087b38a5062258324dcce
Attached patch Update libpixman to 0.32.4 (obsolete) (deleted) — Splinter Review
Newer libpixman adds a SSSE3 code, so I add the "SSSE3_FLAGS", and also prepare SSE3_FLAGS to the future. I am unfamiliar with solaris compiler toolchain, so I don't know whether they are right or wrong below on solaris target: SSE3_FLAGS="-xarch=sse3 -xO4" SSSE3_FLAGS="-xarch=ssse3 -xO4" And I don't know how to add pixman loongson, so I haven't enable the pixman gcc loongson intrinsic functions ( loongson-mmintrin.h ) yet.
Attachment #811466 - Attachment is obsolete: true
Attachment #811466 - Flags: feedback?(jmuizelaar)
Attachment #8395236 - Flags: review?(jmuizelaar)
Flags: needinfo?
Comment on attachment 8395236 [details] [diff] [review] Update libpixman to 0.32.4 Review of attachment 8395236 [details] [diff] [review]: ----------------------------------------------------------------- This drops the gradient dithering code that we currently have (ITER_16, pixman-dither.h etc). I don't think we want to do that.
Attachment #8395236 - Flags: review?(jmuizelaar) → review-
Attachment #8395236 - Attachment is obsolete: true
Attachment #8397041 - Flags: review?(jmuizelaar)
Comment on attachment 8397041 [details] [diff] [review] Update libpixman to 0.32.4 according to the comment 15 Review of attachment 8397041 [details] [diff] [review]: ----------------------------------------------------------------- I'm in Taipei this week and may not get to this until next week.
Flags: needinfo?
http://lists.x.org/archives/xorg-announce/2014-July/002452.html "A new pixman release 0.32.6 is now available. This is a stable release in the 0.32 series containing fixes for exported symbols on MIPS, compiling with the Intel compiler, and for an integer overflow bug."
Summary: Update libpixman to 0.32.4 → Update libpixman to 0.32.6
Status: UNCONFIRMED → NEW
Ever confirmed: true
Attached patch Update libpixman to 0.32.6 (obsolete) (deleted) — Splinter Review
Attachment #8397041 - Attachment is obsolete: true
Attachment #8397041 - Flags: review?(jmuizelaar)
Attachment #8470432 - Flags: feedback?
(In reply to xunxun from comment #20) > Created attachment 8470432 [details] [diff] [review] > Update libpixman to 0.32.6 I also don't know how to detect SSSE3 in every target.
Attached patch Update libpixman to 0.32.6 (deleted) — Splinter Review
I found that configure has HAVE_TOOLCHAIN_SUPPORT_MSSSE3, so I update the patch.
Attachment #8470432 - Attachment is obsolete: true
Attachment #8470432 - Flags: feedback?
Attachment #8482639 - Flags: review?(jfkthame)
Comment on attachment 8482639 [details] [diff] [review] Update libpixman to 0.32.6 Review of attachment 8482639 [details] [diff] [review]: ----------------------------------------------------------------- Jeff usually looks after cairo/pixman stuff, AFAIK, so I think he'd be a better reviewer here.
Attachment #8482639 - Flags: review?(jfkthame) → review?(jmuizelaar)
(In reply to xunxun from comment #22) > Created attachment 8482639 [details] [diff] [review] > Update libpixman to 0.32.6 > > I found that configure has HAVE_TOOLCHAIN_SUPPORT_MSSSE3, so I update the > patch. The patch test failed on WinXP. I will check it, should mark it as Obsolete? 0.30.2 patch is fine on WinXP.
Attachment #8482639 - Attachment is obsolete: true
Attachment #8482639 - Flags: review?(jmuizelaar)
Comment on attachment 8482639 [details] [diff] [review] Update libpixman to 0.32.6 I pushed this patch to try, it needed one change because pixman changed the name of the define to enabled pthreads, but otherwise applied and built fine. https://tbpl.mozilla.org/?tree=Try&rev=828036c3b956 It looks bad but I think there are only three distinct issues. A linux crash when drawing fonts, a Windows crash, and some gradient off-by-one reftest fails. The gradient fails seem to be fuzzed in almost every other configuration already, so fuzzing for this configuration too might be reasonable.
Attachment #8482639 - Attachment is obsolete: false
I also pushed the 0.30.2 patch to try https://tbpl.mozilla.org/?tree=Try&rev=92e19a876678 It only has the gradient reftest failures.
In the 0.32 series, there's 0.32.8 (https://lists.x.org/archives/xorg-announce/2015-September/002637.html) that contains an important fix. "A new pixman release 0.32.8 is now available. This is a stable release that contains an important bug fix (buffer overflow), which can affect 32-bit systems. I recommend to all the distributions that still use the 0.32.x version to upgrade to this release as soon as possible."
Summary: Update libpixman to 0.32.6 → Update libpixman to 0.34.0

Dup'ing forward to bug 1689998, where we're aiming to take a substantially newer libpixman.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: