Commit Graph

213 Commits

Author SHA1 Message Date
Søren Sandmann Pedersen
1e1a00e964 Pre-release version bump to 0.25.6
Note that 0.25.4 was a botched release that doesn't have a tag and
doesn't correspond to any commit ID. It was however uploaded and
announced, so I'll just use the 0.25.6 version number.
2012-05-15 13:20:09 -04:00
Matt Turner
50d3088d78 configure.ac: Rename loongson -> loongson-mmi
Make it match with the other fast paths, and the PIXMAN_DISABLE value is
already loongson-mmi.
2012-05-11 21:59:13 -04:00
Matt Turner
a0a40cb822 configure.ac: Fix loongson-mmi out-of-tree builds
When building out-of-tree, gcc wasn't able to find loongson-mmintrin.h
to compile the test program. Add -I$srcdir to CFLAGS to point gcc to it.
2012-05-11 21:49:42 -04:00
Matt Turner
2beabd9fed configure.ac: make -march=loongson2f come before CFLAGS
Otherwise we'd have -march=loongson2f being overridden by automake's
CFLAGS ordering which causes build failures when -march=<not loongson2f>
is specified by the user.
2012-05-10 16:15:34 -04:00
Matt Turner
c78e986085 mmx: compile on MIPS for Loongson MMI optimizations
image               image16
           evolution   32.985 ->  29.667    27.314 ->  23.870
firefox-planet-gnome  197.982 -> 180.437   220.986 -> 205.057
gnome-system-monitor   48.482 ->  49.752    52.820 ->  49.528
  gnome-terminal-vim   60.799 ->  50.528    51.655 ->  44.131
      grads-heat-map    3.167 ->   3.181     3.328 ->   3.321
                gvim   38.646 ->  32.552    38.126 ->  34.453
       midori-zoomed   44.371 ->  43.338    28.860 ->  28.865
           ocitysmap   23.065 ->  18.057    23.046 ->  18.055
             poppler   43.676 ->  36.077    43.065 ->  36.090
  swfdec-giant-steps   20.166 ->  20.365    22.354 ->  16.578
      swfdec-youtube   31.502 ->  28.118    44.052 ->  41.771
   xfce4-terminal-a1   69.517 ->  51.288    62.225 ->  53.309
2012-04-27 13:35:05 -04:00
Matt Turner
e291764584 configure.ac: fix iwMMXt/gcc version error message 2012-04-18 18:14:13 -04:00
Matt Turner
e927d23971 configure.ac: require >= gcc-4.5 for ARM iwMMXt
We're using a patched gcc-4.5, and having to modify configure.ac and
autoreconf between changes is annoying. And besides, 4.5, 4.6, and 4.7's
iwMMXt intrinsic support is equally broken, and we test a known broken
intrinsic in the configure test program, so the version check is rather
meaningless.
2012-04-15 14:00:17 -04:00
Jeremy Huddleston
8a8aabf05c configure.ac: Fix a copy-paste-o in TLS detection
Regression from: a069da6c66

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Tested-by: Matt Turner <mattst88@gmail.com>
2012-03-16 12:41:14 -07:00
Matt Turner
ee6bac11c2 Use AC_LANG_SOURCE for DSPr2 configure program
Signed-off-by: Matt Turner <mattst88@gmail.com>
2012-03-15 16:49:29 -04:00
Jeremy Huddleston
94aea2e868 Fix a false-negative in MMX check
Silence warnings that could make -Werror give a false negative
Use signed char to avoid cases where int8_t isn't declared

Reported-by: Mike Lothian <mike@fireburn.co.uk>
Tested-by: Mike Lothian <mike@fireburn.co.uk>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-03-14 19:10:22 -07:00
Jeremy Huddleston
a069da6c66 Expand TLS support beyond __thread to __declspec(thread)
This code was pretty much coppied from a similar commit that I made to
xorg-server in April.

cf: xorg/xserver: bb4d145bd25e2aee988b100ecf1105ea3b6a40b8

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-03-13 18:02:26 -04:00
Jeremy Huddleston
61d999b910 Disable MMX when incompatible clang is being used.
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-03-13 18:02:26 -04:00
Jeremy Huddleston
bb5ff26878 Revert "Disable MMX when Clang is being used."
This reverts commit 5eb4c12a79.
2012-03-13 18:02:25 -04:00
Søren Sandmann Pedersen
a6ad5120f7 Post-release version bump to 0.25.3 2012-03-08 10:11:20 -05:00
Søren Sandmann Pedersen
f73f798531 Pre-release version bump to 0.25.2 2012-03-08 09:33:16 -05:00
Nemanja Lukic
1364c91bd1 MIPS: DSPr2: Basic infrastructure for MIPS architecture
MIPS DSP instruction set extensions
2012-02-25 15:06:43 -05:00
Søren Sandmann Pedersen
5eb4c12a79 Disable MMX when Clang is being used.
There are several issues with the Clang compiler and pixman-mmx.c:

- When not optimizing, it doesn't seem to recognize that an argument
  to an __always_inline__ function is compile-time constant. This
  results in this error being produced:

      fatal error: error in backend: Invalid operand for inline asm
              constraint 'K'!

- This inline assembly:

      asm ("pmulhuw %1, %0\n\t"
          : "+y" (__A)
          : "y" (__B)
      );

  results in

      fatal error: error in backend: Unsupported asm: input constraint
              with a matching output constraint of incompatible type!

So disable MMX when the compiler is Clang.
2012-02-24 16:30:41 -05:00
Matt Turner
a14f0f66bb autoconf: use #error instead of error
We'd rather see the actual #error message rather than a syntax error in
config.log.

Signed-off-by: Matt Turner <mattst88@gmail.com>
2012-02-20 18:36:24 -05:00
Matt Turner
e27bdcd968 Make sure to run AC_SUBST IWMMXT_CFLAGS
Allows you to compile without -flax-vector-conversions in your CFLAGS,
though -march=iwmmxt2 is still necessary since specifying some other
-march= value will override it, and disable iwmmxt.

Signed-off-by: Matt Turner <mattst88@gmail.com>
2012-02-17 18:10:37 -05:00
Jeremy Huddleston
82a3980701 configure.ac: Add an --enable-libpng option
Now there is a way to not link against libpng even if it's available.

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-02-16 15:22:32 -05:00
Matt Turner
46fc4eb234 Use AC_LANG_SOURCE for iwMMXt configure program
Signed-off-by: Matt Turner <mattst88@gmail.com>
2012-02-11 23:47:10 -05:00
Naohiro Aota
84450c411c Don't use non-POSIX test
test "$test_CFLAGS" == "" &&         \

may cause an error on some POSIX shells and uses a style which is not
consistent with the other tests in configure.ac

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=42588 and
https://bugs.gentoo.org/show_bug.cgi?id=387087
2011-11-24 14:23:29 +01:00
Søren Sandmann Pedersen
8d72d35b29 Post-release version bump to 0.25.1 2011-11-06 16:36:01 -05:00
Søren Sandmann Pedersen
973dc7d319 Pre-release version bump to 0.24.0 2011-11-06 16:10:33 -05:00
Søren Sandmann Pedersen
697cfe1537 Post-release version bump to 0.23.9 2011-10-29 05:51:54 -04:00
Søren Sandmann Pedersen
a0f1b56581 Pre-release version bump to 0.23.8 2011-10-29 05:33:44 -04:00
Søren Sandmann Pedersen
bb7142d361 Post-release version bump to 0.23.7 2011-10-11 06:10:39 -04:00
Søren Sandmann Pedersen
e20ac40bd3 Pre-release version bump to 0.23.6 2011-10-11 06:00:51 -04:00
Matt Turner
741eb8462c Correct the minimum gcc version needed for iwmmxt
Spotted by Søren Sandmann.

Signed-off-by: Matt Turner <mattst88@gmail.com>
2011-10-06 17:56:09 -04:00
Matt Turner
0a34277180 Make sure iwMMXt is only detected on ARM
iwMMXt is incorrectly detected on x86 and amd64. This happens because
the test uses standard _mm_* intrinsic functions which it compiles with
-march=iwmmxt, but when the user has set CFLAGS=-march=k8 for instance,
no error is generated from -march=iwmmxt, even though it's not a valid
flag on x86/amd64. Passing CFLAGS=-march=native does not override the
-march=iwmmxt flag though, which is why it wasn't noticed before.

So, just #error out in the test if the __arm__ preprocessor directive
isn't defined.

Fixes https://bugs.gentoo.org/show_bug.cgi?id=385179

Signed-off-by: Matt Turner <mattst88@gmail.com>
2011-10-06 17:52:12 -04:00
Matt Turner
7ab94c5f99 mmx: compile on ARM for iwmmxt optimizations
Check in configure for at least gcc-4.6, since gcc-4.7 (and hopefully
4.6) will be the eariest version capable of compiling the _mm_*
intrinsics on ARM/iwmmxt. Even for suitable compile versions I use
_mm_srli_si64 which is known to cause unpatched compilers to fail.

Select iwmmxt at runtime only after NEON, since we expect the NEON
optimizations to be more capable and faster than iwmmxt.

Signed-off-by: Matt Turner <mattst88@gmail.com>
2011-09-27 13:13:15 -04:00
Matt Turner
02c1f1a022 mmx: rename USE_MMX to USE_X86_MMX
This will make upcoming ARM usage of pixman-mmx.c unambiguous.

Signed-off-by: Matt Turner <mattst88@gmail.com>
2011-09-27 13:12:50 -04:00
Søren Sandmann Pedersen
9882d832f6 Use pkg-config to determine the flags to use with libpng
Previously we would unconditionally link with -lpng leading to build
failures on systems without libpng.
2011-09-12 22:39:53 -04:00
Søren Sandmann Pedersen
99a53667da test: New function to save a pixman image to .png
When debugging it is often very useful to be able to save an image as
a png file. This commit adds a function "write_png()" that does that.

If libpng is not available, then the function becomes a noop.
2011-09-10 04:07:50 -04:00
Søren Sandmann Pedersen
1e1ae0bf6e Post-release version bump to 0.23.5 2011-09-09 23:59:20 -04:00
Søren Sandmann Pedersen
f901e3b58b Pre-release version bump to 0.23.4 2011-09-09 23:51:11 -04:00
Søren Sandmann Pedersen
ed6d2f1cec Post-release version bump to 0.23.3 2011-07-04 15:35:17 -04:00
Søren Sandmann Pedersen
6c4001a0e1 Pre-release version bump to 0.23.2 2011-07-04 08:13:19 -04:00
Andrea Canciani
d815a1c54a Silence autoconf warnings
Autoconf 2.86 reports:

warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body

Every code fragment must be wrapped in [AC_LANG_SOURCE([...])]
2011-06-23 10:47:43 +02:00
Dave Yeo
838c2b593e Check for working mmap()
OS/2 doesn't have a working mmap().
2011-05-09 12:38:44 +02:00
Søren Sandmann Pedersen
c53625a36e Post-release version bump to 0.23.1 2011-05-02 05:11:49 -04:00
Søren Sandmann Pedersen
918a544406 Pre-release version bump to 0.22.0 2011-05-02 05:06:33 -04:00
Søren Sandmann Pedersen
71b2e2745b Post-release version bump to 0.21.9 2011-04-19 00:22:29 -04:00
Søren Sandmann Pedersen
89868e93bd Pre-release version bump to 0.21.8 2011-04-19 00:00:37 -04:00
Gilles Espinasse
1670b95214 Fix OpenMP not supported case
PIXMAN_LINK_WITH_ENV did not fail unless -Wall -Werror is used.
So even when the compiler did not support OpenMP, USE_OPENMP was defined.
Fix that by running the second OpenMP test only when first AC_OPENMP find supported

configure tested in the cases :
gcc without libgomp support, no openmp option, --enable-openmp and --disable-openmp
gcc with libgomp support, no openmp option, --enable-openmp and --disable-openmp

Not tested with autoconf version not knowing openmp (<2.62)

Warn when --enable-openmp is requested but no support is found

Signed-off-by: Gilles Espinasse <g.esp@free.fr>
2011-04-18 16:13:58 -04:00
Gilles Espinasse
b9e8f7fb74 Fix missing AC_MSG_RESULT value from Werror test
Use the correct variable name

Signed-off-by: Gilles Espinasse <g.esp@free.fr>
2011-04-18 16:13:58 -04:00
Søren Sandmann Pedersen
48e951000c Post-release version bump to 0.21.7 2011-02-22 16:13:32 -05:00
Søren Sandmann Pedersen
8b33321660 Pre-release version bump to 0.21.6 2011-02-22 15:43:41 -05:00
Søren Sandmann Pedersen
87cd6b8056 sse2: Don't compile pixman-sse2.c with -mmmx anymore
It's not necessary now that the file doesn't use MMX instructions.
2011-02-18 16:03:29 -05:00
Søren Sandmann Pedersen
7dfe845786 Move all the GTK+ based test programs to a new subdir, "demos"
This separates the test suite from the random gtk+ using test
programs. "demos" is somewhat misleading because the programs there
are not particularly exciting (with the possible exception of
composite-test which shows off all the compositing operators).
2011-02-15 09:25:17 -05:00