Søren Sandmann Pedersen
3f9adb18f1
Port a few forgotten fbSolidFillmmx()'es to fbFillmmx(). Use pixman_blt() instead of fbBltmmx()
...
in fbCopyNToN().
2007-06-11 15:19:27 -04:00
Søren Sandmann Pedersen
d06099b38e
Remove fbCopyAreammx() and fbSolidFillmmx()
2007-06-11 14:10:33 -04:00
Søren Sandmann Pedersen
d4a034370c
Split fbSolidFillmmx() into a new FbFillmmx() function. Call that from fbFill().
2007-06-11 14:10:33 -04:00
Søren Sandmann Pedersen
3210902a73
Split fbCopyAreammx() into a new fbBltmmx() function; call this
...
function from fbCopyNToN().
2007-06-11 14:10:33 -04:00
Søren Sandmann Pedersen
54e023cec0
Don't pass regions to pixman_image_composite() anymore.
2007-06-11 09:43:15 -04:00
Aaron Plattner
9c47b86bd9
Add new fb symbols to wfbrename.h.
...
Avoids crashes when wfbComposite calls the wrong image_from_pict.
2007-06-07 13:57:12 -07:00
Søren Sandmann Pedersen
567b5bf765
Delete fbCompositeCopyAreammx()
2007-06-05 20:26:49 -04:00
Søren Sandmann Pedersen
49ed31c0b3
Remove most of the fast-path MMX operations from fbmmx. fbCopyAreammx
...
and fbSolidFillmmx are still needed by other code.
2007-06-05 17:48:33 -04:00
Benjamin Herrenschmidt
e5ce982381
Include pixman.h from fb.h or compile of some files will fail
...
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2007-06-03 09:40:37 +10:00
Soren Sandmann Pedersen
047bf3349b
Delete trapezoid rendering code; replace with pixman calls
2007-05-23 16:56:05 -04:00
Soren Sandmann Pedersen
9d87ef4e0d
- Make image_from_pict() non-static
...
- Delete fbedge.c and fbedgeimp.h
- Use pixman_rasterize_edges() in fbtrap.c
2007-05-23 15:50:25 -04:00
Soren Sandmann Pedersen
3ba3ede9bb
Add missing offsets for window coordinates - reported by Colin Harrison
2007-05-23 12:56:04 -04:00
Eamon Walsh
2a4aa63a23
Merge branch 'master' into XACE-SELINUX
...
Conflicts:
include/miscstruct.h
2007-05-22 14:50:26 -04:00
Soren Sandmann Pedersen
56fd927155
Remove fast path code from fbpict.c
...
Remove the various fast path functions from fbpict, and instead use
pixman_image_composite().
2007-05-21 20:00:25 -04:00
Soren Sandmann Pedersen
756acea23a
Use pixman_image_set_indexed() to make 8 bit work
2007-05-18 14:06:21 -04:00
Soren Sandmann Pedersen
7916419a00
Comment out setup of general MMX code
2007-05-18 14:06:21 -04:00
Soren Sandmann Pedersen
998164bac6
Move fbCompositeGeneral() to fbpict.c and remove fbcompose.c
2007-05-18 14:06:21 -04:00
Soren Sandmann Pedersen
a2e3614eb8
Break image_from_pict() into a few subfunctions.
2007-05-18 14:06:21 -04:00
Soren Sandmann Pedersen
c5ef84c325
Make the general compositing code create a pixman image and call
...
pixman_image_composite(). Leave the general code commented out for now.
2007-05-18 14:06:21 -04:00
Soren Sandmann Pedersen
0375009a97
Remove excessive unrolling in fbCompositeSrc_x888x8x8888() and fix bug where
...
the source alpha was used instead of 0xff.
2007-05-17 12:59:24 -04:00
Soren Sandmann Pedersen
546465ee6a
Make fbFetch_b8g8r8() actually write the read value to the buffer
2007-05-16 17:42:04 -04:00
Soren Sandmann Pedersen
3da842bf93
Revert various fast path functions to their pre-pixman-merge state
...
since they fail rendercheck. Remove their associated macros.
See bug 10903.
2007-05-15 14:57:14 -04:00
Soren Sandmann Pedersen
d2f813f7db
New fbWalkCompositeRegion() function
...
This new function walks the composite region and calls a rectangle
compositing function on each compositing rectangle. Previously there
were buggy duplicates of this code in fbcompose.c and
miext/rootles/safealpha/safeAlphaPicture.c.
2007-05-03 12:17:24 -04:00
Soren Sandmann Pedersen
e0959adcd8
Add fbCompositeRect() as another special case in the switch of doom in fbpict.c
...
This is phase one of getting the two region walkers in fbcompose.c and
fbpict.c merged together.
2007-05-03 12:17:24 -04:00
Keith Packard
71fc5b3e93
Fix for a divide by zero that can be triggered by a malicious client.
...
Problem reported by Derek Abdine of rapid7.com. Thanks.
2007-05-02 11:41:11 +02:00
Michel Dänzer
5e4b3232da
Fix fbCompositeTrans_0888xnx0888 build for wfb on big endian.
2007-04-29 23:38:22 +02:00
Michel Dänzer
2866e0bac9
Fix a couple of picture repeat fields incorrectly compared to RepeatNormal.
2007-04-29 23:38:13 +02:00
Soren Sandmann Pedersen
78a2045535
Pixman merging
...
More msvc++ porting
2007-04-27 15:20:24 -04:00
Soren Sandmann Pedersen
6c4f1826bf
Bug fix in fbCompositeIn_nx8x8888
...
Make sure both halves of the dst word is set to zero when the masks
are both 0.
2007-04-27 08:13:45 -04:00
Soren Sandmann Pedersen
2208c6087d
Change expand_alpha_rev to expand_alpha in mmxSaturateU
2007-04-26 14:40:30 -04:00
Soren Sandmann Pedersen
a300ef84ce
Fix typo in previous commit
2007-04-26 14:37:53 -04:00
Soren Sandmann Pedersen
0ebe48be59
Pixman merge
...
- Changes to support MS Visual C++
- use inline instead of __inline__
- Fix rounding errors (Billy Biggs, from xserver via pixman)
2007-04-26 14:36:32 -04:00
Soren Sandmann Pedersen
0ff7c94fcf
Pixman merge
...
Make use of fbCompositeSrcAdd_8888x8x8mmx
2007-04-26 10:56:02 -04:00
Soren Sandmann Pedersen
701ccb4a22
Pixman merge
...
- Remove stray default label
- Integrate new MMX ops SolidMaskSrc_nx8x8888mmx, In_8x8mmx, and
In_nx8x8mmx
- Formatting changes to reduce diff noise
2007-04-26 10:49:06 -04:00
Soren Sandmann Pedersen
a54ef54db1
Pixman merge
...
Make sure fbCompositeSrc_x888x8x8888mmx and fbCompositeSrc_8888x8x8888mmx
are used when possible.
2007-04-26 10:24:25 -04:00
Soren Sandmann Pedersen
3571b8e65b
More pixman merging
...
- Move some code around to minimize diff noise
- Add mmx ops from pixman that never made it into X
- Merge Jeff Muizelaar's bugfixes to fbCompositeSrc_8888x8x8888mmx and
fbCompositeSrc_x888x8x8888mmx.
2007-04-26 10:06:47 -04:00
Soren Sandmann Pedersen
67347739b0
Don't treat convolution filters as transformations.
...
Some rearrangement of code to get it closer to pixman.
2007-04-25 22:22:22 -04:00
Soren Sandmann Pedersen
c056ce95d8
Port MSVC++ CPU detection code from pixman. (Vladimir Vukicevic).
2007-04-25 22:22:22 -04:00
Soren Sandmann Pedersen
c19ece1d8c
Integrate optimization from xserver from David Reveman where repeats
...
get handled by fbFetchTransformed() rather than in the region walking
code.
2007-04-25 22:22:22 -04:00
Soren Sandmann Pedersen
48c73dfc36
Add function fbCompositeSrcAdd_8888x8x8(), and fix a bug where
...
srcRepeat = FALSE would be set in the wrong place.
2007-04-25 22:22:22 -04:00
Soren Sandmann Pedersen
66ba3d758a
Various fixes from xserver via pixman (Billy Biggs)
2007-04-25 22:22:22 -04:00
Soren Sandmann Pedersen
0a2fe443d2
Use READ/WRITE macros for new functions introduced in previous commits.
2007-04-24 19:02:44 -04:00
Soren Sandmann Pedersen
7e16da7b78
Remove #if 0'ed blocks
2007-04-24 18:15:34 -04:00
Soren Sandmann Pedersen
2d9a7a7687
From pixman (Jeff Muizelaar)
...
Fix up the fast-path compositing operators; those are useful for
sources without alpha, but can't be used for sources with
alpha. Also, replaced fbCompositeSrcSrc_nxn with call to fbBlt as
this function must handle 1, 4, 8, 16, 24, 32 bpp objects. Would
be nice to optimize fbBlt for common cases involving 8, 16, 24 and
32bpp.
From Keith Packard.
2007-04-24 14:46:59 -04:00
Soren Sandmann Pedersen
fde4a5adf0
From xserver via pixman (Jeff Muizelaar)
...
Add some optimizations from jaymz. Also adds some compile
warnings that will hopefully go awa y as we continue merging.
2007-04-24 13:30:43 -04:00
Soren Sandmann Pedersen
13e1d5ea55
Fix format vs formatCode in previous commit
2007-04-24 12:59:18 -04:00
Soren Sandmann Pedersen
077a5d4555
Add functions fbCompositeSrcSrc_nxn() and fbCompositeTrans_0565xnx0565
...
from xserver via pixman. Add READ/WRITE and fbFinishAccess as
appropriate.
2007-04-24 12:57:55 -04:00
Soren Sandmann Pedersen
84838268b3
Gradient fixes
...
* Port fix for bug 7685 from pixman. Patch by Carl Worth
* Add projective version of radial gradient code.
* Make sure that all Pict*Gradient types have PictGradient as prefix,
since code in various places relies on that.
2007-04-23 13:19:54 -04:00
Aaron Plattner
ca784df84e
Fix unbalanced fbGetDrawable added in commit 0a9239ec
.
2007-04-22 16:26:01 -07:00
Soren Sandmann Pedersen
55bd8668e7
Remove #if 0'ed leftovers from merge
2007-04-21 17:10:54 -04:00
Soren Sandmann Pedersen
41dd7ab067
Fix gradient walker to not reset needlessly
...
Previously the gradient walker was doing excessive resets, (such
as on every pixel in constant-colored regions or outside the
gradient with CAIRO_EXTEND_NONE). Don't do that.
Carl Worth, from pixman
2007-04-21 17:10:54 -04:00
Soren Sandmann Pedersen
c1b73f0f2a
Fixing gradient repeat mode computations in previous patch. From David
...
Turner.
2007-04-21 17:10:54 -04:00
Soren Sandmann Pedersen
38f718799c
Remove a few memory references in fbFetchTransformed
2007-04-21 17:10:54 -04:00
Soren Sandmann Pedersen
9c4b14d4f6
Integrate David Turner's gradient optimizations from pixman
2007-04-21 17:10:54 -04:00
Soren Sandmann Pedersen
3daa5c1a99
Fix pixman bug 5777, patch by David Reveman
2007-04-20 09:44:25 -04:00
Soren Sandmann Pedersen
0a9239ec25
Merge David Reveman's gradient optimization patch from pixman
2007-04-19 18:19:34 -04:00
Eamon Walsh
cf962a849d
Merge branch 'master' into XACE-SELINUX
...
Conflicts:
configure.ac
2007-04-05 14:41:39 -04:00
Eamon Walsh
5ad562565a
devPrivates rework: properly free devPrivates on compatibility structures,
...
type pixmap. Requires ddx'es to call the free function from DestroyPixmap.
2007-04-05 14:18:05 -04:00
Brian
0ee40c9357
s/intead/instead/
2007-04-03 09:31:00 -06:00
Brian
a240c039c4
Split the xserver/fb/fbcmap.c file into two files.
...
Now, fbcmap_mi.c contains the fb functions which just wrap mi functions.
Previously, these were in fbcmap.c and compiled when XFree86Server was defined.
Now, clients of fbcmap should either use fbcmap.c or fbcmap_mi.c and not worry
about setting the XFree86Server symbol.
2007-04-03 09:28:21 -06:00
Eamon Walsh
a7cd53deb9
remove PIXPRIV checks as this flag is always set.
2007-03-06 17:05:03 -05:00
Soren Sandmann Pedersen
262b9b104a
Use the new 8888x0565mmx function in fbpict.c
2007-02-06 17:30:22 -05:00
Soren Sandmann Pedersen
876b806ec0
Reapply patch to fix AMD CPU detection
2007-02-06 17:16:23 -05:00
Soren Sandmann Pedersen
13568d2aa4
Revert "Fix for AMD cpu detection. Bug 9614, Dan Williams."
...
This reverts commit b2cd3b1337
since
unrelated changes in fbpict.c broke the build.
2007-02-06 17:12:01 -05:00
Soren Sandmann Pedersen
5a33344103
Add new fbCompositeSrc_8888x0565mmx() function, based on patch by Dan
...
Williams. Bug 9682.
2007-02-06 17:11:01 -05:00
Soren Sandmann Pedersen
b2cd3b1337
Fix for AMD cpu detection. Bug 9614, Dan Williams.
...
Credit for the fixes in this patch goes to:
Marco Gritti <mpg at redhat dot com>
Jordan Crouse <jordan dot crouse at amd dot com>
2007-02-06 16:43:37 -05:00
Eric Anholt
2dc866252c
Really fix optimized render cases being hit when they shouldn't.
...
I don't know how this define slipped in there. Fixes
6fdfd9dad9
.
2007-01-22 08:41:50 +08:00
Keith Packard
028bbdc041
Merge master back to randr-1.2
2006-11-04 17:46:26 -08:00
Keith Packard
2db62bce07
Define fbHasVisualTypes in fb.h as it is exported
2006-11-04 17:40:34 -08:00
Eric Anholt
6fdfd9dad9
Fix several cases where optimized paths were hit when they shouldn't be.
...
This fixes a number of rendercheck cases.
2006-11-01 14:41:12 -08:00
Alan Coopersmith
357b37b382
Use getisax() instead of asm code to determine available x86 ISA extensions on Solaris
2006-10-18 18:11:06 -07:00
Aaron Plattner
042d4a407d
Bug #8459 : Don't forget to include AM_CFLAGS in libfb_la_CFLAGS on non-MMX platforms.
...
Reported by Edgar Toernig.
2006-10-10 13:01:30 -07:00
Alan Coopersmith
df800d87e0
Add (void) casts to clear compiler errors about ?: results having type mismatch
2006-10-02 11:28:47 -07:00
Aaron Plattner
f9542e7495
Restore the global xx* symbols and add them to wfbrename.h.
...
I don't think they're ever used, but it's best to just leave them alone for ABI
compatibility.
2006-09-28 13:26:54 -07:00
Aaron Plattner
d16e83413e
Hide or rename more global symbols to avoid clashes with libfb.
...
Rename composeFunctions, xxSetup, and xxPrintVisuals. Hide the other xx*
symbols by making them static.
2006-09-20 12:47:17 -07:00
Aaron Plattner
f39fd42429
(unsigned long)(1 << 31) = bad news on x86_64.
...
(cherry picked from 410e5b1d73
commit)
2006-09-05 15:53:45 -07:00
Aaron Plattner
1c72290cdf
Use DrawablePtrs instead of PixmapPtrs for Prepare/Finish access.
...
Also, define some wfb functions even if FB_ACCESS_WRAPPER is not defined. This allows a client to use libfb and libwfb at the same time.
2006-08-07 09:57:58 -07:00
Aaron Plattner
ee02e64788
Wrap libwfb memory access.
...
Use the READ and WRITE macros to wrap memory accesses that could be in video
memory. Add MEMCPY_WRAPPED and MEMSET_WRAPPED macros to wrap memcpy and
memset, respectively.
2006-08-01 13:45:43 -07:00
Aaron Plattner
a69335dc29
Make ReadMemoryProcPtr take a const pointer.
...
Fixes some warnings when using READ with a const pointer.
2006-07-31 14:15:55 -07:00
Aaron Plattner
e6ae1612be
Add fbHasVisualTypes and fbSetVisualTypesAndMasks to wfbrename.h and include -DXFree86Server.
2006-07-27 18:24:59 -07:00
Aaron Plattner
377a581ddf
Switch to using void* pointers.
...
Pass the size of the data pointed to by src or dst as an argument to
wfb{Read,Write}Memory. This allows one set of macros to be used with any size
pointer. Assumes that sizeof(FbBits) >= sizeof(FbStip).
2006-07-26 15:48:51 -07:00
Aaron Plattner
a4005c15fb
Add framebuffer access wrapper infrastructure.
...
Create fbPrepareAccess macros to call into the driver to set up the
wfbReadMemory and wfbWriteWemory pointers. Call these from fbGetDrawable and
fbGetStipDrawable.
Add the READ and WRITE macros, which expand to simple memory accesses for fb,
and calls through the function pointers for wfb.
Add fbFinishAccess macro to give the driver an opportunity to clean up. Add
calls to this in the appropriate places.
2006-07-26 15:48:51 -07:00
Aaron Plattner
319efac445
Prefix all of the exported symbols in libwfb.so with "wfb".
...
For now, just #define all of the exported symbols in wfbrename.h. Later,
we should add FBPREFIX() around the exported symbols and use -fvisiblity=hidden
to hide the rest.
2006-07-26 15:48:51 -07:00
Aaron Plattner
7608a63ff7
Build infrastructure for libwfb.so.
...
Builds fb/* twice, defining FB_ACCESS_WRAPPER for libwfb.la. Define a macro,
FBPREFIX(X) which expands to fbX for libfb.la and wfbX for libwfb.la. Use the
macro on [w]fbModuleData so the new module loads.
2006-07-26 15:48:50 -07:00
Adam Jackson
0aaac95b0d
Remove RCS tags. Fix Xprint makefile braindamage.
2006-07-21 17:56:00 -04:00
Daniel Stone
84683f19b4
get rid of XFree86LOADER, XFree86Server, XFree86Module, and IN_MODULE
...
Get rid of almost all uses of these definitions. They're still defined for
delinquent out-of-tree drivers, and also for the Mesa build. As well as
for miinitext.c. But largely gone.
2006-07-18 18:17:38 -04:00
Eric Anholt
12563db59d
Revert "Optimize out computing a gradient pixel if the mask value is 0."
...
This reverts cf46242e33
commit. It wasn't meant
to be pushed to master yet, and doesn't work.
2006-07-03 12:52:27 -07:00
Eric Anholt
cf46242e33
Optimize out computing a gradient pixel if the mask value is 0.
...
Obtained from: kdrive CVS (DavidR XGL fb/ megapatch)
2006-07-03 20:00:50 +02:00
Eric Anholt
63c169e3b1
Fix MMX Saturate implementation.
...
The code was expanding the source blend factor from the wrong channel. Fixes
cairo's clip-operator test.
2006-06-27 04:14:03 +02:00
Eric Anholt
c7ac485a59
Remove the default case from fbcompose.c switches which should cover all cases.
...
Instead, stick the NULL return default case afterwards, so that the compiler can
warn us when we've got unimplemented cases. Removes some unimplemented and
unused 8bpp, depth 4 picture format names.
2006-06-23 13:56:20 -07:00
Kristian Høgsberg
ed18d776f0
Fix #2488 for fb too: sample pixel center when transforming.
2006-06-21 16:22:14 -04:00
Kristan Høgsberg
4365d16c86
Pull over convolution filter fixes from xgl-0-0-1 branch.
...
Cherry-picking patches:
8a5ea68800
and
4d755fe142
2006-06-19 22:21:49 -04:00
Eric Anholt
569c808a23
Fix crash when using PICT_x4a4 by supplying an appropriate fbFetchPixel_x4a4.
2006-06-19 16:42:09 -07:00
Eric Anholt
5542665041
Clean up gcc warnings from picture format CARD32 -> enum change.
2006-06-19 15:11:56 -07:00
Eric Anholt
e793f0eeee
Correct component ordering when fetching [ax]4b4g4r4 pixels.
...
Noticed by: rendercheck
2006-06-19 15:11:55 -07:00
Adam Jackson
7893dadb2f
Bug #6827 : Fix texel fetch in fbFetchTransformed to avoid crashes. Still
...
not 100% correct, but better than 7.0. (Radek Doulik, Matthias Hopf)
2006-05-18 14:39:59 +00:00
Matthias Hopf
9e239a0df7
Bug #5796 : Wrong fastpath selection for repeating sources.
2006-05-11 11:23:43 +00:00
Adam Jackson
291e89d4f2
Remove NEED_LINEHELPER BC cruft for pre-R6 DDXes.
2006-04-30 19:16:14 +00:00
Keith Packard
b37c515320
Add support for x4a4 format (depth 4 at 8bpp). Bug #6325 .
2006-04-19 21:56:13 +00:00
Keith Packard
5dacc82232
Coverity #333 , #334 - eliminate unncessary test for always true condition
...
in fbEvenStipple.
2006-04-07 02:20:11 +00:00
Ian Romanick
383c2e1e9e
Include fbmmx.h in fb/fbwindow.c when USE_MMX is defined. Fixes build
...
problem on x86-64 resulting from fbHaveMMX being a macro instead of a
function on that platform.
2006-04-05 19:52:12 +00:00
Adam Jackson
d9b8bfbfaf
Bug #5478 : More use of fbSOlidFillmmx. (Jim Huang)
2006-04-03 21:16:30 +00:00
Adam Jackson
b0e6778265
Bug #6346 : Build fix when using gcc -mno-sse. (Jonathan Adamczewski)
2006-04-03 19:50:15 +00:00
Søren Sandmann Pedersen
5449634e3c
Wed Mar 22 16:28:46 2006 Søren Sandmann <sandmann@redhat.com>
...
Use inline assembly for copy area, since gcc doesn't generate movq
instructions.
2006-03-22 21:37:49 +00:00
Søren Sandmann Pedersen
5b3084c64f
Wed Mar 22 16:05:09 2006 Søren Sandmann <sandmann@redhat.com>
...
Use inline assembly for solid fills, since gcc doesn't use the movq
instructions.
2006-03-22 21:13:08 +00:00
Benjamin Herrenschmidt
049dca0f43
Remove useless line of code that contained a bug and triggered a gcc
...
warning. This variable will be overriden before being used anyway.
(Bugzilla #5595 )
2006-02-14 08:11:41 +00:00
Alan Coopersmith
a2a5254675
Add <string.h>, <stdlib.h>, and <stdio.h> to clear undefined function
...
warnings after the removal of libcwrapper headers.
2006-02-11 19:16:51 +00:00
Eric Anholt
c3d1403672
Remove libcwrapper usage from xorg server modules. The libcwrapper is only
...
of (marginal) use in the drivers, and that usage remains.
2006-02-10 22:00:30 +00:00
Adam Jackson
1c3f8727b2
More kdrive merge, fast path fbBlt to use memcpy() when possible. Good for
...
-5% to 60% speedup on XGetImage, and 0% to 10% speedup on copies within
host memory. Based on work by Jaymz Julian.
2006-01-18 19:42:56 +00:00
Dave Airlie
b5356e0afa
typo in last change
2006-01-18 07:00:50 +00:00
Dave Airlie
506eca5f57
Wrap sdk_HEADERS in if XORG as otherwise installing non-xorg servers
...
breaks.
2006-01-18 06:56:52 +00:00
Dave Airlie
8ccf4f2b8f
This is a fix from David Reveman from the xserver tree, Make fbPadPixmap
...
work with negative stride
2006-01-18 06:49:17 +00:00
Eric Anholt
64ac7401ad
Fix a copy'n'paste-o that would result in mis-rounding of the results of
...
several composite operators in A and G channels.
2005-12-28 10:43:02 +00:00
Adam Jackson
b37e738d5f
Fix an fb regression on A8 pictures. (Fredrik Höglund)
2005-12-20 21:40:19 +00:00
Adam Jackson
62f3ef930a
Bug #5258 : Restore binary compatibility with 6.8.2's PictureRec. (Aaron
...
Plattner)
2005-12-09 18:35:21 +00:00
Adam Jackson
d6f98cbdb8
Bug #3944 : Fix 24bpp packed pixel. (Søren Sandmann Pedersen)
2005-12-08 19:33:09 +00:00
Kevin E Martin
7c00afd0ec
Define XFree86Server only where it is required.
2005-12-02 06:02:45 +00:00
Adam Jackson
4ec0b623b6
Bug #5093 : Fix fb for non-SSE machines. (Xavier Bachelot)
2005-11-30 02:36:25 +00:00
Kevin E Martin
da5d66f2ff
Fix usage of XFree86LOADER/XFree86Module/IN_MODULE and update loadable
...
module builds to reflect this change.
2005-11-29 16:39:33 +00:00
Kevin E Martin
89c661d61f
Only use fbCopyAreammx if planemask is FB_ALLONES (fixes XTS5 XCopyArea
...
tests 22 and 23).
2005-11-04 21:37:32 +00:00
Kristian Høgsberg
dc6ac8e46f
Add DGA configure option and add various files that we should be dist'ing.
...
Simplify xf86DefModeSet.c rule a bit.
2005-10-05 21:38:40 +00:00
Eric Anholt
b2e451b93c
Correct the test for whether projective transform is necessary. Also, use
...
"affine" to describe the variable (universally) on suggestion from
vektor. Corrects a rendercheck failure.
2005-10-04 03:44:14 +00:00
Adam Jackson
d51962378e
Bug #3781 : Only use fbCopyAreammx when alu == GXcopy. Originally Gentoo bug
...
#96053 , patch by bartron@gmx.net .
2005-10-03 19:31:50 +00:00
Eric Anholt
84141fc299
Merge r1.36 of fbcompose.c from xserver CVS: Special case projective
...
transforms so we can avoid doing the expensive
64-bit math. Unroll the bilinear interpolation loops for an extra boost. I
tested this with the up/downscaling cairo-benchmarks with Xvfb and saw
a 12% +/- 4% decrease in time taken to run them.
2005-10-03 11:43:55 +00:00
Eric Anholt
c024262eae
Merge r1.2 of fbedge.c from xserver CVS: Optimize spans where the same
...
value is being added to multiple pixels. This improves the speed of
rendering wide trapezoids. I tested this with a small set of xlibs
cairo-benchmarks with Xvfb and saw a 4% decrease in time taken to run
them.
2005-10-03 10:20:29 +00:00
Eric Anholt
ecaa46380e
Bugzilla #4616 :
...
- Merge various fb/ bits of COMPOSITE support from xserver, which weren't
necessary before due to cw hiding the issues. Fixes offset calculations
for a number of operations, and may pull some fixes that cairo has
wanted for XAA as well.
- Add a new call, miDisableCompositeWrapper(), which a DDX can call to keep
cw from getting initialized from the damage code. While it would be
cleaner to have each DDX initialize it if it needs it, we don't have
control over all of them (e.g. nvidia).
- Use the miDisableCompositeWrapper() to keep cw from getting set up for
screens using EXA, because EXA is already aware of composite. Avoiding
cw improved performance 0-35% on operations tested by ajax in x11perf.
2005-10-02 08:28:27 +00:00
Matthieu Herrb
e270e6394b
Bug #3822 : out of bound reads in fbbltone and fbblt (Mark Kettenis, Thierry
...
Deval).
2005-10-01 17:53:38 +00:00
Søren Sandmann Pedersen
2ba865b3f5
Fri Sep 23 19:00:06 2005 Søren Sandmann <sandmann@redhat.com>
...
Apply patch from Ronald Wahl to make sure that the stack pointer is not
modified at points where we access external variables. (Bug 4269).
2005-09-23 23:04:04 +00:00
Daniel Stone
c3d6799cee
Bug #594 : CAN-2005-2495: Fix exploitable integer overflow in pixmap
...
creation, where we could create a far smaller pixmap than we thought,
allowing changes to arbitrary chunks of memory. (Søren Sandmann
Pedersen)
2005-09-13 01:33:19 +00:00
Daniel Stone
b5d42012f9
Fix typo resulting in failure to swap between RGB/BGR properly. (Stephen P.
...
Becker)
2005-09-07 01:30:23 +00:00
Eric Anholt
f20e845b04
More 0 -> NULL for pointers missed in previous commit to this file.
2005-08-30 03:42:07 +00:00
Eric Anholt
7777d325a3
Apply an xserver patch from cworth: Avoid buffer ovverrun when a
...
trapezoid's right edge is on a pixel boundary.
2005-08-30 03:05:21 +00:00
Eric Anholt
e321f9e7ff
Apply the xserver patch from vektor for bug #4208 : Use NULL for pointers
...
instead of 0.
2005-08-30 03:01:38 +00:00
Daniel Stone
825a95a1fa
Remove use of dix-config and xorg-config.h from public headers.
2005-08-24 11:18:35 +00:00
Søren Sandmann Pedersen
bed3235d22
Thu Aug 18 17:27:09 2005 Søren Sandmann <sandmann@redhat.com>
...
Move fbmmx to a convenience library since the mmx flags may be harmful when
applied to non-mmx code.
2005-08-18 21:28:09 +00:00
Søren Sandmann Pedersen
f2f6820c3f
Wed Aug 17 13:13:00 2005 Søren Sandmann <sandmann@redhat.com>
...
Make asm labels local. Bug 4073, patch from Diego Pettenò.
2005-08-17 17:20:13 +00:00
Søren Sandmann Pedersen
616a65c4cc
Fri Aug 12 14:49:24 2005 Søren Sandmann <sandmann@redhat.com>
...
Apply another patch from Billy Biggs to fix precision issues.
2005-08-12 18:50:33 +00:00
Søren Sandmann Pedersen
1eed84f227
Fri Aug 12 14:45:54 2005 Søren Sandmann <sandmann@redhat.com>
...
Fix up multiplications based on patch by Billy Biggs. Part of bug 3945.
2005-08-12 18:47:17 +00:00
Søren Sandmann Pedersen
8bfffb96b5
Fri Aug 12 14:29:09 2005 Søren Sandmann <sandmann@redhat.com>
...
Apply patch from Billy Biggs that fixes rounding problems with division.
Part of bug 3945.
2005-08-12 18:31:07 +00:00
Søren Sandmann Pedersen
812ed2e17b
Fri Aug 12 10:45:01 2005 S%Gï¿¿%@ren Sandmann <sandmann@redhat.com>
...
Make this function compute the same results as the fbByteMul macro.
2005-08-12 17:43:38 +00:00
Søren Sandmann Pedersen
3e471ddf1d
Add check for whether the platform is MMX capable and add the relevant
...
flags if so.
2005-08-11 14:36:29 +00:00
Søren Sandmann Pedersen
130fffc0cd
Wed Aug 10 16:17:38 2005 Søren Sandmann <sandmann@redhat.com>
...
Add back non-SSE implementations. Define USE_SSE if the CPU is amd64/x86-64
2005-08-10 20:22:57 +00:00
Søren Sandmann Pedersen
ed4d77a16a
Thu Aug 4 16:08:00 2005 Søren Sandmann <sandmann@redhat.com>
...
Make the fbCompose paths use the existing inline functions instead of
macros. Various other cleanups.
Remove macro definitions, move typedef to fbmmx.c
2005-08-04 21:05:12 +00:00
Alan Coopersmith
7c84189ea1
Bugzilla #3566 < https://bugs.freedesktop.org/show_bug.cgi?id=3566 > Patch
...
#2906 <https://bugs.freedesktop.org/attachment.cgi?id=2906 > Fix for
RENDER, repeating pictures and offscreen memory (Owen Taylor)
2005-08-01 22:22:16 +00:00
Søren Sandmann Pedersen
78d51253e2
Fri Jul 29 17:20:53 2005 Søren Sandmann <sandmann@redhat.com>
...
Fix rounding bug.
2005-08-01 16:07:14 +00:00
Søren Sandmann Pedersen
df5d47560c
xserver/xorg/fb/Makefile.am: install fboverlay.h
2005-07-26 18:56:45 +00:00
Søren Sandmann Pedersen
b25e6f82a1
fb/Makefile.am: add fbpseudocolor.h to sdk_HEADERS
...
hw/xfree86/xaa/Makefile.am: add xaaWrapper.h to sdk_HEADERS
2005-07-26 18:21:22 +00:00
Lars Knoll
19e20c1470
don't clobber %ebx in the assembler.
2005-07-13 08:58:37 +00:00
Lars Knoll
bfb10bd2dc
Fix potential buffer overflow and a smaller bug in the convolution filter
2005-07-13 07:28:17 +00:00
Lars Knoll
778a2703b2
fix compilation
2005-07-13 07:12:33 +00:00
Lars Knoll
41002623f3
Add MMX Code paths for the basic composition operations in
...
fbComposeGeneral.
2005-07-12 10:02:10 +00:00
Alexander Gottwald
845a0ac68b
Revert last changes. They have to be addressed in a different way
2005-07-04 23:11:20 +00:00
Alexander Gottwald
048045a9e7
Add XWin DDX, make Xorg DDX conditional Make XF86VidMode and XF86Misc
...
conditional
Add XWin DDX
Added DDXTIME, DDXOSFATALERROR, DDXOSVERRORF and DDXBEFORERESET
Added fbcmap.c
Added miinitext.c
Added -I$(top_srcdir)/Xext/extmod to INCLUDES
2005-07-04 22:18:40 +00:00
Lars Knoll
ba011dc77d
don't be too smart and try to replace PictOpOver by PictOpSrc when we have
...
an external alpha map.
Make fbmmx.c compile on gcc 4.0.1.
2005-07-04 14:47:03 +00:00
Lars Knoll
a4df8ad755
Fix handling of "super luminescent" colors Fix off by one error in the
...
transformation handling.
2005-07-04 14:23:59 +00:00
Daniel Stone
46b64bd5c6
Fix more include paths; add dix-config.h to XKB code.
2005-07-03 07:37:35 +00:00
Daniel Stone
e03198972c
Add Xtrans definitions (FONT_t, TRANS_CLIENT) to clean up warnings.
...
Add XSERV_t, TRANS_SERVER, TRANS_REOPEN to quash warnings.
Add #include <dix-config.h> or <xorg-config.h>, as appropriate, to all
source files in the xserver/xorg tree, predicated on defines of
HAVE_{DIX,XORG}_CONFIG_H. Change all Xfont includes to
<X11/fonts/foo.h>.
2005-07-03 07:02:09 +00:00
Daniel Stone
826a6f029f
Continuing Makefile cleanup; add DIX_CFLAGS and XORG_CFLAGS everywhere.
2005-07-02 18:59:44 +00:00
Daniel Stone
9b1debcdb6
Change all misc.h and os.h references to <X11/foo.h>.
2005-07-01 22:43:43 +00:00
Daniel Stone
7ecc2d526c
Remove fbcmap.c hacks from the DIX.
2005-07-01 21:12:24 +00:00
Daniel Stone
ded56b1a74
Adding initial build system.
2005-07-01 20:29:53 +00:00
Lars Knoll
b5b2a0522e
Add support for gradients and solid fills to Render.
...
Changed the semantics of the Convolution filter a bit. It now doesn't try
to normalize the filter values but leaves this to the client. This
gives more reasonable behaviour in the limit where the filter
parameters sum up to 0.
2005-07-01 10:05:43 +00:00
Lars Knoll
c6166ee741
Fix projective transformations in fbcompose.c Bugfix for convolution
...
filters
2005-06-15 14:51:12 +00:00
Lars Knoll
49476ca73c
add the convolution filter from xserver to xorg
2005-06-13 14:40:25 +00:00
Adam Jackson
0f7136191b
Bug #3434 : Don't define fbAddTraps twice. (Mike A. Harris)
2005-06-09 02:03:50 +00:00
Søren Sandmann Pedersen
1e51e18382
Wed May 18 21:20:35 2005 Søren Sandmann <sandmann@redhat.com>
...
s/dst/src that I missed in the previous patch. Pointed out by Owen Taylor.
2005-05-19 01:25:02 +00:00
Søren Sandmann Pedersen
be3875994d
Wed May 18 16:47:44 2005 Søren Sandmann <sandmann@redhat.com>
...
Actually assign the computed results. (Reported by Michael Dänzer, patch
by Owen Taylor).
2005-05-18 20:49:31 +00:00
Alan Coopersmith
f58a54668b
Change return statements to fix compiler errors: "fbcompose.c", line 2815:
...
void function cannot return value "fbcompose.c", line 2861: void
function cannot return value
2005-05-14 20:13:45 +00:00
Adam Jackson
2de24db63e
Render performance improvements. (Lars Knoll, Zack Rusin)
2005-05-08 23:34:15 +00:00
Daniel Stone
abd246c6c2
Add glyphstr.h to includes.
2005-04-20 13:01:55 +00:00
Daniel Stone
292c4cff26
Fix includes right throughout the Xserver tree:
...
change "foo.h" to <X11/foo.h> for core headers, e.g. X.h, Xpoll.h;
change "foo.h", "extensions/foo.h" and "X11/foo.h" to
<X11/extensions/foo.h> for extension headers, e.g. Xv.h;
change "foo.[ch]" to <X11/Xtrans/foo.[ch]> for Xtrans files.
2005-04-20 12:25:48 +00:00
Søren Sandmann Pedersen
59d7222b13
Sat Mar 26 19:00:30 2005 Søren Sandmann <sandmann@redhat.com>
...
Remove accidentally committed prototype.
2005-03-27 00:17:12 +00:00
Søren Sandmann Pedersen
476ae15640
Sat Mar 26 18:49:21 2005 Soeren Sandmann <sandmann@redhat.com>
...
programs/Xserver/fb/fbmmx.h
New function.
Hook it up here
2005-03-26 23:50:24 +00:00
Adam Jackson
79a7120983
Bug #1895 : Fix fbComposeGetSolid for BGR. (David S. Miller)
2005-01-16 01:59:23 +00:00
Søren Sandmann Pedersen
7db2e666e2
Fri Jan 14 11:12:46 2005 Søren Sandmann <sandmann@redhat.com>
...
Use mmx CopyArea in a few more places.
2005-01-14 21:56:51 +00:00
Søren Sandmann Pedersen
433c38f22f
Thu Jan 13 15:40:29 2005 Søren Sandmann <sandmann@redhat.com>
...
Add MMX implementation of non-repeating source IN repeating mask, aka
"translucent window".
Add MMX implementation of CopyArea.
Use MMX implementation of CopyArea.
Use the new implementations.
2005-01-13 20:49:21 +00:00
Søren Sandmann Pedersen
af8bd71617
Mon Jan 3 12:45:10 2005 Søren Sandmann <sandmann@redhat.com>
...
Clean-ups and support for AMD64. Bug 1067. Patch by Nicholas Miell
(nmiell@comcast.net )
Add support for AMD64
Many cleanups using <mmintrin.h> instead of __builin_ia32_*, and intrinsics
instead of inline assembly. Also unconditionally use pshufw on AMD64.
s/USE_GCC34_MMX/USE_MMX/g
2005-01-03 21:32:22 +00:00
Egbert Eich
9c94971617
Use the same method of finding the screen pixmap of COMPOSITE extension is
...
compiled in or not.
Removed stale make variable.
Updated xaaWrapper.c: Under certain circumstances the accel path was not
used when possible. Removed some debugging stuff and stale code that
had been commented out.
Check if maps are really installed before attempting to list them.
2004-12-06 15:53:00 +00:00
Markus Kuhn
44f4713a05
Encoding of numerous files changed to UTF-8
2004-12-04 00:43:13 +00:00
Torrey Lyons
16ee24cd99
Use ROOTLESS instead of platform specific defines.
2004-11-05 19:51:38 +00:00
Keith Packard
a29bfbd3d0
Empty damage object when freeing pixmap.
...
Wrap InstallColormap so that the DDX doesn't see colormaps from our ARGB
visual (avoids lovely green tint to screen). Also, set visual->nplanes
of ARGB visual to all used (including alpha) planes so DIX can set
pixel values correctly.
Translate automatic update regions correctly to account for borders
When nplanes == 32 (ARGB visuals), mask in all ones for alpha values to
allocated pixel values.
Remove redundant fbAddTraps declaration
Fix fbCopyWindow to work on non-screen pixmaps (not needed yet)
Replace broken clipping code with that from modular tree.
Respect subWindowMode.
2004-08-13 08:16:14 +00:00
Keith Packard
fd439afdfe
Add COMPOSITE change to fbCopyWindow (not needed yet)
...
Xnest was half-using midispcur and doing a bad job of it. Replace all of
that code with mipointer which does a lot of the work.
Support DDXen which don't provide GetWindowPixmap, or which return NULL for
the root pixmap.
2004-08-11 22:40:14 +00:00
Kevin E Martin
f77f1d5072
Apply PPC64 build patch (Bug #303 , Mike A. Harris, Alan Coopersmith).
2004-08-11 21:14:18 +00:00
Kristian Høgsberg
26847ef926
Move the new render symbols to dixsym.c instead so they are grouped with
...
the other render symbols.
Initialize screen_x and screen_y to 0. This fixes a problem with the new
Damage based sprite, where intersection test against the root pixmap
would fail because the two fields were not initialized (damage.c,
166-170).
2004-08-09 03:40:50 +00:00
Keith Packard
196aafb19a
Add RenderAddTraps. Rewrite trapezoid rendering code.
2004-08-06 23:42:10 +00:00
Egbert Eich
4baf002941
An experimental pseudocolor emulation layer. Not fully completed, currently
...
only works for 16bpp.
2004-07-30 21:46:38 +00:00
Adam Jackson
48514fee3c
Bug #400 (partial): Driver fixes for the dlloader. When using dlloader, all
...
framebuffer formats except cfb and the overlay modes should work, and
r128 and radeon need to be loaded from the ati driver (both issues to
be fixed soon). Tested on i740, s3virge, mach64, tdfx, vesa, and vga
drivers. elfloader users shouldn't be affected.
2004-07-30 20:30:57 +00:00
Søren Sandmann Pedersen
cc3e0173d9
Thu Jul 22 20:03:11 2004 Soeren Sandmann <sandmann@daimi.au.dk>
...
Call MMX solid fill routine when available.
Call MMX operations when available.
New HasGcc34 macro
New file with many operations implemented with MMX intrinsics, conditional
on having GCC 3.4 on i386.
2004-07-22 19:24:50 +00:00
Alexander Gottwald
c66cc2a219
Bug 783: rootless patches for cygwin
2004-06-21 13:51:57 +00:00
Alan Coopersmith
47fb207c8a
xc/programs/Xserver/fb/fb.h
...
xc/programs/Xserver/fb/fboverlay.c
xc/programs/Xserver/fb/fbscreen.c
- Change #ifdef for checking for old format miScreenInit to
FB_OLD_MISCREENINIT for easier portability to xservers with updated
screen structs but old function prototypes. Make it automatically
defined if FB_OLD_SCREEN is defined.
- Add _LP64 to list of #ifdefs for 64-bit platforms to support
64-bit Solaris.
2004-05-16 05:08:39 +00:00
Eric Anholt
4078457919
Fix problems in render fb implementation found by rendercheck:
...
- fbCombineSaturate was pointed at fbCombineDisjointOver, instead of
fbCombineDisjointOverReverse as it should. Instead, point
fbCombineDisjointOverReverse at fbCombineSaturate (which is likely to
be faster).
- fix previously-unused fbCombineSaturate implementation.
- fbCombineMaskAlphaC was just a copy of fbCombineMaskValueC. Make it do
what it's supposed to (return a cs.alpha).
- fbCombineAtopC didn't invert the source alpha value.
- fix copy'n'paste errors in fbCombine(Dis/Con)jointGeneralC, also source
alpha wasn't treated in a component fashion.
- fbCompositeSrc_8888* didn't handle when the source lacks an alpha
channel. Rather than adding that and possilby slowing down the (normal)
alpha case, don't let x8r8g8b8/x8b8g8r8 Pictures be used in
fbCompositeSrc_8888* because Over with one of these is just Src.
2004-05-12 01:49:46 +00:00
Egbert Eich
2fb5886200
Merging XORG-CURRENT into trunk
2004-04-23 19:54:30 +00:00
Egbert Eich
dae90c3af9
Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004
2004-03-14 08:34:49 +00:00
Egbert Eich
867451f1ab
Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004
2004-03-03 12:12:50 +00:00
Egbert Eich
df0313d35b
readding XFree86's cvs IDs
2004-02-26 13:36:15 +00:00
Egbert Eich
147aae87fd
Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004
2004-02-26 09:23:53 +00:00
Egbert Eich
3c64b65d80
Importing vendor version xf86-012804-2330 on Thu Jan 29 00:06:33 PST 2004
2004-01-29 08:08:57 +00:00
Kaleb Keithley
12e532010b
XFree86 4.3.99.902 (RC 2)
2003-12-19 20:55:39 +00:00
Kaleb Keithley
adc7f9a4eb
XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks
2003-11-25 19:29:01 +00:00
Kaleb Keithley
9508a382f8
Initial revision
2003-11-14 16:48:57 +00:00