9 Commits
Author SHA1 Message Date
elwrclandClaude Opus 5 e013642d5c nine: Gallium Nine'i Mesa 26.x'e forward-port et
Nine Mesa 25.2'de silindi. Bu commit onu 26.2 agacina geri getiriyor:
src/gallium/frontends/nine, src/gallium/targets/d3dadapter9, D3D9 ve
d3dadapter basliklari, meson entegrasyonu ve driconf secenekleri.

Silinmesinden sonra gallium'da degisen ve uyum gerektiren yerler:
  - mesa_shader_stage, enum pipe_shader_type'in yerini aldi
  - pipe_surface de-pointerize edildi, create_surface kalkti
  - u_upload_data/alloc artik referans vermiyor; _ref varyantlarina gecildi
  - threaded_context kullanici sabit tamponlarini yuklemiyor (MR 36715),
    tc_set_constant_buffer'da assert(!cb->user_buffer) var. SWVP ve
    fixed-function yollari icin nine_upload_constant_buffer() eklendi.
  - driParseConfigFiles struct API'sine gecti

Ayrica D3D9'un ugradigi ama GL frontend'inin hic gecmedigi uc yolda
surucu hatasi cikti; ucu de burada:

  crocus_query.c   PIPE_QUERY_GPU_FINISHED ele alinmiyordu
  crocus_clear.c   clear_render_target gelen pipe_surface'i crocus_surface'e
                   cast edip ->view okuyordu; Nine kendi surface'ini
                   uretiyor, format crocus_format_for_usage ile yeniden
                   turetiliyor
  tgsi_to_nir.c    TXD'de ddx/ddy bilesen sayisi kirpilmiyordu

Gercek donanimda dogrulandi (8086:0166, crocus, wine 11.0 +
wine-nine-standalone): Max Payne 2, The Witcher EE, Fallout New Vegas,
Warband, L4D1, PAYDAY: The Heist calisiyor.

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-09-21 22:57:20 +03:00
elwrclandClaude Opus 5 636d2c2f70 hasvk: Add host_image_copy, H.264 encode and a batch of gen7 fixes.
Squashed work that had been sitting in the working tree. Grouped by area:

Extensions
  VK_EXT_host_image_copy, with a MEMCPY_BIT path that reads and writes the
  image's own tiled layout, VkSubresourceHostMemcpySizeEXT filled in, and
  VkHostImageCopyDevicePerformanceQueryEXT answered.  Depth/stencil and
  non-power-of-two bpb stay NotSupported.
  VK_EXT_pipeline_robustness, VK_KHR_shader_float_controls2,
  VK_KHR_shader_subgroup_rotate, VK_EXT_vertex_input_dynamic_state,
  VK_EXT_conditional_rendering (an MI_PREDICATE path for gen7, which has no
  GPRs), custom_border_color, border_color_swizzle, map_memory2,
  load_store_op_none, depth_clamp_zero_one,
  dynamic_rendering_unused_attachments, index_type_uint8,
  line_rasterization, vertex_attribute_divisor, mutable_descriptor_type.

H.264 encode
  MFC command emission and a bitstream writer, driving intra-only encode
  through the video queue.  Video profile reporting was also corrected from
  270 combinations down to the 11 that actually exist.

Correctness
  gfx7 routes typed surface writes through the render cache, so
  VK_ACCESS_SHADER_WRITE barriers have to flush it -- without that, nothing a
  fragment shader stored was visible.
  nir_opt_algebraic's fadd->flrp fusion rules dropped signed zero; '~' only
  excludes nir_fp_exact, not preserve_signed_zero, so reflect() with a -0
  input came out wrong.  Guarded with (nsz).
  Stop advertising STORAGE_READ_WITHOUT_FORMAT: shaderStorageImageReadWithout-
  Format is false here, and since Vulkan 1.3 the per-format bit is what grants
  permission, so reporting it while rejecting the pipeline is a contradiction.
  gfx7's typed data port ignores SURFTYPE_NULL -- the null surface still has
  one addressable texel, which read and wrote graphics address zero.  Bounds
  check typed image access against the image param when nullDescriptor is
  enabled, the same trick lower_image_atomic_instr already used on IVB.
  Formats that require a sampler Y'CbCr conversion no longer report
  BLIT_SRC/BLIT_DST/STORAGE_IMAGE.  Video decode does not need them.
  Check the surface state allocations in emit_binding_table() and in the push
  descriptor path instead of writing through a NULL map in release builds.

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-08-09 00:32:40 +03:00
elwrcl 7e82b85d19 wip: crocus/rusticl/elk/hasvk local changes before h264 cherry-pick 2026-07-21 14:26:36 +03:00
elwrcl cf415dfa4f i hate this thing 2026-06-11 00:07:44 +03:00
elwrcl 04d4dc8b09 its happening 2026-06-06 13:13:41 +03:00
elwrcl 37c13b4907 uhh2 2026-06-05 21:44:11 +03:00
elwrcl 9e75b7c917 uhh 2026-06-05 21:33:26 +03:00
elwrcl 575726804c Mesa commit hash 2026-06-05 21:14:28 +03:00
elwrcl 2ce45ccdfd Init 2026-06-05 20:59:31 +03:00