~ubuntu-branches/ubuntu/raring/xserver-xorg-video-intel/raring

« back to all changes in this revision

Viewing changes to uxa/uxa-accel.c

  • Committer: Package Import Robot
  • Author(s): Timo Aaltonen
  • Date: 2012-09-05 17:27:17 UTC
  • mfrom: (1.4.21) (0.1.30 experimental)
  • Revision ID: package-import@ubuntu.com-20120905172717-d0l33sc1r6b8ldas
Tags: 2:2.20.6-0ubuntu1
Merge from unreleased debian git.

Show diffs side-by-side

added added

removed removed

Lines of Context:
52
52
        int off_x, off_y;
53
53
 
54
54
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
55
 
                int ok;
 
55
                int ok = 0;
56
56
 
57
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
58
 
                ok = glamor_fill_spans_nf(pDrawable,
59
 
                                          pGC, n, ppt, pwidth, fSorted);
60
 
                uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
57
                if (uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
58
                        ok = glamor_fill_spans_nf(pDrawable,
 
59
                                                  pGC, n, ppt, pwidth, fSorted);
 
60
                        uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
61
                }
61
62
 
62
63
                if (!ok)
63
64
                        goto fallback;
213
214
        uxa_screen_t *uxa_screen = uxa_get_screen(pDrawable->pScreen);
214
215
 
215
216
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
216
 
                int ok;
217
 
 
218
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
219
 
                ok = glamor_put_image_nf(pDrawable,
220
 
                                         pGC, depth, x, y, w, h,
221
 
                                         leftPad, format, bits);
222
 
                uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
223
 
 
 
217
                int ok = 0;
 
218
 
 
219
                if (uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
220
                        ok = glamor_put_image_nf(pDrawable,
 
221
                                                 pGC, depth, x, y, w, h,
 
222
                                                 leftPad, format, bits);
 
223
                        uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
224
                }
224
225
                if (!ok)
225
226
                        goto fallback;
226
227
 
375
376
        PixmapPtr pSrcPixmap, pDstPixmap;
376
377
 
377
378
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
378
 
                int ok;
 
379
                int ok = 0;
379
380
 
380
 
                uxa_prepare_access(pSrcDrawable, UXA_GLAMOR_ACCESS_RO);
381
 
                uxa_prepare_access(pDstDrawable, UXA_GLAMOR_ACCESS_RW);
382
 
                ok = glamor_copy_n_to_n_nf(pSrcDrawable, pDstDrawable,
383
 
                                           pGC, pbox, nbox, dx, dy,
384
 
                                           reverse, upsidedown, bitplane,
385
 
                                           closure);
386
 
                uxa_finish_access(pDstDrawable, UXA_GLAMOR_ACCESS_RW);
387
 
                uxa_finish_access(pSrcDrawable, UXA_GLAMOR_ACCESS_RO);
 
381
                if (uxa_prepare_access(pSrcDrawable, UXA_GLAMOR_ACCESS_RO)) {
 
382
                        if (uxa_prepare_access(pDstDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
383
                                ok = glamor_copy_n_to_n_nf(pSrcDrawable, pDstDrawable,
 
384
                                                           pGC, pbox, nbox, dx, dy,
 
385
                                                           reverse, upsidedown, bitplane,
 
386
                                                           closure);
 
387
                                uxa_finish_access(pDstDrawable, UXA_GLAMOR_ACCESS_RW);
 
388
                        }
 
389
                        uxa_finish_access(pSrcDrawable, UXA_GLAMOR_ACCESS_RO);
 
390
                }
388
391
 
389
392
                if (!ok)
390
393
                        goto fallback;
561
564
        uxa_screen_t *uxa_screen = uxa_get_screen(pDrawable->pScreen);
562
565
 
563
566
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
564
 
                int ok;
 
567
                int ok = 0;
565
568
 
566
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
567
 
                ok = glamor_poly_point_nf(pDrawable, pGC, mode, npt, ppt);
568
 
                uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
569
                if (uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
570
                        ok = glamor_poly_point_nf(pDrawable, pGC, mode, npt, ppt);
 
571
                        uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
572
                }
569
573
 
570
574
                if (ok)
571
575
                        return;
611
615
        uxa_screen_t *uxa_screen = uxa_get_screen(pDrawable->pScreen);
612
616
 
613
617
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
614
 
                int ok;
 
618
                int ok = 0;
615
619
 
616
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
617
 
                ok = glamor_poly_lines_nf(pDrawable, pGC, mode, npt, ppt);
618
 
                uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
620
                if (uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
621
                        ok = glamor_poly_lines_nf(pDrawable, pGC, mode, npt, ppt);
 
622
                        uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
623
                }
619
624
 
620
625
                if (ok)
621
626
                        return;
684
689
        uxa_screen_t *uxa_screen = uxa_get_screen(pDrawable->pScreen);
685
690
 
686
691
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
687
 
                int ok;
 
692
                int ok = 0;
688
693
 
689
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
690
 
                ok = glamor_poly_segment_nf(pDrawable, pGC, nseg, pSeg);
691
 
                uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
694
                if (uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
695
                        ok = glamor_poly_segment_nf(pDrawable, pGC, nseg, pSeg);
 
696
                        uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
697
                }
692
698
 
693
699
                if (ok)
694
700
                        return;
758
764
        int n;
759
765
 
760
766
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
761
 
                int ok;
 
767
                int ok = 0;
762
768
 
763
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
764
 
                ok = glamor_poly_fill_rect_nf(pDrawable, pGC, nrect, prect);
765
 
                uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
769
                if (uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
770
                        ok = glamor_poly_fill_rect_nf(pDrawable, pGC, nrect, prect);
 
771
                        uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
772
                }
766
773
 
767
774
                if (!ok)
768
775
                        uxa_check_poly_fill_rect(pDrawable, pGC, nrect, prect);
883
890
        uxa_screen_t *uxa_screen = uxa_get_screen(screen);
884
891
 
885
892
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
886
 
                int ok;
 
893
                int ok = 0;
887
894
 
888
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
889
 
                ok = glamor_get_spans_nf(pDrawable, wMax, ppt,
890
 
                                         pwidth, nspans, pdstStart);
891
 
                uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
895
                if (uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
896
                        ok = glamor_get_spans_nf(pDrawable, wMax, ppt,
 
897
                                                 pwidth, nspans, pdstStart);
 
898
                        uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
899
                }
892
900
 
893
901
                if (!ok)
894
902
                        goto fallback;
908
916
        uxa_screen_t *uxa_screen = uxa_get_screen(screen);
909
917
 
910
918
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
911
 
                int ok;
 
919
                int ok = 0;
912
920
 
913
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
914
 
                ok = glamor_set_spans_nf(pDrawable, gc, src,
915
 
                                         points, widths, n, sorted);
916
 
                uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
921
                if (uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
922
                        ok = glamor_set_spans_nf(pDrawable, gc, src,
 
923
                                                 points, widths, n, sorted);
 
924
                        uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
925
                }
917
926
 
918
927
                if (!ok)
919
928
                        goto fallback;
934
943
        uxa_screen_t *uxa_screen = uxa_get_screen(screen);
935
944
 
936
945
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
937
 
                int ok;
 
946
                int ok = 0;
938
947
                RegionPtr region;
939
948
 
940
 
                uxa_prepare_access(pDst, UXA_GLAMOR_ACCESS_RW);
941
 
                uxa_prepare_access(pSrc, UXA_GLAMOR_ACCESS_RO);
942
 
                ok = glamor_copy_plane_nf(pSrc, pDst, pGC, srcx, srcy, w, h,
943
 
                                           dstx, dsty, bitPlane, &region);
944
 
                uxa_finish_access(pSrc, UXA_GLAMOR_ACCESS_RO);
945
 
                uxa_finish_access(pDst, UXA_GLAMOR_ACCESS_RW);
 
949
                if (uxa_prepare_access(pDst, UXA_GLAMOR_ACCESS_RW)) {
 
950
                        if (uxa_prepare_access(pSrc, UXA_GLAMOR_ACCESS_RO)) {
 
951
                                ok = glamor_copy_plane_nf(pSrc, pDst, pGC, srcx, srcy, w, h,
 
952
                                                          dstx, dsty, bitPlane, &region);
 
953
                                uxa_finish_access(pSrc, UXA_GLAMOR_ACCESS_RO);
 
954
                        }
 
955
                        uxa_finish_access(pDst, UXA_GLAMOR_ACCESS_RW);
 
956
                }
946
957
                if (!ok)
947
958
                        goto fallback;
948
959
                return region;
962
973
        uxa_screen_t *uxa_screen = uxa_get_screen(screen);
963
974
 
964
975
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
965
 
                int ok;
 
976
                int ok = 0;
966
977
 
967
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
968
 
                ok = glamor_image_glyph_blt_nf(pDrawable, pGC, x, y, nglyph, ppci, pglyphBase);
969
 
                uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
978
                if (uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
979
                        ok = glamor_image_glyph_blt_nf(pDrawable, pGC, x, y, nglyph, ppci, pglyphBase);
 
980
                        uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
981
                }
970
982
                if (!ok)
971
983
                        goto fallback;
972
984
                return;
985
997
        uxa_screen_t *uxa_screen = uxa_get_screen(screen);
986
998
 
987
999
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
988
 
                int ok;
 
1000
                int ok = 0;
989
1001
 
990
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
991
 
                ok = glamor_poly_glyph_blt_nf(pDrawable, pGC, x, y, nglyph, ppci, pglyphBase);
992
 
                uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
1002
                if (uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
1003
                        ok = glamor_poly_glyph_blt_nf(pDrawable, pGC, x, y, nglyph, ppci, pglyphBase);
 
1004
                        uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
1005
                }
993
1006
                if (!ok)
994
1007
                        goto fallback;
995
1008
                return;
1007
1020
        uxa_screen_t *uxa_screen = uxa_get_screen(screen);
1008
1021
 
1009
1022
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
1010
 
                int ok;
 
1023
                int ok = 0;
1011
1024
 
1012
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
1013
 
                uxa_prepare_access(&pBitmap->drawable, UXA_GLAMOR_ACCESS_RO);
1014
 
                ok = glamor_push_pixels_nf(pGC, pBitmap, pDrawable, w, h, x, y);
1015
 
                uxa_finish_access(&pBitmap->drawable, UXA_GLAMOR_ACCESS_RO);
1016
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
1025
                if (uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
1026
                        if (uxa_prepare_access(&pBitmap->drawable, UXA_GLAMOR_ACCESS_RO)) {
 
1027
                                ok = glamor_push_pixels_nf(pGC, pBitmap, pDrawable, w, h, x, y);
 
1028
                                uxa_finish_access(&pBitmap->drawable, UXA_GLAMOR_ACCESS_RO);
 
1029
                        }
 
1030
                        uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
1031
                }
1017
1032
                if (!ok)
1018
1033
                        goto fallback;
1019
1034
                return;
1231
1246
        Box.y2 = Box.y1 + h;
1232
1247
 
1233
1248
        if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
1234
 
                uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
1235
 
                ok = glamor_get_image_nf(pDrawable, x, y, w, h,
1236
 
                                        format, planeMask, d);
1237
 
                uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
1249
                ok = 0;
 
1250
                if (uxa_prepare_access(pDrawable, UXA_GLAMOR_ACCESS_RW)) {
 
1251
                        ok = glamor_get_image_nf(pDrawable, x, y, w, h,
 
1252
                                                 format, planeMask, d);
 
1253
                        uxa_finish_access(pDrawable, UXA_GLAMOR_ACCESS_RW);
 
1254
                }
1238
1255
 
1239
1256
                if (!ok)
1240
1257
                        goto fallback;