From 5ba380c226b127cbfad00dd647471e1518ba2cb2 Mon Sep 17 00:00:00 2001 From: Ilia Mirkin Date: Mon, 2 Jan 2017 00:48:51 -0500 Subject: [PATCH] nvc0: enable FBFETCH with a special slot for color buffer 0 We don't need to support all the color buffers for advanced blend, just cb0. For Fermi, we use the special binding slots so that we don't overlap with user textures, while Kepler+ gets a dedicated position for the fb handle in the driver constbuf. This logic is only triggered when a FBFETCH is actually present so it should be a no-op most of the time. Signed-off-by: Ilia Mirkin --- docs/features.txt | 2 +- docs/relnotes/17.0.0.html | 1 + .../drivers/nouveau/codegen/nv50_ir_driver.h | 2 + .../drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp | 41 ++++++++++ .../nouveau/codegen/nv50_ir_lowering_nvc0.cpp | 20 ++++- src/gallium/drivers/nouveau/nvc0/nvc0_context.h | 4 + src/gallium/drivers/nouveau/nvc0/nvc0_program.c | 6 ++ src/gallium/drivers/nouveau/nvc0/nvc0_program.h | 1 + src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 9 ++- src/gallium/drivers/nouveau/nvc0/nvc0_screen.h | 2 + .../drivers/nouveau/nvc0/nvc0_state_validate.c | 93 +++++++++++++++++++++- 11 files changed, 174 insertions(+), 7 deletions(-) diff --git a/docs/features.txt b/docs/features.txt index dd40ac4..aff0016 100644 --- a/docs/features.txt +++ b/docs/features.txt @@ -253,7 +253,7 @@ GLES3.1, GLSL ES 3.1 -- all DONE: i965/hsw+, nvc0, radeonsi GLES3.2, GLSL ES 3.2 -- all DONE: i965/gen9+ GL_EXT_color_buffer_float DONE (all drivers) - GL_KHR_blend_equation_advanced DONE (i965) + GL_KHR_blend_equation_advanced DONE (i965, nvc0) GL_KHR_debug DONE (all drivers) GL_KHR_robustness DONE (i965, nvc0, radeonsi) GL_KHR_texture_compression_astc_ldr DONE (i965/gen9+) diff --git a/docs/relnotes/17.0.0.html b/docs/relnotes/17.0.0.html index b50f9e9..71fb4c3 100644 --- a/docs/relnotes/17.0.0.html +++ b/docs/relnotes/17.0.0.html @@ -45,6 +45,7 @@ Note: some of the new features are only available with certain drivers.