Don't skip fbFetch/fbStore when PIXMAN_FB_ACCESSORS is enabled.
authorAaron Plattner <aplattner@nvidia.com>
Tue, 14 Aug 2007 00:26:51 +0000 (17:26 -0700)
committerAaron Plattner <aplattner@nvidia.com>
Tue, 14 Aug 2007 00:26:51 +0000 (17:26 -0700)
pixman_composite_rect_general_accessors skips the fetch / store steps by setting
store to NULL when the op is ADD or OVER and the dest format is [ax]8r8g8b8.
This optimization is only valid when no accessors are in play.

pixman/pixman-compose.c

index e7f80f8..2082cb6 100644 (file)
@@ -4257,6 +4257,7 @@ PIXMAN_COMPOSITE_RECT_GENERAL (const FbComposeData *data,
        case PIXMAN_OP_CLEAR:
        case PIXMAN_OP_SRC:
            fetchDest = NULL;
+#ifndef PIXMAN_FB_ACCESSORS
            /* fall-through */
        case PIXMAN_OP_ADD:
        case PIXMAN_OP_OVER:
@@ -4268,6 +4269,7 @@ PIXMAN_COMPOSITE_RECT_GENERAL (const FbComposeData *data,
            default:
                break;
            }
+#endif
            break;
        }
     }