~mmach/netext73/mesa-ryzen

« back to all changes in this revision

Viewing changes to src/gallium/auxiliary/draw/draw_decompose_tmp.h

  • Committer: mmach
  • Date: 2023-11-02 21:31:35 UTC
  • Revision ID: netbit73@gmail.com-20231102213135-18d4tzh7tj0uz752
2023-11-02 22:11:57

Show diffs side-by-side

added added

removed removed

Lines of Context:
48
48
FUNC(FUNC_VARS)
49
49
{
50
50
   unsigned idx[6], i;
51
 
   ushort flags;
 
51
   uint16_t flags;
52
52
   LOCAL_VARS
53
53
 
54
54
   FUNC_ENTER;
60
60
   }
61
61
 
62
62
   switch (prim) {
63
 
   case PIPE_PRIM_POINTS:
 
63
   case MESA_PRIM_POINTS:
64
64
      for (i = 0; i < count; i++) {
65
65
         idx[0] = GET_ELT(i);
66
66
         POINT(idx[0]);
67
67
      }
68
68
      break;
69
69
 
70
 
   case PIPE_PRIM_LINES:
 
70
   case MESA_PRIM_LINES:
71
71
      flags = DRAW_PIPE_RESET_STIPPLE;
72
72
      for (i = 0; i + 1 < count; i += 2) {
73
73
         idx[0] = GET_ELT(i);
76
76
      }
77
77
      break;
78
78
 
79
 
   case PIPE_PRIM_LINE_LOOP:
80
 
   case PIPE_PRIM_LINE_STRIP:
 
79
   case MESA_PRIM_LINE_LOOP:
 
80
   case MESA_PRIM_LINE_STRIP:
81
81
      if (count >= 2) {
82
82
         flags = (prim_flags & DRAW_SPLIT_BEFORE) ? 0 : DRAW_PIPE_RESET_STIPPLE;
83
83
         idx[1] = GET_ELT(0);
89
89
            LINE(flags, idx[0], idx[1]);
90
90
         }
91
91
         /* close the loop */
92
 
         if (prim == PIPE_PRIM_LINE_LOOP && !prim_flags)
 
92
         if (prim == MESA_PRIM_LINE_LOOP && !prim_flags)
93
93
            LINE(flags, idx[1], idx[2]);
94
94
      }
95
95
      break;
96
96
 
97
 
   case PIPE_PRIM_TRIANGLES:
 
97
   case MESA_PRIM_TRIANGLES:
98
98
      flags = DRAW_PIPE_RESET_STIPPLE | DRAW_PIPE_EDGE_FLAG_ALL;
99
99
      for (i = 0; i + 2 < count; i += 3) {
100
100
         idx[0] = GET_ELT(i);
104
104
      }
105
105
      break;
106
106
 
107
 
   case PIPE_PRIM_TRIANGLE_STRIP:
 
107
   case MESA_PRIM_TRIANGLE_STRIP:
108
108
      if (count >= 3) {
109
109
         flags = DRAW_PIPE_RESET_STIPPLE | DRAW_PIPE_EDGE_FLAG_ALL;
110
110
         idx[1] = GET_ELT(0);
137
137
      }
138
138
      break;
139
139
 
140
 
   case PIPE_PRIM_TRIANGLE_FAN:
 
140
   case MESA_PRIM_TRIANGLE_FAN:
141
141
      if (count >= 3) {
142
142
         flags = DRAW_PIPE_RESET_STIPPLE | DRAW_PIPE_EDGE_FLAG_ALL;
143
143
         idx[0] = GET_ELT(0);
163
163
      }
164
164
      break;
165
165
 
166
 
   case PIPE_PRIM_QUADS:
 
166
   case MESA_PRIM_QUADS:
167
167
      if (last_vertex_last) {
168
168
         for (i = 0; i + 3 < count; i += 4) {
169
169
            idx[0] = GET_ELT(i);
216
216
      }
217
217
      break;
218
218
 
219
 
   case PIPE_PRIM_QUAD_STRIP:
 
219
   case MESA_PRIM_QUAD_STRIP:
220
220
      if (count >= 4) {
221
221
         idx[2] = GET_ELT(0);
222
222
         idx[3] = GET_ELT(1);
276
276
      }
277
277
      break;
278
278
 
279
 
   case PIPE_PRIM_POLYGON:
 
279
   case MESA_PRIM_POLYGON:
280
280
      if (count >= 3) {
281
 
         ushort edge_next, edge_finish;
 
281
         uint16_t edge_next, edge_finish;
282
282
 
283
283
         if (last_vertex_last) {
284
284
            flags = (DRAW_PIPE_RESET_STIPPLE |
320
320
      }
321
321
      break;
322
322
 
323
 
   case PIPE_PRIM_LINES_ADJACENCY:
 
323
   case MESA_PRIM_LINES_ADJACENCY:
324
324
      flags = DRAW_PIPE_RESET_STIPPLE;
325
325
      for (i = 0; i + 3 < count; i += 4) {
326
326
         idx[0] = GET_ELT(i);
331
331
      }
332
332
      break;
333
333
 
334
 
   case PIPE_PRIM_LINE_STRIP_ADJACENCY:
 
334
   case MESA_PRIM_LINE_STRIP_ADJACENCY:
335
335
      if (count >= 4) {
336
336
         flags = (prim_flags & DRAW_SPLIT_BEFORE) ? 0 : DRAW_PIPE_RESET_STIPPLE;
337
337
         idx[1] = GET_ELT(0);
348
348
      }
349
349
      break;
350
350
 
351
 
   case PIPE_PRIM_TRIANGLES_ADJACENCY:
 
351
   case MESA_PRIM_TRIANGLES_ADJACENCY:
352
352
      flags = DRAW_PIPE_RESET_STIPPLE | DRAW_PIPE_EDGE_FLAG_ALL;
353
353
      for (i = 0; i + 5 < count; i += 6) {
354
354
         idx[0] = GET_ELT(i);
361
361
      }
362
362
      break;
363
363
 
364
 
   case PIPE_PRIM_TRIANGLE_STRIP_ADJACENCY:
 
364
   case MESA_PRIM_TRIANGLE_STRIP_ADJACENCY:
365
365
      if (count >= 6) {
366
366
         flags = DRAW_PIPE_RESET_STIPPLE | DRAW_PIPE_EDGE_FLAG_ALL;
367
367
         idx[0] = GET_ELT(1);