Summary: | icbltone.c compile warnings on x86_64 - possibly real bug. | ||
---|---|---|---|
Product: | cairo | Reporter: | ellson |
Component: | general | Assignee: | Carl Worth <cworth> |
Status: | RESOLVED FIXED | QA Contact: | cairo-bugs mailing list <cairo-bugs> |
Severity: | normal | ||
Priority: | high | CC: | jwatt |
Version: | 0.9.3 | ||
Hardware: | x86 (IA32) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: | patch to pixman.h suggested by Keith |
Description
ellson
2005-01-19 16:55:05 UTC
The "rewrite" is just moving some newer code over from the X server, but only for the trapezoid rasterization, (most of what is currently in ictrap.c will disappear). It won't affect the function you are looking at. I don't know offhand the details of whats going on in this function, so some investigation would be useful. Right. The problem still exists with the latest updates. Do you happen to know what "BITMAP_BIT_ORDER != MSBFirst" means? Does it really imply bit-order reversal, or just byte order? Do you happen to have a description of bit/byte ordering on x86_64 as compared with i386 ? The 64-bit code in fb (pixman) is probably broken; it hasn't been used in quite some time as PCI (and AGP) is 32-bits wide, so doing things 64-bits at a time is a net loss. To quickly fix this, I suggest just using 32-bit datatypes by setting IC_SHIFT to 5 for all machines. Thanks, that fixes both the compile warnings (this bug) and the distortion of fonts from cairo-demo/png/text.c reported to the cairo list a few days ago. patch follows Created attachment 1733 [details] [review] patch to pixman.h suggested by Keith I've committed a fix for this, but have not tested on any 64-bit platforms. Please test and re-open the report if necessary. Works for me on x86_64. Do you happen to know, or can you suggest a test to find out what this does to in-memory bitmaps? I'm hoping it doesn't double their size? Move bugs against "cvs" version to "0.9.3" so we can remove the "cvs" version. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.