View | Details | Raw Unified | Return to bug 44472
Collapse All | Expand All

(-)a/.pick_status.json (-6 / +3390 lines)
Lines 1-4 Link Here
1
[
1
[
2
    {
3
        "sha": "b02e9ef35a0446019cda9473e4c355c7cc4bb24d",
4
        "description": "anv: fill AlphaToCoverageEnable lazily from state",
5
        "nominated": false,
6
        "nomination_type": null,
7
        "resolution": 4,
8
        "main_sha": null,
9
        "because_sha": null
10
    },
11
    {
12
        "sha": "9f7535564345396de07ce59dcced593e885e15ec",
13
        "description": "anv: move emit_shading_rate to gfx8_cmd_buffer",
14
        "nominated": false,
15
        "nomination_type": null,
16
        "resolution": 4,
17
        "main_sha": null,
18
        "because_sha": null
19
    },
20
    {
21
        "sha": "83ebd637d516d5fbb2d4d998bd5a124993a4f6a8",
22
        "description": "d3d10ump: No need define snprintf anymore in InputAssembly.cpp",
23
        "nominated": false,
24
        "nomination_type": null,
25
        "resolution": 4,
26
        "main_sha": null,
27
        "because_sha": null
28
    },
29
    {
30
        "sha": "a9da108c6b511cb74bfd89a4ce7658ffae288fd7",
31
        "description": "nir: No need redefine snprintf anymore in nir.h",
32
        "nominated": false,
33
        "nomination_type": null,
34
        "resolution": 4,
35
        "main_sha": null,
36
        "because_sha": null
37
    },
38
    {
39
        "sha": "1ee21139e84815f75389bb9b633bfecc1917d533",
40
        "description": "gallium: delete graw",
41
        "nominated": false,
42
        "nomination_type": null,
43
        "resolution": 4,
44
        "main_sha": null,
45
        "because_sha": null
46
    },
47
    {
48
        "sha": "ac7f4e0942de2576feda085d5fd165323753f950",
49
        "description": "glsl/glsl_to_nir: remove unreachable code",
50
        "nominated": false,
51
        "nomination_type": null,
52
        "resolution": 4,
53
        "main_sha": null,
54
        "because_sha": null
55
    },
56
    {
57
        "sha": "c7e92686583f45617aa017f30f93d156f2a74a2c",
58
        "description": "radv: fix setting results for initialization failures in thread trace and trap handler",
59
        "nominated": false,
60
        "nomination_type": null,
61
        "resolution": 4,
62
        "main_sha": null,
63
        "because_sha": null
64
    },
65
    {
66
        "sha": "0e782d96095aecfbc43233b9358e8bf915b26062",
67
        "description": "radeonsi: Inherit the old modifier when reallocating the texture.",
68
        "nominated": false,
69
        "nomination_type": null,
70
        "resolution": 4,
71
        "main_sha": null,
72
        "because_sha": null
73
    },
74
    {
75
        "sha": "5bc52a9103d2de45353056734ca1a9e94e9f6e94",
76
        "description": "anv: fix FTBFS on grl due to changes in clang 15",
77
        "nominated": false,
78
        "nomination_type": null,
79
        "resolution": 4,
80
        "main_sha": null,
81
        "because_sha": null
82
    },
83
    {
84
        "sha": "2c7be4d4212a7b6c50523285b412d5747231323e",
85
        "description": "nir: Usher nir_normalize_cubemap_coords into 2022",
86
        "nominated": false,
87
        "nomination_type": null,
88
        "resolution": 4,
89
        "main_sha": null,
90
        "because_sha": null
91
    },
92
    {
93
        "sha": "fc5c671e8785c89cf986181e0e3e7fa8742c4dce",
94
        "description": "nir: Fix nir_fmax_abs_vec_comp",
95
        "nominated": true,
96
        "nomination_type": 1,
97
        "resolution": 1,
98
        "main_sha": null,
99
        "because_sha": "272e927d0e9fed6e791d706ff5d895b6c2036fc0"
100
    },
101
    {
102
        "sha": "6fbb87851cda10cde7bf42fb8d391420cf3657b1",
103
        "description": "d3d12: HEVC Set D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_USE_ASYMETRIC_MOTION_PARTITION when required by caps",
104
        "nominated": false,
105
        "nomination_type": null,
106
        "resolution": 4,
107
        "main_sha": null,
108
        "because_sha": null
109
    },
110
    {
111
        "sha": "8f654b90005b75a74796d36d980676ce1d739d12",
112
        "description": "d3d12: Fix HEVC wrong caps detection due to bad parenthesis in condition",
113
        "nominated": false,
114
        "nomination_type": null,
115
        "resolution": 4,
116
        "main_sha": null,
117
        "because_sha": null
118
    },
119
    {
120
        "sha": "be7e2e5525b89fbd532b5fa7ef36bbd72b72956e",
121
        "description": "d3d12: HEVC Encode workaround for edge case in caps reporting not contemplated by upper layer interface",
122
        "nominated": false,
123
        "nomination_type": null,
124
        "resolution": 4,
125
        "main_sha": null,
126
        "because_sha": null
127
    },
128
    {
129
        "sha": "3eed5931edf6e5f45378b013ca21f98f17af2b34",
130
        "description": "tu: Fix the size of patch control points state",
131
        "nominated": false,
132
        "nomination_type": 1,
133
        "resolution": 4,
134
        "main_sha": null,
135
        "because_sha": "68f3c38c8011e3ff304a67b6ffb33fd21ee65b0c"
136
    },
137
    {
138
        "sha": "ebf7f7a1827006394fc6355ee245e45b6cfe2793",
139
        "description": "aco/spill: Fix spilling of Phi operands",
140
        "nominated": true,
141
        "nomination_type": 0,
142
        "resolution": 1,
143
        "main_sha": null,
144
        "because_sha": null
145
    },
146
    {
147
        "sha": "829f769e602a7bbff4a0603076cb74ce9a966e8e",
148
        "description": "pan/mdg: Fix 16-bit alignment with spiller",
149
        "nominated": true,
150
        "nomination_type": 1,
151
        "resolution": 1,
152
        "main_sha": null,
153
        "because_sha": "129d390bd8cc50f55b748ae6e95bed8c6074a488"
154
    },
155
    {
156
        "sha": "2c446b66364bff90012262c6960a8d28d3593e3d",
157
        "description": "pan/mdg: Limit work registers for large workgroups",
158
        "nominated": true,
159
        "nomination_type": 0,
160
        "resolution": 0,
161
        "main_sha": null,
162
        "because_sha": null
163
    },
164
    {
165
        "sha": "9b19104a30bba35c4025833d5022c8ddc6c1ccd0",
166
        "description": "pan/mdg: Lower PIPE_COMPUTE_CAP_MAX_THREADS_PER_BLOCK on Midgard",
167
        "nominated": true,
168
        "nomination_type": 0,
169
        "resolution": 1,
170
        "main_sha": null,
171
        "because_sha": null
172
    },
173
    {
174
        "sha": "5c95be85ab514d4cbb0c2b04f500038891cf68ac",
175
        "description": "panfrost/ci: Remove stale fail",
176
        "nominated": false,
177
        "nomination_type": null,
178
        "resolution": 4,
179
        "main_sha": null,
180
        "because_sha": null
181
    },
182
    {
183
        "sha": "16d061d3acd475c1f59e3c71c160a78933169c05",
184
        "description": "anv: Enable 16 bit float ops on devices that have a LSC",
185
        "nominated": false,
186
        "nomination_type": null,
187
        "resolution": 4,
188
        "main_sha": null,
189
        "because_sha": null
190
    },
191
    {
192
        "sha": "43169dbbe5f963ca47d51873f6639fbe3fd665b0",
193
        "description": "intel/compiler: Support 16 bit float ops",
194
        "nominated": false,
195
        "nomination_type": null,
196
        "resolution": 4,
197
        "main_sha": null,
198
        "because_sha": null
199
    },
200
    {
201
        "sha": "2e774180c61b7928329fb38652d2a54d0495c9e2",
202
        "description": "Revert \"panfrost/ci: Disable t720 jobs\"",
203
        "nominated": false,
204
        "nomination_type": 2,
205
        "resolution": 4,
206
        "main_sha": null,
207
        "because_sha": "b3a69d1c31a0c4073e7865945b9f70f96be6c34e"
208
    },
209
    {
210
        "sha": "c1cb7506bb39843384b5b6114cd8690a38655ef3",
211
        "description": "v3dv/pipeline: keep qpu_insts around if we expect them to be used later",
212
        "nominated": false,
213
        "nomination_type": null,
214
        "resolution": 4,
215
        "main_sha": null,
216
        "because_sha": null
217
    },
218
    {
219
        "sha": "7dcdd519385aaa4fddfa1368fbbbc89c408befe3",
220
        "description": "glthread: leave dlist dispatch in place for Begin/End",
221
        "nominated": true,
222
        "nomination_type": 1,
223
        "resolution": 1,
224
        "main_sha": null,
225
        "because_sha": "7f1cac7ba682410214289084dcc272167ca44e6b"
226
    },
227
    {
228
        "sha": "ca02da294ad02ff3bce8a0a37bc5d84823879e42",
229
        "description": "radv: discard the PS epilog when the pipeline doesn't use a fragment shader",
230
        "nominated": false,
231
        "nomination_type": null,
232
        "resolution": 4,
233
        "main_sha": null,
234
        "because_sha": null
235
    },
236
    {
237
        "sha": "7b3aae89126dcdce4ec364fe0329a533c736d105",
238
        "description": "radv: do not create a noop FS when the FS is imported from a library",
239
        "nominated": false,
240
        "nomination_type": null,
241
        "resolution": 4,
242
        "main_sha": null,
243
        "because_sha": null
244
    },
245
    {
246
        "sha": "c8849043a843140396f4874fed95f6c08ad587ee",
247
        "description": "Revert \"CI: Igalia farm is down\"",
248
        "nominated": false,
249
        "nomination_type": 2,
250
        "resolution": 4,
251
        "main_sha": null,
252
        "because_sha": "aa405b789ebf1797fdb3a1891fac49d0cca21c42"
253
    },
254
    {
255
        "sha": "675bcbb7a1c0111dc907f189b4a2de18397e6f23",
256
        "description": "mesa: add EXT_debug_label support",
257
        "nominated": false,
258
        "nomination_type": null,
259
        "resolution": 4,
260
        "main_sha": null,
261
        "because_sha": null
262
    },
263
    {
264
        "sha": "70fef476334297c51ed237aa3044e3003ffd5a5e",
265
        "description": "ci/windows: Getting the default supported windows version to be 7 when using mingw",
266
        "nominated": false,
267
        "nomination_type": null,
268
        "resolution": 4,
269
        "main_sha": null,
270
        "because_sha": null
271
    },
272
    {
273
        "sha": "79891bea1cbca4b822a8ccfd7cd4c05099ff68c5",
274
        "description": "ci/windows: Remove -Dlibelf:warning_level=1 as libelf subproject are already removed",
275
        "nominated": false,
276
        "nomination_type": null,
277
        "resolution": 4,
278
        "main_sha": null,
279
        "because_sha": null
280
    },
281
    {
282
        "sha": "2cb21fdd53fd50b6d3f15e114beb981b347a6e14",
283
        "description": "ci/windows: Enable gles1 for msvc",
284
        "nominated": false,
285
        "nomination_type": null,
286
        "resolution": 4,
287
        "main_sha": null,
288
        "because_sha": null
289
    },
290
    {
291
        "sha": "6905c258298b8cf6653692a82dd1473936b8a766",
292
        "description": "radv/rra: Use the accel struct type for header validation",
293
        "nominated": false,
294
        "nomination_type": null,
295
        "resolution": 4,
296
        "main_sha": null,
297
        "because_sha": null
298
    },
299
    {
300
        "sha": "43756a9f76e46bed894e679b7ca9286315e428fe",
301
        "description": "radv/rra: Continue dumping accel structs if validation fails",
302
        "nominated": false,
303
        "nomination_type": null,
304
        "resolution": 4,
305
        "main_sha": null,
306
        "because_sha": null
307
    },
308
    {
309
        "sha": "e8547392b029959e4f76b1e4ad9d4fe71255bd72",
310
        "description": "radv/rra: Add basic header validation",
311
        "nominated": false,
312
        "nomination_type": null,
313
        "resolution": 4,
314
        "main_sha": null,
315
        "because_sha": null
316
    },
317
    {
318
        "sha": "2ccd039174ae1fbb5f17ca9f602e819d09f1951f",
319
        "description": "radv/rra: Validate before gathering bvh info",
320
        "nominated": false,
321
        "nomination_type": null,
322
        "resolution": 4,
323
        "main_sha": null,
324
        "because_sha": null
325
    },
326
    {
327
        "sha": "d83176d1c073f7f4d33393a235113d43915faff9",
328
        "description": "radv/rra: Fix dumps in the case of aliasing",
329
        "nominated": false,
330
        "nomination_type": null,
331
        "resolution": 4,
332
        "main_sha": null,
333
        "because_sha": null
334
    },
335
    {
336
        "sha": "aa405b789ebf1797fdb3a1891fac49d0cca21c42",
337
        "description": "CI: Igalia farm is down",
338
        "nominated": false,
339
        "nomination_type": null,
340
        "resolution": 4,
341
        "main_sha": null,
342
        "because_sha": null
343
    },
344
    {
345
        "sha": "2b64ff92843339de4321d1c2f9da6931d0533912",
346
        "description": "util: Turn -DWINDOWS_NO_FUTEX to be pre_args",
347
        "nominated": true,
348
        "nomination_type": 1,
349
        "resolution": 1,
350
        "main_sha": null,
351
        "because_sha": "c002bbeb2f7a1bf2d5c020abdddcf25909c447b6"
352
    },
353
    {
354
        "sha": "4c7a44413a07d3fb314f786e047bb7212c082a6c",
355
        "description": "mesa,gallium: Revert \"Make point coord origin a CAP\"",
356
        "nominated": true,
357
        "nomination_type": 2,
358
        "resolution": 2,
359
        "main_sha": null,
360
        "because_sha": "e749f67f8989874f6795d95422c1f3eb4d2706ba"
361
    },
362
    {
363
        "sha": "86c9aa6bfeb06ab04c22604339e8aef2d0c451c8",
364
        "description": "intel: Add and use intel_engines_class_to_string()",
365
        "nominated": false,
366
        "nomination_type": null,
367
        "resolution": 4,
368
        "main_sha": null,
369
        "because_sha": null
370
    },
371
    {
372
        "sha": "772dfd60ad7c6fdcfade62bc8131128b93843282",
373
        "description": "intel: Convert i915 engine type to intel in tools/ common/ and ds/",
374
        "nominated": false,
375
        "nomination_type": null,
376
        "resolution": 4,
377
        "main_sha": null,
378
        "because_sha": null
379
    },
380
    {
381
        "sha": "5269d91efcfee95930208d9b8f3273c9c97d4a6f",
382
        "description": "intel: Convert missing i915 engine types to intel",
383
        "nominated": false,
384
        "nomination_type": 1,
385
        "resolution": 4,
386
        "main_sha": null,
387
        "because_sha": "03b959286e2c7f8e006df02d5102bd346a9d450b"
388
    },
389
    {
390
        "sha": "ac2964dfbd125357f25c44e08dee59d4f979ad39",
391
        "description": "nir: Be smarter fusing ffma",
392
        "nominated": false,
393
        "nomination_type": null,
394
        "resolution": 4,
395
        "main_sha": null,
396
        "because_sha": null
397
    },
398
    {
399
        "sha": "07c654e08fdf1e0fdaf55db9b18c055b15e8f0df",
400
        "description": "glthread: fix buffer allocation size with non-signed buffer offset path",
401
        "nominated": false,
402
        "nomination_type": null,
403
        "resolution": 4,
404
        "main_sha": null,
405
        "because_sha": null
406
    },
407
    {
408
        "sha": "9fc4cb8067e54ae79751900739739592fa89f309",
409
        "description": "gallium/vl: Add opaque rgb pixel formats",
410
        "nominated": true,
411
        "nomination_type": 0,
412
        "resolution": 1,
413
        "main_sha": null,
414
        "because_sha": null
415
    },
416
    {
417
        "sha": "8255739a0a5a578811584564a18dda2b5db5aa47",
418
        "description": "mesa/main: remove driver-cap for ARB_point_sprite",
419
        "nominated": false,
420
        "nomination_type": null,
421
        "resolution": 4,
422
        "main_sha": null,
423
        "because_sha": null
424
    },
425
    {
426
        "sha": "310959d9fe1aeb78c7cad24a2c6095513ab5f195",
427
        "description": "mesa/st: rip out point-sprite cap",
428
        "nominated": false,
429
        "nomination_type": null,
430
        "resolution": 4,
431
        "main_sha": null,
432
        "because_sha": null
433
    },
434
    {
435
        "sha": "b0d698c5328fbcb5e0ae3952cde1c1e411151adb",
436
        "description": "rusticl: correctly check global argument size",
437
        "nominated": false,
438
        "nomination_type": null,
439
        "resolution": 4,
440
        "main_sha": null,
441
        "because_sha": null
442
    },
443
    {
444
        "sha": "c935232822f83502eb11bdff8e25512269858f27",
445
        "description": "rusticl: use 32-bit address format for 32-bit devices",
446
        "nominated": false,
447
        "nomination_type": null,
448
        "resolution": 4,
449
        "main_sha": null,
450
        "because_sha": null
451
    },
452
    {
453
        "sha": "66b3df3c152ef4625977f6b7bb286686a45d32ec",
454
        "description": "clc: add 32-bit target",
455
        "nominated": false,
456
        "nomination_type": null,
457
        "resolution": 4,
458
        "main_sha": null,
459
        "because_sha": null
460
    },
461
    {
462
        "sha": "b3a69d1c31a0c4073e7865945b9f70f96be6c34e",
463
        "description": "panfrost/ci: Disable t720 jobs",
464
        "nominated": false,
465
        "nomination_type": null,
466
        "resolution": 4,
467
        "main_sha": null,
468
        "because_sha": null
469
    },
470
    {
471
        "sha": "eccc5600c3b68600e917e571ca2312bd14d6d3d4",
472
        "description": "zink: use util_dynarray_clear",
473
        "nominated": false,
474
        "nomination_type": null,
475
        "resolution": 4,
476
        "main_sha": null,
477
        "because_sha": null
478
    },
479
    {
480
        "sha": "17d8ff3a398027d23b7caa6c174ca654c9875284",
481
        "description": "zink: fixup dynarray-type",
482
        "nominated": false,
483
        "nomination_type": null,
484
        "resolution": 4,
485
        "main_sha": null,
486
        "because_sha": null
487
    },
488
    {
489
        "sha": "510a34fbf33918a67f6a2e7277480cb02e1ca172",
490
        "description": "zink: fix broken pool-alloc consolidation",
491
        "nominated": false,
492
        "nomination_type": 1,
493
        "resolution": 4,
494
        "main_sha": null,
495
        "because_sha": "43dcdf33654d52624e6afb0444b71de85bcf5448"
496
    },
497
    {
498
        "sha": "b49b18f0b7acb4c64a0a9fd2ee55aeea868e701d",
499
        "description": "anv: reduce BT emissions & surface state writes with push descriptors",
500
        "nominated": false,
501
        "nomination_type": null,
502
        "resolution": 4,
503
        "main_sha": null,
504
        "because_sha": null
505
    },
506
    {
507
        "sha": "ff91c5ca42bc80aa411cb3fd8f550aa6fdd16bdc",
508
        "description": "anv: add analysis for push descriptor uses and store it in shader cache",
509
        "nominated": false,
510
        "nomination_type": null,
511
        "resolution": 4,
512
        "main_sha": null,
513
        "because_sha": null
514
    },
515
    {
516
        "sha": "01e282f23fe8ef2240b6fde35ad57f7397e0d88a",
517
        "description": "anv: initialization pipeline layout to 0s",
518
        "nominated": true,
519
        "nomination_type": 0,
520
        "resolution": 1,
521
        "main_sha": null,
522
        "because_sha": null
523
    },
524
    {
525
        "sha": "8616f11a395e8578e6e58500e30e426e92d7337c",
526
        "description": "anv: track descriptor set layout flags",
527
        "nominated": false,
528
        "nomination_type": null,
529
        "resolution": 4,
530
        "main_sha": null,
531
        "because_sha": null
532
    },
533
    {
534
        "sha": "d7f1569307b44a2b151f5461e69fb342b7fc7d15",
535
        "description": "anv: limit push constant reemission",
536
        "nominated": false,
537
        "nomination_type": null,
538
        "resolution": 4,
539
        "main_sha": null,
540
        "because_sha": null
541
    },
542
    {
543
        "sha": "2db45f713a386fed0303f99a25a7a3c644f71fdd",
544
        "description": "isl: avoid gfx version switch cases on the hot path",
545
        "nominated": false,
546
        "nomination_type": null,
547
        "resolution": 4,
548
        "main_sha": null,
549
        "because_sha": null
550
    },
551
    {
552
        "sha": "06d955ab210ae3b1e89f4016d751f911946cae4b",
553
        "description": "anv: remove multiple push descriptors",
554
        "nominated": false,
555
        "nomination_type": null,
556
        "resolution": 4,
557
        "main_sha": null,
558
        "because_sha": null
559
    },
560
    {
561
        "sha": "803f438d85236eede4140d11ad8f0c7249e95f0d",
562
        "description": "anv: optimize 3DSTATE_VF emission",
563
        "nominated": false,
564
        "nomination_type": null,
565
        "resolution": 4,
566
        "main_sha": null,
567
        "because_sha": null
568
    },
569
    {
570
        "sha": "126f5bc15a73ac9b4f9824b34ac81714cc3e2817",
571
        "description": "anv: limit calls into cmd_buffer_flush_dynamic_state",
572
        "nominated": false,
573
        "nomination_type": null,
574
        "resolution": 4,
575
        "main_sha": null,
576
        "because_sha": null
577
    },
578
    {
579
        "sha": "54bc34f70a06cf9b1ae9dc91f1f06a4a001e9344",
580
        "description": "anv: comment out the Gfx8/9 VB cache key workaround for newer Gens",
581
        "nominated": false,
582
        "nomination_type": null,
583
        "resolution": 4,
584
        "main_sha": null,
585
        "because_sha": null
586
    },
587
    {
588
        "sha": "f8136ea5b63a67c02e9cf2254350f95976124951",
589
        "description": "anv: remove unused code",
590
        "nominated": false,
591
        "nomination_type": null,
592
        "resolution": 4,
593
        "main_sha": null,
594
        "because_sha": null
595
    },
596
    {
597
        "sha": "cea113c97705ea659821a8cc8c330ded4c2e477a",
598
        "description": "vulkan/runtime: don't lookup the pipeline disk cache if disabled",
599
        "nominated": true,
600
        "nomination_type": 1,
601
        "resolution": 1,
602
        "main_sha": null,
603
        "because_sha": "591da9877900c56434f9e23e0ad0058b118b0be8"
604
    },
605
    {
606
        "sha": "6558ecf3ebb1e55c4e9452b9252510443c0c1a49",
607
        "description": "radv: Mark dEQP-VK.ray_query.misc.dynamic_indexing as crashing in CI.",
608
        "nominated": false,
609
        "nomination_type": null,
610
        "resolution": 4,
611
        "main_sha": null,
612
        "because_sha": null
613
    },
614
    {
615
        "sha": "b516f59490581ff0be4773bf482648fc82f31b3a",
616
        "description": "vulkan/wsi: Add dep_libudev to idep dependencies",
617
        "nominated": true,
618
        "nomination_type": 1,
619
        "resolution": 1,
620
        "main_sha": null,
621
        "because_sha": "4885e63a6d20c57f98b7b641ea3c39a8ff3ae2dd"
622
    },
623
    {
624
        "sha": "9cb251a0b0622a65222bff6062681f21530164af",
625
        "description": "ci/traces: Blender demo (Cube Diorama) flakes on Intel APL",
626
        "nominated": false,
627
        "nomination_type": null,
628
        "resolution": 4,
629
        "main_sha": null,
630
        "because_sha": null
631
    },
632
    {
633
        "sha": "2e50bf19cd91169498e2a04823f901eb50672028",
634
        "description": "nir: move fusing csel and comparisons to opt_late_algebraic",
635
        "nominated": false,
636
        "nomination_type": null,
637
        "resolution": 4,
638
        "main_sha": null,
639
        "because_sha": null
640
    },
641
    {
642
        "sha": "aea311dbef41aae574d8a2c48bf04908343292d7",
643
        "description": "r600/sfn: run cleanup passes after late algebraic opt",
644
        "nominated": false,
645
        "nomination_type": null,
646
        "resolution": 4,
647
        "main_sha": null,
648
        "because_sha": null
649
    },
650
    {
651
        "sha": "cfc6bdb7606801611d043db7d4c23838eb637114",
652
        "description": "hasvk: Correctly set NonPerspectiveBarycentricEnable on gfx7",
653
        "nominated": false,
654
        "nomination_type": null,
655
        "resolution": 4,
656
        "main_sha": null,
657
        "because_sha": null
658
    },
659
    {
660
        "sha": "eec49374b06fdf18a93c691642ee93c6b04612a8",
661
        "description": "nir: fix NIR_DEBUG=validate_ssa_dominance",
662
        "nominated": false,
663
        "nomination_type": null,
664
        "resolution": 4,
665
        "main_sha": null,
666
        "because_sha": null
667
    },
668
    {
669
        "sha": "44ccaca41d41e5dfa660f7c2fb6e50aa2ff03e22",
670
        "description": "util/mesa/wide: Rename _SIMPLE_MTX_INITIALIZER_NP to SIMPLE_MTX_INITIALIZER",
671
        "nominated": false,
672
        "nomination_type": null,
673
        "resolution": 4,
674
        "main_sha": null,
675
        "because_sha": null
676
    },
677
    {
678
        "sha": "be3c46964bd41801d44ee3ea668310ef1093df40",
679
        "description": "ci/bin: Remove whitespace from token files",
680
        "nominated": false,
681
        "nomination_type": null,
682
        "resolution": 4,
683
        "main_sha": null,
684
        "because_sha": null
685
    },
686
    {
687
        "sha": "d52d51b24dc6a477ea6459281d0b3b803d5b227c",
688
        "description": "ci/bin: Fix requirements.txt",
689
        "nominated": false,
690
        "nomination_type": null,
691
        "resolution": 4,
692
        "main_sha": null,
693
        "because_sha": null
694
    },
695
    {
696
        "sha": "bb6c43027eaa066fdd2a2cf4744f562c41eeb06d",
697
        "description": "agx: Reserve live-in regs at the start of block",
698
        "nominated": false,
699
        "nomination_type": null,
700
        "resolution": 4,
701
        "main_sha": null,
702
        "because_sha": null
703
    },
704
    {
705
        "sha": "de6e11b84823e78fcad4ba86de4b283dc2102ca8",
706
        "description": "agx: Pass in max regs as a paramter to RA",
707
        "nominated": false,
708
        "nomination_type": null,
709
        "resolution": 4,
710
        "main_sha": null,
711
        "because_sha": null
712
    },
713
    {
714
        "sha": "68f89d4cc593ee6e30ccbfb539f431fc8236a58a",
715
        "description": "agx: Introduce ra_ctx data structure",
716
        "nominated": false,
717
        "nomination_type": null,
718
        "resolution": 4,
719
        "main_sha": null,
720
        "because_sha": null
721
    },
722
    {
723
        "sha": "bcb2cf96880c65de20f856b73298bc994dc9606c",
724
        "description": "agx: Write to r0l with a \"nesting\" instruction",
725
        "nominated": false,
726
        "nomination_type": null,
727
        "resolution": 4,
728
        "main_sha": null,
729
        "because_sha": null
730
    },
731
    {
732
        "sha": "c9a96d46156055ad38135977e882a7dffdc36346",
733
        "description": "agx: Preload vertex/instance ID only at start",
734
        "nominated": false,
735
        "nomination_type": null,
736
        "resolution": 4,
737
        "main_sha": null,
738
        "because_sha": null
739
    },
740
    {
741
        "sha": "f665229d77057067fc63c8890915a470671f09fb",
742
        "description": "agx: Print agx_dim appropriately",
743
        "nominated": false,
744
        "nomination_type": null,
745
        "resolution": 4,
746
        "main_sha": null,
747
        "because_sha": null
748
    },
749
    {
750
        "sha": "6c95572ef00986ed15d98774a32eb8e9f84a4deb",
751
        "description": "agx: Print instructions as \"dest = src\"",
752
        "nominated": false,
753
        "nomination_type": null,
754
        "resolution": 4,
755
        "main_sha": null,
756
        "because_sha": null
757
    },
758
    {
759
        "sha": "72a1e1f33f6ebd97291eb9f4437db3b60bcd5d05",
760
        "description": "agx: Emit trap at pack-time, not during isel",
761
        "nominated": false,
762
        "nomination_type": null,
763
        "resolution": 4,
764
        "main_sha": null,
765
        "because_sha": null
766
    },
767
    {
768
        "sha": "1dcaade3e24356a419413db4cecf7f444030f24f",
769
        "description": "agx: Rename \"combine\" to \"collect\"",
770
        "nominated": false,
771
        "nomination_type": null,
772
        "resolution": 4,
773
        "main_sha": null,
774
        "because_sha": null
775
    },
776
    {
777
        "sha": "82e8e709cb832e2cf5c9129ded7baf37a223e685",
778
        "description": "agx: Dynamically size split instruction",
779
        "nominated": false,
780
        "nomination_type": null,
781
        "resolution": 4,
782
        "main_sha": null,
783
        "because_sha": null
784
    },
785
    {
786
        "sha": "7c9fba34bcadbe533a075ada29818d46c950c0fa",
787
        "description": "agx: Switch to dynamic allocation of srcs/dests",
788
        "nominated": false,
789
        "nomination_type": null,
790
        "resolution": 4,
791
        "main_sha": null,
792
        "because_sha": null
793
    },
794
    {
795
        "sha": "544c60a13264d3bc12e690a9a58f7ccd27d8c427",
796
        "description": "agx: Improve printing of immediate sources",
797
        "nominated": false,
798
        "nomination_type": null,
799
        "resolution": 4,
800
        "main_sha": null,
801
        "because_sha": null
802
    },
803
    {
804
        "sha": "c2bc8c138465582177f09e2b1dde4bb75ec1d70c",
805
        "description": "agx: Don't prefix pseudo-ops",
806
        "nominated": false,
807
        "nomination_type": null,
808
        "resolution": 4,
809
        "main_sha": null,
810
        "because_sha": null
811
    },
812
    {
813
        "sha": "40f0ac20821e1277e7dd5d24ac1edb9a09b747ea",
814
        "description": "agx: Emit smaller combines for nir_op_vec2/3",
815
        "nominated": false,
816
        "nomination_type": null,
817
        "resolution": 4,
818
        "main_sha": null,
819
        "because_sha": null
820
    },
821
    {
822
        "sha": "f4726cf240f0a3907f8ad9d903ef0c76bb8abe1a",
823
        "description": "agx: Set PIPE_SHADER_CAP_INDIRECT_CONST_ADDR",
824
        "nominated": false,
825
        "nomination_type": null,
826
        "resolution": 4,
827
        "main_sha": null,
828
        "because_sha": null
829
    },
830
    {
831
        "sha": "6a183a9ffd1baa0abe4ed1da74a55dd004341c0d",
832
        "description": "agx: Add iterators for phi/non-phi instructions",
833
        "nominated": false,
834
        "nomination_type": null,
835
        "resolution": 4,
836
        "main_sha": null,
837
        "because_sha": null
838
    },
839
    {
840
        "sha": "d3880a632456879a1c06320879aa684c1886f438",
841
        "description": "zink: disable fbfetch when flushing clears",
842
        "nominated": true,
843
        "nomination_type": 0,
844
        "resolution": 1,
845
        "main_sha": null,
846
        "because_sha": null
847
    },
848
    {
849
        "sha": "1ae26de36f51520d4285777c435e918b31dc442a",
850
        "description": "zink: unset rp_changed after initializing renderpass attachments",
851
        "nominated": true,
852
        "nomination_type": 0,
853
        "resolution": 1,
854
        "main_sha": null,
855
        "because_sha": null
856
    },
857
    {
858
        "sha": "f72071fbc35a703c058b4113ca91559774c70e77",
859
        "description": "zink: clamp line_stipple_factor to 1 if stipple is disabled",
860
        "nominated": true,
861
        "nomination_type": 0,
862
        "resolution": 1,
863
        "main_sha": null,
864
        "because_sha": null
865
    },
866
    {
867
        "sha": "2710ef4c2af594ff8ff34b8bbadad81876324925",
868
        "description": "zink: don't add other usage bits for transient images",
869
        "nominated": true,
870
        "nomination_type": 0,
871
        "resolution": 0,
872
        "main_sha": null,
873
        "because_sha": null
874
    },
875
    {
876
        "sha": "3dcc03d979b651a11ef5bf7cdbe74b6bb6a4bb79",
877
        "description": "zink: check core feature for pipeline cache control",
878
        "nominated": false,
879
        "nomination_type": null,
880
        "resolution": 4,
881
        "main_sha": null,
882
        "because_sha": null
883
    },
884
    {
885
        "sha": "179e638bb82b50662643ddf2eca1230db8075855",
886
        "description": "zink: Fix dummy CB path decision for VK_EXT_cwe presence.",
887
        "nominated": false,
888
        "nomination_type": null,
889
        "resolution": 4,
890
        "main_sha": null,
891
        "because_sha": null
892
    },
893
    {
894
        "sha": "6a18e154bce5bfca6cb195406440483a473d90e7",
895
        "description": "rusticl/mem: propper CL_MEM_ALLOC_HOST_PTR support",
896
        "nominated": false,
897
        "nomination_type": null,
898
        "resolution": 4,
899
        "main_sha": null,
900
        "because_sha": null
901
    },
902
    {
903
        "sha": "7195b62c63bddc13826ba4e5a35a42652e24f185",
904
        "description": "lp: claim being UMA",
905
        "nominated": false,
906
        "nomination_type": null,
907
        "resolution": 4,
908
        "main_sha": null,
909
        "because_sha": null
910
    },
911
    {
912
        "sha": "72f763f5cc074858edd3f3b53295611d1fc87142",
913
        "description": "rusticl/mem: rewrite the (un)mapping code",
914
        "nominated": false,
915
        "nomination_type": null,
916
        "resolution": 4,
917
        "main_sha": null,
918
        "because_sha": null
919
    },
920
    {
921
        "sha": "dc081353acf0315940ea2413d35166ef9e86b1a0",
922
        "description": "rusticl: add helper ctx wrapper for coherent and direct mapping",
923
        "nominated": false,
924
        "nomination_type": null,
925
        "resolution": 4,
926
        "main_sha": null,
927
        "because_sha": null
928
    },
929
    {
930
        "sha": "ea5b23c75bc527e9ce64d73a3b68ba7a3469e197",
931
        "description": "rusticl: rework resource mappings a little",
932
        "nominated": false,
933
        "nomination_type": null,
934
        "resolution": 4,
935
        "main_sha": null,
936
        "because_sha": null
937
    },
938
    {
939
        "sha": "6b235361f70d2b6460bbe7b3d514f8747076221d",
940
        "description": "rusticl/mesa: add bx() method to PipeTransfer",
941
        "nominated": false,
942
        "nomination_type": null,
943
        "resolution": 4,
944
        "main_sha": null,
945
        "because_sha": null
946
    },
947
    {
948
        "sha": "557f4dd89aaa148c6cff4d752ed5e32b9118d305",
949
        "description": "rusticl: add support for coherent resources",
950
        "nominated": false,
951
        "nomination_type": null,
952
        "resolution": 4,
953
        "main_sha": null,
954
        "because_sha": null
955
    },
956
    {
957
        "sha": "a5e9e64aae2e94209e64fbb75c7b03aab3b0d39b",
958
        "description": "glthread: fix matrix stack depth tracking",
959
        "nominated": true,
960
        "nomination_type": 1,
961
        "resolution": 1,
962
        "main_sha": null,
963
        "because_sha": "6febe2b880e79ac2b5347412ffdf6502ac47e5be"
964
    },
965
    {
966
        "sha": "6689d67603ae61e1e9e43370af816f10c5bc37c1",
967
        "description": "asahi: Remove no-direct-packing",
968
        "nominated": false,
969
        "nomination_type": null,
970
        "resolution": 4,
971
        "main_sha": null,
972
        "because_sha": null
973
    },
974
    {
975
        "sha": "ea58edaafbfe0234c6ef07a77f5c4305493acdd5",
976
        "description": "asahi: Use a header more like Intel's GenXML",
977
        "nominated": false,
978
        "nomination_type": null,
979
        "resolution": 4,
980
        "main_sha": null,
981
        "because_sha": null
982
    },
983
    {
984
        "sha": "ab2d5deec200170273c245974118db0e7b763b5d",
985
        "description": "asahi,panfrost: Remove exact attribute",
986
        "nominated": false,
987
        "nomination_type": null,
988
        "resolution": 4,
989
        "main_sha": null,
990
        "because_sha": null
991
    },
992
    {
993
        "sha": "a64e38b0aa39feeb3b0ac9c9db09335b7ea8698c",
994
        "description": "panfrost,asahi: Remove unused function",
995
        "nominated": false,
996
        "nomination_type": null,
997
        "resolution": 4,
998
        "main_sha": null,
999
        "because_sha": null
1000
    },
1001
    {
1002
        "sha": "0f24c8ef5f15218d82937119a44cd587f49548d4",
1003
        "description": "panfrost,asahi: Remove unused prepare macro",
1004
        "nominated": false,
1005
        "nomination_type": null,
1006
        "resolution": 4,
1007
        "main_sha": null,
1008
        "because_sha": null
1009
    },
1010
    {
1011
        "sha": "0302519f1ce16e9c0002080012303ba889cf71b0",
1012
        "description": "asahi/genxml: Defeature uint/float",
1013
        "nominated": false,
1014
        "nomination_type": null,
1015
        "resolution": 4,
1016
        "main_sha": null,
1017
        "because_sha": null
1018
    },
1019
    {
1020
        "sha": "8eefda4ea907b13bd97e29bf8496b019f29e9b6f",
1021
        "description": "asahi: Eliminate \"Pixel Format\" type from GenXML",
1022
        "nominated": false,
1023
        "nomination_type": null,
1024
        "resolution": 4,
1025
        "main_sha": null,
1026
        "because_sha": null
1027
    },
1028
    {
1029
        "sha": "f4b03ea6dc0ac0f02f780ba809c3ea551a72f947",
1030
        "description": "nir/lower_system_values: Fix cs_local_index_to_id with variable workgroups",
1031
        "nominated": true,
1032
        "nomination_type": 1,
1033
        "resolution": 1,
1034
        "main_sha": null,
1035
        "because_sha": "998d84fca56b2e89ff7342a2c51398d7e9429114"
1036
    },
1037
    {
1038
        "sha": "2dfab687ece3bd5895c94820abf4f5dee1a8fd7a",
1039
        "description": "intel/compiler: Vectorize gl_TessLevelInner/Outer[] writes [v2]",
1040
        "nominated": false,
1041
        "nomination_type": null,
1042
        "resolution": 4,
1043
        "main_sha": null,
1044
        "because_sha": null
1045
    },
1046
    {
1047
        "sha": "44d917bdf3e1087e96aaadf5d828bf6654f3706e",
1048
        "description": "hasvk: force inline more pipe flush functions",
1049
        "nominated": false,
1050
        "nomination_type": null,
1051
        "resolution": 4,
1052
        "main_sha": null,
1053
        "because_sha": null
1054
    },
1055
    {
1056
        "sha": "760b43f32c9158eddce0818e8b7d0ecd516a240e",
1057
        "description": "hasvk: combine flushes in Draw/DrawIndexed/DrawIndirectByteCountEXT",
1058
        "nominated": false,
1059
        "nomination_type": null,
1060
        "resolution": 4,
1061
        "main_sha": null,
1062
        "because_sha": null
1063
    },
1064
    {
1065
        "sha": "bee1f7b83a91a6db6b3b96f91f3b50b14e57fac6",
1066
        "description": "hasvk: don't export gfx state flushing helper",
1067
        "nominated": false,
1068
        "nomination_type": null,
1069
        "resolution": 4,
1070
        "main_sha": null,
1071
        "because_sha": null
1072
    },
1073
    {
1074
        "sha": "6db3a82fb2989af9994b0c7a39cd6342908c2e1e",
1075
        "description": "hasvk: don't export flush_compute_state",
1076
        "nominated": false,
1077
        "nomination_type": null,
1078
        "resolution": 4,
1079
        "main_sha": null,
1080
        "because_sha": null
1081
    },
1082
    {
1083
        "sha": "4f0f272069b82e60e281ecc711e4779509baf7c7",
1084
        "description": "util: Implement atomic operations consistently across compilers and testing for it",
1085
        "nominated": false,
1086
        "nomination_type": null,
1087
        "resolution": 4,
1088
        "main_sha": null,
1089
        "because_sha": null
1090
    },
1091
    {
1092
        "sha": "96e7d1cf0c54bf210b4aba5ef2464429d02c967c",
1093
        "description": "util: Remove the include of windows.h when compiling with MSVC",
1094
        "nominated": false,
1095
        "nomination_type": null,
1096
        "resolution": 4,
1097
        "main_sha": null,
1098
        "because_sha": null
1099
    },
1100
    {
1101
        "sha": "1c86a5f309619303f82f29a3c3dd3642501640bb",
1102
        "description": "rusticl/kernel: preserve fp16 denorms to fix vload/vstore_half",
1103
        "nominated": false,
1104
        "nomination_type": null,
1105
        "resolution": 4,
1106
        "main_sha": null,
1107
        "because_sha": null
1108
    },
1109
    {
1110
        "sha": "5fa7c536316a8f5ef11a2cfc39f1fc6ed9aabfe6",
1111
        "description": "venus: avoid accessing local var in VN_ADD_EXT_TO_PNEXT_OF",
1112
        "nominated": false,
1113
        "nomination_type": null,
1114
        "resolution": 4,
1115
        "main_sha": null,
1116
        "because_sha": null
1117
    },
1118
    {
1119
        "sha": "ea429b90b755d6fc34f4fa9f7473c33920173341",
1120
        "description": "lavapipe: store compiler options to physical device",
1121
        "nominated": false,
1122
        "nomination_type": null,
1123
        "resolution": 4,
1124
        "main_sha": null,
1125
        "because_sha": null
1126
    },
1127
    {
1128
        "sha": "d1acd88c1466a854a8a0466d697b068ebeaa8a9f",
1129
        "description": "zink: prevent ballooning of view object memory",
1130
        "nominated": false,
1131
        "nomination_type": null,
1132
        "resolution": 4,
1133
        "main_sha": null,
1134
        "because_sha": null
1135
    },
1136
    {
1137
        "sha": "765debc602ac77655a8c46fc77808e0615248ff3",
1138
        "description": "zink: delete view objects when unsetting resource usage in batch reset",
1139
        "nominated": false,
1140
        "nomination_type": null,
1141
        "resolution": 4,
1142
        "main_sha": null,
1143
        "because_sha": null
1144
    },
1145
    {
1146
        "sha": "43dcdf33654d52624e6afb0444b71de85bcf5448",
1147
        "description": "zink: rework/improve descriptor pool overflow handling on batch reset",
1148
        "nominated": false,
1149
        "nomination_type": null,
1150
        "resolution": 4,
1151
        "main_sha": null,
1152
        "because_sha": null
1153
    },
1154
    {
1155
        "sha": "340cfa1001eabb81812ad4c311c75e7279d3feb3",
1156
        "description": "zink: fix pool overflow handling on batch reset",
1157
        "nominated": false,
1158
        "nomination_type": null,
1159
        "resolution": 4,
1160
        "main_sha": null,
1161
        "because_sha": null
1162
    },
1163
    {
1164
        "sha": "6c59aeebbfbf4633731ee12b13732e75bd86bcf7",
1165
        "description": "zink: handle oom better during descriptor updating",
1166
        "nominated": false,
1167
        "nomination_type": null,
1168
        "resolution": 4,
1169
        "main_sha": null,
1170
        "because_sha": null
1171
    },
1172
    {
1173
        "sha": "7b88bc54824b3cb639c52d9835027de713997dcd",
1174
        "description": "zink: move descriptor function up in file",
1175
        "nominated": false,
1176
        "nomination_type": null,
1177
        "resolution": 4,
1178
        "main_sha": null,
1179
        "because_sha": null
1180
    },
1181
    {
1182
        "sha": "f8f4648cac19b5d3e67596f1b8c155c61f4f1c32",
1183
        "description": "venus: Enable Vulkan 1.3",
1184
        "nominated": false,
1185
        "nomination_type": null,
1186
        "resolution": 4,
1187
        "main_sha": null,
1188
        "because_sha": null
1189
    },
1190
    {
1191
        "sha": "85a6a2461d8a68b9d1b5f6e0dfe88e17b6e793a0",
1192
        "description": "venus: Enable VK_KHR_synchronization2",
1193
        "nominated": false,
1194
        "nomination_type": null,
1195
        "resolution": 4,
1196
        "main_sha": null,
1197
        "because_sha": null
1198
    },
1199
    {
1200
        "sha": "58eb3ac66691ddaf9439415680ef6f8bf6561344",
1201
        "description": "venus: Refactor vn_command_buffer_builder temp storage",
1202
        "nominated": false,
1203
        "nomination_type": null,
1204
        "resolution": 4,
1205
        "main_sha": null,
1206
        "because_sha": null
1207
    },
1208
    {
1209
        "sha": "7daedd2a305469eacecea892998d5ec88d1e6496",
1210
        "description": "venus: Add vn_queue_wait_idle_before_present()",
1211
        "nominated": false,
1212
        "nomination_type": null,
1213
        "resolution": 4,
1214
        "main_sha": null,
1215
        "because_sha": null
1216
    },
1217
    {
1218
        "sha": "cc1407df442627c2b99842aefc3d2456193d6f82",
1219
        "description": "venus: Change signature of vn_get_fence_feedback_cmd",
1220
        "nominated": false,
1221
        "nomination_type": null,
1222
        "resolution": 4,
1223
        "main_sha": null,
1224
        "because_sha": null
1225
    },
1226
    {
1227
        "sha": "e469bedb95fb405f00672995ddeedb176cfa6d7b",
1228
        "description": "venus/queue: Rename some local vars",
1229
        "nominated": false,
1230
        "nomination_type": null,
1231
        "resolution": 4,
1232
        "main_sha": null,
1233
        "because_sha": null
1234
    },
1235
    {
1236
        "sha": "c71006726e20d7b6aa945947f4beb738566e05f6",
1237
        "description": "meson: remove unused EGL_NO_X11 definition",
1238
        "nominated": false,
1239
        "nomination_type": null,
1240
        "resolution": 4,
1241
        "main_sha": null,
1242
        "because_sha": null
1243
    },
1244
    {
1245
        "sha": "96894e6746c199cb8a5b8356f75c2ee8f28e68b1",
1246
        "description": "EGL: sync headers with Khronos",
1247
        "nominated": false,
1248
        "nomination_type": null,
1249
        "resolution": 4,
1250
        "main_sha": null,
1251
        "because_sha": null
1252
    },
1253
    {
1254
        "sha": "1fc7f0f084d2a12f52acf7c294bdb954aa87a09f",
1255
        "description": "egl: set API symbols public",
1256
        "nominated": false,
1257
        "nomination_type": null,
1258
        "resolution": 4,
1259
        "main_sha": null,
1260
        "because_sha": null
1261
    },
1262
    {
1263
        "sha": "15b931bee7bfec40ec31054bb2ca0d9059fe7b95",
1264
        "description": "egl: fix Xlib include in egldisplay.h",
1265
        "nominated": false,
1266
        "nomination_type": null,
1267
        "resolution": 4,
1268
        "main_sha": null,
1269
        "because_sha": null
1270
    },
1271
    {
1272
        "sha": "0c87909bcfeb2283d4326ef8a411598872802486",
1273
        "description": "draw: fix base vertex bug",
1274
        "nominated": false,
1275
        "nomination_type": null,
1276
        "resolution": 4,
1277
        "main_sha": null,
1278
        "because_sha": null
1279
    },
1280
    {
1281
        "sha": "4314949277f95c2e796f3deb5ed33c68f565239a",
1282
        "description": "draw: fix vertex id offset bug",
1283
        "nominated": false,
1284
        "nomination_type": null,
1285
        "resolution": 4,
1286
        "main_sha": null,
1287
        "because_sha": null
1288
    },
1289
    {
1290
        "sha": "3395b40b37150a439d6716c141bfc72dbe7282e4",
1291
        "description": "intel/genxml: use Path.replace instead of unlink and rename",
1292
        "nominated": false,
1293
        "nomination_type": null,
1294
        "resolution": 4,
1295
        "main_sha": null,
1296
        "because_sha": null
1297
    },
1298
    {
1299
        "sha": "ede03c99dbb99d348922643ed4670d8cc32cf031",
1300
        "description": "intel/genxml: use a main() function",
1301
        "nominated": false,
1302
        "nomination_type": null,
1303
        "resolution": 4,
1304
        "main_sha": null,
1305
        "because_sha": null
1306
    },
1307
    {
1308
        "sha": "0ac3b6f671b96320a2766bc31b542ce1800001cc",
1309
        "description": "intel/genxml: split the processing code up",
1310
        "nominated": false,
1311
        "nomination_type": null,
1312
        "resolution": 4,
1313
        "main_sha": null,
1314
        "because_sha": null
1315
    },
1316
    {
1317
        "sha": "8c8a1966ab03551bac91d470caef49288ba81da3",
1318
        "description": "intel/genxml: reprocess xml with elementree output",
1319
        "nominated": false,
1320
        "nomination_type": null,
1321
        "resolution": 4,
1322
        "main_sha": null,
1323
        "because_sha": null
1324
    },
1325
    {
1326
        "sha": "9a185d78caf87b2345ba0ed30997694ba2410b4a",
1327
        "description": "intel/genxml: use ElementTree.write and .indent",
1328
        "nominated": false,
1329
        "nomination_type": null,
1330
        "resolution": 4,
1331
        "main_sha": null,
1332
        "because_sha": null
1333
    },
1334
    {
1335
        "sha": "b876f4daa9d569c402c5b54e7d295036d3dbc8c2",
1336
        "description": "intel/genxml: re-process with extra whitespace removed",
1337
        "nominated": false,
1338
        "nomination_type": null,
1339
        "resolution": 4,
1340
        "main_sha": null,
1341
        "because_sha": null
1342
    },
1343
    {
1344
        "sha": "db8c6590e095679ff861d8fe143d285d6b0a6352",
1345
        "description": "intel/genxml: remove newlines between xml islands",
1346
        "nominated": false,
1347
        "nomination_type": null,
1348
        "resolution": 4,
1349
        "main_sha": null,
1350
        "because_sha": null
1351
    },
1352
    {
1353
        "sha": "9acd459bee208a47bb3da3d1ef622bb75f4422f9",
1354
        "description": "intel/genxml: re-process with space before `/>`",
1355
        "nominated": false,
1356
        "nomination_type": null,
1357
        "resolution": 4,
1358
        "main_sha": null,
1359
        "because_sha": null
1360
    },
1361
    {
1362
        "sha": "b150b89e61c5d064848e83f36a07a18768f55f69",
1363
        "description": "intel/genxml: write a space before the '/>` closing tag",
1364
        "nominated": false,
1365
        "nomination_type": null,
1366
        "resolution": 4,
1367
        "main_sha": null,
1368
        "because_sha": null
1369
    },
1370
    {
1371
        "sha": "c4482a3c1a973975eb27ac284a18bebca24f7876",
1372
        "description": "radeonsi/vcn: enable multi-slice encoding",
1373
        "nominated": false,
1374
        "nomination_type": null,
1375
        "resolution": 4,
1376
        "main_sha": null,
1377
        "because_sha": null
1378
    },
1379
    {
1380
        "sha": "4bcd5ee5b20a6e24c8c07533362382f2a80381f5",
1381
        "description": "radeonsi/vcn: enable dbk in avc encoding",
1382
        "nominated": false,
1383
        "nomination_type": null,
1384
        "resolution": 4,
1385
        "main_sha": null,
1386
        "because_sha": null
1387
    },
1388
    {
1389
        "sha": "afc9f488586f38c2f4904fbb0e843fa7d555f45b",
1390
        "description": "frontends/va: add h264 dbk enc parameters",
1391
        "nominated": false,
1392
        "nomination_type": null,
1393
        "resolution": 4,
1394
        "main_sha": null,
1395
        "because_sha": null
1396
    },
1397
    {
1398
        "sha": "3d30bf44cef665400d525f0223660f79dc230b94",
1399
        "description": "gallium/pipe/video: add data struct for dbk in avc encoding.",
1400
        "nominated": false,
1401
        "nomination_type": null,
1402
        "resolution": 4,
1403
        "main_sha": null,
1404
        "because_sha": null
1405
    },
1406
    {
1407
        "sha": "f00b54bc9e70e49f546ac2efeceb59540ff4a6fd",
1408
        "description": "radv: Rework modification detection of the meta cache.",
1409
        "nominated": false,
1410
        "nomination_type": null,
1411
        "resolution": 4,
1412
        "main_sha": null,
1413
        "because_sha": null
1414
    },
1415
    {
1416
        "sha": "8231f7eaa1247316da11bdd59a461b8aabb3b2b7",
1417
        "description": "radv: Use a VkPipelineCache handle for meta shaders.",
1418
        "nominated": false,
1419
        "nomination_type": null,
1420
        "resolution": 4,
1421
        "main_sha": null,
1422
        "because_sha": null
1423
    },
1424
    {
1425
        "sha": "911455a0d6306bc58425f3183a2720d4febe650e",
1426
        "description": "radv: Constify entry_size.",
1427
        "nominated": false,
1428
        "nomination_type": null,
1429
        "resolution": 4,
1430
        "main_sha": null,
1431
        "because_sha": null
1432
    },
1433
    {
1434
        "sha": "e00ce790030569ec3822780f40e8bcbe2227744e",
1435
        "description": "radv: use SHA1_DIGEST_LENGTH in the pipeline cache",
1436
        "nominated": false,
1437
        "nomination_type": null,
1438
        "resolution": 4,
1439
        "main_sha": null,
1440
        "because_sha": null
1441
    },
1442
    {
1443
        "sha": "db62b13ddd82b7dc7914d5c5f5053a277a0d0015",
1444
        "description": "radv: move the disk cache to the vk_physical_device struct",
1445
        "nominated": false,
1446
        "nomination_type": null,
1447
        "resolution": 4,
1448
        "main_sha": null,
1449
        "because_sha": null
1450
    },
1451
    {
1452
        "sha": "3e22f957d5d82e09448f8304a127054a27e45704",
1453
        "description": "radv: Remove create_accel_build_shader",
1454
        "nominated": false,
1455
        "nomination_type": null,
1456
        "resolution": 4,
1457
        "main_sha": null,
1458
        "because_sha": null
1459
    },
1460
    {
1461
        "sha": "ddc5c3048992debc3cedd22b0f2ff2ca27e8d7e4",
1462
        "description": "zink: handle global and scratch vars",
1463
        "nominated": false,
1464
        "nomination_type": null,
1465
        "resolution": 4,
1466
        "main_sha": null,
1467
        "because_sha": null
1468
    },
1469
    {
1470
        "sha": "19a74229c9f5a26a3e51e5780fc36eca657323c9",
1471
        "description": "zink: add some bda handling",
1472
        "nominated": false,
1473
        "nomination_type": null,
1474
        "resolution": 4,
1475
        "main_sha": null,
1476
        "because_sha": null
1477
    },
1478
    {
1479
        "sha": "5cf959393c16775d98542a10fa279285ec6942d7",
1480
        "description": "zink: add a safety assert in descriptor updates",
1481
        "nominated": false,
1482
        "nomination_type": null,
1483
        "resolution": 4,
1484
        "main_sha": null,
1485
        "because_sha": null
1486
    },
1487
    {
1488
        "sha": "d13bae858d4cfd84e63d0b17c44bcbe58186706e",
1489
        "description": "zink: move descriptor layout/pool stuff to screen object",
1490
        "nominated": false,
1491
        "nomination_type": null,
1492
        "resolution": 4,
1493
        "main_sha": null,
1494
        "because_sha": null
1495
    },
1496
    {
1497
        "sha": "20ad1678ab154732960f204a2757fdc9fbde21e2",
1498
        "description": "docs: update calendar and link releases notes for 22.2.1",
1499
        "nominated": false,
1500
        "nomination_type": null,
1501
        "resolution": 4,
1502
        "main_sha": null,
1503
        "because_sha": null
1504
    },
1505
    {
1506
        "sha": "b860a2b802f2c2319c4e51302b3f18dfc440754d",
1507
        "description": "docs: Add sha256 sum for 22.2.1",
1508
        "nominated": false,
1509
        "nomination_type": null,
1510
        "resolution": 4,
1511
        "main_sha": null,
1512
        "because_sha": null
1513
    },
1514
    {
1515
        "sha": "7406a3e89f47d12ec07441eaaf8e6c8d6d26db09",
1516
        "description": "docs: add release notes for 22.2.1",
1517
        "nominated": false,
1518
        "nomination_type": null,
1519
        "resolution": 4,
1520
        "main_sha": null,
1521
        "because_sha": null
1522
    },
1523
    {
1524
        "sha": "69c22dd81736ee825d345078ffb252b39190e89d",
1525
        "description": "zink: fix isNan mismatch between NIR and SPIR-V",
1526
        "nominated": true,
1527
        "nomination_type": 0,
1528
        "resolution": 1,
1529
        "main_sha": null,
1530
        "because_sha": null
1531
    },
1532
    {
1533
        "sha": "a730b1bb0a43c9bf8b57269744a12b8fbdbd460f",
1534
        "description": "zink: stop enabling minmax filtering when not supported",
1535
        "nominated": true,
1536
        "nomination_type": 0,
1537
        "resolution": 1,
1538
        "main_sha": null,
1539
        "because_sha": null
1540
    },
1541
    {
1542
        "sha": "b87c08b3bf707f25df2b788260381aea161d5dd8",
1543
        "description": "zink: fix invalid Offset set for variables which do not need an offset",
1544
        "nominated": true,
1545
        "nomination_type": 0,
1546
        "resolution": 1,
1547
        "main_sha": null,
1548
        "because_sha": null
1549
    },
1550
    {
1551
        "sha": "6eadd6d1698ae4b27e4b1a6f0321a80313a7e976",
1552
        "description": "radv/rra: Calculate bvh size requirements recursively",
1553
        "nominated": false,
1554
        "nomination_type": null,
1555
        "resolution": 4,
1556
        "main_sha": null,
1557
        "because_sha": null
1558
    },
1559
    {
1560
        "sha": "e4283d857b826f6b71e0d076a7ece6282f400491",
1561
        "description": "radv/rra: Handle box16 nodes",
1562
        "nominated": false,
1563
        "nomination_type": null,
1564
        "resolution": 4,
1565
        "main_sha": null,
1566
        "because_sha": null
1567
    },
1568
    {
1569
        "sha": "7754f208ceaea817425c09561996605d9ff348e6",
1570
        "description": "radv: Use half floats for box16 coords",
1571
        "nominated": false,
1572
        "nomination_type": null,
1573
        "resolution": 4,
1574
        "main_sha": null,
1575
        "because_sha": null
1576
    },
1577
    {
1578
        "sha": "266f0ae9486091a4343c91e2594f3e3cea2383bf",
1579
        "description": "radv: Add radv_bvh_node_box16",
1580
        "nominated": false,
1581
        "nomination_type": null,
1582
        "resolution": 4,
1583
        "main_sha": null,
1584
        "because_sha": null
1585
    },
1586
    {
1587
        "sha": "5f859f805b79cc74bfa13844fcbbd006601f367e",
1588
        "description": "radv: Rename node_internal to node_box32",
1589
        "nominated": false,
1590
        "nomination_type": null,
1591
        "resolution": 4,
1592
        "main_sha": null,
1593
        "because_sha": null
1594
    },
1595
    {
1596
        "sha": "da856af2c92633cf62c5af1d13ce2bdfac4e2b7b",
1597
        "description": "draw: s/start_or_maxelt/start/ in llvm VS code",
1598
        "nominated": false,
1599
        "nomination_type": null,
1600
        "resolution": 4,
1601
        "main_sha": null,
1602
        "because_sha": null
1603
    },
1604
    {
1605
        "sha": "4c73a503e3ea7eeeada116555605623a992c3c16",
1606
        "description": "draw: move vs_slot var in tgsi/llvm_fetch_gs_input()",
1607
        "nominated": false,
1608
        "nomination_type": null,
1609
        "resolution": 4,
1610
        "main_sha": null,
1611
        "because_sha": null
1612
    },
1613
    {
1614
        "sha": "717572e5be31e1b82a82e96cc3bee6e0403983b7",
1615
        "description": "draw: fix some const-correctness in draw_vbo()",
1616
        "nominated": false,
1617
        "nomination_type": null,
1618
        "resolution": 4,
1619
        "main_sha": null,
1620
        "because_sha": null
1621
    },
1622
    {
1623
        "sha": "0a809fca6191c559798847106dd594548a938ce9",
1624
        "description": "draw: make draw_geometry_shader_run() return void",
1625
        "nominated": false,
1626
        "nomination_type": null,
1627
        "resolution": 4,
1628
        "main_sha": null,
1629
        "because_sha": null
1630
    },
1631
    {
1632
        "sha": "8d8683ab1d02bcc400d73ec9b86302e0e475c25a",
1633
        "description": "draw: replace double conditional expression with if/else",
1634
        "nominated": false,
1635
        "nomination_type": null,
1636
        "resolution": 4,
1637
        "main_sha": null,
1638
        "because_sha": null
1639
    },
1640
    {
1641
        "sha": "645a3d24a1b34fe28f8ea0f319b38324519476fb",
1642
        "description": "draw: asst. clean-ups in draw_pt_fetch_shade_pipeline_llvm.c",
1643
        "nominated": false,
1644
        "nomination_type": null,
1645
        "resolution": 4,
1646
        "main_sha": null,
1647
        "because_sha": null
1648
    },
1649
    {
1650
        "sha": "baee3c62f710cc5d0a5cc039c69743384d5e5842",
1651
        "description": "draw: asst. clean-ups in draw_private.h",
1652
        "nominated": false,
1653
        "nomination_type": null,
1654
        "resolution": 4,
1655
        "main_sha": null,
1656
        "because_sha": null
1657
    },
1658
    {
1659
        "sha": "bfaed9dd63ea6ade7c8075187dde00e5a5ebbcdc",
1660
        "description": "draw: clean-up count assignment in draw_pt_arrays()",
1661
        "nominated": false,
1662
        "nomination_type": null,
1663
        "resolution": 4,
1664
        "main_sha": null,
1665
        "because_sha": null
1666
    },
1667
    {
1668
        "sha": "e4552632aabbfc8f4fcafff216be50acfa928fa8",
1669
        "description": "draw: asst. clean-ups in draw_pt.c",
1670
        "nominated": false,
1671
        "nomination_type": null,
1672
        "resolution": 4,
1673
        "main_sha": null,
1674
        "because_sha": null
1675
    },
1676
    {
1677
        "sha": "529707d4effc45906dcb77a696f0b4ff8571396a",
1678
        "description": "draw: asst. clean-ups in draw_split_tmp.h",
1679
        "nominated": false,
1680
        "nomination_type": null,
1681
        "resolution": 4,
1682
        "main_sha": null,
1683
        "because_sha": null
1684
    },
1685
    {
1686
        "sha": "39a42c48e3ef2be96860c5e44b0ed024f3864393",
1687
        "description": "draw: asst. clean-ups in draw_pt_vsplit_tmp.h",
1688
        "nominated": false,
1689
        "nomination_type": null,
1690
        "resolution": 4,
1691
        "main_sha": null,
1692
        "because_sha": null
1693
    },
1694
    {
1695
        "sha": "0a340419cb4e8223075fbd4c874d78c74a439614",
1696
        "description": "draw: asst. clean-ups in draw_pipe.c",
1697
        "nominated": false,
1698
        "nomination_type": null,
1699
        "resolution": 4,
1700
        "main_sha": null,
1701
        "because_sha": null
1702
    },
1703
    {
1704
        "sha": "f83e284543cbf5d8951a221a9b3fa8d316071b0b",
1705
        "description": "draw: asst. clean-ups in draw_prim_assembler.[ch]",
1706
        "nominated": false,
1707
        "nomination_type": null,
1708
        "resolution": 4,
1709
        "main_sha": null,
1710
        "because_sha": null
1711
    },
1712
    {
1713
        "sha": "8613316a31ca72cb33033d6a3cc073f0e376f61d",
1714
        "description": "draw: asst. clean-ups in draw_gs.[ch]",
1715
        "nominated": false,
1716
        "nomination_type": null,
1717
        "resolution": 4,
1718
        "main_sha": null,
1719
        "because_sha": null
1720
    },
1721
    {
1722
        "sha": "490f7a14f616db48ca337f900aca261e528a9129",
1723
        "description": "draw: asst. clean-ups in draw_cliptest_tmp.h",
1724
        "nominated": false,
1725
        "nomination_type": null,
1726
        "resolution": 4,
1727
        "main_sha": null,
1728
        "because_sha": null
1729
    },
1730
    {
1731
        "sha": "0d27e3b917a39eae3482f4a788b8e90d21d70226",
1732
        "description": "draw: asst. clean-ups in draw_llvm.c",
1733
        "nominated": false,
1734
        "nomination_type": null,
1735
        "resolution": 4,
1736
        "main_sha": null,
1737
        "because_sha": null
1738
    },
1739
    {
1740
        "sha": "4e6a32219b3b8e724ef681ee524ed10a4e7f1cd6",
1741
        "description": "draw: asst. clean-ups in draw_pipe_aapoint.c",
1742
        "nominated": false,
1743
        "nomination_type": null,
1744
        "resolution": 4,
1745
        "main_sha": null,
1746
        "because_sha": null
1747
    },
1748
    {
1749
        "sha": "6af739bb9efe7ab6e88c4ba82410f7f69f1007c5",
1750
        "description": "draw: asst. clean-ups in draw_pt_so_emit.c",
1751
        "nominated": false,
1752
        "nomination_type": null,
1753
        "resolution": 4,
1754
        "main_sha": null,
1755
        "because_sha": null
1756
    },
1757
    {
1758
        "sha": "9daf8531e559bc0d946b0c66f041f928e530e68c",
1759
        "description": "draw: asst. clean-ups in draw_vertex.[ch]",
1760
        "nominated": false,
1761
        "nomination_type": null,
1762
        "resolution": 4,
1763
        "main_sha": null,
1764
        "because_sha": null
1765
    },
1766
    {
1767
        "sha": "3ac0b2115c5c436305e89c2fddca7d9a53106450",
1768
        "description": "draw: asst. clean-ups in draw_pipe_wide_point.c",
1769
        "nominated": false,
1770
        "nomination_type": null,
1771
        "resolution": 4,
1772
        "main_sha": null,
1773
        "because_sha": null
1774
    },
1775
    {
1776
        "sha": "07e2ecd0cff53899235257b0436ad2c85e055372",
1777
        "description": "draw: asst. clean-ups in draw_pipe_wide_line.c",
1778
        "nominated": false,
1779
        "nomination_type": null,
1780
        "resolution": 4,
1781
        "main_sha": null,
1782
        "because_sha": null
1783
    },
1784
    {
1785
        "sha": "0a31e24d22d6da2de9ae440c18f473a269c53008",
1786
        "description": "draw: asst. clean-ups in draw_pipe_util.c",
1787
        "nominated": false,
1788
        "nomination_type": null,
1789
        "resolution": 4,
1790
        "main_sha": null,
1791
        "because_sha": null
1792
    },
1793
    {
1794
        "sha": "8a3b365b920e5d5ae2627236b9c2ada6ab230b37",
1795
        "description": "draw: asst. clean-ups in draw_pipe_user_cull.c",
1796
        "nominated": false,
1797
        "nomination_type": null,
1798
        "resolution": 4,
1799
        "main_sha": null,
1800
        "because_sha": null
1801
    },
1802
    {
1803
        "sha": "7488f0fe2743e74ce8b89167537c2a456340f6c1",
1804
        "description": "draw: asst. clean-ups in draw_pipe_unfilled.c",
1805
        "nominated": false,
1806
        "nomination_type": null,
1807
        "resolution": 4,
1808
        "main_sha": null,
1809
        "because_sha": null
1810
    },
1811
    {
1812
        "sha": "49705deb679b011af58754d389abac4178e5ca5a",
1813
        "description": "draw: asst. clean-ups in draw_pipe_twoside.c",
1814
        "nominated": false,
1815
        "nomination_type": null,
1816
        "resolution": 4,
1817
        "main_sha": null,
1818
        "because_sha": null
1819
    },
1820
    {
1821
        "sha": "aa2eabbc2de950f8299437fe714c3c32f1fbb7d0",
1822
        "description": "draw: asst. clean-ups in draw_pipe_pstipple.c",
1823
        "nominated": false,
1824
        "nomination_type": null,
1825
        "resolution": 4,
1826
        "main_sha": null,
1827
        "because_sha": null
1828
    },
1829
    {
1830
        "sha": "3c1cba7038af0f5818dae95d1f6fbc7208b9b572",
1831
        "description": "draw: asst. clean-ups in draw_pipe_offset.c",
1832
        "nominated": false,
1833
        "nomination_type": null,
1834
        "resolution": 4,
1835
        "main_sha": null,
1836
        "because_sha": null
1837
    },
1838
    {
1839
        "sha": "d6541640419d6069cbd08e2c715b4546c52b3cc3",
1840
        "description": "draw: asst. clean-ups in draw_pipe_flatshade.c",
1841
        "nominated": false,
1842
        "nomination_type": null,
1843
        "resolution": 4,
1844
        "main_sha": null,
1845
        "because_sha": null
1846
    },
1847
    {
1848
        "sha": "ff329ac1e029e033f34e6a54bbfeef7540dd86b9",
1849
        "description": "draw: asst. clean-ups in draw_pipe_clip.c",
1850
        "nominated": false,
1851
        "nomination_type": null,
1852
        "resolution": 4,
1853
        "main_sha": null,
1854
        "because_sha": null
1855
    },
1856
    {
1857
        "sha": "230584fed53e619524fa7b9178a82403bd2062c2",
1858
        "description": "draw: asst. clean-ups in draw_pipe_cull.c",
1859
        "nominated": false,
1860
        "nomination_type": null,
1861
        "resolution": 4,
1862
        "main_sha": null,
1863
        "because_sha": null
1864
    },
1865
    {
1866
        "sha": "b813bab889992d9085d0dea0c7591d3f24a30aee",
1867
        "description": "draw: asst. clean-ups in draw_pt_post_vs.c",
1868
        "nominated": false,
1869
        "nomination_type": null,
1870
        "resolution": 4,
1871
        "main_sha": null,
1872
        "because_sha": null
1873
    },
1874
    {
1875
        "sha": "6f1b99ab06e5fc7cd5e5f2fe91a514c554ad1940",
1876
        "description": "draw: asst. clean-ups in draw_pt_fetch.c",
1877
        "nominated": false,
1878
        "nomination_type": null,
1879
        "resolution": 4,
1880
        "main_sha": null,
1881
        "because_sha": null
1882
    },
1883
    {
1884
        "sha": "da2932c6345ed5caf52be5006fd5a14445ed2e8f",
1885
        "description": "draw: asst. clean-ups in draw_pipe.h",
1886
        "nominated": false,
1887
        "nomination_type": null,
1888
        "resolution": 4,
1889
        "main_sha": null,
1890
        "because_sha": null
1891
    },
1892
    {
1893
        "sha": "67ee7ddfb7d50005e63f4c939b36d15210a2b124",
1894
        "description": "draw: remove unused draw_has_llvm()",
1895
        "nominated": false,
1896
        "nomination_type": null,
1897
        "resolution": 4,
1898
        "main_sha": null,
1899
        "because_sha": null
1900
    },
1901
    {
1902
        "sha": "7178d30a5281300a7ce8200d8ed6fe19c23bf6e6",
1903
        "description": "draw: remove goto in llvm_pipeline_generic()",
1904
        "nominated": false,
1905
        "nomination_type": null,
1906
        "resolution": 4,
1907
        "main_sha": null,
1908
        "because_sha": null
1909
    },
1910
    {
1911
        "sha": "f058873832e7a63762229ead8c24ef18e72724f2",
1912
        "description": "draw: asst. clean-ups in draw_vs.[ch]",
1913
        "nominated": false,
1914
        "nomination_type": null,
1915
        "resolution": 4,
1916
        "main_sha": null,
1917
        "because_sha": null
1918
    },
1919
    {
1920
        "sha": "c5ddbc6ba761b506adf29fe09adaedc6189ed4e5",
1921
        "description": "draw: asst. clean-ups in draw_vs_variant.c",
1922
        "nominated": false,
1923
        "nomination_type": null,
1924
        "resolution": 4,
1925
        "main_sha": null,
1926
        "because_sha": null
1927
    },
1928
    {
1929
        "sha": "327742c2c90aa9c20b1e8a0f40d15b4dd76586ef",
1930
        "description": "draw: asst. clean-ups in draw_vs_llvm.c",
1931
        "nominated": false,
1932
        "nomination_type": null,
1933
        "resolution": 4,
1934
        "main_sha": null,
1935
        "because_sha": null
1936
    },
1937
    {
1938
        "sha": "32218eabdb5d577ed9e661db6d5ec6a56ace7988",
1939
        "description": "draw: asst. clean-ups in draw_context.[ch]",
1940
        "nominated": false,
1941
        "nomination_type": null,
1942
        "resolution": 4,
1943
        "main_sha": null,
1944
        "because_sha": null
1945
    },
1946
    {
1947
        "sha": "243aa6b2ec0c2626b1333ba666a6d6d60ede8505",
1948
        "description": "radv: Consider inactive internal nodes never in the tree.",
1949
        "nominated": false,
1950
        "nomination_type": 1,
1951
        "resolution": 4,
1952
        "main_sha": null,
1953
        "because_sha": "e83e4fafc84e95ea8504232d71063d0673bb8f8c"
1954
    },
1955
    {
1956
        "sha": "872132310088582a9babd46193ab76fa9c037f4e",
1957
        "description": "turnip: Add perf debug for more UBWC-disable cases that we could support.",
1958
        "nominated": false,
1959
        "nomination_type": null,
1960
        "resolution": 4,
1961
        "main_sha": null,
1962
        "because_sha": null
1963
    },
1964
    {
1965
        "sha": "c425b7342eafd25f04407820fc2615bf5ff8601a",
1966
        "description": "turnip: Add perf_debug for UBWC being disabled due to mutable formats.",
1967
        "nominated": false,
1968
        "nomination_type": null,
1969
        "resolution": 4,
1970
        "main_sha": null,
1971
        "because_sha": null
1972
    },
1973
    {
1974
        "sha": "29488c4183095e0bf5ae90cc2899127cdf3f5f10",
1975
        "description": "turnip: Move the ubwc_possible check before mutable formats.",
1976
        "nominated": false,
1977
        "nomination_type": null,
1978
        "resolution": 4,
1979
        "main_sha": null,
1980
        "because_sha": null
1981
    },
1982
    {
1983
        "sha": "4fe3330765faaf7f6dd8ae7ac7db9c9e1e072442",
1984
        "description": "turnip: Add a perf_debug for feedback-related performance traps.",
1985
        "nominated": false,
1986
        "nomination_type": null,
1987
        "resolution": 4,
1988
        "main_sha": null,
1989
        "because_sha": null
1990
    },
1991
    {
1992
        "sha": "3c278c3f7102defb13a708b4d8c479b71af64970",
1993
        "description": "zink: Decorate mediump outputs as RelaxedPrecision.",
1994
        "nominated": false,
1995
        "nomination_type": null,
1996
        "resolution": 4,
1997
        "main_sha": null,
1998
        "because_sha": null
1999
    },
2000
    {
2001
        "sha": "2592749679abf279fdabb2752ed9be5e8eb368ca",
2002
        "description": "zink: Fix RelaxedPrecision decoration of texture samples.",
2003
        "nominated": false,
2004
        "nomination_type": null,
2005
        "resolution": 4,
2006
        "main_sha": null,
2007
        "because_sha": null
2008
    },
2009
    {
2010
        "sha": "f5f5fed7e2f97e467c44883ccaec85294b1767c0",
2011
        "description": "ci/zink: Add some more flakes for turnip.",
2012
        "nominated": false,
2013
        "nomination_type": null,
2014
        "resolution": 4,
2015
        "main_sha": null,
2016
        "because_sha": null
2017
    },
2018
    {
2019
        "sha": "66664b8d7cba74052e33f7f5671ce125991a0047",
2020
        "description": "radv: Implement pipeline-wide skiptriangles/skipaabbs.",
2021
        "nominated": false,
2022
        "nomination_type": null,
2023
        "resolution": 4,
2024
        "main_sha": null,
2025
        "because_sha": null
2026
    },
2027
    {
2028
        "sha": "65dd53ca9718babbcb63687b7cc457698a5b45ca",
2029
        "description": "radv: always re-emit patch control points when a pipeline with tess is bound",
2030
        "nominated": false,
2031
        "nomination_type": 1,
2032
        "resolution": 4,
2033
        "main_sha": null,
2034
        "because_sha": "eef1511437ac6173dfd202b2fc581860d161c183"
2035
    },
2036
    {
2037
        "sha": "3c9771b434bcc4fc0b65557100e9b6c10cdadefe",
2038
        "description": "zink: add ZINK_DEBUG=shaderdb",
2039
        "nominated": false,
2040
        "nomination_type": null,
2041
        "resolution": 4,
2042
        "main_sha": null,
2043
        "because_sha": null
2044
    },
2045
    {
2046
        "sha": "41ffb15de564849668c942aa79a570b6f262de99",
2047
        "description": "zink: implement async gfx precompile",
2048
        "nominated": false,
2049
        "nomination_type": null,
2050
        "resolution": 4,
2051
        "main_sha": null,
2052
        "because_sha": null
2053
    },
2054
    {
2055
        "sha": "aed4e716d0d89a9f6343a6cd722e258c65e0b69b",
2056
        "description": "zink: change zink_gfx_program::last_pipeline -> struct zink_gfx_pipeline_cache_entry",
2057
        "nominated": false,
2058
        "nomination_type": null,
2059
        "resolution": 4,
2060
        "main_sha": null,
2061
        "because_sha": null
2062
    },
2063
    {
2064
        "sha": "b54929ac2712368451de2dbece904553e1d8e82b",
2065
        "description": "zink: gfx_pipeline_cache_entry -> zink_gfx_pipeline_cache_entry",
2066
        "nominated": false,
2067
        "nomination_type": null,
2068
        "resolution": 4,
2069
        "main_sha": null,
2070
        "because_sha": null
2071
    },
2072
    {
2073
        "sha": "b38cb40fdb9064a8e386c11f06c27bd4117e4c3d",
2074
        "description": "zink: allow creating full pipelines unoptimized",
2075
        "nominated": false,
2076
        "nomination_type": null,
2077
        "resolution": 4,
2078
        "main_sha": null,
2079
        "because_sha": null
2080
    },
2081
    {
2082
        "sha": "13c422e1b2ede25410034fdaf29a632061990fc0",
2083
        "description": "anv: toggle on EXT_extended_dynamic_state3",
2084
        "nominated": false,
2085
        "nomination_type": null,
2086
        "resolution": 4,
2087
        "main_sha": null,
2088
        "because_sha": null
2089
    },
2090
    {
2091
        "sha": "9f6af43743d3dfed018e384e056da3b587d5f46d",
2092
        "description": "anv: dynamic multisample sample mask",
2093
        "nominated": false,
2094
        "nomination_type": null,
2095
        "resolution": 4,
2096
        "main_sha": null,
2097
        "because_sha": null
2098
    },
2099
    {
2100
        "sha": "8e0377dcf37c70713e23627d785b2921e1558608",
2101
        "description": "anv: dynamic color blend equation",
2102
        "nominated": false,
2103
        "nomination_type": null,
2104
        "resolution": 4,
2105
        "main_sha": null,
2106
        "because_sha": null
2107
    },
2108
    {
2109
        "sha": "fc3fd7c69e80366b4510d9395decdfd83c63c99a",
2110
        "description": "anv: dynamic color write mask",
2111
        "nominated": false,
2112
        "nomination_type": null,
2113
        "resolution": 4,
2114
        "main_sha": null,
2115
        "because_sha": null
2116
    },
2117
    {
2118
        "sha": "0b75376e4d52f2343236577c88e4bae0b5ffd6d4",
2119
        "description": "anv: dynamic provoking vertex mode",
2120
        "nominated": false,
2121
        "nomination_type": null,
2122
        "resolution": 4,
2123
        "main_sha": null,
2124
        "because_sha": null
2125
    },
2126
    {
2127
        "sha": "1a8209218e831071173a3022c822af4b380bc353",
2128
        "description": "anv: dynamic states for depth clip and clamp",
2129
        "nominated": false,
2130
        "nomination_type": null,
2131
        "resolution": 4,
2132
        "main_sha": null,
2133
        "because_sha": null
2134
    },
2135
    {
2136
        "sha": "ba645f1623f01e6ab0ba21ad3f13b5faed46ff26",
2137
        "description": "anv: dynamic alpha to one enable",
2138
        "nominated": false,
2139
        "nomination_type": null,
2140
        "resolution": 4,
2141
        "main_sha": null,
2142
        "because_sha": null
2143
    },
2144
    {
2145
        "sha": "9dc6bed9a1070efb4251c1007805914fce72d659",
2146
        "description": "anv: dynamic state for logic op enable",
2147
        "nominated": false,
2148
        "nomination_type": null,
2149
        "resolution": 4,
2150
        "main_sha": null,
2151
        "because_sha": null
2152
    },
2153
    {
2154
        "sha": "ad2e80ee534ee5067a28c63aa538c8e07ed2669d",
2155
        "description": "anv: dynamic line rasterization mode",
2156
        "nominated": false,
2157
        "nomination_type": null,
2158
        "resolution": 4,
2159
        "main_sha": null,
2160
        "because_sha": null
2161
    },
2162
    {
2163
        "sha": "fe5a259723f5dd8dbe4aed31c52e6635637c500a",
2164
        "description": "anv: dynamic line stipple enable",
2165
        "nominated": false,
2166
        "nomination_type": null,
2167
        "resolution": 4,
2168
        "main_sha": null,
2169
        "because_sha": null
2170
    },
2171
    {
2172
        "sha": "0a6d0fed9de53176ee7ce94ada7b9d4f8bbb588e",
2173
        "description": "anv: dynamic rasterization stream",
2174
        "nominated": false,
2175
        "nomination_type": null,
2176
        "resolution": 4,
2177
        "main_sha": null,
2178
        "because_sha": null
2179
    },
2180
    {
2181
        "sha": "0f33d7061b9a05e945e0854af5efdc64319a9161",
2182
        "description": "anv: dynamic state for tessellation domain origin",
2183
        "nominated": false,
2184
        "nomination_type": null,
2185
        "resolution": 4,
2186
        "main_sha": null,
2187
        "because_sha": null
2188
    },
2189
    {
2190
        "sha": "cc0ada2d6735eb33823c57f149ca2e4b8868abee",
2191
        "description": "anv: dynamic state for polygon mode",
2192
        "nominated": false,
2193
        "nomination_type": null,
2194
        "resolution": 4,
2195
        "main_sha": null,
2196
        "because_sha": null
2197
    },
2198
    {
2199
        "sha": "6586afd6d290d202967ea8bedd129fc69bad6e09",
2200
        "description": "ac/nir/tess: Remove jump from tess factor writes.",
2201
        "nominated": false,
2202
        "nomination_type": null,
2203
        "resolution": 4,
2204
        "main_sha": null,
2205
        "because_sha": null
2206
    },
2207
    {
2208
        "sha": "892c15af648830df184c0731ced9a182df1564e6",
2209
        "description": "ac/nir/ngg: Remove jumps from some branches where we know LGKMCNT==0.",
2210
        "nominated": false,
2211
        "nomination_type": null,
2212
        "resolution": 4,
2213
        "main_sha": null,
2214
        "because_sha": null
2215
    },
2216
    {
2217
        "sha": "d8639b7a801808d1d09dc27c0fb12d1f5e08d87c",
2218
        "description": "aco: Allow explicitly removing jumps on GFX10+ when beneficial.",
2219
        "nominated": false,
2220
        "nomination_type": null,
2221
        "resolution": 4,
2222
        "main_sha": null,
2223
        "because_sha": null
2224
    },
2225
    {
2226
        "sha": "00a8be3414bd6a1f9d7cb5eb96ffe03797dd555e",
2227
        "description": "nir: Print nir_selection_control_divergent_always_taken.",
2228
        "nominated": false,
2229
        "nomination_type": null,
2230
        "resolution": 4,
2231
        "main_sha": null,
2232
        "because_sha": null
2233
    },
2234
    {
2235
        "sha": "c0d0a7c1764f82e04f75b9446b085ce48f091fba",
2236
        "description": "nir: Add selection control enum for always taken divergent branches.",
2237
        "nominated": false,
2238
        "nomination_type": null,
2239
        "resolution": 4,
2240
        "main_sha": null,
2241
        "because_sha": null
2242
    },
2243
    {
2244
        "sha": "a2ec8437271e673e18e448659e9ae8bf9f559f46",
2245
        "description": "nir: Document the flatten/dont_flatten selection control options.",
2246
        "nominated": false,
2247
        "nomination_type": null,
2248
        "resolution": 4,
2249
        "main_sha": null,
2250
        "because_sha": null
2251
    },
2252
    {
2253
        "sha": "ea6e69bb2b31470ae3a3a5163f08b24002f9c61c",
2254
        "description": "d3d12: Fix get_index7bits - Reuse previously freed indices",
2255
        "nominated": false,
2256
        "nomination_type": null,
2257
        "resolution": 4,
2258
        "main_sha": null,
2259
        "because_sha": null
2260
    },
2261
    {
2262
        "sha": "c8e8ce8359ceb9161ac05cf48b15e2e6a298ebd6",
2263
        "description": "d3d12: Add VP9 Decode support",
2264
        "nominated": false,
2265
        "nomination_type": null,
2266
        "resolution": 4,
2267
        "main_sha": null,
2268
        "because_sha": null
2269
    },
2270
    {
2271
        "sha": "bb86bcad71fc418472744a2f76ddb5a00a171ffb",
2272
        "description": "frontends/va: Add VP9 decode ref/mode_deltas information",
2273
        "nominated": false,
2274
        "nomination_type": null,
2275
        "resolution": 4,
2276
        "main_sha": null,
2277
        "because_sha": null
2278
    },
2279
    {
2280
        "sha": "baad2575aed3d74c7e603947a485330bd31c0585",
2281
        "description": "frontends/va: Add VP9 decode multi slice information",
2282
        "nominated": false,
2283
        "nomination_type": null,
2284
        "resolution": 4,
2285
        "main_sha": null,
2286
        "because_sha": null
2287
    },
2288
    {
2289
        "sha": "4df54d97e841b0291e1b5413104c9ddd0f96c455",
2290
        "description": "frontends/va: fix av1 decoding image distortion issue",
2291
        "nominated": false,
2292
        "nomination_type": null,
2293
        "resolution": 4,
2294
        "main_sha": null,
2295
        "because_sha": null
2296
    },
2297
    {
2298
        "sha": "c0c243f1cb4e9ad7b7e1e3ab1d763494d8936c09",
2299
        "description": "anv, iris: Disable pre fetching the binding table entries on DG2",
2300
        "nominated": false,
2301
        "nomination_type": null,
2302
        "resolution": 4,
2303
        "main_sha": null,
2304
        "because_sha": null
2305
    },
2306
    {
2307
        "sha": "d91c3bde8c85399e1ab5dbfd5b0e8bfbf53d572f",
2308
        "description": "radv: fix and rework shaders upload with GPL",
2309
        "nominated": false,
2310
        "nomination_type": null,
2311
        "resolution": 4,
2312
        "main_sha": null,
2313
        "because_sha": null
2314
    },
2315
    {
2316
        "sha": "4b6b3f18f23ac1e6dade67db8eef561be31ed4f1",
2317
        "description": "vk/graphics_state: don't set default sample locations if rast samples is dynamic",
2318
        "nominated": false,
2319
        "nomination_type": 1,
2320
        "resolution": 4,
2321
        "main_sha": null,
2322
        "because_sha": "1deb83fb86d22227a3553f43873b4d4ff9180214"
2323
    },
2324
    {
2325
        "sha": "ca0c429d32b3c24d8b4923111950795dbaa710f2",
2326
        "description": "radv: add radv_zero_vram workarounds for OpenGL games",
2327
        "nominated": true,
2328
        "nomination_type": 0,
2329
        "resolution": 1,
2330
        "main_sha": null,
2331
        "because_sha": null
2332
    },
2333
    {
2334
        "sha": "346994265a907142afaebb4d0e801418eaeb69f7",
2335
        "description": "iris: Add miplevel parameters to iris_resource_texture_aux_usage",
2336
        "nominated": false,
2337
        "nomination_type": null,
2338
        "resolution": 4,
2339
        "main_sha": null,
2340
        "because_sha": null
2341
    },
2342
    {
2343
        "sha": "21740580cebb0f8dc87e2d1e8e8e172184454565",
2344
        "description": "mesa: mark debug variables with ASSERTED",
2345
        "nominated": false,
2346
        "nomination_type": null,
2347
        "resolution": 4,
2348
        "main_sha": null,
2349
        "because_sha": null
2350
    },
2351
    {
2352
        "sha": "b62d1c257eef41a2257704ecee579c2b721993d8",
2353
        "description": "anv: mark debug variables with ASSERTED",
2354
        "nominated": false,
2355
        "nomination_type": null,
2356
        "resolution": 4,
2357
        "main_sha": null,
2358
        "because_sha": null
2359
    },
2360
    {
2361
        "sha": "c9c9a5b78d4958d8ecb62b3b89af8f0cd5f788b1",
2362
        "description": "intel/fs: mark debug variables with ASSERTED",
2363
        "nominated": false,
2364
        "nomination_type": null,
2365
        "resolution": 4,
2366
        "main_sha": null,
2367
        "because_sha": null
2368
    },
2369
    {
2370
        "sha": "30ce1676fe3c60f8cec4e7450bf60b3f705bf3bc",
2371
        "description": "radv: Properly annotate all the invalid node usage.",
2372
        "nominated": false,
2373
        "nomination_type": null,
2374
        "resolution": 4,
2375
        "main_sha": null,
2376
        "because_sha": null
2377
    },
2378
    {
2379
        "sha": "a8abdc0d89386bc48cc63f48598fa6b18a3a7ed1",
2380
        "description": "radv: Add traversal backtracking with a short stack.",
2381
        "nominated": false,
2382
        "nomination_type": null,
2383
        "resolution": 4,
2384
        "main_sha": null,
2385
        "because_sha": null
2386
    },
2387
    {
2388
        "sha": "251bba2fa0951f714fa0a6fb8b91e23605a3fecc",
2389
        "description": "radv: Split global & local bvh node variable.",
2390
        "nominated": false,
2391
        "nomination_type": null,
2392
        "resolution": 4,
2393
        "main_sha": null,
2394
        "because_sha": null
2395
    },
2396
    {
2397
        "sha": "e83e4fafc84e95ea8504232d71063d0673bb8f8c",
2398
        "description": "radv: Only emit parents from parents that actually end up in the tree.",
2399
        "nominated": false,
2400
        "nomination_type": null,
2401
        "resolution": 4,
2402
        "main_sha": null,
2403
        "because_sha": null
2404
    },
2405
    {
2406
        "sha": "4ce1b9b2ff83b09b1a2ecbb89e9fe978b4093b35",
2407
        "description": "radv: Generate parent links in BVH.",
2408
        "nominated": false,
2409
        "nomination_type": null,
2410
        "resolution": 4,
2411
        "main_sha": null,
2412
        "because_sha": null
2413
    },
2414
    {
2415
        "sha": "1e2c95ac1f3cfdbd7812ca21573b167283b1c905",
2416
        "description": "radv: Start the BVH after the header.",
2417
        "nominated": false,
2418
        "nomination_type": null,
2419
        "resolution": 4,
2420
        "main_sha": null,
2421
        "because_sha": null
2422
    },
2423
    {
2424
        "sha": "48ab1adda5080c144ba8000564551966457d42ef",
2425
        "description": "radv: Simplify buffer copy address generation.",
2426
        "nominated": false,
2427
        "nomination_type": null,
2428
        "resolution": 4,
2429
        "main_sha": null,
2430
        "because_sha": null
2431
    },
2432
    {
2433
        "sha": "f1e1509c92d6418347253efaffd9799f9ab85392",
2434
        "description": "radv: Add a field for the offset of the bvh in the blas.",
2435
        "nominated": false,
2436
        "nomination_type": null,
2437
        "resolution": 4,
2438
        "main_sha": null,
2439
        "because_sha": null
2440
    },
2441
    {
2442
        "sha": "b0a385a6bdf03a107ad6dfb03b5fcca6bcee9437",
2443
        "description": "radv: Clean up unused fields in BVH IR.",
2444
        "nominated": false,
2445
        "nomination_type": null,
2446
        "resolution": 4,
2447
        "main_sha": null,
2448
        "because_sha": null
2449
    },
2450
    {
2451
        "sha": "9b1087ca7c7958da707bcb9ba2e3ed10d4f78180",
2452
        "description": "tu: Add compute shader instrlen workaround",
2453
        "nominated": false,
2454
        "nomination_type": null,
2455
        "resolution": 4,
2456
        "main_sha": null,
2457
        "because_sha": null
2458
    },
2459
    {
2460
        "sha": "0dd60610dc6594b14c0eea3cf3536b6d42e8baf9",
2461
        "description": "freedreno: Add LABEL flush",
2462
        "nominated": false,
2463
        "nomination_type": null,
2464
        "resolution": 4,
2465
        "main_sha": null,
2466
        "because_sha": null
2467
    },
2468
    {
2469
        "sha": "a1c372cd847cddd2baf8fb74aa3c04bed4ca0397",
2470
        "description": "tu: Reset whether there is DS resolve for dynamic subpass",
2471
        "nominated": true,
2472
        "nomination_type": 1,
2473
        "resolution": 1,
2474
        "main_sha": null,
2475
        "because_sha": "ed125e6cca188275631641784fcf3ddcbcfef193"
2476
    },
2477
    {
2478
        "sha": "e4473c8f7aaea2171fa3af0e0de02c2e2a9b8e56",
2479
        "description": "iris: Set SamplerCount in shader packets",
2480
        "nominated": false,
2481
        "nomination_type": null,
2482
        "resolution": 4,
2483
        "main_sha": null,
2484
        "because_sha": null
2485
    },
2486
    {
2487
        "sha": "46143ffd63b7aa229e73cde049fc8589966190c5",
2488
        "description": "iris: bump IRIS_MAX_GLOBAL_BINDINGS to 128",
2489
        "nominated": false,
2490
        "nomination_type": null,
2491
        "resolution": 4,
2492
        "main_sha": null,
2493
        "because_sha": null
2494
    },
2495
    {
2496
        "sha": "f9c4dc3508705787578299c5a6ba5677ba8a0f2b",
2497
        "description": "iris: speed up walking global bindings",
2498
        "nominated": false,
2499
        "nomination_type": null,
2500
        "resolution": 4,
2501
        "main_sha": null,
2502
        "because_sha": null
2503
    },
2504
    {
2505
        "sha": "3ae84ea225ca5a71683ae3e6eda878764f128c84",
2506
        "description": "iris: use images_used instead of num_images",
2507
        "nominated": false,
2508
        "nomination_type": null,
2509
        "resolution": 4,
2510
        "main_sha": null,
2511
        "because_sha": null
2512
    },
2513
    {
2514
        "sha": "1e29a1a8c5dd4818746b6938e65ba17808832567",
2515
        "description": "anv: add grl build dependency on entrypoints",
2516
        "nominated": false,
2517
        "nomination_type": 1,
2518
        "resolution": 4,
2519
        "main_sha": null,
2520
        "because_sha": "f3ddfd81b4deaa8033d598527e0cbc255e60addc"
2521
    },
2522
    {
2523
        "sha": "4eba6d71a879fc80d13a1d58f1ecb0127139d13c",
2524
        "description": "tu: Lazily init VSC to fix dynamic rendering in secondary cmdbufs",
2525
        "nominated": false,
2526
        "nomination_type": null,
2527
        "resolution": 4,
2528
        "main_sha": null,
2529
        "because_sha": null
2530
    },
2531
    {
2532
        "sha": "e70a2148e52b2c4dda9522750766e720f8ba4efb",
2533
        "description": "tu: Do not DCE unused output vars used for transform feedback",
2534
        "nominated": false,
2535
        "nomination_type": null,
2536
        "resolution": 4,
2537
        "main_sha": null,
2538
        "because_sha": null
2539
    },
2540
    {
2541
        "sha": "f6098fb4f5ba7806153d31915d41915d922caa8a",
2542
        "description": "gallium/u_threaded: Add optional call-id tracing",
2543
        "nominated": false,
2544
        "nomination_type": null,
2545
        "resolution": 4,
2546
        "main_sha": null,
2547
        "because_sha": null
2548
    },
2549
    {
2550
        "sha": "81925e2cc7cda8b36370ef1095b41cc39759ec3c",
2551
        "description": "gallium/u_threaded: Add some atrace/perfetto",
2552
        "nominated": false,
2553
        "nomination_type": null,
2554
        "resolution": 4,
2555
        "main_sha": null,
2556
        "because_sha": null
2557
    },
2558
    {
2559
        "sha": "6d5921c6230912957111429e4ffc09117578d6c2",
2560
        "description": "nv50: call nir_lower_flrp",
2561
        "nominated": false,
2562
        "nomination_type": null,
2563
        "resolution": 4,
2564
        "main_sha": null,
2565
        "because_sha": null
2566
    },
2567
    {
2568
        "sha": "ed2743eae59ac71622395299e522c091ddcee722",
2569
        "description": "clc/clover: Link clang statically when shared-llvm is disabled",
2570
        "nominated": true,
2571
        "nomination_type": 0,
2572
        "resolution": 1,
2573
        "main_sha": null,
2574
        "because_sha": null
2575
    },
2576
    {
2577
        "sha": "55f6a2bb51a1fadcd68f9f09ccf4435a4e4ca269",
2578
        "description": "gallium: normalized_coords -> unnormalized_coords",
2579
        "nominated": false,
2580
        "nomination_type": null,
2581
        "resolution": 4,
2582
        "main_sha": null,
2583
        "because_sha": null
2584
    },
2585
    {
2586
        "sha": "4e7b9aaa066e0ea03dc408193211c423896e603c",
2587
        "description": "r300: don't use smooth line if not requested",
2588
        "nominated": true,
2589
        "nomination_type": 0,
2590
        "resolution": 1,
2591
        "main_sha": null,
2592
        "because_sha": null
2593
    },
2594
    {
2595
        "sha": "98944b327b47c4ba401c829ebeb71f9c6bd2abc9",
2596
        "description": "util/radeonsi: enable zerovram workaround for Exanima",
2597
        "nominated": true,
2598
        "nomination_type": 0,
2599
        "resolution": 1,
2600
        "main_sha": null,
2601
        "because_sha": null
2602
    },
2603
    {
2604
        "sha": "3200b5c46b2f62d01c1d942f1c54439f972c66fe",
2605
        "description": "util/conf: enable init to zero workaround for Exanima",
2606
        "nominated": true,
2607
        "nomination_type": 0,
2608
        "resolution": 1,
2609
        "main_sha": null,
2610
        "because_sha": null
2611
    },
2612
    {
2613
        "sha": "091b5b08d44c597739cae7354a603dfa90f41b68",
2614
        "description": "pps: enable track_event in intel.cfg",
2615
        "nominated": false,
2616
        "nomination_type": null,
2617
        "resolution": 4,
2618
        "main_sha": null,
2619
        "because_sha": null
2620
    },
2621
    {
2622
        "sha": "e68adf19bc3b55a76a12a58a5b32d2a341fd78dd",
2623
        "description": "radv/rra: Transcode nodes recursively",
2624
        "nominated": false,
2625
        "nomination_type": null,
2626
        "resolution": 4,
2627
        "main_sha": null,
2628
        "because_sha": null
2629
    },
2630
    {
2631
        "sha": "0c6c30d2117fae940adfbeac203405932c929c21",
2632
        "description": "ci: uprev DXVK to 1.10.3",
2633
        "nominated": false,
2634
        "nomination_type": null,
2635
        "resolution": 4,
2636
        "main_sha": null,
2637
        "because_sha": null
2638
    },
2639
    {
2640
        "sha": "27aa1720120e96bdf1d69aee1b9e2c4338bbaa0c",
2641
        "description": "isaspec: Fix out of date comment",
2642
        "nominated": false,
2643
        "nomination_type": null,
2644
        "resolution": 4,
2645
        "main_sha": null,
2646
        "because_sha": null
2647
    },
2648
    {
2649
        "sha": "c0cdc148f401c543df64006348b86f4ee79d91ef",
2650
        "description": "freedreno: Add perf-debug trace",
2651
        "nominated": false,
2652
        "nomination_type": null,
2653
        "resolution": 4,
2654
        "main_sha": null,
2655
        "because_sha": null
2656
    },
2657
    {
2658
        "sha": "f6f72b56296748e84ffa71516f358c97f75fdf31",
2659
        "description": "freedreno/drm: Don't call kernel with no ops",
2660
        "nominated": false,
2661
        "nomination_type": null,
2662
        "resolution": 4,
2663
        "main_sha": null,
2664
        "because_sha": null
2665
    },
2666
    {
2667
        "sha": "6dcc52403526b7b57a27332f11cbb959067131a3",
2668
        "description": "freedreno: Use TC cpu-storage to shadow buffers",
2669
        "nominated": false,
2670
        "nomination_type": null,
2671
        "resolution": 4,
2672
        "main_sha": null,
2673
        "because_sha": null
2674
    },
2675
    {
2676
        "sha": "3aa76e6a05b63668368d4a31a4a619068ac02dd6",
2677
        "description": "r600: info.stage MESA_SHADER_KERNEL as MESA_SHADER_COMPUTE",
2678
        "nominated": false,
2679
        "nomination_type": null,
2680
        "resolution": 4,
2681
        "main_sha": null,
2682
        "because_sha": null
2683
    },
2684
    {
2685
        "sha": "98cace522465d4c6b9972aa6acd5bd9350e4b638",
2686
        "description": "r600: set clear_buffer = u_default_clear_buffer",
2687
        "nominated": false,
2688
        "nomination_type": null,
2689
        "resolution": 4,
2690
        "main_sha": null,
2691
        "because_sha": null
2692
    },
2693
    {
2694
        "sha": "505dd284c1aefa11ac190265ff822d1863cd7bbe",
2695
        "description": "radv: Remove main_loop_case_visited",
2696
        "nominated": false,
2697
        "nomination_type": null,
2698
        "resolution": 4,
2699
        "main_sha": null,
2700
        "because_sha": null
2701
    },
2702
    {
2703
        "sha": "d4345ec4d22dc0682d92a854ac86418c380735cf",
2704
        "description": "radv: Use cache_uuid for accel struct compatibility",
2705
        "nominated": false,
2706
        "nomination_type": null,
2707
        "resolution": 4,
2708
        "main_sha": null,
2709
        "because_sha": null
2710
    },
2711
    {
2712
        "sha": "12efb83ae89c430cd19e32649a3682385c3c74ba",
2713
        "description": "gallivm/sample: refactor multisample offset calcs code.",
2714
        "nominated": false,
2715
        "nomination_type": null,
2716
        "resolution": 4,
2717
        "main_sha": null,
2718
        "because_sha": null
2719
    },
2720
    {
2721
        "sha": "b4f132b2dd0c8b7d502a08c14e8f2033c75843cc",
2722
        "description": "gallivm/nir: drop some unused struct members.",
2723
        "nominated": false,
2724
        "nomination_type": null,
2725
        "resolution": 4,
2726
        "main_sha": null,
2727
        "because_sha": null
2728
    },
2729
    {
2730
        "sha": "c457e1f0e4d8beb3eb4c8d58452063652278764b",
2731
        "description": "gallivm/sample: move some first_level/last_level calcs out",
2732
        "nominated": false,
2733
        "nomination_type": null,
2734
        "resolution": 4,
2735
        "main_sha": null,
2736
        "because_sha": null
2737
    },
2738
    {
2739
        "sha": "3052d30dc2175f79cf3db140ef2c8128610b084d",
2740
        "description": "CI: Re-enable Collabora devices",
2741
        "nominated": false,
2742
        "nomination_type": null,
2743
        "resolution": 4,
2744
        "main_sha": null,
2745
        "because_sha": null
2746
    },
2747
    {
2748
        "sha": "b666c203eed8c3bd0825b23c65bfb79c4be53735",
2749
        "description": "gallium/u_threaded_context: remove stale comment",
2750
        "nominated": true,
2751
        "nomination_type": 1,
2752
        "resolution": 1,
2753
        "main_sha": null,
2754
        "because_sha": "620c5e9dd05c57c253fa1e56218e88fe7bd23d86"
2755
    },
2756
    {
2757
        "sha": "12acee17fad5e939a4fa6ac9ce3bd4753fd0326c",
2758
        "description": "frontends/va: reallocate surface for yuv400/yuv444 picture",
2759
        "nominated": false,
2760
        "nomination_type": null,
2761
        "resolution": 4,
2762
        "main_sha": null,
2763
        "because_sha": null
2764
    },
2765
    {
2766
        "sha": "3e2f7905a63ddf5b380064eea3562192c67afc4e",
2767
        "description": "radeonsi/vcn: enable jpeg decode of yuv444 and yuv400",
2768
        "nominated": false,
2769
        "nomination_type": null,
2770
        "resolution": 4,
2771
        "main_sha": null,
2772
        "because_sha": null
2773
    },
2774
    {
2775
        "sha": "6b933676ccac5c52689b4d6e9896be9a457b9618",
2776
        "description": "frontends/va: support yuv 400/444 rt_formats in vaconfig",
2777
        "nominated": false,
2778
        "nomination_type": null,
2779
        "resolution": 4,
2780
        "main_sha": null,
2781
        "because_sha": null
2782
    },
2783
    {
2784
        "sha": "d2c0ff1cafbedf30a813434c95e82f38cb5e0688",
2785
        "description": "frontends/va: add support for yuv400 and yuv444",
2786
        "nominated": false,
2787
        "nomination_type": null,
2788
        "resolution": 4,
2789
        "main_sha": null,
2790
        "because_sha": null
2791
    },
2792
    {
2793
        "sha": "9055ab9de33310709bcf64c7f95da0a7cb9e8ccc",
2794
        "description": "util/format: add util format y8_400_unorm",
2795
        "nominated": false,
2796
        "nomination_type": null,
2797
        "resolution": 4,
2798
        "main_sha": null,
2799
        "because_sha": null
2800
    },
2801
    {
2802
        "sha": "791f1874059b0a93af2199aa9d63f6938f3bcec5",
2803
        "description": "pvr: Add vulkan shader factory headers for Query and clear APIs.",
2804
        "nominated": false,
2805
        "nomination_type": null,
2806
        "resolution": 4,
2807
        "main_sha": null,
2808
        "because_sha": null
2809
    },
2810
    {
2811
        "sha": "0923de04bae3882169b764bbf026662e704948d2",
2812
        "description": "pvr: Split pds compute shader create and upload code for reuse.",
2813
        "nominated": false,
2814
        "nomination_type": null,
2815
        "resolution": 4,
2816
        "main_sha": null,
2817
        "because_sha": null
2818
    },
2819
    {
2820
        "sha": "b8d9afe75ce903d1fbf292b282bf61b68f185aaf",
2821
        "description": "pvr: Remove double error reporting.",
2822
        "nominated": false,
2823
        "nomination_type": null,
2824
        "resolution": 4,
2825
        "main_sha": null,
2826
        "because_sha": null
2827
    },
2828
    {
2829
        "sha": "b03e73a02415cdfedfbbc5eaddd79ce13f5a0b23",
2830
        "description": "pvr: Fix allocation size passed in pvr_cmd_buffer_alloc_mem.",
2831
        "nominated": false,
2832
        "nomination_type": null,
2833
        "resolution": 4,
2834
        "main_sha": null,
2835
        "because_sha": null
2836
    },
2837
    {
2838
        "sha": "0b694c2eb35b92f4b27d2588ca7dbbc835985177",
2839
        "description": "pvr: Fix heap type of availability_buffer allocation.",
2840
        "nominated": false,
2841
        "nomination_type": null,
2842
        "resolution": 4,
2843
        "main_sha": null,
2844
        "because_sha": null
2845
    },
2846
    {
2847
        "sha": "c229916e38246ec89f1810a5ad8e6036661f2d04",
2848
        "description": "pvr: Update buffer type macro names for consistency.",
2849
        "nominated": false,
2850
        "nomination_type": null,
2851
        "resolution": 4,
2852
        "main_sha": null,
2853
        "because_sha": null
2854
    },
2855
    {
2856
        "sha": "9e84fc73bef549c5e291de1ccfb860be3b83a693",
2857
        "description": "mesa: unlock texture on error path in glEGLImageTargetTexStorageEXT",
2858
        "nominated": false,
2859
        "nomination_type": 1,
2860
        "resolution": 4,
2861
        "main_sha": null,
2862
        "because_sha": "6a3f5c65128b82b87c5fadcf1d42484f6489b11b"
2863
    },
2864
    {
2865
        "sha": "941c70a28a8db3a852ca5245354effa2bf1e7cf8",
2866
        "description": "nouveau: treat DRM_FORMAT_INVALID as implicit modifier",
2867
        "nominated": true,
2868
        "nomination_type": 1,
2869
        "resolution": 1,
2870
        "main_sha": null,
2871
        "because_sha": "129d83cac2accc4a66eae50c19ac245b864dc98c"
2872
    },
2873
    {
2874
        "sha": "5cd3e395037250946ba2519600836341df02c8ca",
2875
        "description": "r600/sfn: Make sure all components are usable when lowering TF inputs",
2876
        "nominated": false,
2877
        "nomination_type": null,
2878
        "resolution": 4,
2879
        "main_sha": null,
2880
        "because_sha": null
2881
    },
2882
    {
2883
        "sha": "a34003d4720fff4dc7c82978dc1f67cb3ab78ef7",
2884
        "description": "r600/sfn: Always enforce LDS operation order",
2885
        "nominated": false,
2886
        "nomination_type": null,
2887
        "resolution": 4,
2888
        "main_sha": null,
2889
        "because_sha": null
2890
    },
2891
    {
2892
        "sha": "6b767f83c31ceed2437cfc114e0135d2bfa677f1",
2893
        "description": "r600/sfn: Unroll loops after doing some optimizations",
2894
        "nominated": false,
2895
        "nomination_type": null,
2896
        "resolution": 4,
2897
        "main_sha": null,
2898
        "because_sha": null
2899
    },
2900
    {
2901
        "sha": "3290978053c3f2237dfafb61405bae59036d56eb",
2902
        "description": "r600/sfn: assert on use of abs modifier in op3",
2903
        "nominated": false,
2904
        "nomination_type": null,
2905
        "resolution": 4,
2906
        "main_sha": null,
2907
        "because_sha": null
2908
    },
2909
    {
2910
        "sha": "e840645bb793a2e21c7a7e227c337bf4fe6e2819",
2911
        "description": "r600/sfn:explicitly initialize the memory pool",
2912
        "nominated": false,
2913
        "nomination_type": null,
2914
        "resolution": 4,
2915
        "main_sha": null,
2916
        "because_sha": null
2917
    },
2918
    {
2919
        "sha": "04aea1c0ba7f1ba86f7916080699c66b95f180e1",
2920
        "description": "r600/sfn: Use the correct allocator for loop lists",
2921
        "nominated": false,
2922
        "nomination_type": null,
2923
        "resolution": 4,
2924
        "main_sha": null,
2925
        "because_sha": null
2926
    },
2927
    {
2928
        "sha": "4b7ae72c46618cdb1cecb57a10509d3bf05881dd",
2929
        "description": "r600/sfn: Fix typo",
2930
        "nominated": false,
2931
        "nomination_type": null,
2932
        "resolution": 4,
2933
        "main_sha": null,
2934
        "because_sha": null
2935
    },
2936
    {
2937
        "sha": "5bdbbe5399cc0c5803a474b4fc82fa8ff93fd763",
2938
        "description": "r600/sfn: Delete final lowered nir shader early",
2939
        "nominated": false,
2940
        "nomination_type": null,
2941
        "resolution": 4,
2942
        "main_sha": null,
2943
        "because_sha": null
2944
    },
2945
    {
2946
        "sha": "47bd2b7afc1d80c3d2709d89635137e014750774",
2947
        "description": "r600/sfn: Add peephole optimization for kill instructions",
2948
        "nominated": false,
2949
        "nomination_type": null,
2950
        "resolution": 4,
2951
        "main_sha": null,
2952
        "because_sha": null
2953
    },
2954
    {
2955
        "sha": "6de40d17baf403978dd136dbbc36c0167dbf7ef9",
2956
        "description": "r600/sfn: don't propagate registers into conditional test",
2957
        "nominated": true,
2958
        "nomination_type": 1,
2959
        "resolution": 1,
2960
        "main_sha": null,
2961
        "because_sha": "79ca456b4837b3bc21cf9ef3c03c505c4b4909f6"
2962
    },
2963
    {
2964
        "sha": "99b7a12ec12d5d76826051772fe474a547582e5e",
2965
        "description": "r600/sfn: Always start a new CF after a KILL instruction",
2966
        "nominated": true,
2967
        "nomination_type": 1,
2968
        "resolution": 1,
2969
        "main_sha": null,
2970
        "because_sha": "79ca456b4837b3bc21cf9ef3c03c505c4b4909f6"
2971
    },
2972
    {
2973
        "sha": "82b22e7fb931b56d80636654c36f58b9d013101e",
2974
        "description": "r600/sfn: Only run 64 bit ops lowering passes when really needed",
2975
        "nominated": false,
2976
        "nomination_type": null,
2977
        "resolution": 4,
2978
        "main_sha": null,
2979
        "because_sha": null
2980
    },
2981
    {
2982
        "sha": "ed3caf486633e3c03408d6343c6ffa28c9eb0dc7",
2983
        "description": "etnaviv: pass shader key by reference",
2984
        "nominated": false,
2985
        "nomination_type": null,
2986
        "resolution": 4,
2987
        "main_sha": null,
2988
        "because_sha": null
2989
    },
2990
    {
2991
        "sha": "a1af7ae96a447c05754af8317c935c4588cb8580",
2992
        "description": "etnaviv: slim down etna_shader_key",
2993
        "nominated": false,
2994
        "nomination_type": null,
2995
        "resolution": 4,
2996
        "main_sha": null,
2997
        "because_sha": null
2998
    },
2999
    {
3000
        "sha": "1964899c28ffcb2f1db180195ee1677280ecc231",
3001
        "description": "intel: add INTEL_DEBUG=capture-all to capture everything upon hang",
3002
        "nominated": false,
3003
        "nomination_type": null,
3004
        "resolution": 4,
3005
        "main_sha": null,
3006
        "because_sha": null
3007
    },
3008
    {
3009
        "sha": "650880105e6d2d6f5b507a9353cc1247f910b0df",
3010
        "description": "vulkan,lavapipe: Use a tri-state enum for depth clip enable",
3011
        "nominated": false,
3012
        "nomination_type": null,
3013
        "resolution": 4,
3014
        "main_sha": null,
3015
        "because_sha": null
3016
    },
3017
    {
3018
        "sha": "0d3bc8c5b974a2e24ef3347a3252d93e5c27b813",
3019
        "description": "r300: be more careful when pair merging with presubtract",
3020
        "nominated": false,
3021
        "nomination_type": null,
3022
        "resolution": 4,
3023
        "main_sha": null,
3024
        "because_sha": null
3025
    },
3026
    {
3027
        "sha": "bd74a6fc188ce4b880ee982d28ffb3c5025f3476",
3028
        "description": "CI: Collabora farm down for maintenance",
3029
        "nominated": false,
3030
        "nomination_type": null,
3031
        "resolution": 4,
3032
        "main_sha": null,
3033
        "because_sha": null
3034
    },
3035
    {
3036
        "sha": "1ebd3fb3ad843d631e4c46f82ea789042a82af57",
3037
        "description": "ci/etnaviv: add GC7000 support",
3038
        "nominated": false,
3039
        "nomination_type": null,
3040
        "resolution": 4,
3041
        "main_sha": null,
3042
        "because_sha": null
3043
    },
3044
    {
3045
        "sha": "37cddadf2931914e3c1d2505fe920c5163935a76",
3046
        "description": "ci/bare-metal: introduce BM_MKBOOT_PARAMS",
3047
        "nominated": false,
3048
        "nomination_type": null,
3049
        "resolution": 4,
3050
        "main_sha": null,
3051
        "because_sha": null
3052
    },
3053
    {
3054
        "sha": "13c6d7e97d5fac389236c4c82b35b7aea95e84b8",
3055
        "description": "ci: switch to mkbootimg.py",
3056
        "nominated": false,
3057
        "nomination_type": null,
3058
        "resolution": 4,
3059
        "main_sha": null,
3060
        "because_sha": null
3061
    },
3062
    {
3063
        "sha": "1cba34d8d53caf914421a1cc4ef7bea7f2ffa5d2",
3064
        "description": "ci: include etnaviv support in ARM64 container",
3065
        "nominated": false,
3066
        "nomination_type": null,
3067
        "resolution": 4,
3068
        "main_sha": null,
3069
        "because_sha": null
3070
    },
3071
    {
3072
        "sha": "df3fdbdeb50b7b240a7ec81a5ea08e3541d2a51c",
3073
        "description": "aco: Fix build error with std::max on GCC 12",
3074
        "nominated": false,
3075
        "nomination_type": null,
3076
        "resolution": 4,
3077
        "main_sha": null,
3078
        "because_sha": null
3079
    },
3080
    {
3081
        "sha": "3ca8402ec7134ae115965c4dde1363ca0928d45c",
3082
        "description": "ac/nir/ngg: Fix cross-invocation indices and cull outputs.",
3083
        "nominated": false,
3084
        "nomination_type": 1,
3085
        "resolution": 4,
3086
        "main_sha": null,
3087
        "because_sha": "697ea022020650cecfaeaf8c00afc5bff521e019"
3088
    },
3089
    {
3090
        "sha": "458fc9ce81553668d6dcbfa8418d73c800d4e6ab",
3091
        "description": "cso: asst. clean-ups in cso_context.[ch]",
3092
        "nominated": false,
3093
        "nomination_type": null,
3094
        "resolution": 4,
3095
        "main_sha": null,
3096
        "because_sha": null
3097
    },
3098
    {
3099
        "sha": "faf8398893d882456f002d8bddfb27ba473b1815",
3100
        "description": "cso: asst. clean-ups in cso_cache.[ch]",
3101
        "nominated": false,
3102
        "nomination_type": null,
3103
        "resolution": 4,
3104
        "main_sha": null,
3105
        "because_sha": null
3106
    },
3107
    {
3108
        "sha": "eaa93d7177504d82aff423b9c28f1fceefe3791c",
3109
        "description": "cso: use util_bitcount",
3110
        "nominated": false,
3111
        "nomination_type": null,
3112
        "resolution": 4,
3113
        "main_sha": null,
3114
        "because_sha": null
3115
    },
3116
    {
3117
        "sha": "983e06af2ba4025623c30ac16139cd584e5c35e0",
3118
        "description": "cso: asst. clean-ups in cso_hash.[ch]",
3119
        "nominated": false,
3120
        "nomination_type": null,
3121
        "resolution": 4,
3122
        "main_sha": null,
3123
        "because_sha": null
3124
    },
3125
    {
3126
        "sha": "406a1854d07cdfb380e1db3bf6f0c733b7233e18",
3127
        "description": "vulkan_hasvk: set READ/WRITE_WITHOUT_FORMAT for buffer views",
3128
        "nominated": false,
3129
        "nomination_type": null,
3130
        "resolution": 4,
3131
        "main_sha": null,
3132
        "because_sha": null
3133
    },
3134
    {
3135
        "sha": "b75fbfdd4694ed9e9c6554e97989b1c5148a72b2",
3136
        "description": "anv: set READ/WRITE_WITHOUT_FORMAT for buffer views",
3137
        "nominated": false,
3138
        "nomination_type": null,
3139
        "resolution": 4,
3140
        "main_sha": null,
3141
        "because_sha": null
3142
    },
3143
    {
3144
        "sha": "847361ba0727c38fd74b06a15788937f14028cc2",
3145
        "description": "panfrost: Remove load_kernel_input path",
3146
        "nominated": false,
3147
        "nomination_type": null,
3148
        "resolution": 4,
3149
        "main_sha": null,
3150
        "because_sha": null
3151
    },
3152
    {
3153
        "sha": "deb3810f1e2cf12f54e66aa3175dcc71be70d25c",
3154
        "description": "agx: Remove load_kernel_input path",
3155
        "nominated": false,
3156
        "nomination_type": null,
3157
        "resolution": 4,
3158
        "main_sha": null,
3159
        "because_sha": null
3160
    },
3161
    {
3162
        "sha": "6dcad8a13b31bc8c28bdbee1e761fdb84c3b510b",
3163
        "description": "lavapipe: zero-init sampler objects",
3164
        "nominated": false,
3165
        "nomination_type": null,
3166
        "resolution": 4,
3167
        "main_sha": null,
3168
        "because_sha": null
3169
    },
3170
    {
3171
        "sha": "2aac8ef1256ae4d1993daf443bd744d7bd26a440",
3172
        "description": "lavapipe: remove continue statements in emit_state() to be more consistent",
3173
        "nominated": false,
3174
        "nomination_type": null,
3175
        "resolution": 4,
3176
        "main_sha": null,
3177
        "because_sha": null
3178
    },
3179
    {
3180
        "sha": "77515d722b5c093236d52db52a35419c21624dc9",
3181
        "description": "zink: Map ETC1 to ETC2 to avoid uncompressing in the frontend.",
3182
        "nominated": false,
3183
        "nomination_type": null,
3184
        "resolution": 4,
3185
        "main_sha": null,
3186
        "because_sha": null
3187
    },
3188
    {
3189
        "sha": "061914ad833ff31d2182879c1e229ea040a8eab3",
3190
        "description": "zink: Enable ASTC texture format translation.",
3191
        "nominated": false,
3192
        "nomination_type": null,
3193
        "resolution": 4,
3194
        "main_sha": null,
3195
        "because_sha": null
3196
    },
3197
    {
3198
        "sha": "44894ba8b1d73d78305ec27820bb6b4707b40a30",
3199
        "description": "zink: enable native ETC2 if vk driver supports it",
3200
        "nominated": false,
3201
        "nomination_type": null,
3202
        "resolution": 4,
3203
        "main_sha": null,
3204
        "because_sha": null
3205
    },
3206
    {
3207
        "sha": "270ea2ac7e7b63d604ebb979136c80b1e2fb9829",
3208
        "description": "zink: Skip border color clamping for compressed formats.",
3209
        "nominated": false,
3210
        "nomination_type": null,
3211
        "resolution": 4,
3212
        "main_sha": null,
3213
        "because_sha": null
3214
    },
3215
    {
3216
        "sha": "da04bbe58623312139d7cb5f52d0af7b88def00e",
3217
        "description": "ci/zink: Clear stale xfails for turnip.",
3218
        "nominated": false,
3219
        "nomination_type": null,
3220
        "resolution": 4,
3221
        "main_sha": null,
3222
        "because_sha": null
3223
    },
3224
    {
3225
        "sha": "afe4b534b52af41ba3265c7150e012f8577d03b7",
3226
        "description": "freedreno: Fix graphic glitches on a4xx and a5xx",
3227
        "nominated": true,
3228
        "nomination_type": 1,
3229
        "resolution": 1,
3230
        "main_sha": null,
3231
        "because_sha": "f68c6951b86ac38ebdb89bc6b5a6285433e684a6"
3232
    },
3233
    {
3234
        "sha": "1d32bcdcb2a8540ed9625d695106fe84549f16bf",
3235
        "description": "iris: better error message with GuC loading failures",
3236
        "nominated": false,
3237
        "nomination_type": null,
3238
        "resolution": 4,
3239
        "main_sha": null,
3240
        "because_sha": null
3241
    },
3242
    {
3243
        "sha": "537176181ec2a6ba05dc6be2f2c82c0e19de0c5b",
3244
        "description": "llvmpipe: bump LP_MAX_THREADS to 32",
3245
        "nominated": false,
3246
        "nomination_type": null,
3247
        "resolution": 4,
3248
        "main_sha": null,
3249
        "because_sha": null
3250
    },
3251
    {
3252
        "sha": "0a06db8fb983816163dba72279aa386aa971057d",
3253
        "description": "ci/venus: enable render server for venus testing",
3254
        "nominated": false,
3255
        "nomination_type": null,
3256
        "resolution": 4,
3257
        "main_sha": null,
3258
        "because_sha": null
3259
    },
3260
    {
3261
        "sha": "dadb29cf2e21ba6b28a2d9ac62dd4ff13f7df9a2",
3262
        "description": "turnip: Don't use the dynamic color write enable during non-dynamic.",
3263
        "nominated": true,
3264
        "nomination_type": 1,
3265
        "resolution": 1,
3266
        "main_sha": null,
3267
        "because_sha": "169e03800d0f0e8b66999bd2cf13d40ae4f6e782"
3268
    },
3269
    {
3270
        "sha": "6f27bf250461e02ad7df17ad41cbfa71a4cae487",
3271
        "description": "gallivm: remove legacy pointer_get apis",
3272
        "nominated": false,
3273
        "nomination_type": null,
3274
        "resolution": 4,
3275
        "main_sha": null,
3276
        "because_sha": null
3277
    },
3278
    {
3279
        "sha": "0c865245900615e57f103b5e3f8759a68e978f85",
3280
        "description": "gallivm/sample: use retrieved types to do opaque pointer loads.",
3281
        "nominated": false,
3282
        "nomination_type": null,
3283
        "resolution": 4,
3284
        "main_sha": null,
3285
        "because_sha": null
3286
    },
3287
    {
3288
        "sha": "1a9889ae12757e9bdc019cbd109783a3e93121b7",
3289
        "description": "draw/llvmpipe: add way to return pointer types to generic code.",
3290
        "nominated": false,
3291
        "nomination_type": null,
3292
        "resolution": 4,
3293
        "main_sha": null,
3294
        "because_sha": null
3295
    },
3296
    {
3297
        "sha": "02c675b1960a11f02b91018c519d9da6b371615b",
3298
        "description": "draw/llvmpipe: move texture/sampler/image member load to opaque.",
3299
        "nominated": false,
3300
        "nomination_type": null,
3301
        "resolution": 4,
3302
        "main_sha": null,
3303
        "because_sha": null
3304
    },
3305
    {
3306
        "sha": "9fe8e5ccf7a18c02634be4e80bb15e854e95e78a",
3307
        "description": "gallivm/llvmpipe: add opaque pointers support to sampler",
3308
        "nominated": false,
3309
        "nomination_type": null,
3310
        "resolution": 4,
3311
        "main_sha": null,
3312
        "because_sha": null
3313
    },
3314
    {
3315
        "sha": "3d242c044758292712e1876ba3afdd3e8f06d5df",
3316
        "description": "llvmpipe/tests: port to new pointer interfaces.",
3317
        "nominated": false,
3318
        "nomination_type": null,
3319
        "resolution": 4,
3320
        "main_sha": null,
3321
        "because_sha": null
3322
    },
3323
    {
3324
        "sha": "0066e60fc4a0c8572776629d8c7dc09e91bfe598",
3325
        "description": "anv: Split the debug part of anv_queue_exec_locked()",
3326
        "nominated": false,
3327
        "nomination_type": null,
3328
        "resolution": 4,
3329
        "main_sha": null,
3330
        "because_sha": null
3331
    },
3332
    {
3333
        "sha": "bc384e24f00a52a5f2f130536ea2ae41dc45803a",
3334
        "description": "anv: Use Vulkan types for priority as much as possible",
3335
        "nominated": false,
3336
        "nomination_type": null,
3337
        "resolution": 4,
3338
        "main_sha": null,
3339
        "because_sha": null
3340
    },
3341
    {
3342
        "sha": "f5a58b8886e89e3213f478c823ad08ca59bee693",
3343
        "description": "anv: Split i915 specific parts of anv_queue_submit_simple_batch()",
3344
        "nominated": false,
3345
        "nomination_type": null,
3346
        "resolution": 4,
3347
        "main_sha": null,
3348
        "because_sha": null
3349
    },
3350
    {
3351
        "sha": "35ed40f356162cfbf1f0f9af7b98a54a4b633b68",
3352
        "description": "anv: Move fetch of i915 physical device parameters",
3353
        "nominated": false,
3354
        "nomination_type": null,
3355
        "resolution": 4,
3356
        "main_sha": null,
3357
        "because_sha": null
3358
    },
3359
    {
3360
        "sha": "a17783b066f67d8b0118e7074b34337b7b314ff0",
3361
        "description": "intel/dev: Split i915 specific parts of intel_get_device_info_from_fd()",
3362
        "nominated": false,
3363
        "nomination_type": null,
3364
        "resolution": 4,
3365
        "main_sha": null,
3366
        "because_sha": null
3367
    },
3368
    {
3369
        "sha": "03b959286e2c7f8e006df02d5102bd346a9d450b",
3370
        "description": "intel: Make engine related functions and types not i915 dependent",
3371
        "nominated": false,
3372
        "nomination_type": null,
3373
        "resolution": 4,
3374
        "main_sha": null,
3375
        "because_sha": null
3376
    },
3377
    {
3378
        "sha": "24bc3b76446078a07999c968a4d26f9e04389917",
3379
        "description": "docs: move VK_EXT_extended_dynamic_state3 out from 1.3",
3380
        "nominated": false,
3381
        "nomination_type": null,
3382
        "resolution": 4,
3383
        "main_sha": null,
3384
        "because_sha": null
3385
    },
2
    {
3386
    {
3
        "sha": "68f3c38c8011e3ff304a67b6ffb33fd21ee65b0c",
3387
        "sha": "68f3c38c8011e3ff304a67b6ffb33fd21ee65b0c",
4
        "description": "tu: Implement extendedDynamicState2PatchControlPoints",
3388
        "description": "tu: Implement extendedDynamicState2PatchControlPoints",
Lines 4108-4114 Link Here
4108
        "description": "gallivm: handle llvm coroutines for llvm > 15",
7492
        "description": "gallivm: handle llvm coroutines for llvm > 15",
4109
        "nominated": true,
7493
        "nominated": true,
4110
        "nomination_type": 0,
7494
        "nomination_type": 0,
4111
        "resolution": 0,
7495
        "resolution": 1,
4112
        "main_sha": null,
7496
        "main_sha": null,
4113
        "because_sha": null
7497
        "because_sha": null
4114
    },
7498
    },
Lines 6556-6562 Link Here
6556
        "description": "anv: add missing tracepoint",
9940
        "description": "anv: add missing tracepoint",
6557
        "nominated": true,
9941
        "nominated": true,
6558
        "nomination_type": 1,
9942
        "nomination_type": 1,
6559
        "resolution": 0,
9943
        "resolution": 1,
6560
        "main_sha": null,
9944
        "main_sha": null,
6561
        "because_sha": "3501a3f9ed92831ed039f0d54bf295af41ed0195"
9945
        "because_sha": "3501a3f9ed92831ed039f0d54bf295af41ed0195"
6562
    },
9946
    },
Lines 12478-12484 Link Here
12478
        "description": "virgl: Report CONSTANT_BUFFER_SIZE according to GL_MAX_UNIFORM_BLOCK_SIZE",
15862
        "description": "virgl: Report CONSTANT_BUFFER_SIZE according to GL_MAX_UNIFORM_BLOCK_SIZE",
12479
        "nominated": true,
15863
        "nominated": true,
12480
        "nomination_type": 1,
15864
        "nomination_type": 1,
12481
        "resolution": 0,
15865
        "resolution": 1,
12482
        "main_sha": null,
15866
        "main_sha": null,
12483
        "because_sha": "5b683ba19ac77d6c7dfd8de478678d0b90ba764f"
15867
        "because_sha": "5b683ba19ac77d6c7dfd8de478678d0b90ba764f"
12484
    },
15868
    },
Lines 19174-19180 Link Here
19174
        "description": "d3d12: Implement cap PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP",
22558
        "description": "d3d12: Implement cap PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP",
19175
        "nominated": true,
22559
        "nominated": true,
19176
        "nomination_type": 1,
22560
        "nomination_type": 1,
19177
        "resolution": 0,
22561
        "resolution": 1,
19178
        "main_sha": null,
22562
        "main_sha": null,
19179
        "because_sha": "a585d95803ca38d42b893603a85bf6442a54838a"
22563
        "because_sha": "a585d95803ca38d42b893603a85bf6442a54838a"
19180
    },
22564
    },
Lines 19183-19189 Link Here
19183
        "description": "gallium/va: vaDeriveImage to check PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP",
22567
        "description": "gallium/va: vaDeriveImage to check PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP",
19184
        "nominated": true,
22568
        "nominated": true,
19185
        "nomination_type": 1,
22569
        "nomination_type": 1,
19186
        "resolution": 0,
22570
        "resolution": 1,
19187
        "main_sha": null,
22571
        "main_sha": null,
19188
        "because_sha": "a585d95803ca38d42b893603a85bf6442a54838a"
22572
        "because_sha": "a585d95803ca38d42b893603a85bf6442a54838a"
19189
    },
22573
    },
Lines 21991-21997 Link Here
21991
        "description": "nir: spirv: Allow 32-bit version of nir_intrinsic_is_sparse_texels_resident",
25375
        "description": "nir: spirv: Allow 32-bit version of nir_intrinsic_is_sparse_texels_resident",
21992
        "nominated": true,
25376
        "nominated": true,
21993
        "nomination_type": 1,
25377
        "nomination_type": 1,
21994
        "resolution": 0,
25378
        "resolution": 3,
21995
        "main_sha": null,
25379
        "main_sha": null,
21996
        "because_sha": "4cbdf9ec4d454c4df157570387edeeaf45847b8a"
25380
        "because_sha": "4cbdf9ec4d454c4df157570387edeeaf45847b8a"
21997
    },
25381
    },
(-)a/VERSION (-1 / +1 lines)
Line 1 Link Here
1
22.2.1
1
22.2.2
(-)a/docs/relnotes/22.2.1.rst (-1 / +2 lines)
Lines 19-25 SHA256 checksum Link Here
19
19
20
::
20
::
21
21
22
    TBD.
22
    0079beac0a33f45e7e0aec59e6913eafbc4268a3f1e2e330017440494f91b13c  mesa-22.2.1.tar.xz
23
23
24
24
25
25
New features
26
New features
(-)a/docs/relnotes/22.2.2.rst (+144 lines)
Line 0 Link Here
1
Mesa 22.2.2 Release Notes / 2022-10-19
2
======================================
3
4
Mesa 22.2.2 is a bug fix release which fixes bugs found since the 22.2.1 release.
5
6
Mesa 22.2.2 implements the OpenGL 4.6 API, but the version reported by
7
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
8
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
9
Some drivers don't support all the features required in OpenGL 4.6. OpenGL
10
4.6 is **only** available if requested at context creation.
11
Compatibility contexts may report a lower version depending on each driver.
12
13
Mesa 22.2.2 implements the Vulkan 1.3 API, but the version reported by
14
the apiVersion property of the VkPhysicalDeviceProperties struct
15
depends on the particular driver being used.
16
17
SHA256 checksum
18
---------------
19
20
::
21
22
    TBD.
23
24
25
New features
26
------------
27
28
- None
29
30
31
Bug fixes
32
---------
33
34
- radv: Crash in dEQP-VK.ray_query.misc.dynamic_indexing
35
- glthread: radeonsi: offset textures in game starsector with glthread enabled
36
- Crashing on Windows VM
37
- Exanima renders with the wrong colors.
38
- nouveau: tegra124: GL_OUT_OF_MEMORY error
39
40
41
Changes
42
-------
43
44
Alejandro Tafalla (1):
45
46
- freedreno: Fix graphic glitches on a4xx and a5xx
47
48
Alyssa Rosenzweig (4):
49
50
- nir/lower_system_values: Fix cs_local_index_to_id with variable workgroups
51
- pan/mdg: Lower PIPE_COMPUTE_CAP_MAX_THREADS_PER_BLOCK on Midgard
52
- pan/mdg: Fix 16-bit alignment with spiller
53
- nir: Fix nir_fmax_abs_vec_comp
54
55
Andri Yngvason (1):
56
57
- gallium/vl: Add opaque rgb pixel formats
58
59
Daniel Schürmann (1):
60
61
- aco/spill: Fix spilling of Phi operands
62
63
Danylo Piliaiev (1):
64
65
- tu: Reset whether there is DS resolve for dynamic subpass
66
67
Dave Airlie (1):
68
69
- gallivm: handle llvm coroutines for llvm > 15
70
71
Diogo Ivo (1):
72
73
- nouveau: treat DRM_FORMAT_INVALID as implicit modifier
74
75
Dylan Baker (7):
76
77
- docs: Add sha256 sum for 22.2.1
78
- .pick_status.json: Update to 243aa6b2ec0c2626b1333ba666a6d6d60ede8505
79
- .pick_status.json: Update to c4482a3c1a973975eb27ac284a18bebca24f7876
80
- .pick_status.json: Update to 3eed5931edf6e5f45378b013ca21f98f17af2b34
81
- .pick_status.json: Update to b02e9ef35a0446019cda9473e4c355c7cc4bb24d
82
- .pick_status.json: Mark 4c7a44413a07d3fb314f786e047bb7212c082a6c as denominated
83
- .pick_status.json: Mark dbd022f2ab43ff0a9ecc05c61123467e25f109de as backported
84
85
Emma Anholt (1):
86
87
- turnip: Don't use the dynamic color write enable during non-dynamic.
88
89
Erik Faye-Lund (1):
90
91
- gallium/u_threaded_context: remove stale comment
92
93
Filip Gawin (1):
94
95
- r300: don't use smooth line if not requested
96
97
Gert Wollny (3):
98
99
- r600/sfn: Always start a new CF after a KILL instruction
100
- r600/sfn: don't propagate registers into conditional test
101
- virgl: Report CONSTANT_BUFFER_SIZE according to GL_MAX_UNIFORM_BLOCK_SIZE
102
103
Lionel Landwerlin (3):
104
105
- vulkan/runtime: don't lookup the pipeline disk cache if disabled
106
- anv: initialization pipeline layout to 0s
107
- anv: add missing tracepoint
108
109
Liviu Prodea (1):
110
111
- clc/clover: Link clang statically when shared-llvm is disabled
112
113
Mike Blumenkrantz (3):
114
115
- zink: clamp line_stipple_factor to 1 if stipple is disabled
116
- zink: unset rp_changed after initializing renderpass attachments
117
- zink: disable fbfetch when flushing clears
118
119
Ryan Houdek (1):
120
121
- vulkan/wsi: Add dep_libudev to idep dependencies
122
123
Sil Vilerino (2):
124
125
- gallium/va: vaDeriveImage to check PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP
126
- d3d12: Implement cap PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP
127
128
SoroushIMG (3):
129
130
- zink: fix invalid Offset set for variables which do not need an offset
131
- zink: stop enabling minmax filtering when not supported
132
- zink: fix isNan mismatch between NIR and SPIR-V
133
134
Timothy Arceri (5):
135
136
- util/conf: enable init to zero workaround for Exanima
137
- util/radeonsi: enable zerovram workaround for Exanima
138
- radv: add radv_zero_vram workarounds for OpenGL games
139
- glthread: fix matrix stack depth tracking
140
- glthread: leave dlist dispatch in place for Begin/End
141
142
Yonggang Luo (1):
143
144
- util: Turn -DWINDOWS_NO_FUTEX to be pre_args
(-)a/meson.build (-2 / +2 lines)
Lines 1630-1636 endif Link Here
1630
dep_futex = null_dep
1630
dep_futex = null_dep
1631
if host_machine.system() == 'windows'
1631
if host_machine.system() == 'windows'
1632
  if (get_option('min-windows-version') < 8)
1632
  if (get_option('min-windows-version') < 8)
1633
    dep_futex = declare_dependency(compile_args : ['-DWINDOWS_NO_FUTEX'])
1633
    pre_args += '-DWINDOWS_NO_FUTEX'
1634
  else
1634
  else
1635
    dep_futex = cc.find_library('synchronization', required : true)
1635
    dep_futex = cc.find_library('synchronization', required : true)
1636
  endif
1636
  endif
Lines 1876-1882 if with_clc Link Here
1876
1876
1877
  dep_clang = cpp.find_library('clang-cpp', dirs : llvm_libdir, required : false)
1877
  dep_clang = cpp.find_library('clang-cpp', dirs : llvm_libdir, required : false)
1878
1878
1879
  if not dep_clang.found()
1879
  if not dep_clang.found() or not _shared_llvm
1880
    clang_modules = [
1880
    clang_modules = [
1881
      'clangBasic', 'clangAST', 'clangCodeGen', 'clangLex',
1881
      'clangBasic', 'clangAST', 'clangCodeGen', 'clangLex',
1882
      'clangDriver', 'clangFrontend', 'clangFrontendTool',
1882
      'clangDriver', 'clangFrontend', 'clangFrontendTool',
(-)a/src/amd/compiler/aco_spill.cpp (-1 / +3 lines)
Lines 920-927 add_coupling_code(spill_ctx& ctx, Block* block, unsigned block_idx) Link Here
920
                  pred.instructions[idx]->opcode != aco_opcode::p_logical_end);
920
                  pred.instructions[idx]->opcode != aco_opcode::p_logical_end);
921
         std::vector<aco_ptr<Instruction>>::iterator it = std::next(pred.instructions.begin(), idx);
921
         std::vector<aco_ptr<Instruction>>::iterator it = std::next(pred.instructions.begin(), idx);
922
         pred.instructions.insert(it, std::move(spill));
922
         pred.instructions.insert(it, std::move(spill));
923
924
         /* Add the original name to predecessor's spilled variables */
923
         if (spill_op.isTemp())
925
         if (spill_op.isTemp())
924
            ctx.spills_exit[pred_idx][spill_op.getTemp()] = spill_id;
926
            ctx.spills_exit[pred_idx][phi->operands[i].getTemp()] = spill_id;
925
      }
927
      }
926
928
927
      /* remove phi from instructions */
929
      /* remove phi from instructions */
(-)a/src/amd/vulkan/00-radv-defaults.conf (+33 lines)
Lines 166-170 Application bugs worked around in this file: Link Here
166
        <application name="Melty Blood Actress Again Current Code" application_name_match="MBAA.exe">
166
        <application name="Melty Blood Actress Again Current Code" application_name_match="MBAA.exe">
167
            <option name="radv_disable_dcc" value="true" />
167
            <option name="radv_disable_dcc" value="true" />
168
        </application>
168
        </application>
169
170
        <!-- OpenGL Game workarounds (zink) -->
171
        <application name="Black Geyser: Couriers of Darkness" executable="BlackGeyser.x86_64">
172
            <option name="radv_zero_vram" value="true" />
173
        </application>
174
175
        <!-- https://gitlab.freedesktop.org/mesa/mesa/-/issues/2686 -->
176
        <application name="7 Days to Die" executable="7DaysToDie.x86_64">
177
            <option name="radv_zero_vram" value="true" />
178
        </application>
179
        <application name="7 Days to Die" executable="7DaysToDie.x86">
180
            <option name="radv_zero_vram" value="true" />
181
        </application>
182
183
        <application name="Monolith demo5" executable="runner" sha1="0c40d509a74e357f0280cb1bd882e9cd94b91bdf">
184
            <option name="radv_zero_vram" value="true" />
185
        </application>
186
187
        <application name="American Truck Simulator" executable="amtrucks">
188
            <option name="radv_zero_vram" value="true" />
189
        </application>
190
191
        <application name="Counter-Strike Global Offensive" executable="csgo_linux64">
192
            <option name="radv_zero_vram" value="true" />
193
        </application>
194
195
        <application name="Exanima" executable="Exanima.exe">
196
            <option name="radv_zero_vram" value="true"/>
197
        </application>
198
199
        <application name="Rocket League" executable="RocketLeague">
200
            <option name="radv_zero_vram" value="true" />
201
        </application>
169
    </device>
202
    </device>
170
</driconf>
203
</driconf>
(-)a/src/compiler/nir/nir_builtin_builder.h (-2 / +3 lines)
Lines 62-70 nir_nan_check2(nir_builder *b, nir_ssa_def *x, nir_ssa_def *y, nir_ssa_def *res) Link Here
62
static inline nir_ssa_def *
62
static inline nir_ssa_def *
63
nir_fmax_abs_vec_comp(nir_builder *b, nir_ssa_def *vec)
63
nir_fmax_abs_vec_comp(nir_builder *b, nir_ssa_def *vec)
64
{
64
{
65
   nir_ssa_def *res = nir_channel(b, vec, 0);
65
   nir_ssa_def *abs = nir_fabs(b, vec);
66
   nir_ssa_def *res = nir_channel(b, abs, 0);
66
   for (unsigned i = 1; i < vec->num_components; ++i)
67
   for (unsigned i = 1; i < vec->num_components; ++i)
67
      res = nir_fmax(b, res, nir_fabs(b, nir_channel(b, vec, i)));
68
      res = nir_fmax(b, res, nir_channel(b, abs, i));
68
   return res;
69
   return res;
69
}
70
}
70
71
(-)a/src/compiler/nir/nir_lower_system_values.c (-5 / +3 lines)
Lines 463-473 lower_compute_system_value_instr(nir_builder *b, Link Here
463
          *    gl_WorkGroupSize.x + gl_LocalInvocationID.x"
463
          *    gl_WorkGroupSize.x + gl_LocalInvocationID.x"
464
          */
464
          */
465
         nir_ssa_def *local_id = nir_load_local_invocation_id(b);
465
         nir_ssa_def *local_id = nir_load_local_invocation_id(b);
466
466
         nir_ssa_def *local_size = nir_load_workgroup_size(b);
467
         nir_ssa_def *size_x =
467
         nir_ssa_def *size_x = nir_channel(b, local_size, 0);
468
            nir_imm_int(b, b->shader->info.workgroup_size[0]);
468
         nir_ssa_def *size_y = nir_channel(b, local_size, 1);
469
         nir_ssa_def *size_y =
470
            nir_imm_int(b, b->shader->info.workgroup_size[1]);
471
469
472
         /* Because no hardware supports a local workgroup size greater than
470
         /* Because no hardware supports a local workgroup size greater than
473
          * about 1K, this calculation can be done in 32-bit and can save some
471
          * about 1K, this calculation can be done in 32-bit and can save some
(-)a/src/freedreno/vulkan/tu_cmd_buffer.c (-4 / +3 lines)
Lines 4341-4350 tu6_emit_blend(struct tu_cs *cs, struct tu_cmd_buffer *cmd) Link Here
4341
      }
4341
      }
4342
   }
4342
   }
4343
4343
4344
   uint32_t blend_enable_mask =
4344
   uint32_t blend_enable_mask = color_write_enable;
4345
      (cmd->state.logic_op_enabled && cmd->state.rop_reads_dst) ?
4345
   if (!(cmd->state.logic_op_enabled && cmd->state.rop_reads_dst))
4346
      color_write_enable : (cmd->state.pipeline_blend_enable &
4346
      blend_enable_mask &= cmd->state.pipeline_blend_enable;
4347
                            cmd->state.color_write_enable);
4348
4347
4349
   tu_cs_emit_pkt4(cs, REG_A6XX_SP_BLEND_CNTL, 1);
4348
   tu_cs_emit_pkt4(cs, REG_A6XX_SP_BLEND_CNTL, 1);
4350
   tu_cs_emit(cs, cmd->state.sp_blend_cntl |
4349
   tu_cs_emit(cs, cmd->state.sp_blend_cntl |
(-)a/src/freedreno/vulkan/tu_pass.c (+2 lines)
Lines 984-989 tu_setup_dynamic_render_pass(struct tu_cmd_buffer *cmd_buffer, Link Here
984
   pass->attachments = cmd_buffer->dynamic_rp_attachments;
984
   pass->attachments = cmd_buffer->dynamic_rp_attachments;
985
985
986
   subpass->color_count = subpass->resolve_count = info->colorAttachmentCount;
986
   subpass->color_count = subpass->resolve_count = info->colorAttachmentCount;
987
   subpass->resolve_depth_stencil = false;
987
   subpass->color_attachments = cmd_buffer->dynamic_color_attachments;
988
   subpass->color_attachments = cmd_buffer->dynamic_color_attachments;
988
   subpass->resolve_attachments = cmd_buffer->dynamic_resolve_attachments;
989
   subpass->resolve_attachments = cmd_buffer->dynamic_resolve_attachments;
989
   subpass->feedback_invalidate = false;
990
   subpass->feedback_invalidate = false;
Lines 1102-1107 tu_setup_dynamic_inheritance(struct tu_cmd_buffer *cmd_buffer, Link Here
1102
1103
1103
   subpass->color_count = info->colorAttachmentCount;
1104
   subpass->color_count = info->colorAttachmentCount;
1104
   subpass->resolve_count = 0;
1105
   subpass->resolve_count = 0;
1106
   subpass->resolve_depth_stencil = false;
1105
   subpass->color_attachments = cmd_buffer->dynamic_color_attachments;
1107
   subpass->color_attachments = cmd_buffer->dynamic_color_attachments;
1106
   subpass->resolve_attachments = NULL;
1108
   subpass->resolve_attachments = NULL;
1107
   subpass->feedback_invalidate = false;
1109
   subpass->feedback_invalidate = false;
(-)a/src/gallium/auxiliary/draw/draw_llvm.c (-1 / +1 lines)
Lines 3381-3387 draw_tcs_llvm_generate(struct draw_llvm *llvm, Link Here
3381
3381
3382
   LLVMSetFunctionCallConv(variant_coro, LLVMCCallConv);
3382
   LLVMSetFunctionCallConv(variant_coro, LLVMCCallConv);
3383
3383
3384
   LLVMAddTargetDependentFunctionAttr(variant_coro, "coroutine.presplit", "0");
3384
   lp_build_coro_add_presplit(variant_coro);
3385
3385
3386
   for (i = 0; i < ARRAY_SIZE(arg_types); ++i) {
3386
   for (i = 0; i < ARRAY_SIZE(arg_types); ++i) {
3387
      if (LLVMGetTypeKind(arg_types[i]) == LLVMPointerTypeKind) {
3387
      if (LLVMGetTypeKind(arg_types[i]) == LLVMPointerTypeKind) {
(-)a/src/gallium/auxiliary/gallivm/lp_bld_coro.h (+11 lines)
Lines 29-34 Link Here
29
#include <stdbool.h>
29
#include <stdbool.h>
30
#include "pipe/p_compiler.h"
30
#include "pipe/p_compiler.h"
31
#include "gallivm/lp_bld.h"
31
#include "gallivm/lp_bld.h"
32
#include "gallivm/lp_bld_intr.h"
32
33
33
struct gallivm_state;
34
struct gallivm_state;
34
LLVMValueRef lp_build_coro_id(struct gallivm_state *gallivm);
35
LLVMValueRef lp_build_coro_id(struct gallivm_state *gallivm);
Lines 73-76 void lp_build_coro_suspend_switch(struct gallivm_state *gallivm, Link Here
73
74
74
void lp_build_coro_add_malloc_hooks(struct gallivm_state *gallivm);
75
void lp_build_coro_add_malloc_hooks(struct gallivm_state *gallivm);
75
void lp_build_coro_declare_malloc_hooks(struct gallivm_state *gallivm);
76
void lp_build_coro_declare_malloc_hooks(struct gallivm_state *gallivm);
77
78
static inline void lp_build_coro_add_presplit(LLVMValueRef coro)
79
{
80
#if LLVM_VERSION_MAJOR >= 15
81
   lp_add_function_attr(coro, -1, LP_FUNC_ATTR_PRESPLITCORO);
82
#else
83
   LLVMAddTargetDependentFunctionAttr(coro, "coroutine.presplit", "0");
84
#endif
85
}
86
76
#endif
87
#endif
(-)a/src/gallium/auxiliary/gallivm/lp_bld_intr.c (+1 lines)
Lines 162-167 static const char *attr_to_str(enum lp_func_attr attr) Link Here
162
   case LP_FUNC_ATTR_WRITEONLY: return "writeonly";
162
   case LP_FUNC_ATTR_WRITEONLY: return "writeonly";
163
   case LP_FUNC_ATTR_INACCESSIBLE_MEM_ONLY: return "inaccessiblememonly";
163
   case LP_FUNC_ATTR_INACCESSIBLE_MEM_ONLY: return "inaccessiblememonly";
164
   case LP_FUNC_ATTR_CONVERGENT: return "convergent";
164
   case LP_FUNC_ATTR_CONVERGENT: return "convergent";
165
   case LP_FUNC_ATTR_PRESPLITCORO: return "presplitcoroutine";
165
   default:
166
   default:
166
      _debug_printf("Unhandled function attribute: %x\n", attr);
167
      _debug_printf("Unhandled function attribute: %x\n", attr);
167
      return 0;
168
      return 0;
(-)a/src/gallium/auxiliary/gallivm/lp_bld_intr.h (+2 lines)
Lines 41-46 Link Here
41
#include "gallivm/lp_bld.h"
41
#include "gallivm/lp_bld.h"
42
#include "gallivm/lp_bld_init.h"
42
#include "gallivm/lp_bld_init.h"
43
43
44
struct lp_type;
44
45
45
/**
46
/**
46
 * Max number of arguments in an intrinsic.
47
 * Max number of arguments in an intrinsic.
Lines 57-62 enum lp_func_attr { Link Here
57
   LP_FUNC_ATTR_WRITEONLY    = LLVM_VERSION_MAJOR >= 4 ? (1 << 7) : 0,
58
   LP_FUNC_ATTR_WRITEONLY    = LLVM_VERSION_MAJOR >= 4 ? (1 << 7) : 0,
58
   LP_FUNC_ATTR_INACCESSIBLE_MEM_ONLY = LLVM_VERSION_MAJOR >= 4 ? (1 << 8) : 0,
59
   LP_FUNC_ATTR_INACCESSIBLE_MEM_ONLY = LLVM_VERSION_MAJOR >= 4 ? (1 << 8) : 0,
59
   LP_FUNC_ATTR_CONVERGENT   = LLVM_VERSION_MAJOR >= 4 ? (1 << 9) : 0,
60
   LP_FUNC_ATTR_CONVERGENT   = LLVM_VERSION_MAJOR >= 4 ? (1 << 9) : 0,
61
   LP_FUNC_ATTR_PRESPLITCORO = (1 << 10),
60
62
61
   /* Legacy intrinsic that needs attributes on function declarations
63
   /* Legacy intrinsic that needs attributes on function declarations
62
    * and they must match the internal LLVM definition exactly, otherwise
64
    * and they must match the internal LLVM definition exactly, otherwise
(-)a/src/gallium/auxiliary/util/u_threaded_context.h (-1 lines)
Lines 532-538 struct threaded_context { Link Here
532
   uint32_t image_buffers[PIPE_SHADER_TYPES][PIPE_MAX_SHADER_IMAGES];
532
   uint32_t image_buffers[PIPE_SHADER_TYPES][PIPE_MAX_SHADER_IMAGES];
533
   uint32_t shader_buffers_writeable_mask[PIPE_SHADER_TYPES];
533
   uint32_t shader_buffers_writeable_mask[PIPE_SHADER_TYPES];
534
   uint64_t image_buffers_writeable_mask[PIPE_SHADER_TYPES];
534
   uint64_t image_buffers_writeable_mask[PIPE_SHADER_TYPES];
535
   /* Don't use PIPE_MAX_SHADER_SAMPLER_VIEWS because it's too large. */
536
   uint32_t sampler_buffers[PIPE_SHADER_TYPES][PIPE_MAX_SHADER_SAMPLER_VIEWS];
535
   uint32_t sampler_buffers[PIPE_SHADER_TYPES][PIPE_MAX_SHADER_SAMPLER_VIEWS];
537
536
538
   struct tc_batch batch_slots[TC_MAX_BATCHES];
537
   struct tc_batch batch_slots[TC_MAX_BATCHES];
(-)a/src/gallium/auxiliary/vl/vl_video_buffer.c (+2 lines)
Lines 77-83 vl_video_buffer_plane_order(enum pipe_format format) Link Here
77
77
78
   case PIPE_FORMAT_NV12:
78
   case PIPE_FORMAT_NV12:
79
   case PIPE_FORMAT_R8G8B8A8_UNORM:
79
   case PIPE_FORMAT_R8G8B8A8_UNORM:
80
   case PIPE_FORMAT_R8G8B8X8_UNORM:
80
   case PIPE_FORMAT_B8G8R8A8_UNORM:
81
   case PIPE_FORMAT_B8G8R8A8_UNORM:
82
   case PIPE_FORMAT_B8G8R8X8_UNORM:
81
   case PIPE_FORMAT_YUYV:
83
   case PIPE_FORMAT_YUYV:
82
   case PIPE_FORMAT_UYVY:
84
   case PIPE_FORMAT_UYVY:
83
   case PIPE_FORMAT_P010:
85
   case PIPE_FORMAT_P010:
(-)a/src/gallium/drivers/d3d12/d3d12_video_screen.cpp (+7 lines)
Lines 535-540 d3d12_screen_get_video_param_decode(struct pipe_screen *pscreen, Link Here
535
         return true;
535
         return true;
536
      case PIPE_VIDEO_CAP_SUPPORTS_PROGRESSIVE:
536
      case PIPE_VIDEO_CAP_SUPPORTS_PROGRESSIVE:
537
         return true;
537
         return true;
538
      case PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP:
539
         return true;
538
         break;
540
         break;
539
      default:
541
      default:
540
         debug_printf("[d3d12_screen_get_video_param] unknown video param: %d\n", param);
542
         debug_printf("[d3d12_screen_get_video_param] unknown video param: %d\n", param);
Lines 608-613 d3d12_screen_get_video_param_postproc(struct pipe_screen *pscreen, Link Here
608
      case PIPE_VIDEO_CAP_PREFERED_FORMAT:
610
      case PIPE_VIDEO_CAP_PREFERED_FORMAT:
609
      case PIPE_VIDEO_CAP_SUPPORTS_INTERLACED:
611
      case PIPE_VIDEO_CAP_SUPPORTS_INTERLACED:
610
      case PIPE_VIDEO_CAP_SUPPORTS_PROGRESSIVE:
612
      case PIPE_VIDEO_CAP_SUPPORTS_PROGRESSIVE:
613
      case PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP:
611
      case PIPE_VIDEO_CAP_VPP_MAX_INPUT_WIDTH:
614
      case PIPE_VIDEO_CAP_VPP_MAX_INPUT_WIDTH:
612
      case PIPE_VIDEO_CAP_VPP_MAX_INPUT_HEIGHT:
615
      case PIPE_VIDEO_CAP_VPP_MAX_INPUT_HEIGHT:
613
      case PIPE_VIDEO_CAP_VPP_MIN_INPUT_WIDTH:
616
      case PIPE_VIDEO_CAP_VPP_MIN_INPUT_WIDTH:
Lines 652-657 d3d12_screen_get_video_param_postproc(struct pipe_screen *pscreen, Link Here
652
               return supportCaps.InputSample.Width;
655
               return supportCaps.InputSample.Width;
653
            } else if (param == PIPE_VIDEO_CAP_MAX_HEIGHT) {
656
            } else if (param == PIPE_VIDEO_CAP_MAX_HEIGHT) {
654
               return supportCaps.InputSample.Height;
657
               return supportCaps.InputSample.Height;
658
            } else if (param == PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP) {
659
               return true;
655
            } else if (param == PIPE_VIDEO_CAP_SUPPORTS_PROGRESSIVE) {
660
            } else if (param == PIPE_VIDEO_CAP_SUPPORTS_PROGRESSIVE) {
656
               return true;
661
               return true;
657
            } else if (param == PIPE_VIDEO_CAP_VPP_MAX_INPUT_WIDTH) {
662
            } else if (param == PIPE_VIDEO_CAP_VPP_MAX_INPUT_WIDTH) {
Lines 755-760 d3d12_screen_get_video_param_encode(struct pipe_screen *pscreen, Link Here
755
         return false;
760
         return false;
756
      case PIPE_VIDEO_CAP_SUPPORTS_PROGRESSIVE:
761
      case PIPE_VIDEO_CAP_SUPPORTS_PROGRESSIVE:
757
         return true;
762
         return true;
763
      case PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP:
764
         return true;
758
      default:
765
      default:
759
         debug_printf("[d3d12_screen_get_video_param] unknown video param: %d\n", param);
766
         debug_printf("[d3d12_screen_get_video_param] unknown video param: %d\n", param);
760
         return 0;
767
         return 0;
(-)a/src/gallium/drivers/freedreno/a4xx/fd4_gmem.c (+8 lines)
Lines 146-151 use_hw_binning(struct fd_batch *batch) Link Here
146
{
146
{
147
   const struct fd_gmem_stateobj *gmem = batch->gmem_state;
147
   const struct fd_gmem_stateobj *gmem = batch->gmem_state;
148
148
149
   /* workaround: Like on a3xx, hw binning and scissor optimization
150
    * don't play nice together.
151
    *
152
    * Disable binning if scissor optimization is used.
153
    */
154
   if (gmem->minx || gmem->miny)
155
      return false;
156
149
   if ((gmem->maxpw * gmem->maxph) > 32)
157
   if ((gmem->maxpw * gmem->maxph) > 32)
150
      return false;
158
      return false;
151
159
(-)a/src/gallium/drivers/freedreno/a5xx/fd5_gmem.c (+8 lines)
Lines 263-268 use_hw_binning(struct fd_batch *batch) Link Here
263
{
263
{
264
   const struct fd_gmem_stateobj *gmem = batch->gmem_state;
264
   const struct fd_gmem_stateobj *gmem = batch->gmem_state;
265
265
266
   /* workaround: Like on a3xx, hw binning and scissor optimization
267
    * don't play nice together.
268
    *
269
    * Disable binning if scissor optimization is used.
270
    */
271
   if (gmem->minx || gmem->miny)
272
      return false;
273
266
   if ((gmem->maxpw * gmem->maxph) > 32)
274
   if ((gmem->maxpw * gmem->maxph) > 32)
267
      return false;
275
      return false;
268
276
(-)a/src/gallium/drivers/llvmpipe/lp_state_cs.c (-1 / +1 lines)
Lines 133-139 generate_compute(struct llvmpipe_context *lp, Link Here
133
133
134
   coro = LLVMAddFunction(gallivm->module, func_name_coro, coro_func_type);
134
   coro = LLVMAddFunction(gallivm->module, func_name_coro, coro_func_type);
135
   LLVMSetFunctionCallConv(coro, LLVMCCallConv);
135
   LLVMSetFunctionCallConv(coro, LLVMCCallConv);
136
   LLVMAddTargetDependentFunctionAttr(coro, "coroutine.presplit", "0");
136
   lp_build_coro_add_presplit(coro);
137
137
138
   variant->function = function;
138
   variant->function = function;
139
139
(-)a/src/gallium/drivers/nouveau/nvc0/nvc0_miptree.c (-3 / +6 lines)
Lines 423-431 nvc0_miptree_select_best_modifier(struct pipe_screen *pscreen, Link Here
423
423
424
   for (i = 0u; i < count; i++) {
424
   for (i = 0u; i < count; i++) {
425
      for (p = 0; p < ARRAY_SIZE(prio_supported_mods); p++) {
425
      for (p = 0; p < ARRAY_SIZE(prio_supported_mods); p++) {
426
         if (prio_supported_mods[p] == modifiers[i]) {
426
         if (prio_supported_mods[p] != DRM_FORMAT_MOD_INVALID) {
427
            if (top_mod_slot > p) top_mod_slot = p;
427
            if (modifiers[i] == DRM_FORMAT_MOD_INVALID ||
428
            break;
428
                prio_supported_mods[p] == modifiers[i]) {
429
               if (top_mod_slot > p) top_mod_slot = p;
430
               break;
431
            }
429
         }
432
         }
430
      }
433
      }
431
   }
434
   }
(-)a/src/gallium/drivers/panfrost/pan_screen.c (-1 / +9 lines)
Lines 697-703 panfrost_get_compute_param(struct pipe_screen *pscreen, enum pipe_shader_ir ir_t Link Here
697
		RET(((uint64_t []) { 256, 256, 256 }));
697
		RET(((uint64_t []) { 256, 256, 256 }));
698
698
699
	case PIPE_COMPUTE_CAP_MAX_THREADS_PER_BLOCK:
699
	case PIPE_COMPUTE_CAP_MAX_THREADS_PER_BLOCK:
700
		RET((uint64_t []) { 256 });
700
                /* On Bifrost and newer, all GPUs can support at least 256 threads
701
                 * regardless of register usage, so we report 256.
702
                 *
703
                 * On Midgard, with maximum register usage, the maximum
704
                 * thread count is only 64. We would like to report 64 here, but
705
                 * the GLES3.1 spec minimum is 128, so we report 128 and limit
706
                 * the register allocation of affected compute kernels.
707
                 */
708
		RET((uint64_t []) { dev->arch >= 6 ? 256 : 128 });
701
709
702
	case PIPE_COMPUTE_CAP_MAX_GLOBAL_SIZE:
710
	case PIPE_COMPUTE_CAP_MAX_GLOBAL_SIZE:
703
		RET((uint64_t []) { 1024*1024*512 /* Maybe get memory */ });
711
		RET((uint64_t []) { 1024*1024*512 /* Maybe get memory */ });
(-)a/src/gallium/drivers/r300/ci/r300-rv515-fails.txt (-12 lines)
Lines 25-43 dEQP-GLES2.functional.polygon_offset.fixed16_displacement_with_units,Fail Link Here
25
dEQP-GLES2.functional.polygon_offset.fixed16_render_with_units,Fail
25
dEQP-GLES2.functional.polygon_offset.fixed16_render_with_units,Fail
26
dEQP-GLES2.functional.polygon_offset.fixed16_factor_1_slope,Fail
26
dEQP-GLES2.functional.polygon_offset.fixed16_factor_1_slope,Fail
27
27
28
# Minor errors around the edges
29
dEQP-GLES2.functional.rasterization.interpolation.basic.lines_wide,Fail
30
dEQP-GLES2.functional.rasterization.interpolation.basic.line_strip_wide,Fail
31
dEQP-GLES2.functional.rasterization.interpolation.basic.line_loop_wide,Fail
32
dEQP-GLES2.functional.rasterization.interpolation.projected.lines_wide,Fail
33
dEQP-GLES2.functional.rasterization.interpolation.projected.line_strip_wide,Fail
34
dEQP-GLES2.functional.rasterization.interpolation.projected.line_loop_wide,Fail
35
36
# "Invalid line width at (119, 179) - (119, 180). Detected width of 2, expected 1"
28
# "Invalid line width at (119, 179) - (119, 180). Detected width of 2, expected 1"
37
dEQP-GLES2.functional.rasterization.primitives.lines,Fail
38
dEQP-GLES2.functional.rasterization.primitives.line_strip,Fail
39
dEQP-GLES2.functional.rasterization.primitives.line_loop,Fail
40
dEQP-GLES2.functional.rasterization.primitives.lines_wide,Fail
41
dEQP-GLES2.functional.rasterization.primitives.line_strip_wide,Fail,Fail
29
dEQP-GLES2.functional.rasterization.primitives.line_strip_wide,Fail,Fail
42
dEQP-GLES2.functional.rasterization.primitives.line_loop_wide,Fail
30
dEQP-GLES2.functional.rasterization.primitives.line_loop_wide,Fail
43
31
(-)a/src/gallium/drivers/r300/r300_state.c (-1 / +1 lines)
Lines 1218-1224 static void* r300_create_rs_state(struct pipe_context* pipe, Link Here
1218
1218
1219
    /* Line control. */
1219
    /* Line control. */
1220
    line_control = pack_float_16_6x(state->line_width) |
1220
    line_control = pack_float_16_6x(state->line_width) |
1221
        R300_GA_LINE_CNTL_END_TYPE_COMP;
1221
        (state->line_smooth ? R300_GA_LINE_CNTL_END_TYPE_COMP : R300_GA_LINE_CNTL_END_TYPE_SQR);
1222
1222
1223
    /* Enable polygon mode */
1223
    /* Enable polygon mode */
1224
    polygon_mode = 0;
1224
    polygon_mode = 0;
(-)a/src/gallium/drivers/r600/sfn/sfn_instr_alugroup.cpp (-1 / +27 lines)
Lines 35-40 AluGroup::AluGroup() Link Here
35
   std::fill(m_slots.begin(), m_slots.end(), nullptr);
35
   std::fill(m_slots.begin(), m_slots.end(), nullptr);
36
}
36
}
37
37
38
static bool is_kill(EAluOp op)
39
{
40
   switch (op) {
41
   case op2_kille:
42
   case op2_kille_int:
43
   case op2_killne:
44
   case op2_killne_int:
45
   case op2_killge:
46
   case op2_killge_int:
47
   case op2_killge_uint:
48
   case op2_killgt:
49
   case op2_killgt_int:
50
   case op2_killgt_uint:
51
      return true;
52
   default:
53
      return false;
54
   }
55
}
56
38
bool AluGroup::add_instruction(AluInstr *instr)
57
bool AluGroup::add_instruction(AluInstr *instr)
39
{
58
{
40
   /* we can only schedule one op that accesses LDS or
59
   /* we can only schedule one op that accesses LDS or
Lines 45-56 bool AluGroup::add_instruction(AluInstr *instr) Link Here
45
   if (instr->has_alu_flag(alu_is_trans)) {
64
   if (instr->has_alu_flag(alu_is_trans)) {
46
      auto opinfo = alu_ops.find(instr->opcode());
65
      auto opinfo = alu_ops.find(instr->opcode());
47
      assert(opinfo->second.can_channel(AluOp::t, s_chip_class));
66
      assert(opinfo->second.can_channel(AluOp::t, s_chip_class));
48
      if (add_trans_instructions(instr))
67
      if (add_trans_instructions(instr)) {
68
         if (is_kill(instr->opcode()))
69
            m_has_kill_op = true;
49
         return true;
70
         return true;
71
      }
50
   }
72
   }
51
73
52
   if (add_vec_instructions(instr) && !instr->has_alu_flag(alu_is_trans)) {
74
   if (add_vec_instructions(instr) && !instr->has_alu_flag(alu_is_trans)) {
53
      instr->set_parent_group(this);
75
      instr->set_parent_group(this);
76
      if (!instr->has_alu_flag(alu_is_lds) && is_kill(instr->opcode()))
77
         m_has_kill_op = true;
54
      return true;
78
      return true;
55
   }
79
   }
56
80
Lines 61-66 bool AluGroup::add_instruction(AluInstr *instr) Link Here
61
       opinfo->second.can_channel(AluOp::t, s_chip_class) &&
85
       opinfo->second.can_channel(AluOp::t, s_chip_class) &&
62
       add_trans_instructions(instr)) {
86
       add_trans_instructions(instr)) {
63
      instr->set_parent_group(this);
87
      instr->set_parent_group(this);
88
      if (is_kill(instr->opcode()))
89
         m_has_kill_op = true;
64
      return true;
90
      return true;
65
   }
91
   }
66
92
(-)a/src/gallium/drivers/r600/sfn/sfn_instr_alugroup.h (+2 lines)
Lines 87-92 public: Link Here
87
   static bool has_t() { return s_max_slots == 5;}
87
   static bool has_t() { return s_max_slots == 5;}
88
88
89
   bool addr_for_src() const { return m_addr_for_src;}
89
   bool addr_for_src() const { return m_addr_for_src;}
90
   bool has_kill_op() const {return m_has_kill_op;}
90
91
91
private:
92
private:
92
   void forward_set_blockid(int id, int index) override;
93
   void forward_set_blockid(int id, int index) override;
Lines 111-116 private: Link Here
111
   bool m_has_lds_op{false};
112
   bool m_has_lds_op{false};
112
   bool m_addr_is_index{false};
113
   bool m_addr_is_index{false};
113
   bool m_addr_for_src{false};
114
   bool m_addr_for_src{false};
115
   bool m_has_kill_op{false};
114
};
116
};
115
117
116
118
(-)a/src/gallium/drivers/r600/sfn/sfn_peephole.cpp (-4 / +15 lines)
Lines 212-222 void ReplaceIfPredicate::visit(AluInstr *alu) Link Here
212
   if (new_op == op0_nop)
212
   if (new_op == op0_nop)
213
      return;
213
      return;
214
214
215
   /* Have to figure out how to pass the dependency correctly */
215
   for (auto& s : alu->sources()) {
216
   /*for (auto& s : alu->sources()) {
216
      auto reg = s->as_register();
217
      if (s->as_register() && s->as_register()->addr())
217
      /* Protext against propagating
218
       *
219
       *   V = COND(R, X)
220
       *   R = SOME_OP
221
       *   IF (V)
222
       *
223
       * to
224
       *
225
       *   R = SOME_OP
226
       *   IF (COND(R, X))
227
       */
228
      if (reg && !reg->is_ssa())
218
         return;
229
         return;
219
   }*/
230
   }
220
231
221
   m_pred->set_op(new_op);
232
   m_pred->set_op(new_op);
222
   m_pred->set_sources(alu->sources());
233
   m_pred->set_sources(alu->sources());
(-)a/src/gallium/drivers/r600/sfn/sfn_scheduler.cpp (-1 / +7 lines)
Lines 294-300 void BlockSheduler::schedule_block(Block& in_block, Shader::ShaderBlocks& out_bl Link Here
294
   bool have_instr = collect_ready(cir);
294
   bool have_instr = collect_ready(cir);
295
295
296
   m_current_block = new Block(in_block.nesting_depth(), in_block.id());
296
   m_current_block = new Block(in_block.nesting_depth(), in_block.id());
297
298
   assert(m_current_block->id() >= 0);
297
   assert(m_current_block->id() >= 0);
299
298
300
   while (have_instr) {
299
   while (have_instr) {
Lines 569-574 bool BlockSheduler::schedule_alu(Shader::ShaderBlocks& out_blocks) Link Here
569
   if (group->has_lds_group_end())
568
   if (group->has_lds_group_end())
570
      m_current_block->lds_group_end();
569
      m_current_block->lds_group_end();
571
570
571
   if (group->has_kill_op()) {
572
      assert(!group->has_lds_group_start());
573
      start_new_block(out_blocks, Block::alu);
574
      m_current_block->set_instr_flag(Instr::force_cf);
575
   }
576
577
572
   return success;
578
   return success;
573
}
579
}
574
580
(-)a/src/gallium/drivers/r600/sfn/sfn_shader_fs.cpp (+1 lines)
Lines 178-183 bool FragmentShader::process_stage_intrinsic(nir_intrinsic_instr *intr) Link Here
178
                                    value_factory().zero(),
178
                                    value_factory().zero(),
179
                                    value_factory().zero(),
179
                                    value_factory().zero(),
180
                                    {AluInstr::last}));
180
                                    {AluInstr::last}));
181
      start_new_block(0);
181
      return true;
182
      return true;
182
   case nir_intrinsic_load_sample_mask_in:
183
   case nir_intrinsic_load_sample_mask_in:
183
      if (m_apply_sample_mask) {
184
      if (m_apply_sample_mask) {
(-)a/src/gallium/drivers/virgl/virgl_screen.c (+4 lines)
Lines 353-358 virgl_get_param(struct pipe_screen *screen, enum pipe_cap param) Link Here
353
       return vscreen->caps.caps.v2.capability_bits_v2 & VIRGL_CAP_V2_IMPLICIT_MSAA;
353
       return vscreen->caps.caps.v2.capability_bits_v2 & VIRGL_CAP_V2_IMPLICIT_MSAA;
354
   case PIPE_CAP_IMAGE_STORE_FORMATTED:
354
   case PIPE_CAP_IMAGE_STORE_FORMATTED:
355
      return 1;
355
      return 1;
356
   case PIPE_CAP_MAX_CONSTANT_BUFFER_SIZE_UINT:
357
      if (vscreen->caps.caps.v2.host_feature_check_version >= 13)
358
         return vscreen->caps.caps.v2.max_uniform_block_size;
359
      FALLTHROUGH;
356
   default:
360
   default:
357
      return u_pipe_screen_get_param_defaults(screen, param);
361
      return u_pipe_screen_get_param_defaults(screen, param);
358
   }
362
   }
(-)a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c (-11 / +30 lines)
Lines 445-452 get_glsl_type(struct ntv_context *ctx, const struct glsl_type *type) Link Here
445
         types[i] = get_glsl_type(ctx, glsl_get_struct_field(type, i));
445
         types[i] = get_glsl_type(ctx, glsl_get_struct_field(type, i));
446
      ret = spirv_builder_type_struct(&ctx->builder, types,
446
      ret = spirv_builder_type_struct(&ctx->builder, types,
447
                                      glsl_get_length(type));
447
                                      glsl_get_length(type));
448
      for (unsigned i = 0; i < glsl_get_length(type); i++)
448
      for (unsigned i = 0; i < glsl_get_length(type); i++) {
449
         spirv_builder_emit_member_offset(&ctx->builder, ret, i, glsl_get_struct_field_offset(type, i));
449
         int32_t offset = glsl_get_struct_field_offset(type, i);
450
         if (offset >= 0)
451
            spirv_builder_emit_member_offset(&ctx->builder, ret, i, offset);
452
      }
450
   } else
453
   } else
451
      unreachable("Unhandled GLSL type");
454
      unreachable("Unhandled GLSL type");
452
455
Lines 1808-1836 alu_instr_src_components(const nir_alu_instr *instr, unsigned src) Link Here
1808
}
1811
}
1809
1812
1810
static SpvId
1813
static SpvId
1811
get_alu_src(struct ntv_context *ctx, nir_alu_instr *alu, unsigned src)
1814
get_alu_src(struct ntv_context *ctx, nir_alu_instr *alu, unsigned src, SpvId *raw_value)
1812
{
1815
{
1813
   SpvId raw_value = get_alu_src_raw(ctx, alu, src);
1816
   *raw_value = get_alu_src_raw(ctx, alu, src);
1814
1817
1815
   unsigned num_components = alu_instr_src_components(alu, src);
1818
   unsigned num_components = alu_instr_src_components(alu, src);
1816
   unsigned bit_size = nir_src_bit_size(alu->src[src].src);
1819
   unsigned bit_size = nir_src_bit_size(alu->src[src].src);
1817
   nir_alu_type type = nir_op_infos[alu->op].input_types[src];
1820
   nir_alu_type type = nir_op_infos[alu->op].input_types[src];
1818
1821
1819
   if (bit_size == 1)
1822
   if (bit_size == 1)
1820
      return raw_value;
1823
      return *raw_value;
1821
   else {
1824
   else {
1822
      switch (nir_alu_type_get_base_type(type)) {
1825
      switch (nir_alu_type_get_base_type(type)) {
1823
      case nir_type_bool:
1826
      case nir_type_bool:
1824
         unreachable("bool should have bit-size 1");
1827
         unreachable("bool should have bit-size 1");
1825
1828
1826
      case nir_type_int:
1829
      case nir_type_int:
1827
         return bitcast_to_ivec(ctx, raw_value, bit_size, num_components);
1830
         return bitcast_to_ivec(ctx, *raw_value, bit_size, num_components);
1828
1831
1829
      case nir_type_uint:
1832
      case nir_type_uint:
1830
         return raw_value;
1833
         return *raw_value;
1831
1834
1832
      case nir_type_float:
1835
      case nir_type_float:
1833
         return bitcast_to_fvec(ctx, raw_value, bit_size, num_components);
1836
         return bitcast_to_fvec(ctx, *raw_value, bit_size, num_components);
1834
1837
1835
      default:
1838
      default:
1836
         unreachable("unknown nir_alu_type");
1839
         unreachable("unknown nir_alu_type");
Lines 1905-1912 static void Link Here
1905
emit_alu(struct ntv_context *ctx, nir_alu_instr *alu)
1908
emit_alu(struct ntv_context *ctx, nir_alu_instr *alu)
1906
{
1909
{
1907
   SpvId src[NIR_MAX_VEC_COMPONENTS];
1910
   SpvId src[NIR_MAX_VEC_COMPONENTS];
1911
   SpvId raw_src[NIR_MAX_VEC_COMPONENTS];
1908
   for (unsigned i = 0; i < nir_op_infos[alu->op].num_inputs; i++)
1912
   for (unsigned i = 0; i < nir_op_infos[alu->op].num_inputs; i++)
1909
      src[i] = get_alu_src(ctx, alu, i);
1913
      src[i] = get_alu_src(ctx, alu, i, &raw_src[i]);
1910
1914
1911
   SpvId dest_type = get_dest_type(ctx, &alu->dest.dest,
1915
   SpvId dest_type = get_dest_type(ctx, &alu->dest.dest,
1912
                                   nir_op_infos[alu->op].output_type);
1916
                                   nir_op_infos[alu->op].output_type);
Lines 2083-2090 emit_alu(struct ntv_context *ctx, nir_alu_instr *alu) Link Here
2083
   BINOP(nir_op_uge, SpvOpUGreaterThanEqual)
2087
   BINOP(nir_op_uge, SpvOpUGreaterThanEqual)
2084
   BINOP(nir_op_flt, SpvOpFOrdLessThan)
2088
   BINOP(nir_op_flt, SpvOpFOrdLessThan)
2085
   BINOP(nir_op_fge, SpvOpFOrdGreaterThanEqual)
2089
   BINOP(nir_op_fge, SpvOpFOrdGreaterThanEqual)
2086
   BINOP(nir_op_feq, SpvOpFOrdEqual)
2087
   BINOP(nir_op_fneu, SpvOpFUnordNotEqual)
2088
   BINOP(nir_op_frem, SpvOpFRem)
2090
   BINOP(nir_op_frem, SpvOpFRem)
2089
#undef BINOP
2091
#undef BINOP
2090
2092
Lines 2149-2154 emit_alu(struct ntv_context *ctx, nir_alu_instr *alu) Link Here
2149
   case nir_op_sge:
2151
   case nir_op_sge:
2150
      unreachable("should already be lowered away");
2152
      unreachable("should already be lowered away");
2151
2153
2154
   case nir_op_fneu:
2155
      assert(nir_op_infos[alu->op].num_inputs == 2);
2156
      if (raw_src[0] == raw_src[1])
2157
         result =  emit_unop(ctx, SpvOpIsNan, dest_type, src[0]);
2158
      else
2159
         result = emit_binop(ctx, SpvOpFUnordNotEqual, dest_type, src[0], src[1]);
2160
      break;
2161
2162
   case nir_op_feq:
2163
      assert(nir_op_infos[alu->op].num_inputs == 2);
2164
      if (raw_src[0] == raw_src[1])
2165
         result =  emit_unop(ctx, SpvOpLogicalNot, dest_type,
2166
                             emit_unop(ctx, SpvOpIsNan, dest_type, src[0]));
2167
      else
2168
         result = emit_binop(ctx, SpvOpFOrdEqual, dest_type, src[0], src[1]);
2169
      break;
2170
2152
   case nir_op_flrp:
2171
   case nir_op_flrp:
2153
      assert(nir_op_infos[alu->op].num_inputs == 3);
2172
      assert(nir_op_infos[alu->op].num_inputs == 3);
2154
      result = emit_builtin_triop(ctx, GLSLstd450FMix, dest_type,
2173
      result = emit_builtin_triop(ctx, GLSLstd450FMix, dest_type,
(-)a/src/gallium/drivers/zink/zink_context.c (-1 / +10 lines)
Lines 3400-3408 zink_flush(struct pipe_context *pctx, Link Here
3400
   unsigned submit_count = 0;
3400
   unsigned submit_count = 0;
3401
3401
3402
   /* triggering clears will force has_work */
3402
   /* triggering clears will force has_work */
3403
   if (!deferred && ctx->clears_enabled)
3403
   if (!deferred && ctx->clears_enabled) {
3404
      /* if fbfetch outputs are active, disable them when flushing clears */
3405
      unsigned fbfetch_outputs = ctx->fbfetch_outputs;
3406
      if (fbfetch_outputs) {
3407
         ctx->fbfetch_outputs = 0;
3408
         ctx->rp_changed = true;
3409
      }
3404
      /* start rp to do all the clears */
3410
      /* start rp to do all the clears */
3405
      zink_batch_rp(ctx);
3411
      zink_batch_rp(ctx);
3412
      ctx->fbfetch_outputs = fbfetch_outputs;
3413
      ctx->rp_changed |= fbfetch_outputs > 0;
3414
   }
3406
3415
3407
   if (ctx->needs_present && (flags & PIPE_FLUSH_END_OF_FRAME)) {
3416
   if (ctx->needs_present && (flags & PIPE_FLUSH_END_OF_FRAME)) {
3408
      if (ctx->needs_present->obj->image)
3417
      if (ctx->needs_present->obj->image)
(-)a/src/gallium/drivers/zink/zink_device_info.py (-1 / +2 lines)
Lines 160-166 EXTENSIONS = [ Link Here
160
       conditions=["$feats.shaderSubgroupClock"]),
160
       conditions=["$feats.shaderSubgroupClock"]),
161
    Extension("VK_EXT_sampler_filter_minmax",
161
    Extension("VK_EXT_sampler_filter_minmax",
162
        alias="reduction",
162
        alias="reduction",
163
	properties=True),
163
        properties=True,
164
        conditions=["$props.filterMinmaxSingleComponentFormats"]),
164
    Extension("VK_EXT_custom_border_color",
165
    Extension("VK_EXT_custom_border_color",
165
        alias="border_color",
166
        alias="border_color",
166
        properties=True,
167
        properties=True,
(-)a/src/gallium/drivers/zink/zink_render_pass.c (+2 lines)
Lines 631-636 begin_render_pass(struct zink_context *ctx) Link Here
631
   infos.pAttachments = att;
631
   infos.pAttachments = att;
632
   if (!prep_fb_attachments(ctx, att))
632
   if (!prep_fb_attachments(ctx, att))
633
      return 0;
633
      return 0;
634
   /* this can be set if fbfetch is activated */
635
   ctx->rp_changed = false;
634
#ifndef NDEBUG
636
#ifndef NDEBUG
635
   const unsigned cresolve_offset = ctx->fb_state.nr_cbufs + !!ctx->fb_state.zsbuf;
637
   const unsigned cresolve_offset = ctx->fb_state.nr_cbufs + !!ctx->fb_state.zsbuf;
636
   for (int i = 0; i < ctx->fb_state.nr_cbufs; i++) {
638
   for (int i = 0; i < ctx->fb_state.nr_cbufs; i++) {
(-)a/src/gallium/drivers/zink/zink_screen.c (-1 / +1 lines)
Lines 683-689 zink_get_param(struct pipe_screen *pscreen, enum pipe_cap param) Link Here
683
      return screen->info.props.limits.maxTexelGatherOffset;
683
      return screen->info.props.limits.maxTexelGatherOffset;
684
684
685
   case PIPE_CAP_SAMPLER_REDUCTION_MINMAX_ARB:
685
   case PIPE_CAP_SAMPLER_REDUCTION_MINMAX_ARB:
686
      return screen->vk_version >= VK_MAKE_VERSION(1,2,0) || screen->info.have_EXT_sampler_filter_minmax;
686
      return screen->info.feats12.samplerFilterMinmax || screen->info.have_EXT_sampler_filter_minmax;
687
687
688
   case PIPE_CAP_FS_FINE_DERIVATIVE:
688
   case PIPE_CAP_FS_FINE_DERIVATIVE:
689
      return 1;
689
      return 1;
(-)a/src/gallium/drivers/zink/zink_state.c (-1 / +1 lines)
Lines 604-610 zink_create_rasterizer_state(struct pipe_context *pctx, Link Here
604
   }
604
   }
605
605
606
   if (!rs_state->line_stipple_enable) {
606
   if (!rs_state->line_stipple_enable) {
607
      state->base.line_stipple_factor = 0;
607
      state->base.line_stipple_factor = 1;
608
      state->base.line_stipple_pattern = UINT16_MAX;
608
      state->base.line_stipple_pattern = UINT16_MAX;
609
   }
609
   }
610
610
(-)a/src/gallium/frontends/va/image.c (-3 / +6 lines)
Lines 256-264 vlVaDeriveImage(VADriverContextP ctx, VASurfaceID surface, VAImage *image) Link Here
256
                                   PIPE_VIDEO_CAP_SUPPORTS_PROGRESSIVE))
256
                                   PIPE_VIDEO_CAP_SUPPORTS_PROGRESSIVE))
257
         return VA_STATUS_ERROR_OPERATION_FAILED;
257
         return VA_STATUS_ERROR_OPERATION_FAILED;
258
   } else {
258
   } else {
259
      for (i = 0; i < ARRAY_SIZE(derive_progressive_disallowlist); i++)
259
         if(!screen->get_video_param(screen, PIPE_VIDEO_PROFILE_UNKNOWN,
260
         if ((strcmp(derive_progressive_disallowlist[i], proc) == 0))
260
                                   PIPE_VIDEO_ENTRYPOINT_BITSTREAM,
261
            return VA_STATUS_ERROR_OPERATION_FAILED;
261
                                   PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP))
262
            for (i = 0; i < ARRAY_SIZE(derive_progressive_disallowlist); i++)
263
               if ((strcmp(derive_progressive_disallowlist[i], proc) == 0))
264
                  return VA_STATUS_ERROR_OPERATION_FAILED;
262
   }
265
   }
263
266
264
   surfaces = surf->buffer->get_surfaces(surf->buffer);
267
   surfaces = surf->buffer->get_surfaces(surf->buffer);
(-)a/src/gallium/include/pipe/p_video_enums.h (+4 lines)
Lines 105-110 enum pipe_video_cap Link Here
105
   PIPE_VIDEO_CAP_VPP_MAX_OUTPUT_HEIGHT = 23,
105
   PIPE_VIDEO_CAP_VPP_MAX_OUTPUT_HEIGHT = 23,
106
   PIPE_VIDEO_CAP_VPP_MIN_OUTPUT_WIDTH = 24,
106
   PIPE_VIDEO_CAP_VPP_MIN_OUTPUT_WIDTH = 24,
107
   PIPE_VIDEO_CAP_VPP_MIN_OUTPUT_HEIGHT = 25,
107
   PIPE_VIDEO_CAP_VPP_MIN_OUTPUT_HEIGHT = 25,
108
   /* If true, when mapping planar textures like NV12 or P016 the mapped buffer contains
109
   all the planes contiguously. This allows for use with some frontends functions that
110
   require this like vaDeriveImage */
111
   PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP = 27,
108
};
112
};
109
113
110
/* To be used with PIPE_VIDEO_CAP_VPP_ORIENTATION_MODES and for VPP state*/
114
/* To be used with PIPE_VIDEO_CAP_VPP_ORIENTATION_MODES and for VPP state*/
(-)a/src/gallium/targets/opencl/meson.build (-1 / +1 lines)
Lines 58-64 if can_check_clang Link Here
58
else
58
else
59
  dep_clang_usable = true
59
  dep_clang_usable = true
60
endif
60
endif
61
if not (dep_clang.found() and dep_clang_usable)
61
if not _shared_llvm or not (dep_clang.found() and dep_clang_usable)
62
  dep_clang = [
62
  dep_clang = [
63
    cpp.find_library('clangCodeGen', dirs : llvm_libdir),
63
    cpp.find_library('clangCodeGen', dirs : llvm_libdir),
64
    cpp.find_library('clangFrontendTool', dirs : llvm_libdir),
64
    cpp.find_library('clangFrontendTool', dirs : llvm_libdir),
(-)a/src/intel/ds/intel_tracepoints.py (-2 / +1 lines)
Lines 61-68 def define_tracepoints(args): Link Here
61
                 tp_args=[Arg(type='uint16_t', var='width', c_format='%hu'),
61
                 tp_args=[Arg(type='uint16_t', var='width', c_format='%hu'),
62
                          Arg(type='uint16_t', var='height', c_format='%hu'),
62
                          Arg(type='uint16_t', var='height', c_format='%hu'),
63
                          Arg(type='uint8_t', var='att_count', c_format='%hhu'),
63
                          Arg(type='uint8_t', var='att_count', c_format='%hhu'),
64
                          Arg(type='uint8_t', var='msaa', c_format='%hhu'),
64
                          Arg(type='uint8_t', var='msaa', c_format='%hhu'),])
65
                          Arg(type='uint32_t', var='subpass_count', c_format='%u'),])
66
65
67
    begin_end_tp('dyn_render_pass',
66
    begin_end_tp('dyn_render_pass',
68
                 tp_args=[Arg(type='uint16_t', var='width', c_format='%hu'),
67
                 tp_args=[Arg(type='uint16_t', var='width', c_format='%hu'),
(-)a/src/intel/vulkan/anv_descriptor_set.c (-2 / +2 lines)
Lines 784-791 VkResult anv_CreatePipelineLayout( Link Here
784
784
785
   assert(pCreateInfo->sType == VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO);
785
   assert(pCreateInfo->sType == VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO);
786
786
787
   layout = vk_object_alloc(&device->vk, pAllocator, sizeof(*layout),
787
   layout = vk_object_zalloc(&device->vk, pAllocator, sizeof(*layout),
788
                            VK_OBJECT_TYPE_PIPELINE_LAYOUT);
788
                             VK_OBJECT_TYPE_PIPELINE_LAYOUT);
789
   if (layout == NULL)
789
   if (layout == NULL)
790
      return vk_error(device, VK_ERROR_OUT_OF_HOST_MEMORY);
790
      return vk_error(device, VK_ERROR_OUT_OF_HOST_MEMORY);
791
791
(-)a/src/intel/vulkan/genX_cmd_buffer.c (+6 lines)
Lines 7182-7187 void genX(CmdEndRendering)( Link Here
7182
   }
7182
   }
7183
#endif
7183
#endif
7184
7184
7185
   trace_intel_end_render_pass(&cmd_buffer->trace,
7186
                               gfx->render_area.extent.width,
7187
                               gfx->render_area.extent.height,
7188
                               gfx->color_att_count,
7189
                               gfx->samples);
7190
7185
   anv_cmd_buffer_reset_rendering(cmd_buffer);
7191
   anv_cmd_buffer_reset_rendering(cmd_buffer);
7186
}
7192
}
7187
7193
(-)a/src/mesa/main/glthread_marshal.h (+39 lines)
Lines 509-514 _mesa_glthread_PushAttrib(struct gl_context *ctx, GLbitfield mask) Link Here
509
   if (ctx->GLThread.ListMode == GL_COMPILE)
509
   if (ctx->GLThread.ListMode == GL_COMPILE)
510
      return;
510
      return;
511
511
512
   if (ctx->GLThread.AttribStackDepth >= MAX_ATTRIB_STACK_DEPTH)
513
      return;
514
512
   struct glthread_attrib_node *attr =
515
   struct glthread_attrib_node *attr =
513
      &ctx->GLThread.AttribStack[ctx->GLThread.AttribStackDepth++];
516
      &ctx->GLThread.AttribStack[ctx->GLThread.AttribStackDepth++];
514
517
Lines 533-538 _mesa_glthread_PopAttrib(struct gl_context *ctx) Link Here
533
   if (ctx->GLThread.ListMode == GL_COMPILE)
536
   if (ctx->GLThread.ListMode == GL_COMPILE)
534
      return;
537
      return;
535
538
539
   if (ctx->GLThread.AttribStackDepth == 0)
540
      return;
541
536
   struct glthread_attrib_node *attr =
542
   struct glthread_attrib_node *attr =
537
      &ctx->GLThread.AttribStack[--ctx->GLThread.AttribStackDepth];
543
      &ctx->GLThread.AttribStack[--ctx->GLThread.AttribStackDepth];
538
   unsigned mask = attr->Mask;
544
   unsigned mask = attr->Mask;
Lines 552-563 _mesa_glthread_PopAttrib(struct gl_context *ctx) Link Here
552
   }
558
   }
553
}
559
}
554
560
561
static bool
562
is_matrix_stack_full(struct gl_context *ctx, gl_matrix_index idx)
563
{
564
   int max_stack_depth = 0;
565
   if (M_MODELVIEW == ctx->GLThread.MatrixIndex) {
566
      max_stack_depth = MAX_MODELVIEW_STACK_DEPTH;
567
   } else if (M_PROJECTION == ctx->GLThread.MatrixIndex) {
568
      max_stack_depth = MAX_PROJECTION_STACK_DEPTH;
569
   } else if (M_PROGRAM_LAST >= ctx->GLThread.MatrixIndex) {
570
      max_stack_depth = MAX_PROGRAM_MATRIX_STACK_DEPTH;
571
   } else if (M_TEXTURE_LAST >= ctx->GLThread.MatrixIndex) {
572
      max_stack_depth = MAX_TEXTURE_STACK_DEPTH;
573
   }
574
   assert(max_stack_depth);
575
576
   if (ctx->GLThread.MatrixStackDepth[idx] + 1 >= max_stack_depth)
577
      return true;
578
579
   return false;
580
}
581
555
static inline void
582
static inline void
556
_mesa_glthread_MatrixPushEXT(struct gl_context *ctx, GLenum matrixMode)
583
_mesa_glthread_MatrixPushEXT(struct gl_context *ctx, GLenum matrixMode)
557
{
584
{
558
   if (ctx->GLThread.ListMode == GL_COMPILE)
585
   if (ctx->GLThread.ListMode == GL_COMPILE)
559
      return;
586
      return;
560
587
588
   if (is_matrix_stack_full(ctx, _mesa_get_matrix_index(ctx, matrixMode)))
589
      return;
590
561
   ctx->GLThread.MatrixStackDepth[_mesa_get_matrix_index(ctx, matrixMode)]++;
591
   ctx->GLThread.MatrixStackDepth[_mesa_get_matrix_index(ctx, matrixMode)]++;
562
}
592
}
563
593
Lines 567-572 _mesa_glthread_MatrixPopEXT(struct gl_context *ctx, GLenum matrixMode) Link Here
567
   if (ctx->GLThread.ListMode == GL_COMPILE)
597
   if (ctx->GLThread.ListMode == GL_COMPILE)
568
      return;
598
      return;
569
599
600
   if (ctx->GLThread.MatrixStackDepth[_mesa_get_matrix_index(ctx, matrixMode)] == 0)
601
      return;
602
570
   ctx->GLThread.MatrixStackDepth[_mesa_get_matrix_index(ctx, matrixMode)]--;
603
   ctx->GLThread.MatrixStackDepth[_mesa_get_matrix_index(ctx, matrixMode)]--;
571
}
604
}
572
605
Lines 587-592 _mesa_glthread_PushMatrix(struct gl_context *ctx) Link Here
587
   if (ctx->GLThread.ListMode == GL_COMPILE)
620
   if (ctx->GLThread.ListMode == GL_COMPILE)
588
      return;
621
      return;
589
622
623
   if (is_matrix_stack_full(ctx, ctx->GLThread.MatrixIndex))
624
      return;
625
590
   ctx->GLThread.MatrixStackDepth[ctx->GLThread.MatrixIndex]++;
626
   ctx->GLThread.MatrixStackDepth[ctx->GLThread.MatrixIndex]++;
591
}
627
}
592
628
Lines 596-601 _mesa_glthread_PopMatrix(struct gl_context *ctx) Link Here
596
   if (ctx->GLThread.ListMode == GL_COMPILE)
632
   if (ctx->GLThread.ListMode == GL_COMPILE)
597
      return;
633
      return;
598
634
635
   if (ctx->GLThread.MatrixStackDepth[ctx->GLThread.MatrixIndex] == 0)
636
      return;
637
599
   ctx->GLThread.MatrixStackDepth[ctx->GLThread.MatrixIndex]--;
638
   ctx->GLThread.MatrixStackDepth[ctx->GLThread.MatrixIndex]--;
600
}
639
}
601
640
(-)a/src/mesa/vbo/vbo_exec_api.c (-2 / +6 lines)
Lines 855-861 _mesa_Begin(GLenum mode) Link Here
855
    * leave dlist.c's dispatch table in place.
855
    * leave dlist.c's dispatch table in place.
856
    */
856
    */
857
   if (ctx->GLThread.enabled) {
857
   if (ctx->GLThread.enabled) {
858
      ctx->CurrentServerDispatch = ctx->Exec;
858
      if (ctx->CurrentServerDispatch == ctx->OutsideBeginEnd)
859
         ctx->CurrentServerDispatch = ctx->Exec;
859
   } else if (ctx->CurrentClientDispatch == ctx->OutsideBeginEnd) {
860
   } else if (ctx->CurrentClientDispatch == ctx->OutsideBeginEnd) {
860
      ctx->CurrentClientDispatch = ctx->CurrentServerDispatch = ctx->Exec;
861
      ctx->CurrentClientDispatch = ctx->CurrentServerDispatch = ctx->Exec;
861
      _glapi_set_dispatch(ctx->CurrentClientDispatch);
862
      _glapi_set_dispatch(ctx->CurrentClientDispatch);
Lines 914-920 _mesa_End(void) Link Here
914
   ctx->Exec = ctx->OutsideBeginEnd;
915
   ctx->Exec = ctx->OutsideBeginEnd;
915
916
916
   if (ctx->GLThread.enabled) {
917
   if (ctx->GLThread.enabled) {
917
      ctx->CurrentServerDispatch = ctx->Exec;
918
      if (ctx->CurrentServerDispatch == ctx->BeginEnd ||
919
          ctx->CurrentServerDispatch == ctx->HWSelectModeBeginEnd) {
920
         ctx->CurrentServerDispatch = ctx->Exec;
921
      }
918
   } else if (ctx->CurrentClientDispatch == ctx->BeginEnd ||
922
   } else if (ctx->CurrentClientDispatch == ctx->BeginEnd ||
919
              ctx->CurrentClientDispatch == ctx->HWSelectModeBeginEnd) {
923
              ctx->CurrentClientDispatch == ctx->HWSelectModeBeginEnd) {
920
      ctx->CurrentClientDispatch = ctx->CurrentServerDispatch = ctx->Exec;
924
      ctx->CurrentClientDispatch = ctx->CurrentServerDispatch = ctx->Exec;
(-)a/src/panfrost/midgard/midgard_ra.c (-6 / +12 lines)
Lines 518-523 allocate_registers(compiler_context *ctx, bool *spilled) Link Here
518
                        }
518
                        }
519
                }
519
                }
520
520
521
                /* Anything read as 16-bit needs proper alignment to ensure the
522
                 * resulting code can be packed.
523
                 */
524
                mir_foreach_src(ins, s) {
525
                        unsigned src_size = nir_alu_type_get_type_size(ins->src_types[s]);
526
                        if (src_size == 16 && ins->src[s] < SSA_FIXED_MINIMUM)
527
                                min_bound[ins->src[s]] = MAX2(min_bound[ins->src[s]], 8);
528
                }
529
530
                /* Everything after this concerns only the destination, not the
531
                 * sources.
532
                 */
521
                if (ins->dest >= SSA_FIXED_MINIMUM) continue;
533
                if (ins->dest >= SSA_FIXED_MINIMUM) continue;
522
534
523
                unsigned size = nir_alu_type_get_type_size(ins->dest_type);
535
                unsigned size = nir_alu_type_get_type_size(ins->dest_type);
Lines 547-558 allocate_registers(compiler_context *ctx, bool *spilled) Link Here
547
                if (size == 16 && min_alignment[dest] != 4)
559
                if (size == 16 && min_alignment[dest] != 4)
548
                        min_bound[dest] = 8;
560
                        min_bound[dest] = 8;
549
561
550
                mir_foreach_src(ins, s) {
551
                        unsigned src_size = nir_alu_type_get_type_size(ins->src_types[s]);
552
                        if (src_size == 16 && ins->src[s] < SSA_FIXED_MINIMUM)
553
                                min_bound[ins->src[s]] = MAX2(min_bound[ins->src[s]], 8);
554
                }
555
556
                /* We don't have a swizzle for the conditional and we don't
562
                /* We don't have a swizzle for the conditional and we don't
557
                 * want to muck with the conditional itself, so just force
563
                 * want to muck with the conditional itself, so just force
558
                 * alignment for now */
564
                 * alignment for now */
(-)a/src/util/00-mesa-defaults.conf (+7 lines)
Lines 153-158 TODO: document the other workarounds. Link Here
153
            <option name="allow_glsl_builtin_variable_redeclaration" value="true" />
153
            <option name="allow_glsl_builtin_variable_redeclaration" value="true" />
154
        </application>
154
        </application>
155
155
156
        <application name="Exanima" executable="Exanima.exe">
157
            <option name="glsl_zero_init" value="true"/>
158
        </application>
159
156
        <application name="Full Bore" executable="fullbore">
160
        <application name="Full Bore" executable="fullbore">
157
            <option name="allow_glsl_builtin_variable_redeclaration" value="true" />
161
            <option name="allow_glsl_builtin_variable_redeclaration" value="true" />
158
        </application>
162
        </application>
Lines 831-836 TODO: document the other workarounds. Link Here
831
            <option name="radeonsi_zerovram" value="true" />
835
            <option name="radeonsi_zerovram" value="true" />
832
            <option name="radeonsi_clamp_div_by_zero" value="true" />
836
            <option name="radeonsi_clamp_div_by_zero" value="true" />
833
        </application>
837
        </application>
838
        <application name="Exanima" executable="Exanima.exe">
839
            <option name="radeonsi_zerovram" value="true"/>
840
        </application>
834
        <application name="Rocket League" executable="RocketLeague">
841
        <application name="Rocket League" executable="RocketLeague">
835
            <option name="radeonsi_zerovram" value="true" />
842
            <option name="radeonsi_zerovram" value="true" />
836
        </application>
843
        </application>
(-)a/src/virtio/virtio-gpu/virgl_hw.h (+1 lines)
Lines 603-608 struct virgl_caps_v2 { Link Here
603
        uint32_t max_shader_sampler_views;
603
        uint32_t max_shader_sampler_views;
604
        struct virgl_supported_format_mask supported_multisample_formats;
604
        struct virgl_supported_format_mask supported_multisample_formats;
605
        uint32_t max_const_buffer_size[6]; // PIPE_SHADER_TYPES
605
        uint32_t max_const_buffer_size[6]; // PIPE_SHADER_TYPES
606
        uint32_t max_uniform_block_size;
606
};
607
};
607
608
608
union virgl_caps {
609
union virgl_caps {
(-)a/src/vulkan/runtime/vk_pipeline_cache.c (-1 / +1 lines)
Lines 337-343 vk_pipeline_cache_lookup_object(struct vk_pipeline_cache *cache, Link Here
337
   if (object == NULL) {
337
   if (object == NULL) {
338
#ifdef ENABLE_SHADER_CACHE
338
#ifdef ENABLE_SHADER_CACHE
339
      struct disk_cache *disk_cache = cache->base.device->physical->disk_cache;
339
      struct disk_cache *disk_cache = cache->base.device->physical->disk_cache;
340
      if (disk_cache != NULL) {
340
      if (disk_cache != NULL && cache->object_cache != NULL) {
341
         cache_key cache_key;
341
         cache_key cache_key;
342
         disk_cache_compute_key(disk_cache, key_data, key_size, cache_key);
342
         disk_cache_compute_key(disk_cache, key_data, key_size, cache_key);
343
343
(-)a/src/vulkan/wsi/meson.build (-1 / +3 lines)
Lines 84-89 else Link Here
84
    # Instruct users of this library to link with --whole-archive.  Otherwise,
84
    # Instruct users of this library to link with --whole-archive.  Otherwise,
85
    # our weak function overloads may not resolve properly.
85
    # our weak function overloads may not resolve properly.
86
    link_whole : libvulkan_wsi,
86
    link_whole : libvulkan_wsi,
87
    dependencies : idep_vulkan_wsi_headers
87
    dependencies : [
88
      idep_vulkan_wsi_headers, dep_libudev
89
    ]
88
  )
90
  )
89
endif
91
endif

Return to bug 44472