Hi, I've found that when I compile my code for i586 or x86_64, I get different slightly different bitmaps using freetype. I eventually got to gray_render_scanline in src/smooth/ftgrays.c and noticed that we have a different implementation of gray_render_scanline for FT_LONG64 and !FT_LONG64. I've been using v2.9, but see the same behavior on 2.9.1, 2.10, and master.
Commit 77180c reenabled the new line renderer for 64bit archs on June 8, 2016, making the version of gray_render_scanline dependent on cpu width. I've found that if I use either the new line renderer or the original (i.e. replace the #ifndef FT_LONG64 in ftgrays.c with with #if 0 or #if 1), I get identical that is independent of cpu bits. As I regularly build my code for 32-bit and 64-bit, I'd like to avoid having two sets of reference output. So, is this a surprise to anyone? Should the two versions behave identically in the absence of overflow or other extreme cases? I'd be happy to continue my investigation and provide a trace or anything else useful to show that they behave differently. Thanks! John
_______________________________________________ Freetype-devel mailing list Freetype-devel@nongnu.org https://lists.nongnu.org/mailman/listinfo/freetype-devel