~mmach/netext73/mesa-haswell

« back to all changes in this revision

Viewing changes to src/gallium/drivers/nouveau/nv30/nv30_screen.c

  • Committer: mmach
  • Date: 2022-09-22 20:02:48 UTC
  • Revision ID: netbit73@gmail.com-20220922200248-7y4wybmdgipuwdiw
2022-09-22 21:17:09

Show diffs side-by-side

added added

removed removed

Lines of Context:
96
96
   case PIPE_CAP_FS_COORD_PIXEL_CENTER_INTEGER:
97
97
   case PIPE_CAP_TGSI_TEXCOORD:
98
98
   case PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT:
 
99
   case PIPE_CAP_CLEAR_SCISSORED:
99
100
   case PIPE_CAP_VERTEX_BUFFER_OFFSET_4BYTE_ALIGNED_ONLY:
100
101
   case PIPE_CAP_VERTEX_BUFFER_STRIDE_4BYTE_ALIGNED_ONLY:
101
102
   case PIPE_CAP_VERTEX_ELEMENT_SRC_OFFSET_4BYTE_ALIGNED_ONLY:
124
125
   case PIPE_CAP_MAX_DUAL_SOURCE_RENDER_TARGETS:
125
126
   case PIPE_CAP_FRAGMENT_SHADER_TEXTURE_LOD:
126
127
   case PIPE_CAP_FRAGMENT_SHADER_DERIVATIVES:
127
 
   case PIPE_CAP_VERTEX_SHADER_SATURATE:
128
128
   case PIPE_CAP_INDEP_BLEND_ENABLE:
129
129
   case PIPE_CAP_INDEP_BLEND_FUNC:
130
130
   case PIPE_CAP_MAX_TEXTURE_ARRAY_LAYERS:
159
159
   case PIPE_CAP_TEXTURE_BUFFER_OFFSET_ALIGNMENT:
160
160
   case PIPE_CAP_QUERY_PIPELINE_STATISTICS:
161
161
   case PIPE_CAP_TEXTURE_BORDER_COLOR_QUIRK:
162
 
   case PIPE_CAP_MAX_TEXTURE_BUFFER_SIZE:
 
162
   case PIPE_CAP_MAX_TEXEL_BUFFER_ELEMENTS_UINT:
163
163
   case PIPE_CAP_MIXED_FRAMEBUFFER_SIZES:
164
164
   case PIPE_CAP_VS_LAYER_VIEWPORT:
165
165
   case PIPE_CAP_MAX_TEXTURE_GATHER_COMPONENTS:
218
218
   case PIPE_CAP_SHADER_ARRAY_COMPONENTS:
219
219
   case PIPE_CAP_SHADER_CAN_READ_OUTPUTS:
220
220
   case PIPE_CAP_NATIVE_FENCE_FD:
221
 
   case PIPE_CAP_GLSL_OPTIMIZE_CONSERVATIVELY:
222
221
   case PIPE_CAP_FBFETCH:
223
 
   case PIPE_CAP_TGSI_MUL_ZERO_WINS:
 
222
   case PIPE_CAP_LEGACY_MATH_RULES:
224
223
   case PIPE_CAP_DOUBLES:
225
224
   case PIPE_CAP_INT64:
226
225
   case PIPE_CAP_INT64_DIVMOD:
260
259
 
261
260
   case PIPE_CAP_MAX_GS_INVOCATIONS:
262
261
      return 32;
263
 
   case PIPE_CAP_MAX_SHADER_BUFFER_SIZE:
 
262
   case PIPE_CAP_MAX_SHADER_BUFFER_SIZE_UINT:
264
263
      return 1 << 27;
265
264
   case PIPE_CAP_VENDOR_ID:
266
265
      return 0x10de;
340
339
      case PIPE_SHADER_CAP_MAX_INPUTS:
341
340
      case PIPE_SHADER_CAP_MAX_OUTPUTS:
342
341
         return 16;
343
 
      case PIPE_SHADER_CAP_MAX_CONST_BUFFER_SIZE:
 
342
      case PIPE_SHADER_CAP_MAX_CONST_BUFFER0_SIZE:
344
343
         return ((eng3d->oclass >= NV40_3D_CLASS) ? (468 - 6): (256 - 6)) * sizeof(float[4]);
345
344
      case PIPE_SHADER_CAP_MAX_CONST_BUFFERS:
346
345
         return 1;
347
346
      case PIPE_SHADER_CAP_MAX_TEMPS:
348
347
         return (eng3d->oclass >= NV40_3D_CLASS) ? 32 : 13;
349
 
      case PIPE_SHADER_CAP_MAX_UNROLL_ITERATIONS_HINT:
350
 
         return 32;
351
348
      case PIPE_SHADER_CAP_PREFERRED_IR:
352
349
         return (NOUVEAU_DEBUG & NOUVEAU_DEBUG_USE_TGSI) ? PIPE_SHADER_IR_TGSI : PIPE_SHADER_IR_NIR;
353
350
      case PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERS:
354
351
      case PIPE_SHADER_CAP_MAX_SAMPLER_VIEWS:
355
352
         return 0;
356
 
      case PIPE_SHADER_CAP_TGSI_CONT_SUPPORTED:
 
353
      case PIPE_SHADER_CAP_CONT_SUPPORTED:
357
354
      case PIPE_SHADER_CAP_TGSI_SQRT_SUPPORTED:
358
355
      case PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR:
359
356
      case PIPE_SHADER_CAP_INDIRECT_OUTPUT_ADDR:
367
364
      case PIPE_SHADER_CAP_FP16_CONST_BUFFERS:
368
365
      case PIPE_SHADER_CAP_INT16:
369
366
      case PIPE_SHADER_CAP_GLSL_16BIT_CONSTS:
370
 
      case PIPE_SHADER_CAP_TGSI_DROUND_SUPPORTED:
371
 
      case PIPE_SHADER_CAP_TGSI_DFRACEXP_DLDEXP_SUPPORTED:
372
 
      case PIPE_SHADER_CAP_TGSI_LDEXP_SUPPORTED:
373
 
      case PIPE_SHADER_CAP_TGSI_FMA_SUPPORTED:
 
367
      case PIPE_SHADER_CAP_DROUND_SUPPORTED:
 
368
      case PIPE_SHADER_CAP_DFRACEXP_DLDEXP_SUPPORTED:
 
369
      case PIPE_SHADER_CAP_LDEXP_SUPPORTED:
374
370
      case PIPE_SHADER_CAP_TGSI_ANY_INOUT_DECL_RANGE:
375
371
      case PIPE_SHADER_CAP_MAX_SHADER_BUFFERS:
376
372
      case PIPE_SHADER_CAP_MAX_SHADER_IMAGES:
377
 
      case PIPE_SHADER_CAP_LOWER_IF_THRESHOLD:
378
 
      case PIPE_SHADER_CAP_TGSI_SKIP_MERGE_REGISTERS:
379
373
      case PIPE_SHADER_CAP_MAX_HW_ATOMIC_COUNTERS:
380
374
      case PIPE_SHADER_CAP_MAX_HW_ATOMIC_COUNTER_BUFFERS:
381
375
         return 0;
399
393
         return 8; /* should be possible to do 10 with nv4x */
400
394
      case PIPE_SHADER_CAP_MAX_OUTPUTS:
401
395
         return 4;
402
 
      case PIPE_SHADER_CAP_MAX_CONST_BUFFER_SIZE:
 
396
      case PIPE_SHADER_CAP_MAX_CONST_BUFFER0_SIZE:
403
397
         return ((eng3d->oclass >= NV40_3D_CLASS) ? 224 : 32) * sizeof(float[4]);
404
398
      case PIPE_SHADER_CAP_MAX_CONST_BUFFERS:
405
399
         return 1;
408
402
      case PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERS:
409
403
      case PIPE_SHADER_CAP_MAX_SAMPLER_VIEWS:
410
404
         return 16;
411
 
      case PIPE_SHADER_CAP_MAX_UNROLL_ITERATIONS_HINT:
412
 
         return 32;
413
405
      case PIPE_SHADER_CAP_PREFERRED_IR:
414
406
         return (NOUVEAU_DEBUG & NOUVEAU_DEBUG_USE_TGSI) ? PIPE_SHADER_IR_TGSI : PIPE_SHADER_IR_NIR;
415
 
      case PIPE_SHADER_CAP_TGSI_CONT_SUPPORTED:
 
407
      case PIPE_SHADER_CAP_CONT_SUPPORTED:
416
408
      case PIPE_SHADER_CAP_TGSI_SQRT_SUPPORTED:
417
409
      case PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR:
418
410
      case PIPE_SHADER_CAP_INDIRECT_OUTPUT_ADDR:
425
417
      case PIPE_SHADER_CAP_FP16_CONST_BUFFERS:
426
418
      case PIPE_SHADER_CAP_INT16:
427
419
      case PIPE_SHADER_CAP_GLSL_16BIT_CONSTS:
428
 
      case PIPE_SHADER_CAP_TGSI_DROUND_SUPPORTED:
429
 
      case PIPE_SHADER_CAP_TGSI_DFRACEXP_DLDEXP_SUPPORTED:
430
 
      case PIPE_SHADER_CAP_TGSI_LDEXP_SUPPORTED:
431
 
      case PIPE_SHADER_CAP_TGSI_FMA_SUPPORTED:
 
420
      case PIPE_SHADER_CAP_DROUND_SUPPORTED:
 
421
      case PIPE_SHADER_CAP_DFRACEXP_DLDEXP_SUPPORTED:
 
422
      case PIPE_SHADER_CAP_LDEXP_SUPPORTED:
432
423
      case PIPE_SHADER_CAP_TGSI_ANY_INOUT_DECL_RANGE:
433
424
      case PIPE_SHADER_CAP_MAX_SHADER_BUFFERS:
434
425
      case PIPE_SHADER_CAP_MAX_SHADER_IMAGES:
435
 
      case PIPE_SHADER_CAP_LOWER_IF_THRESHOLD:
436
 
      case PIPE_SHADER_CAP_TGSI_SKIP_MERGE_REGISTERS:
437
426
      case PIPE_SHADER_CAP_MAX_HW_ATOMIC_COUNTERS:
438
427
      case PIPE_SHADER_CAP_MAX_HW_ATOMIC_COUNTER_BUFFERS:
439
428
         return 0;
504
493
   .lower_rotate = true,
505
494
   .lower_uniforms_to_ubo = true,
506
495
   .lower_vector_cmp = true,
 
496
   .force_indirect_unrolling = nir_var_all,
 
497
   .force_indirect_unrolling_sampler = true,
507
498
   .max_unroll_iterations = 32,
 
499
   .no_integers = true,
508
500
 
509
501
   .use_interpolated_input_intrinsics = true,
510
502
};