[Pixman] mmx build regression

Jeremy Huddleston jeremyhu at apple.com
Wed Feb 22 20:04:02 PST 2012

FWIW, I bisected it to this commit:

14208344964f341a7b4a704b05cf4804c23792e9 is the first bad commit
commit 14208344964f341a7b4a704b05cf4804c23792e9
Author: Matt Turner <mattst88 at gmail.com>
Date:   Sun Feb 19 01:32:31 2012 -0500

    mmx: Use _mm_mulhi_pu16
    The pmulhuw x86 instruction is part of Extended 3DNow! and SSE1. The
    equivalent ARM wmuluh instruction was available from the first iwMMXt
    instrucion set.
    This instruction is already used in the SSE2 code.
    Reduces code size by ~5%.
      text    data     bss     dec     hex filename
     31325    2240       0   33565    831d .libs/libpixman_mmx_la-pixman-mmx.o
     29925    2240       0   32165    7da5 .libs/libpixman_mmx_la-pixman-mmx.o
      text    data     bss     dec     hex filename
     29165    1792       0   30957    78ed .libs/libpixman_mmx_la-pixman-mmx.o
     27677    1792       0   29469    731d .libs/libpixman_mmx_la-pixman-mmx.o
      text    data     bss     dec     hex filename
     31632    1792       0   33424    8290 .libs/libpixman_iwmmxt_la-pixman-mmx.o
     30176    1792       0   31968    7ce0 .libs/libpixman_iwmmxt_la-pixman-mmx.o
    Signed-off-by: Matt Turner <mattst88 at gmail.com>

:040000 040000 0f7d233a929694160a0f007bb8f638d91b95d87a c22642bfdda5a21a08aadd96477548cb4d4618ef M	pixman

# bad: [51ae3f2d7f25daebbc767f161f0097b581d1554b] mmx: Delete unused function in_over_full_src_alpha()
# good: [a14f0f66bba987d5cdcb4a3e0f3e9f7c35d3f6f0] autoconf: use #error instead of error
git bisect start 'HEAD' 'a14f0f66bba987d5cdcb4a3e0f3e9f7c35d3f6f0'
# bad: [84221f4c1687b8ea14e9cbdc78b2ba7258e62c9e] mmx: Use _mm_shuffle_pi16
git bisect bad 84221f4c1687b8ea14e9cbdc78b2ba7258e62c9e
# bad: [14208344964f341a7b4a704b05cf4804c23792e9] mmx: Use _mm_mulhi_pu16
git bisect bad 14208344964f341a7b4a704b05cf4804c23792e9
# good: [69ed71fad11d541f89eee1238c587a03a9cf59cb] mmx: enable over_x888_8_8888 on ARM/iwMMXt
git bisect good 69ed71fad11d541f89eee1238c587a03a9cf59cb

On Feb 21, 2012, at 11:27 PM, Jeremy Huddleston <jeremyhu at freedesktop.org> wrote:

> I just got my tinderbox back up today and noticed this build regression in pixman.  I haven't looked into it yet, but git-log blames Matt ;)  
> http://tinderbox.x.org/builds/2012-02-22-0001/logs/pixman/#build
> The warnings are harmless.  I wish the error was more verbose, but that's all I got.  I'll try bisecting when I get a chance, but I'm overloaded right now and wanted to report this since you might have an idea before I get some time.
> --Jeremy
> libtool: compile:  /opt/local/libexec/llvm-3.0/libexec/scan-build/ccc-analyzer -DHAVE_CONFIG_H -I. -I.. -I/Users/jeremy/src/freedesktop/jhbuild/build/include -I/Users/jeremy/src/freedesktop/jhbuild/external/build/include -mmmx -Winline -O0 -pipe -Wall -Wextra -Wno-sign-compare -Wno-unused-parameter -Wno-missing-field-initializers -Wformat=2 -fdiagnostics-show-category=name -Wall -fno-strict-aliasing -fvisibility=hidden -D_REENTRANT -c pixman-mmx.c  -fno-common -DPIC -o .libs/libpixman_mmx_la-pixman-mmx.o
> pixman-mmx.c:63:73: warning: unknown attribute '__artificial__' ignored [-Wattributes,Semantic Issue]
> extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
>                                                                        ^
> pixman-mmx.c:73:73: warning: unknown attribute '__artificial__' ignored [-Wattributes,Semantic Issue]
> extern __inline __m64 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
>                                                                        ^
> fatal error: error in backend: Invalid operand for inline asm constraint 'K'!
> make[3]: *** [libpixman_mmx_la-pixman-mmx.lo] Error 1
> make[2]: *** [all] Error 2
> make[1]: *** [all-recursive] Error 1
> make: *** [all] Error 2
> scan-build: 2 bugs found.
> scan-build: Run 'scan-view /Users/jeremy/src/freedesktop/jhbuild/analyzer/yuffie/20120221-1900/pixman/2012-02-21-1' to examine bug reports.

More information about the Pixman mailing list