summaryrefslogtreecommitdiff
path: root/xserver/fb/fbseg.c
diff options
context:
space:
mode:
authorMatthieu Herrb <matthieu@cvs.openbsd.org>2019-07-27 07:57:27 +0000
committerMatthieu Herrb <matthieu@cvs.openbsd.org>2019-07-27 07:57:27 +0000
commitd4a0bed4b91da9de86c311c7fef9a8aa9a6f500c (patch)
treea1b439049dee87bc951e190db93f5bbe8b43b0b5 /xserver/fb/fbseg.c
parentb6bc775539a31f663f9e22ce3ccaf0aa96adf3b6 (diff)
Update to xserver 1.20.5. Tested by jsg@
Diffstat (limited to 'xserver/fb/fbseg.c')
-rw-r--r--xserver/fb/fbseg.c161
1 files changed, 0 insertions, 161 deletions
diff --git a/xserver/fb/fbseg.c b/xserver/fb/fbseg.c
index c3c196ab4..6c3d69363 100644
--- a/xserver/fb/fbseg.c
+++ b/xserver/fb/fbseg.c
@@ -279,157 +279,6 @@ fbBresFillDash(DrawablePtr pDrawable,
fbSetFg(pDrawable, pGC, fg);
}
-static void
-fbBresSolid24RRop(DrawablePtr pDrawable,
- GCPtr pGC,
- int dashOffset,
- int signdx,
- int signdy,
- int axis, int x1, int y1, int e, int e1, int e3, int len)
-{
- FbStip *dst;
- FbStride dstStride;
- int dstBpp;
- int dstXoff, dstYoff;
- FbGCPrivPtr pPriv = fbGetGCPrivate(pGC);
- FbStip and = pPriv->and;
- FbStip xor = pPriv->xor;
- FbStip leftMask, rightMask;
- int nl;
- FbStip *d;
- int x;
- int rot;
- FbStip andT, xorT;
-
- fbGetStipDrawable(pDrawable, dst, dstStride, dstBpp, dstXoff, dstYoff);
- dst += ((y1 + dstYoff) * dstStride);
- x1 = (x1 + dstXoff) * 24;
- if (signdy < 0)
- dstStride = -dstStride;
- signdx *= 24;
- while (len--) {
- d = dst + (x1 >> FB_STIP_SHIFT);
- x = x1 & FB_STIP_MASK;
- rot = FbFirst24Rot(x);
- andT = FbRot24Stip(and, rot);
- xorT = FbRot24Stip(xor, rot);
- FbMaskStip(x, 24, leftMask, nl, rightMask);
- if (leftMask) {
- WRITE(d, FbDoMaskRRop(READ(d), andT, xorT, leftMask));
- d++;
- andT = FbNext24Stip(andT);
- xorT = FbNext24Stip(xorT);
- }
- if (rightMask)
- WRITE(d, FbDoMaskRRop(READ(d), andT, xorT, rightMask));
- if (axis == X_AXIS) {
- x1 += signdx;
- e += e1;
- if (e >= 0) {
- e += e3;
- dst += dstStride;
- }
- }
- else {
- dst += dstStride;
- e += e1;
- if (e >= 0) {
- e += e3;
- x1 += signdx;
- }
- }
- }
-
- fbFinishAccess(pDrawable);
-}
-
-static void
-fbBresDash24RRop(DrawablePtr pDrawable,
- GCPtr pGC,
- int dashOffset,
- int signdx,
- int signdy,
- int axis, int x1, int y1, int e, int e1, int e3, int len)
-{
- FbStip *dst;
- FbStride dstStride;
- int dstBpp;
- int dstXoff, dstYoff;
- FbGCPrivPtr pPriv = fbGetGCPrivate(pGC);
- FbStip andT, xorT;
- FbStip fgand = pPriv->and;
- FbStip fgxor = pPriv->xor;
- FbStip bgand = pPriv->bgand;
- FbStip bgxor = pPriv->bgxor;
- FbStip leftMask, rightMask;
- int nl;
- FbStip *d;
- int x;
- int rot;
-
- FbDashDeclare;
- int dashlen;
- Bool even;
- Bool doOdd;
-
- fbGetStipDrawable(pDrawable, dst, dstStride, dstBpp, dstXoff, dstYoff);
- doOdd = pGC->lineStyle == LineDoubleDash;
-
- /* compute current dash position */
- FbDashInit(pGC, pPriv, dashOffset, dashlen, even);
-
- dst += ((y1 + dstYoff) * dstStride);
- x1 = (x1 + dstXoff) * 24;
- if (signdy < 0)
- dstStride = -dstStride;
- signdx *= 24;
- while (len--) {
- if (even || doOdd) {
- if (even) {
- andT = fgand;
- xorT = fgxor;
- }
- else {
- andT = bgand;
- xorT = bgxor;
- }
- d = dst + (x1 >> FB_STIP_SHIFT);
- x = x1 & FB_STIP_MASK;
- rot = FbFirst24Rot(x);
- andT = FbRot24Stip(andT, rot);
- xorT = FbRot24Stip(xorT, rot);
- FbMaskStip(x, 24, leftMask, nl, rightMask);
- if (leftMask) {
- WRITE(d, FbDoMaskRRop(READ(d), andT, xorT, leftMask));
- d++;
- andT = FbNext24Stip(andT);
- xorT = FbNext24Stip(xorT);
- }
- if (rightMask)
- WRITE(d, FbDoMaskRRop(READ(d), andT, xorT, rightMask));
- }
- if (axis == X_AXIS) {
- x1 += signdx;
- e += e1;
- if (e >= 0) {
- e += e3;
- dst += dstStride;
- }
- }
- else {
- dst += dstStride;
- e += e1;
- if (e >= 0) {
- e += e3;
- x1 += signdx;
- }
- }
- FbDashStep(dashlen, even);
- }
-
- fbFinishAccess(pDrawable);
-}
-
/*
* For drivers that want to bail drawing some lines, this
* function takes care of selecting the appropriate rasterizer
@@ -447,8 +296,6 @@ fbSelectBres(DrawablePtr pDrawable, GCPtr pGC)
bres = fbBresFill;
if (pGC->fillStyle == FillSolid) {
bres = fbBresSolid;
- if (dstBpp == 24)
- bres = fbBresSolid24RRop;
if (pPriv->and == 0) {
switch (dstBpp) {
case 8:
@@ -457,9 +304,6 @@ fbSelectBres(DrawablePtr pDrawable, GCPtr pGC)
case 16:
bres = fbBresSolid16;
break;
- case 24:
- bres = fbBresSolid24;
- break;
case 32:
bres = fbBresSolid32;
break;
@@ -471,8 +315,6 @@ fbSelectBres(DrawablePtr pDrawable, GCPtr pGC)
bres = fbBresFillDash;
if (pGC->fillStyle == FillSolid) {
bres = fbBresDash;
- if (dstBpp == 24)
- bres = fbBresDash24RRop;
if (pPriv->and == 0 &&
(pGC->lineStyle == LineOnOffDash || pPriv->bgand == 0)) {
switch (dstBpp) {
@@ -482,9 +324,6 @@ fbSelectBres(DrawablePtr pDrawable, GCPtr pGC)
case 16:
bres = fbBresDash16;
break;
- case 24:
- bres = fbBresDash24;
- break;
case 32:
bres = fbBresDash32;
break;