summaryrefslogtreecommitdiff
path: root/app/x11perf
diff options
context:
space:
mode:
authorMatthieu Herrb <matthieu@cvs.openbsd.org>2008-04-19 16:23:02 +0000
committerMatthieu Herrb <matthieu@cvs.openbsd.org>2008-04-19 16:23:02 +0000
commit274aeaea2ad7a5707adfb8ce4dd5cb5d4d77c033 (patch)
treea0a0be39c2cad8e42aa510004f00e23b494211c3 /app/x11perf
parentbba04c17ddd44dca56e642d502a6631debcac6cf (diff)
update to x11perf 1.5
Diffstat (limited to 'app/x11perf')
-rw-r--r--app/x11perf/ChangeLog334
-rw-r--r--app/x11perf/Makefile.am10
-rw-r--r--app/x11perf/Makefile.in18
-rw-r--r--app/x11perf/Xmark.man10
-rw-r--r--app/x11perf/aclocal.m412
-rw-r--r--app/x11perf/configure24
-rw-r--r--app/x11perf/configure.ac3
-rw-r--r--app/x11perf/do_blt.c114
-rw-r--r--app/x11perf/do_tests.c24
-rw-r--r--app/x11perf/x11perf.c167
-rw-r--r--app/x11perf/x11perf.h37
-rw-r--r--app/x11perf/x11perf.man4
12 files changed, 682 insertions, 75 deletions
diff --git a/app/x11perf/ChangeLog b/app/x11perf/ChangeLog
index 85e5facbe..14bf77349 100644
--- a/app/x11perf/ChangeLog
+++ b/app/x11perf/ChangeLog
@@ -1,52 +1,318 @@
-2006-03-02 Adam Jackson <ajax@freedesktop.org>
+commit 828c0323450eadaf040749c010918679f5e4fe53
+Author: Adam Jackson <ajax@redhat.com>
+Date: Fri Mar 7 16:51:53 2008 -0500
- * configure.ac:
- Bump to 1.4.1 (was 1.0.1 because we screwed up during modularising).
+ x11perf-1.5
-2006-02-14 Keith Packard <keithp@keithp.com>
+commit 1540dc21e1ef7bb473af7616294e5730e38f66ec
+Author: James Cloos <cloos@jhcloos.com>
+Date: Thu Dec 6 16:37:08 2007 -0500
- * Makefile.am:
- * configure.ac:
- * x11perf.h:
- Split detection of Xrender and Xft.
- Add detection of MIT-SHM.
- Clean up CFLAGS in Makefile.am
+ Replace static ChangeLog with dist-hook to generate from git log
-2006-02-13 Eric Anholt <anholt@FreeBSD.org>
+commit b1c5b72bb4bb5f3e116255f9d04b368137ff25f7
+Author: Michel Dänzer <michel@tungstengraphics.com>
+Date: Thu Nov 1 09:13:43 2007 +0100
- * configure.ac:
- * x11perf.c:
- * x11perf.h:
- Detect when Render is available and turn those tests on.
+ Fix typos in descriptions of -compwinwin{1,5}00.
-2005-12-20 Kevin E. Martin <kem-at-freedesktop-dot-org>
+commit 569a5eaaef9a5c8bf50f1323fe39e81347976875
+Merge: 55aa9c2... e906fe5...
+Author: Keith Packard <keithp@koto.keithp.com>
+Date: Mon Sep 10 16:56:06 2007 +0100
- * configure.ac:
- Update package version for X11R7 release.
+ Merge branch 'origin'
-2005-12-14 Kevin E. Martin <kem-at-freedesktop-dot-org>
+commit 55aa9c238c5d81c9dc0f679dfd2fea00f356247b
+Author: Keith Packard <keithp@koto.keithp.com>
+Date: Mon Sep 10 16:12:29 2007 +0100
- * configure.ac:
- Update package version number for final X11R7 release candidate.
+ Add Compositing tests.
+
+ -compwinwinXX, -comppixwinXX where XX is 10, 100 or 500.
+
+ -pop <POP> <POP> ... where <POP> is one of Clear, Src, Dst, Over,
+ OverReverse, In, InReverse, Out, OutReverse, Atop, AtopReverse, Xor, Add or
+ Saturate.
+
+ -format <FORMAT> <FORMAT> ... where <FORMAT> is one of RGB24, ARGB32, A8,
+ A4, A1 or NATIVE
-2005-12-06 Kevin E. Martin <kem-at-freedesktop-dot-org>
+commit 8b3b9d1d1d3a255000fb43bd09c62ef1e0798023
+Author: Keith Packard <keithp@koto.keithp.com>
+Date: Mon Sep 10 16:08:51 2007 +0100
- * Makefile.am:
- Change *man_SOURCES ==> *man_PRE to fix autotools warnings.
+ Rename .cvsignore to .gitignore
-2005-12-03 Kevin E. Martin <kem-at-freedesktop-dot-org>
+commit e906fe589a852e9b4af4aac6c72580494139a0b7
+Author: Eric S. Raymond <esr@thyrsus.com>
+Date: Tue Jan 2 10:07:00 2007 -0800
- * configure.ac:
- Update package version number for X11R7 RC3 release.
+ Bug 9520: Markup problems in Xmark.1x
+
+ X.Org Bugzilla #9520 <https://bugs.freedesktop.org/show_bug.cgi?id=9520>
-2005-11-20 Alan Coopersmith <alan.coopersmith@sun.com>
+commit d36c3c0e7db2254dc1385fe7ffc187797e109e0e
+Author: Alan Coopersmith <alan.coopersmith@sun.com>
+Date: Wed Apr 11 15:45:48 2007 -0700
- * configure.ac:
- Change dependency from xmu to xmuu since the full xmu
- (with all its baggage like Xt) is not needed here.
+ Another man page typo fix: s/aprox./approx./
-2005-10-18 Kevin E. Martin <kem-at-freedesktop-dot-org>
+commit e9bb1f2d13cad8240cc95f1aae19316fe7568cbd
+Author: Alan Coopersmith <alan.coopersmith@sun.com>
+Date: Wed Apr 11 15:41:27 2007 -0700
- * configure.ac:
- Update package version number for RC1 release.
+ renamed: .cvsignore -> .gitignore
+commit ad4686b388da891ca07fba41a748ea90a3bb15cb
+Author: Alan Coopersmith <alan.coopersmith@sun.com>
+Date: Wed Apr 11 15:39:23 2007 -0700
+
+ Bug #10616: Man page typo: s/peform/perform/
+
+ X.Org Bugzilla #10616 <https://bugs.freedesktop.org/show_bug.cgi?id=10616>
+ Reported upstream from
+ Debian Bug #395445 <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=395445>
+
+commit fabb885e8db6dd54d31b7223e9bb4f5d9e835d8c
+Author: Adam Jackson <ajax@nwnk.net>
+Date: Thu Mar 2 23:36:27 2006 +0000
+
+ Bump to 1.4.1 (was 1.0.1 because we screwed up during modularising).
+
+commit 21ce0f2bab1743ed15474ba1468286d6782bf781
+Author: Keith Packard <keithp@keithp.com>
+Date: Tue Feb 14 16:33:38 2006 +0000
+
+ Split detection of Xrender and Xft. Add detection of MIT-SHM. Clean up
+ CFLAGS in Makefile.am
+
+commit 32393ee83c8ad63dbb54aab709cdd4dc5802a74c
+Author: Eric Anholt <anholt@freebsd.org>
+Date: Tue Feb 14 02:48:22 2006 +0000
+
+ Detect when Render is available and turn those tests on.
+
+commit d121367a04832aafb27800283bac5ce35365d84e
+Author: Kevin E Martin <kem@kem.org>
+Date: Wed Dec 21 02:29:48 2005 +0000
+
+ Update package version for X11R7 release.
+
+commit 883de694b5dac055f0d7fd33cb84ee10c080ba8c
+Author: Adam Jackson <ajax@nwnk.net>
+Date: Mon Dec 19 16:22:42 2005 +0000
+
+ Stub COPYING files
+
+commit 2c3643dc1503b7e9136f678e0af238d507acf262
+Author: Kevin E Martin <kem@kem.org>
+Date: Thu Dec 15 00:24:04 2005 +0000
+
+ Update package version number for final X11R7 release candidate.
+
+commit 8e9f6aa0f81fa57e8b08684a1110e945f6f0dacd
+Author: Kevin E Martin <kem@kem.org>
+Date: Tue Dec 6 22:48:19 2005 +0000
+
+ Change *man_SOURCES ==> *man_PRE to fix autotools warnings.
+
+commit e09f755a36b9848a7c76013d324713b1ee5cf0e3
+Author: Kevin E Martin <kem@kem.org>
+Date: Sat Dec 3 05:49:18 2005 +0000
+
+ Update package version number for X11R7 RC3 release.
+
+commit 9a94217191edf8e719ff9d4fbf485b5c33d0bde3
+Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
+Date: Mon Nov 28 22:01:39 2005 +0000
+
+ Change *mandir targets to use new *_MAN_DIR variables set by xorg-macros.m4
+ update to fix bug #5167 (Linux prefers *.1x man pages in man1 subdir)
+
+commit 95895b619909e2b9f2e144e972b83aee6595d5f3
+Author: Eric Anholt <anholt@freebsd.org>
+Date: Mon Nov 21 10:34:58 2005 +0000
+
+ Another pass at .cvsignores for apps.
+
+commit 67eaa3cc45db8ab1a9aedb4675a09d5a3db31a7f
+Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
+Date: Mon Nov 21 03:14:15 2005 +0000
+
+ Change dependency from xmu to xmuu since the full xmu (with all its baggage
+ like Xt) is not needed here.
+
+commit 583d5d1c988ab24c61e2bbb21a5e5847328e86ec
+Author: Eric Anholt <anholt@freebsd.org>
+Date: Sun Nov 20 22:08:50 2005 +0000
+
+ Add/improve .cvsignore files for apps.
+
+commit 2350482506abae44fcf656a3383c354ac2910d34
+Author: Kevin E Martin <kem@kem.org>
+Date: Wed Oct 19 02:47:50 2005 +0000
+
+ Update package version number for RC1 release.
+
+commit a489b54c63515aa2be297ef340501b1b7ef09423
+Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
+Date: Mon Oct 17 23:56:21 2005 +0000
+
+ Use @APP_MAN_SUFFIX@ instead of $(APP_MAN_SUFFIX) in macro substitutions to
+ work better with BSD make
+
+commit 4ac6e7bffbd29ae179fbc053a8317db4fa2f3f75
+Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
+Date: Fri Oct 14 00:25:42 2005 +0000
+
+ Use sed to fill in variables in man page
+
+commit 64a324c6ffd7ba8a9bce52d41db3e63d77b69eca
+Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
+Date: Thu Oct 6 20:04:20 2005 +0000
+
+ Strip .sh from filenames of scripts to match the way they are installed by
+ the monolith
+
+commit eb51653deaa7a8cac0bac02f4a1fe4cd8291590b
+Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
+Date: Thu Oct 6 03:47:12 2005 +0000
+
+ Fix file names of beforelight, x11perfcomp, and xlsclients man pages
+
+commit eb44ab57c5e989429f94bb67d01abaef70b9174d
+Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
+Date: Mon Aug 1 20:25:28 2005 +0000
+
+ Install man pages to section 1 instead of section m (Patch from Donnie
+ Berkholz)
+
+commit a1e27c9edcb4b99a0550e674dea66bd1d3111747
+Author: Kevin E Martin <kem@kem.org>
+Date: Fri Jul 29 21:22:30 2005 +0000
+
+ Various changes preparing packages for RC0:
+ - Verify and update package version numbers as needed
+ - Implement versioning scheme
+ - Change bug address to point to bugzilla bug entry form
+ - Disable loadable i18n in libX11 by default (use --enable-loadable-i18n to
+ reenable it)
+ - Fix makedepend to use pkgconfig and pass distcheck
+ - Update build script to build macros first
+ - Update modular Xorg version
+
+commit 9dc00b804b6283a6371cae136f0c4abc743e3462
+Author: Kevin E Martin <kem@kem.org>
+Date: Thu Jul 28 15:57:12 2005 +0000
+
+ Fix distcheck for remaining apps
+
+commit 8b5dc957345bbee8349340e345a6a06ec42a16e8
+Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
+Date: Tue Jul 26 18:58:15 2005 +0000
+
+ Use AC_TYPE_SIGNAL and AC_FUNC_VFORK to replace Imake's SIGNAL_DEFINES and
+ -DHAS_VFORK
+
+commit 74c819bed573af85aabd92f023c885e53fb0cf77
+Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
+Date: Tue Jul 26 18:55:42 2005 +0000
+
+ Add config.h includes for modularization Use RETSIGTYPE if defined by
+ autoconf in addition to Imake's SIGNALRETURNSINT. Use
+ HAVE_WORKING_VFORK if defined by autoconf in addition to Imake's
+ HAS_VFORK
+
+commit 81a51fb38778c54442657142cf5d57fae4ac3e0e
+Author: Adam Jackson <ajax@nwnk.net>
+Date: Wed Jul 20 19:31:51 2005 +0000
+
+ Use a unique token for PKG_CHECK_MODULES. Otherwise, if you use a global
+ configure cache, you cache it, and the cached value is probably wrong.
+
+commit 2975cf615c2e0b79c3392d6d95b393ce4b0fd312
+Author: Alan Coopersmith <Alan.Coopersmith@sun.com>
+Date: Sat Jul 16 23:29:38 2005 +0000
+
+ x11perf/Makefile.am: xinit/Makefile.am: xvidtune/Makefile.am:
+ - Replace $< with portable macro xinit/Makefile.am: xinit/configure.ac:
+ xvidtune/Makefile.am: xvidtune/configure.ac:
+ - Use more portable cpp invocations for pre-processing files
+ xfs/configure.ac:
+ - Add XTRANS_CONNECTION_FLAGS so xtrans transport type defines are set
+ correctly
+
+commit 68ebb5b755791822c2f1d9f9659c2ee94bb63f1c
+Author: Søren Sandmann Pedersen <sandmann@daimi.au.dk>
+Date: Wed Jun 29 20:41:01 2005 +0000
+
+ Add x11perf build system Add some x11perf shell script to symlink.sh
+
+commit 21b7ff0b54fcf28e933738aaaedf5aef46880717
+Author: Eric Anholt <anholt@freebsd.org>
+Date: Wed Aug 11 08:05:31 2004 +0000
+
+ - Fix the build with old libXrender headers installed by including
+ TOP_INCLUDES first in the INCLUDES line.
+ - Drive-by fix of unused variables warnings in do_traps.c.
+
+commit 9f86498395945e52accedc6bf3d938c2d21abd5d
+Author: Keith Packard <keithp@keithp.com>
+Date: Fri Aug 6 23:42:11 2004 +0000
+
+ Add RenderAddTraps. Rewrite trapezoid rendering code.
+
+commit cc61a0dd9da513e24a0c39793e4e70237a8d35b5
+Author: Egbert Eich <eich@suse.de>
+Date: Fri Apr 23 19:54:38 2004 +0000
+
+ Merging XORG-CURRENT into trunk
+
+commit 3208453773436841fd97a5a841f75aea2a84ea07
+Author: Egbert Eich <eich@suse.de>
+Date: Sun Mar 14 08:34:59 2004 +0000
+
+ Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004
+
+commit c090b9c09ddb3f21983506a90418d6e5387cbd94
+Author: Egbert Eich <eich@suse.de>
+Date: Wed Mar 3 12:12:54 2004 +0000
+
+ Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004
+
+commit c501072fc6aae9867785226575d87b6a3d89ecaa
+Author: Egbert Eich <eich@suse.de>
+Date: Thu Feb 26 13:36:16 2004 +0000
+
+ readding XFree86's cvs IDs
+
+commit 767875979a99fba9d7c00fd9eb7da316d88596dc
+Author: Egbert Eich <eich@suse.de>
+Date: Thu Feb 26 09:23:58 2004 +0000
+
+ Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004
+
+commit c3ee38aec0f064a3916ecef9a29ecf6538a794a1
+Author: Kaleb Keithley <kaleb@freedesktop.org>
+Date: Tue Nov 25 19:29:03 2003 +0000
+
+ XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks
+
+commit ee11b04c48b57b74beacd0a905fbc96a86c75931
+Author: Kaleb Keithley <kaleb@freedesktop.org>
+Date: Fri Nov 14 16:48:58 2003 +0000
+
+ XFree86 4.3.0.1
+
+commit 76312369bde4267f6405a4e1d26697258cc06b32
+Author: Kaleb Keithley <kaleb@freedesktop.org>
+Date: Fri Nov 14 16:48:58 2003 +0000
+
+ Initial revision
+
+commit d7d99c8433b3bd35c8bad352ebd1fc49cff45264
+Author: Kaleb Keithley <kaleb@freedesktop.org>
+Date: Fri Nov 14 15:54:53 2003 +0000
+
+ R6.6 is the Xorg base-line
diff --git a/app/x11perf/Makefile.am b/app/x11perf/Makefile.am
index d6359099e..b8205452f 100644
--- a/app/x11perf/Makefile.am
+++ b/app/x11perf/Makefile.am
@@ -96,3 +96,13 @@ SUFFIXES = .$(APP_MAN_SUFFIX) .man
.man.$(APP_MAN_SUFFIX):
sed $(MAN_SUBSTS) < $< > $@
+
+EXTRA_DIST += ChangeLog
+MAINTAINERCLEANFILES = ChangeLog
+
+.PHONY: ChangeLog
+
+ChangeLog:
+ (GIT_DIR=$(top_srcdir)/.git git-log > .changelog.tmp && mv .changelog.tmp ChangeLog; rm -f .changelog.tmp) || (touch ChangeLog; echo 'git directory not found: installing possibly empty changelog.' >&2)
+
+dist-hook: ChangeLog
diff --git a/app/x11perf/Makefile.in b/app/x11perf/Makefile.in
index f7fcaed74..8aa4c3003 100644
--- a/app/x11perf/Makefile.in
+++ b/app/x11perf/Makefile.in
@@ -258,7 +258,7 @@ appman_PRE = \
Xmark.man
CLEANFILES = $(bin_SCRIPTS) x11perfcomp $(appman_DATA)
-EXTRA_DIST = x11pcomp.cpp $(appman_PRE)
+EXTRA_DIST = x11pcomp.cpp $(appman_PRE) ChangeLog
appmandir = $(APP_MAN_DIR)
appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@)
@@ -279,6 +279,7 @@ MAN_SUBSTS = \
-e 's|__filemansuffix__|$(FILE_MAN_SUFFIX)|g'
SUFFIXES = .$(APP_MAN_SUFFIX) .man
+MAINTAINERCLEANFILES = ChangeLog
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-am
@@ -532,6 +533,9 @@ distdir: $(DISTFILES)
|| exit 1; \
fi; \
done
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" distdir="$(distdir)" \
+ dist-hook
-find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
@@ -661,6 +665,7 @@ distclean-generic:
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
clean: clean-am
clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
@@ -717,8 +722,8 @@ uninstall-am: uninstall-appmanDATA uninstall-binPROGRAMS \
.PHONY: CTAGS GTAGS all all-am am--refresh check check-am clean \
clean-binPROGRAMS clean-generic ctags dist dist-all dist-bzip2 \
- dist-gzip dist-shar dist-tarZ dist-zip distcheck distclean \
- distclean-compile distclean-generic distclean-hdr \
+ dist-gzip dist-hook dist-shar dist-tarZ dist-zip distcheck \
+ distclean distclean-compile distclean-generic distclean-hdr \
distclean-tags distcleancheck distdir distuninstallcheck dvi \
dvi-am html html-am info info-am install install-am \
install-appmanDATA install-binPROGRAMS install-binSCRIPTS \
@@ -738,6 +743,13 @@ x11perfcomp: x11pcomp.cpp
.man.$(APP_MAN_SUFFIX):
sed $(MAN_SUBSTS) < $< > $@
+
+.PHONY: ChangeLog
+
+ChangeLog:
+ (GIT_DIR=$(top_srcdir)/.git git-log > .changelog.tmp && mv .changelog.tmp ChangeLog; rm -f .changelog.tmp) || (touch ChangeLog; echo 'git directory not found: installing possibly empty changelog.' >&2)
+
+dist-hook: ChangeLog
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/app/x11perf/Xmark.man b/app/x11perf/Xmark.man
index 6e110211b..4cc843098 100644
--- a/app/x11perf/Xmark.man
+++ b/app/x11perf/Xmark.man
@@ -32,17 +32,15 @@ following way:
.PP
It is possible to run the GXcopy and GXxor tests separately, as long as they
are concatenated to the same output file:
-.PP
+.nf
.BI "x11perf -display " display " -v1.3 -rop GXcopy -all > " datafile
-.br
.BI "x11perf -display " display " -v1.3 -rop GXxor -all >> " datafile
-.PP
+.fi
or
-.PP
+.nf
.BI "x11perf -display " display " -v1.3 -rop GXxor -all > " datafile
-.br
.BI "x11perf -display " display " -v1.3 -rop GXcopy -all >> " datafile
-.PP
+.fi
.SH FILES
.TP
.B temp.$$
diff --git a/app/x11perf/aclocal.m4 b/app/x11perf/aclocal.m4
index 5419cfb3c..48f9f8de2 100644
--- a/app/x11perf/aclocal.m4
+++ b/app/x11perf/aclocal.m4
@@ -1042,7 +1042,7 @@ AC_DEFUN([XORG_MACROS_VERSION],[
XORG_MACROS_needed_major=`echo $XORG_MACROS_needed_version | sed 's/\..*$//'`
XORG_MACROS_needed_minor=`echo $XORG_MACROS_needed_version | sed -e 's/^[0-9]*\.//' -e 's/\..*$//'`]
AC_MSG_CHECKING([if xorg-macros used to generate configure is at least ${XORG_MACROS_needed_major}.${XORG_MACROS_needed_minor}])
- [XORG_MACROS_version=1.1.5
+ [XORG_MACROS_version=1.1.6
XORG_MACROS_major=`echo $XORG_MACROS_version | sed 's/\..*$//'`
XORG_MACROS_minor=`echo $XORG_MACROS_version | sed -e 's/^[0-9]*\.//' -e 's/\..*$//'`]
if test $XORG_MACROS_major -ne $XORG_MACROS_needed_major ; then
@@ -1191,7 +1191,11 @@ AC_DEFUN([XORG_CHECK_LINUXDOC],[
XORG_SGML_PATH=$prefix/share/sgml
HAVE_DEFS_ENT=
-AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes])
+if test x"$cross_compiling" = x"yes" ; then
+ HAVE_DEFS_ENT=no
+else
+ AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes])
+fi
AC_PATH_PROG(LINUXDOC, linuxdoc)
AC_PATH_PROG(PS2PDF, ps2pdf)
@@ -1463,14 +1467,14 @@ AC_DEFUN([XORG_RELEASE_VERSION],[
AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR],
[`echo $PACKAGE_VERSION | cut -d . -f 1`],
[Major version of this package])
- PVM=`echo $PACKAGE_VERSION | cut -d . -f 2`
+ PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1`
if test "x$PVM" = "x"; then
PVM="0"
fi
AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR],
[$PVM],
[Minor version of this package])
- PVP=`echo $PACKAGE_VERSION | cut -d . -f 3`
+ PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1`
if test "x$PVP" = "x"; then
PVP="0"
fi
diff --git a/app/x11perf/configure b/app/x11perf/configure
index 73c69008e..eb14f21a2 100644
--- a/app/x11perf/configure
+++ b/app/x11perf/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for x11perf 1.4.1.
+# Generated by GNU Autoconf 2.59 for x11perf 1.5.
#
# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>.
#
@@ -269,8 +269,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='x11perf'
PACKAGE_TARNAME='x11perf'
-PACKAGE_VERSION='1.4.1'
-PACKAGE_STRING='x11perf 1.4.1'
+PACKAGE_VERSION='1.5'
+PACKAGE_STRING='x11perf 1.5'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE SED PKG_CONFIG ac_pt_PKG_CONFIG X11PERF_CFLAGS X11PERF_LIBS XRENDER_CFLAGS XRENDER_LIBS XFT_CFLAGS XFT_LIBS XEXT_CFLAGS XEXT_LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os APP_MAN_SUFFIX LIB_MAN_SUFFIX FILE_MAN_SUFFIX MISC_MAN_SUFFIX DRIVER_MAN_SUFFIX ADMIN_MAN_SUFFIX APP_MAN_DIR LIB_MAN_DIR FILE_MAN_DIR MISC_MAN_DIR DRIVER_MAN_DIR ADMIN_MAN_DIR LIBOBJS LTLIBOBJS'
@@ -774,7 +774,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures x11perf 1.4.1 to adapt to many kinds of systems.
+\`configure' configures x11perf 1.5 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -840,7 +840,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of x11perf 1.4.1:";;
+ short | recursive ) echo "Configuration of x11perf 1.5:";;
esac
cat <<\_ACEOF
@@ -978,7 +978,7 @@ fi
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
-x11perf configure 1.4.1
+x11perf configure 1.5
generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc.
@@ -992,7 +992,7 @@ cat >&5 <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by x11perf $as_me 1.4.1, which was
+It was created by x11perf $as_me 1.5, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@
@@ -1590,7 +1590,7 @@ fi
# Define the identity of the package.
PACKAGE='x11perf'
- VERSION='1.4.1'
+ VERSION='1.5'
cat >>confdefs.h <<_ACEOF
@@ -3769,7 +3769,7 @@ cat >>confdefs.h <<_ACEOF
#define PACKAGE_VERSION_MAJOR `echo $PACKAGE_VERSION | cut -d . -f 1`
_ACEOF
- PVM=`echo $PACKAGE_VERSION | cut -d . -f 2`
+ PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1`
if test "x$PVM" = "x"; then
PVM="0"
fi
@@ -3778,7 +3778,7 @@ cat >>confdefs.h <<_ACEOF
#define PACKAGE_VERSION_MINOR $PVM
_ACEOF
- PVP=`echo $PACKAGE_VERSION | cut -d . -f 3`
+ PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1`
if test "x$PVP" = "x"; then
PVP="0"
fi
@@ -4173,7 +4173,7 @@ _ASBOX
} >&5
cat >&5 <<_CSEOF
-This file was extended by x11perf $as_me 1.4.1, which was
+This file was extended by x11perf $as_me 1.5, which was
generated by GNU Autoconf 2.59. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -4236,7 +4236,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-x11perf config.status 1.4.1
+x11perf config.status 1.5
configured by $0, generated by GNU Autoconf 2.59,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/app/x11perf/configure.ac b/app/x11perf/configure.ac
index 28f742376..4235f4a46 100644
--- a/app/x11perf/configure.ac
+++ b/app/x11perf/configure.ac
@@ -1,4 +1,3 @@
-
dnl Copyright 2005 Red Hat, Inc.
dnl
dnl Permission to use, copy, modify, distribute, and sell this software and its
@@ -22,7 +21,7 @@ dnl
dnl Process this file with autoconf to create configure.
AC_PREREQ([2.57])
-AC_INIT(x11perf,[1.4.1], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],x11perf)
+AC_INIT(x11perf,[1.5], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],x11perf)
AM_INIT_AUTOMAKE([dist-bzip2])
AM_MAINTAINER_MODE
diff --git a/app/x11perf/do_blt.c b/app/x11perf/do_blt.c
index 1e6d3970d..09c3a4af7 100644
--- a/app/x11perf/do_blt.c
+++ b/app/x11perf/do_blt.c
@@ -564,3 +564,117 @@ DoCopyPlane(XParms xp, Parms p, int reps)
}
}
+#include <X11/extensions/Xrender.h>
+
+static Picture winPict, pixPict;
+
+int
+InitCompositeWin(XParms xp, Parms p, int reps)
+{
+ XRenderPictFormat *format;
+ (void) InitScroll (xp, p, reps);
+ InitCopyLocations (xp, p, reps);
+ format = XRenderFindVisualFormat (xp->d, xp->vinfo.visual);
+ winPict = XRenderCreatePicture (xp->d, xp->w, format, 0, NULL);
+ return reps;
+}
+
+int
+InitCompositePix(XParms xp, Parms p, int reps)
+{
+ XRenderPictFormat *format = NULL;
+ int depth;
+
+ (void) InitCompositeWin (xp, p, reps);
+
+ /* Create pixmap to write stuff into, and initialize it */
+ switch (xp->planemask) {
+ case PictStandardNative:
+ depth = xp->vinfo.depth;
+ format = XRenderFindVisualFormat (xp->d, xp->vinfo.visual);
+ break;
+ case PictStandardRGB24:
+ depth = 24;
+ break;
+ case PictStandardARGB32:
+ depth = 32;
+ break;
+ case PictStandardA8:
+ depth = 8;
+ break;
+ case PictStandardA4:
+ depth = 4;
+ break;
+ case PictStandardA1:
+ depth = 1;
+ break;
+ }
+ if (!format)
+ format = XRenderFindStandardFormat (xp->d, xp->planemask);
+
+ pix = XCreatePixmap(xp->d, xp->w, WIDTH, HEIGHT, depth);
+ pixPict = XRenderCreatePicture (xp->d, pix, format, 0, NULL);
+
+ XRenderComposite (xp->d, PictOpClear,
+ winPict, None, pixPict,
+ 0, 0, 0, 0, 0, 0, WIDTH, HEIGHT);
+
+#if 1
+ XRenderComposite (xp->d, PictOpOver,
+ winPict, None, pixPict,
+ 0, 0, 0, 0, 0, 0, WIDTH, HEIGHT);
+#endif
+ return reps;
+}
+
+void
+EndCompositeWin (XParms xp, Parms p)
+{
+ if (winPict)
+ {
+ XRenderFreePicture (xp->d, winPict);
+ winPict = None;
+ }
+ if (pixPict)
+ {
+ XRenderFreePicture (xp->d, pixPict);
+ pixPict = None;
+ }
+}
+
+static void
+CompositeArea(XParms xp, Parms p, int reps, Picture src, Picture dst)
+{
+ int i, size;
+ XSegment *sa, *sb;
+
+ size = p->special;
+ for (sa = segsa, sb = segsb, i = 0; i != reps; i++, sa++, sb++) {
+ XRenderComposite (xp->d, xp->func,
+ src, None, dst,
+ sa->x1, sa->y1, 0, 0,
+ sa->x2, sa->y2, size, size);
+ XRenderComposite (xp->d, xp->func,
+ src, None, dst,
+ sa->x2, sa->y2, 0, 0, sa->x1, sa->y1, size, size);
+ XRenderComposite (xp->d, xp->func,
+ src, None, dst,
+ sb->x2, sb->y2, 0, 0, sb->x1, sb->y1, size, size);
+ XRenderComposite (xp->d, xp->func,
+ src, None, dst,
+ sb->x1, sb->y1, 0, 0, sb->x2, sb->y2, size, size);
+ CheckAbort ();
+ }
+}
+
+void
+DoCompositeWinWin (XParms xp, Parms p, int reps)
+{
+ CompositeArea (xp, p, reps, winPict, winPict);
+}
+
+void
+DoCompositePixWin (XParms xp, Parms p, int reps)
+{
+ CompositeArea (xp, p, reps, pixPict, winPict);
+}
diff --git a/app/x11perf/do_tests.c b/app/x11perf/do_tests.c
index 378ea838a..b5e6d5591 100644
--- a/app/x11perf/do_tests.c
+++ b/app/x11perf/do_tests.c
@@ -1237,6 +1237,30 @@ Test test[] = {
InitGetImage, DoGetImage, NullProc, EndGetImage,
V1_4FEATURE, PLANEMASK, 0,
{4, 500, "XY"}},
+ {"-compwinwin10", "Composite 10x10 from window to window", NULL,
+ InitCompositeWin, DoCompositeWinWin, MidScroll, EndCompositeWin,
+ VERSION1_6, COMP, 0,
+ {4, 10}},
+ {"-compwinwin100", "Composite 100x100 from window to window", NULL,
+ InitCompositeWin, DoCompositeWinWin, MidScroll, EndCompositeWin,
+ VERSION1_6, COMP, 0,
+ {4, 100}},
+ {"-compwinwin500", "Composite 500x500 from window to window", NULL,
+ InitCompositeWin, DoCompositeWinWin, MidScroll, EndCompositeWin,
+ VERSION1_6, COMP, 0,
+ {4, 500}},
+ {"-comppixwin10", "Composite 10x10 from pixmap to window", NULL,
+ InitCompositePix, DoCompositePixWin, MidScroll, EndCompositeWin,
+ VERSION1_6, COMP, 0,
+ {4, 10}},
+ {"-comppixwin100", "Composite 100x100 from pixmap to window", NULL,
+ InitCompositePix, DoCompositePixWin, MidScroll, EndCompositeWin,
+ VERSION1_6, COMP, 0,
+ {4, 100}},
+ {"-comppixwin500", "Composite 500x500 from pixmap to window", NULL,
+ InitCompositePix, DoCompositePixWin, MidScroll, EndCompositeWin,
+ VERSION1_6, COMP, 0,
+ {4, 500}},
{"-noop", "X protocol NoOperation", NULL,
NullInitProc, DoNoOp, NullProc, NullProc,
V1_2FEATURE, PLANEMASK, 0,
diff --git a/app/x11perf/x11perf.c b/app/x11perf/x11perf.c
index f3e588855..08c0062e5 100644
--- a/app/x11perf/x11perf.c
+++ b/app/x11perf/x11perf.c
@@ -1,5 +1,5 @@
/* $Xorg: x11perf.c,v 1.4 2000/08/17 19:54:10 cpqbld Exp $ */
-/* $XdotOrg: app/x11perf/x11perf.c,v 1.4 2006/02/14 02:48:22 anholt Exp $ */
+/* $XdotOrg: app/x11perf/x11perf.c,v 1.3 2005/07/26 18:55:42 alanc Exp $ */
/****************************************************************************
Copyright 1988, 1989 by Digital Equipment Corporation, Maynard, Massachusetts.
@@ -68,6 +68,32 @@ RopNameRec ropNames[] = {
{ "set", GXset } /* 1 */
};
+RopNameRec popNames[] = {
+ { "Clear", PictOpClear },
+ { "Src", PictOpSrc },
+ { "Dst", PictOpDst },
+ { "Over", PictOpOver },
+ { "OverReverse", PictOpOverReverse },
+ { "In", PictOpIn },
+ { "InReverse", PictOpInReverse },
+ { "Out", PictOpOut },
+ { "OutReverse", PictOpOutReverse },
+ { "Atop", PictOpAtop },
+ { "AtopReverse", PictOpAtopReverse },
+ { "Xor", PictOpXor },
+ { "Add", PictOpAdd },
+ { "Saturate", PictOpSaturate },
+};
+
+RopNameRec formatNames[] = {
+ { "RGB24", PictStandardRGB24 },
+ { "ARGB32", PictStandardARGB32 },
+ { "A8", PictStandardA8 },
+ { "A4", PictStandardA4 },
+ { "A1", PictStandardA1 },
+ { "NATIVE", PictStandardNative },
+};
+
char *(visualClassNames)[] = {
"StaticGray",
"GrayScale",
@@ -90,8 +116,15 @@ static double syncTime = 0.0;
static int saveargc;
static char **saveargv;
+#define NUM_ROPS 16
static int numRops = 1;
-static int rops[16] = { GXcopy };
+static int rops[NUM_ROPS] = { GXcopy };
+#define NUM_POPS 14
+static int numPops = 1;
+static int pops[NUM_POPS] = { PictOpOver };
+#define NUM_FORMATS 6
+static int numFormats = 1;
+static int formats[NUM_FORMATS] = { PictStandardNative };
static int numPlanemasks = 1;
static unsigned long planemasks[256] = { (unsigned long)~0 };
@@ -131,6 +164,8 @@ static int GetWords(int argi, int argc, char **argv, char **wordsp, int *nump);
static int GetNumbers(int argi, int argc, char **argv, unsigned long *intsp,
int *nump);
static int GetRops(int argi, int argc, char **argv, int *ropsp, int *nump);
+static int GetPops(int argi, int argc, char **argv, int *popsp, int *nump);
+static int GetFormats(int argi, int argc, char **argv, int *formatsp, int *nump);
/************************************************
* time related stuff *
@@ -329,7 +364,7 @@ GetVersion(int *pargc, /* MODIFIED */
{
int argc = *pargc;
char **pargv = argv+1;
- Version version = VERSION1_5;
+ Version version = VERSION1_6;
int i;
Bool found = False;
@@ -363,6 +398,15 @@ GetVersion(int *pargc, /* MODIFIED */
found = True;
continue;
}
+ if (!strcmp (arg, "-v1.5")) {
+ version = VERSION1_5;
+ *pargc -= 1;
+ if (found) {
+ fprintf(stderr, "Warning: multiple version specifications\n");
+ }
+ found = True;
+ continue;
+ }
if (!strcmp(arg,"-")) {
while (i<argc) *pargv++ = argv[i++];
break;
@@ -798,6 +842,12 @@ ProcessTest(XParms xp, Test *test, int func, unsigned long pm, char *label)
int j;
xp->planemask = pm;
+ xp->func = func;
+ if (test->testType == COMP)
+ {
+ func = GXcopy;
+ pm = ~0L;
+ }
CreatePerfGCs(xp, func, pm);
DisplayStatus(xp->d, "Calibrating", label, 0);
reps = CalibrateTest(xp, test, seconds, &time);
@@ -860,6 +910,7 @@ main(int argc, char *argv[])
XGCValues tgcv;
int screen;
int rop, pm;
+ int pop, format;
int window_y, window_x;
XVisualInfo *vinfolist, vinfotempl;
unsigned long vmask;
@@ -969,6 +1020,12 @@ main(int argc, char *argv[])
} else if (strcmp(argv[i], "-rop") == 0) {
skip = GetRops (i+1, argc, argv, rops, &numRops);
i += skip;
+ } else if (strcmp(argv[i], "-pop") == 0) {
+ skip = GetPops (i+1, argc, argv, pops, &numPops);
+ i += skip;
+ } else if (strcmp(argv[i], "-format") == 0) {
+ skip = GetFormats (i+1, argc, argv, formats, &numFormats);
+ i += skip;
} else if (strcmp(argv[i], "-pm") == 0) {
skip = GetNumbers (i+1, argc, argv, planemasks, &numPlanemasks);
i += skip;
@@ -1107,6 +1164,18 @@ main(int argc, char *argv[])
LABELP(i), subWindows[child]);
}
break;
+ case COMP:
+ /* Run it through all specified pops */
+ for (pop = 0; pop < numPops; pop++) {
+ if (pops[pop] == PictOpOver) {
+ printf ("%s\n", LABELP(i));
+ } else {
+ printf ("(%s) %s\n",
+ popNames[pops[pop]].name,
+ LABELP(i));
+ }
+ } /* for pop */
+ break;
} /* switch */
}
}
@@ -1314,6 +1383,28 @@ main(int argc, char *argv[])
ProcessTest(&xparms, &test[i], GXcopy, ~0L, label);
}
break;
+ case COMP:
+ /* Loop through the composite operands */
+ for (pop = 0; pop < numPops; pop++) {
+ for (format = 0; format < numFormats; format++) {
+ if (formats[format] == PictStandardNative) {
+ if (pops[pop] == PictOpOver) {
+ sprintf (label, "%s", LABELP(i));
+ } else {
+ sprintf (label, "(%s) %s",
+ popNames[pops[pop]].name,
+ LABELP(i));
+ }
+ } else {
+ sprintf (label, "(%s %s) %s",
+ popNames[pops[pop]].name,
+ formatNames[formats[format]].name,
+ LABELP(i));
+ }
+ ProcessTest (&xparms, &test[i], pops[pop], formats[format], label);
+ }
+ }
+ break;
} /* switch */
} /* if doit */
} /* ForEachTest */
@@ -1404,21 +1495,83 @@ GetRops (int argi, int argc, char **argv, int *ropsp, int *nump)
if (!strncmp (words[i], "GX", 2))
words[i] += 2;
if (!strcmp (words[i], "all")) {
- for (i = 0; i < 16; i++)
+ for (i = 0; i < NUM_ROPS; i++)
ropsp[i] = ropNames[i].rop;
- *nump = 16;
+ *nump = NUM_ROPS;
break;
}
- for (rop = 0; rop < 16; rop++) {
+ for (rop = 0; rop < NUM_ROPS; rop++) {
if (!strcmp (words[i], ropNames[rop].name)) {
ropsp[i] = ropNames[rop].rop;
break;
}
}
- if (rop == 16) {
+ if (rop == NUM_ROPS) {
usage ();
fprintf (stderr, "unknown rop name %s\n", words[i]);
}
}
return count;
}
+
+static int
+GetPops (int argi, int argc, char **argv, int *popsp, int *nump)
+{
+ char *words[256];
+ int count;
+ int i;
+ int pop;
+
+ count = GetWords (argi, argc, argv, words, nump);
+ for (i = 0; i < count; i++) {
+ if (!strncmp (words[i], "PictOp", 6))
+ words[i] += 6;
+ if (!strcmp (words[i], "all")) {
+ for (i = 0; i < NUM_POPS; i++)
+ popsp[i] = popNames[i].rop;
+ *nump = NUM_POPS;
+ break;
+ }
+ for (pop = 0; pop < NUM_POPS; pop++) {
+ if (!strcmp (words[i], popNames[pop].name)) {
+ popsp[i] = popNames[pop].rop;
+ break;
+ }
+ }
+ if (pop == NUM_POPS) {
+ usage ();
+ fprintf (stderr, "unknown picture op name %s\n", words[i]);
+ }
+ }
+ return count;
+}
+
+static int
+GetFormats (int argi, int argc, char **argv, int *formatsp, int *nump)
+{
+ char *words[256];
+ int count;
+ int i;
+ int format;
+
+ count = GetWords (argi, argc, argv, words, nump);
+ for (i = 0; i < count; i++) {
+ if (!strcmp (words[i], "all")) {
+ for (i = 0; i < NUM_FORMATS; i++)
+ formatsp[i] = formatNames[i].rop;
+ *nump = NUM_FORMATS;
+ break;
+ }
+ for (format = 0; format < NUM_FORMATS; format++) {
+ if (!strcmp (words[i], formatNames[format].name)) {
+ formatsp[i] = formatNames[format].rop;
+ break;
+ }
+ }
+ if (format == NUM_FORMATS) {
+ usage ();
+ fprintf (stderr, "unknown format name %s\n", words[i]);
+ }
+ }
+ return count;
+}
diff --git a/app/x11perf/x11perf.h b/app/x11perf/x11perf.h
index da984630c..45a052d4f 100644
--- a/app/x11perf/x11perf.h
+++ b/app/x11perf/x11perf.h
@@ -39,6 +39,7 @@ SOFTWARE.
#include <X11/Xfuncs.h>
#endif
#include <stddef.h>
+#include <X11/extensions/Xrender.h>
#define POLY 1000 /* # (small) items in poly calls */
#define MAXROWS 40 /* Max rows of items in poly calls */
@@ -53,6 +54,7 @@ SOFTWARE.
#define BigTile ((char *)2) /* Big tile/stipple */
#define OddTile ((char *)1) /* Odd sized tile/stipple */
+#define PictStandardNative 5
typedef unsigned char Version;
@@ -60,11 +62,13 @@ typedef unsigned char Version;
#define VERSION1_3 ((Version)(1 << 1))
#define VERSION1_4 ((Version)(1 << 2))
#define VERSION1_5 ((Version)(1 << 3))
+#define VERSION1_6 ((Version)(1 << 4))
#define V1_2ONLY VERSION1_2
-#define V1_2FEATURE (VERSION1_2 | VERSION1_3 | VERSION1_4 | VERSION1_5)
-#define V1_3FEATURE (VERSION1_3 | VERSION1_4 | VERSION1_5)
-#define V1_4FEATURE (VERSION1_4 | VERSION1_5)
-#define V1_5FEATURE (VERSION1_5)
+#define V1_2FEATURE (VERSION1_2 | VERSION1_3 | VERSION1_4 | VERSION1_5 | VERSION1_6)
+#define V1_3FEATURE (VERSION1_3 | VERSION1_4 | VERSION1_5 | VERSION1_6)
+#define V1_4FEATURE (VERSION1_4 | VERSION1_5 | VERSION1_6)
+#define V1_5FEATURE (VERSION1_5 | VERSION1_6)
+#define V1_6FEATURE (VERSION1_6)
typedef struct _Parms {
/* Required fields */
@@ -84,6 +88,8 @@ typedef struct _XParms {
GC bggc;
GC ddfggc;
GC ddbggc;
+ Picture w_picture;
+ Picture p_picture;
unsigned long foreground;
unsigned long background;
unsigned long ddbackground;
@@ -93,6 +99,8 @@ typedef struct _XParms {
Bool save_under;
int backing_store;
unsigned long planemask;
+ int func;
+ int format;
Colormap cmap;
} XParmRec, *XParms;
@@ -104,7 +112,8 @@ typedef enum {
WINDOW, /* Windowing test, rop, planemask have no affect */
ROP, /* Graphics test, rop, planemask has some affect */
PLANEMASK, /* Graphics test, rop no affect, planemask some affect */
- NONROP /* Graphics or overhead test, rop has no affect */
+ NONROP, /* Graphics or overhead test, rop has no affect */
+ COMP /* Graphics test, render op */
} TestType;
typedef struct _Test {
@@ -186,6 +195,24 @@ extern void EndGetImage ( XParms xp, Parms p );
extern int InitCopyPlane ( XParms xp, Parms p, int reps );
extern void DoCopyPlane ( XParms xp, Parms p, int reps );
+int
+InitCompositeWin(XParms xp, Parms p, int reps);
+
+void
+EndCompositeWin (XParms xp, Parms p);
+
+void
+DoCompositeWinWin (XParms xp, Parms p, int reps);
+
+int
+InitCompositePix(XParms xp, Parms p, int reps);
+
+void
+EndCompositePix (XParms xp, Parms p);
+
+void
+DoCompositePixWin (XParms xp, Parms p, int reps);
+
/* do_complex.c */
extern int InitComplexPoly ( XParms xp, Parms p, int reps );
extern void DoComplexPoly ( XParms xp, Parms p, int reps );
diff --git a/app/x11perf/x11perf.man b/app/x11perf/x11perf.man
index 711504a47..d8f3e24d2 100644
--- a/app/x11perf/x11perf.man
+++ b/app/x11perf/x11perf.man
@@ -180,7 +180,7 @@ Runs all tests. This may take a while.
Runs all the tests starting from the specified name \fItest1\fP until
the name \fItest2\fP, including both the specified tests. The testnames
should be one of the options starting from -dot. (eg) -range line100
-will peform the tests from the 100 pixel line test, and go on till the
+will perform the tests from the 100 pixel line test, and go on till the
last test, -range line100,dline10 will do the tests from line100 to
dline10.
.TP 14
@@ -223,7 +223,7 @@ StaticColor, PseudoColor, TrueColor, or DirectColor. (default is the default
visual).
.TP 14
.B \-reps <n>
-Specify the repetition count (Default is number that takes aprox. 5 seconds)
+Specify the repetition count (Default is number that takes approx. 5 seconds)
.TP 14
.B \-subs <s0 s1 ...>
Specify the number of sub windows to use in the Window tests.