aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* vulkan/wsi: Add a driconf option to force WSI to advertise BGRA8_UNORM firstJason Ekstrand2020-01-149-8/+85
| | | | | | | | | | | The Aztec Ruins benchmark just grabs the first format in the list and SRGB causes it to render washed out. With this workaround, it renders the same as OpenGL. Reviewed-by: Lionel Landwerlin <[email protected]> Reviewed-by: Samuel Pitoiset <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3350> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3350>
* intel/fs: Only use SLM fence in compute shadersCaio Marcelo de Oliveira Filho2020-01-141-0/+3
| | | | | | | Fixes: b390ff35170 ("intel/fs: Add support for SLM fence in Gen11") Fixes: e142061399c ("intel/fs: Implement scoped_memory_barrier") Reviewed-by: Jason Ekstrand <[email protected]>
* radeonsi: actually enable VBOs in user SGPRsMarek Olšák2020-01-141-1/+1
| | | | | Fixes: 363b4027fcb - radeonsi: put up to 5 VBO descriptors into user SGPRs Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]>
* radeonsi: fix assertion and other failures in si_emit_graphics_shader_pointersMarek Olšák2020-01-141-3/+4
| | | | | | | The assertion was failing. Fixes: 363b4027fcb - radeonsi: put up to 5 VBO descriptors into user SGPRs Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]>
* nir/algebraic: a & ~(a >> 31) -> imax(a, 0)Rhys Perry2020-01-141-0/+1
| | | | | | | | | | | | | | | | | | Found in some Doom shaders Totals from affected shaders: SGPRS: 30056 -> 30064 (0.03 %) VGPRS: 28024 -> 28024 (0.00 %) Spilled SGPRs: 0 -> 0 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 4278648 -> 4270852 (-0.18 %) bytes Max Waves: 1476 -> 1476 (0.00 %) Instructions: 835287 -> 833338 (-0.23 %) Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3089> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3089>
* etnaviv: Fix assert when try to accumulate an invalid fdMarco Felsch2020-01-141-1/+2
| | | | | | | | | | Check if it is a valid fd before merging it to the context's fd. Signed-off-by: Marco Felsch <[email protected]> Signed-off-by: Lucas Stach <[email protected]> Reviewed-by: Jonathan Marek <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3381> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3381>
* pan/midgard: Fix midgard_compile.h includesAfonso Bordado2020-01-141-0/+1
| | | | | | | We now use enum mali_format which is defined in panfrost-job.h Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3243> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3243>
* anv: only use VkSamplerCreateInfo::compareOp if enabledLionel Landwerlin2020-01-141-1/+3
| | | | | | | | | | | | | | | The spec says nothing about the validity of the compareOp field when compareEnable is false. v2: use vulkan enum to pick default value (Caio) Signed-off-by: Lionel Landwerlin <[email protected]> Cc: <[email protected]> Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2350 Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3387> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3387>
* nir/sink,nir/move: move/sink nir_op_movRhys Perry2020-01-142-0/+6
| | | | | | | | | | | | | | | | Can uncover opportunities to move other instructions. This can increase register usage, but that doesn't seem to actually happen. This optimizes a pattern of a load_per_vertex_input followed by several moves and then a store_output in a different block. v2: add nir_move_copies to make it optional Signed-off-by: Rhys Perry <[email protected]> Acked-by: Jason Ekstrand <[email protected]> (v1) Acked-by: Rob Clark <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2420> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2420>
* nir/sink,nir/move: move/sink load_per_vertex_inputRhys Perry2020-01-141-1/+2
| | | | | | | Signed-off-by: Rhys Perry <[email protected]> Acked-by: Jason Ekstrand <[email protected]> Acked-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2420>
* aco: add integer min/max to can_swap_operandsRhys Perry2020-01-141-0/+4
| | | | | | Signed-off-by: Rhys Perry <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: improve readfirstlane after uniform LDS loadsRhys Perry2020-01-141-2/+5
| | | | | | | | | | | | | | Totals from affected shaders: SGPRS: 976 -> 968 (-0.82 %) VGPRS: 580 -> 584 (0.69 %) Spilled SGPRs: 0 -> 0 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 106032 -> 103076 (-2.79 %) bytes Max Waves: 237 -> 237 (0.00 %) Instructions: 19452 -> 18740 (-3.66 %) Signed-off-by: Rhys Perry <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: replace extract_vector with copiesRhys Perry2020-01-141-2/+34
| | | | | | | | | | | | | | | | | | | Helps a small number of small shaders with situations like this: a = p_create_vector ... b = p_extract_vector a, 3 and copy propagation can't be done Totals from affected shaders: SGPRS: 14304 -> 14416 (0.78 %) VGPRS: 8716 -> 6592 (-24.37 %) Spilled SGPRs: 0 -> 0 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 184664 -> 176888 (-4.21 %) bytes Max Waves: 6260 -> 6260 (0.00 %) Instructions: 35561 -> 33617 (-5.47 %) Signed-off-by: Rhys Perry <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: allow input modifiers on v_cndmask_b32Rhys Perry2020-01-141-1/+5
| | | | | | | | | | | | | | Totals from affected shaders: SGPRS: 594099 -> 594019 (-0.01 %) VGPRS: 441016 -> 441124 (0.02 %) Spilled SGPRs: 101 -> 101 (0.00 %) Spilled VGPRs: 18 -> 18 (0.00 %) Code Size: 30266652 -> 30125256 (-0.47 %) bytes Max Waves: 67044 -> 67057 (0.02 %) Instructions: 5753097 -> 5726607 (-0.46 %) Signed-off-by: Rhys Perry <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: don't move literal to reg when making an instruction VOP3 on GFX10Rhys Perry2020-01-141-1/+1
| | | | | | | | | | | | | | | | pipeline-db (Navi): Totals from affected shaders: SGPRS: 163398 -> 163398 (0.00 %) VGPRS: 143820 -> 143820 (0.00 %) Spilled SGPRs: 0 -> 0 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 13065744 -> 13044308 (-0.16 %) bytes Max Waves: 18921 -> 18921 (0.00 %) Instructions: 2514644 -> 2509285 (-0.21 %) Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: add min(-max(), ) and max(-min(), ) optimizationRhys Perry2020-01-141-1/+35
| | | | | | | | No pipeline-db changes. Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: improve clamp optimizationRhys Perry2020-01-141-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Not sure why it checked the use count, it doesn't apply the constants. pipeline-db (Navi): Totals from affected shaders: SGPRS: 269409 -> 269745 (0.12 %) VGPRS: 238120 -> 238132 (0.01 %) Spilled SGPRs: 305 -> 305 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 22908584 -> 22904672 (-0.02 %) bytes Max Waves: 20217 -> 20217 (0.00 %) Instructions: 4275312 -> 4263869 (-0.27 %) pipeline-db (Vega): Totals from affected shaders: SGPRS: 155409 -> 155233 (-0.11 %) VGPRS: 153072 -> 153072 (0.00 %) Spilled SGPRs: 269 -> 269 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 14650824 -> 14650396 (-0.00 %) bytes Max Waves: 9609 -> 9609 (0.00 %) Instructions: 2762802 -> 2755517 (-0.26 %) Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: fix clamp optimizationRhys Perry2020-01-141-7/+2
| | | | | | | | | | We can't do the optimization if there are neg/abs in-between. No pipeline-db changes. Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: improve creation of v_madmk_f32/v_madak_f32Rhys Perry2020-01-141-53/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using needs_vop3 check was flawed because it would only combine the literal if the first operand is the literal. If the second or third operand is the literal, then needs_vop3 will be true and the literal will not be combined. pipeline-db (Navi): Totals from affected shaders: SGPRS: 782051 -> 782051 (0.00 %) VGPRS: 630048 -> 630048 (0.00 %) Spilled SGPRs: 195 -> 195 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 54743740 -> 54585548 (-0.29 %) bytes Max Waves: 67340 -> 67340 (0.00 %) Instructions: 10182030 -> 10182030 (0.00 %) pipeline-db (Vega): Totals from affected shaders: SGPRS: 701990 -> 699590 (-0.34 %) VGPRS: 566632 -> 566784 (0.03 %) Spilled SGPRs: 218 -> 218 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 49173564 -> 49007856 (-0.34 %) bytes Max Waves: 59650 -> 59612 (-0.06 %) Instructions: 9315135 -> 9293330 (-0.23 %) Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: take advantage of GFX10's constant bus limit and VOP3 literalsRhys Perry2020-01-141-15/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | pipeline-db (Navi): Totals from affected shaders: SGPRS: 2397159 -> 2392494 (-0.19 %) VGPRS: 1756036 -> 1753920 (-0.12 %) Spilled SGPRs: 461 -> 470 (1.95 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 110287304 -> 109946304 (-0.31 %) bytes Max Waves: 318341 -> 318475 (0.04 %) Instructions: 21019327 -> 20533618 (-2.31 %) pipeline-db (Vega): Totals from affected shaders: SGPRS: 0 -> 0 (0.00 %) VGPRS: 0 -> 0 (0.00 %) Spilled SGPRs: 0 -> 0 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 0 -> 0 (0.00 %) bytes Max Waves: 0 -> 0 (0.00 %) Instructions: 0 -> 0 (0.00 %) Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: allow an extra SGPR with multiple uses to be applied to VOP3Rhys Perry2020-01-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is in a separate patch from the apply_sgprs() rewrite so that the rewrite can be more easily tested. pipeline-db (Navi): Totals from affected shaders: SGPRS: 3056 -> 3056 (0.00 %) VGPRS: 1632 -> 1632 (0.00 %) Spilled SGPRs: 0 -> 0 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 156468 -> 156304 (-0.10 %) bytes Max Waves: 288 -> 288 (0.00 %) Instructions: 29510 -> 29469 (-0.14 %) pipeline-db (Vega): Totals from affected shaders: SGPRS: 2984 -> 2984 (0.00 %) VGPRS: 1616 -> 1616 (0.00 %) Spilled SGPRs: 0 -> 0 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 156132 -> 155968 (-0.11 %) bytes Max Waves: 289 -> 289 (0.00 %) Instructions: 29426 -> 29385 (-0.14 %) Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: allow applying two sgprs to an instructionRhys Perry2020-01-141-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We could create VALU instructions which read two sgprs, but only if isel created an instruction which already read one of them. This change is in a separate patch from the apply_sgprs() rewrite so that it can be tested if the rewrite affected anything. pipeline-db (Navi): Totals from affected shaders: SGPRS: 216 -> 216 (0.00 %) VGPRS: 64 -> 64 (0.00 %) Spilled SGPRs: 0 -> 0 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 1756 -> 1708 (-2.73 %) bytes Max Waves: 120 -> 120 (0.00 %) Instructions: 312 -> 300 (-3.85 %) pipeline-db (Vega): Totals from affected shaders: SGPRS: 216 -> 216 (0.00 %) VGPRS: 64 -> 64 (0.00 %) Spilled SGPRs: 0 -> 0 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 1784 -> 1736 (-2.69 %) bytes Max Waves: 120 -> 120 (0.00 %) Instructions: 319 -> 307 (-3.76 %) Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: follow through temporary when merging tests into constant comparisonsRhys Perry2020-01-141-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This can happen with v_mov_b32(s_mov_b32(literal)) pipeline-db (Navi): Totals from affected shaders: SGPRS: 632 -> 632 (0.00 %) VGPRS: 492 -> 492 (0.00 %) Spilled SGPRs: 0 -> 0 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 77488 -> 76928 (-0.72 %) bytes Max Waves: 67 -> 67 (0.00 %) Instructions: 14426 -> 14332 (-0.65 %) pipeline-db (Vega): Totals from affected shaders: SGPRS: 632 -> 632 (0.00 %) VGPRS: 492 -> 492 (0.00 %) Spilled SGPRs: 0 -> 0 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 77512 -> 76952 (-0.72 %) bytes Max Waves: 67 -> 67 (0.00 %) Instructions: 14432 -> 14338 (-0.65 %) Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: be more careful with literals in combine_salu_{n2,lshl_add}Rhys Perry2020-01-141-0/+8
| | | | | | | | No pipeline-db changes. Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: add check_vop3_operands()Rhys Perry2020-01-141-24/+34
| | | | | | | | | | This will be useful when taking advantage of GFX10 features. No pipeline-db changes. Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: rewrite apply_sgprs()Rhys Perry2020-01-141-36/+51
| | | | | | | | | | | This will make it easier to apply two different sgprs (for GFX10) or apply the same sgpr twice (just remove the break). No pipeline-db changes. Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: rewrite literal combiningRhys Perry2020-01-141-75/+89
| | | | | | | | | | | Should make taking advantage of GFX10's increased constant bus limit and VOP3 literals easier. No pipeline-db changes Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: improve can_use_VOP3()Rhys Perry2020-01-141-0/+7
| | | | | | | | No pipeline-db changes Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: combine two sgprs into a VALU if they're the sameRhys Perry2020-01-141-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was supposed to be done before but it wasn't done correctly and everywhere. pipeline-db (Navi): Totals from affected shaders: SGPRS: 784680 -> 786128 (0.18 %) VGPRS: 574012 -> 573892 (-0.02 %) Spilled SGPRs: 461 -> 461 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 45477088 -> 45478172 (0.00 %) bytes Max Waves: 81294 -> 81277 (-0.02 %) Instructions: 8657970 -> 8622483 (-0.41 %) pipeline-db (Vega): Totals from affected shaders: SGPRS: 780664 -> 782072 (0.18 %) VGPRS: 573880 -> 573760 (-0.02 %) Spilled SGPRs: 629 -> 629 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 45445244 -> 45448340 (0.01 %) bytes Max Waves: 81178 -> 81161 (-0.02 %) Instructions: 8649902 -> 8614918 (-0.40 %) Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: apply literals to split madsRhys Perry2020-01-141-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removing the return is also needed to apply literals to mads (which can be done on GFX10). pipeline-db (Navi): Totals from affected shaders: SGPRS: 368787 -> 367555 (-0.33 %) VGPRS: 312436 -> 312448 (0.00 %) Spilled SGPRs: 461 -> 461 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 26113388 -> 26098260 (-0.06 %) bytes Max Waves: 35982 -> 35982 (0.00 %) Instructions: 5038670 -> 5028941 (-0.19 %) pipeline-db (Vega): Totals from affected shaders: SGPRS: 369843 -> 368659 (-0.32 %) VGPRS: 317224 -> 317196 (-0.01 %) Spilled SGPRs: 629 -> 629 (0.00 %) Spilled VGPRs: 0 -> 0 (0.00 %) Code Size: 26310540 -> 26295156 (-0.06 %) bytes Max Waves: 36324 -> 36326 (0.01 %) Instructions: 5073957 -> 5064164 (-0.19 %) Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* aco: update IR validatorRhys Perry2020-01-141-30/+41
| | | | | | | | GFX10 increased the constant bus limit and allowed literals on VOP3 Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2883>
* nir/lower_gs_intrinsics: add option for per-stream countsRhys Perry2020-01-143-16/+30
| | | | | | | Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2422> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2422>
* nir/divergence: handle load_primitive_id in GSRhys Perry2020-01-141-0/+2
| | | | | | | | Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2323> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2323>
* mesa/st: use float literalsErik Faye-Lund2020-01-141-4/+4
| | | | | | | This removes a warning on MSVC. Signed-off-by: Erik Faye-Lund <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* gallium: fix a warningErik Faye-Lund2020-01-141-1/+1
| | | | | | | | | | On some platforms (like Win64), unsigned long is 32-bit, so the first cast doesn't do anything, and the compiler complains about an implicit cast to a smaller type. So let's cast to an uintptr_t instead first, as that's large enough on all platforms. Signed-off-by: Erik Faye-Lund <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* st/wgl: eliminate implicit cast warningErik Faye-Lund2020-01-141-2/+4
| | | | | | | | I get warnings on MSVC for these implicit casts. Let's use explicit casts instead. Signed-off-by: Erik Faye-Lund <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* util: initialize float-array with float-literalsErik Faye-Lund2020-01-141-1/+1
| | | | | | | | | We currently initialize this float-array with double-literals. Some compilers generate warnings for this, so let's switch these to float-literals instead. Signed-off-by: Erik Faye-Lund <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* anv: Implement Gen12 workaround for non pipelined stateLionel Landwerlin2020-01-141-0/+27
| | | | | | | Signed-off-by: Lionel Landwerlin <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3365> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3365>
* iris: Implement Gen12 workaround for non pipelined stateLionel Landwerlin2020-01-141-0/+39
| | | | | | Signed-off-by: Lionel Landwerlin <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3365>
* lima: add new findings to texture descriptorVasily Khoruzhick2020-01-134-12/+47
| | | | | | | | | | | | | | | | | | | Lower 8 bits of unknown_1_3 seems to be min_lod, rest of 4 bits + miplevels are max_lod and min_mipfilter seems to be lod bias. All are in fixed format with 4 bit integer and 4 bit fraction, lod_bias also has sign bit. Blob also seems to do some magic with lod_bias if min filter is nearest -- it adds 0.5 to lod_bias in this case. Same story when all filters are nearest and mipmapping is enabled, but in this case it subtracts 1/16 from lod_bias. Fixes 134 dEQP tests in dEQP-GLES2.functional.texture.* Reviewed-by: Qiang Yu <[email protected]> Signed-off-by: Vasily Khoruzhick <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3359> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3359>
* intel: Use similar brand strings to the Windows driversKenneth Graunke2020-01-133-18/+18
| | | | | | | | | | | | | | | This updates our product name strings to match the ones reported by the Windows driver, which is typically the marketing name. We retain a platform abbreviation and GT level in parenthesis so that we're able to distinguish similar parts more easily, helping us better understand at a glance which GPU a bug reporter has. Acked-by: Matt Turner <[email protected]> Acked-by: Caio Marcelo de Oliveira Filho <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3371> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3371>
* iris: Simplify iris_get_renderer_string()Kenneth Graunke2020-01-131-11/+4
| | | | | | | | | We use gen_get_device_name() instead of PCI ID list munging. Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3371>
* i965: Simplify brw_get_renderer_string()Kenneth Graunke2020-01-131-20/+10
| | | | | | | | | | | | | | This stops using driGetRendererString() in favor of a simple snprintf(). This should have the same functionality on 64-bit systems, but drops a "x86/MMX/SSE2" suffix on 32-bit systems. (People shouldn't be using the GL_RENDERER string to check for CPU features...) We also use gen_get_device_name() instead of PCI ID list munging. Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3371>
* Revert "nir: assert that nir_lower_tex runs after lowering derefs"Kenneth Graunke2020-01-131-6/+0
| | | | | | | | | This reverts commit 4cda61f11e922fb5914ae73d22cc0c495abf0377 for now, as it appears to break i965 CI (32,000+ failures). Rob and I suspect we need to do the equivalent of 1c6a2efa06e9bb5914f4557118930fc61065a467 on i965 - we are doing nir_lower_tex and brw_nir_lower_resources in the wrong order and that's likely triggering this condition. Once we fix that, we should put this patch back.
* zink: fixup initialization of operand_mask / num_extra_operandsErik Faye-Lund2020-01-141-2/+2
| | | | | | This doesn't change behavior, but makes the code a bit easier to read. Both values are zero, but I somehow swapped the logical meaning of them when initializing.
* mesa: Fix detection of invalidating both depth and stencil.Eric Anholt2020-01-131-2/+3
| | | | | | | | | | | Fixes an extra 1024x1024x4 MSAA Z/S store on WebGL fishtank on cheza. Reported-by: Dave Airlie <[email protected]> Fixes: db2ae5112106 ("mesa: Skip partial InvalidateFramebuffer of packed depth/stencil.") Reviewed-by: Kristian H. Kristensen <[email protected]> Reviewed-by: Rob Clark <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3370> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3370>
* mesa/st: lower samplers before nir_lower_texRob Clark2020-01-131-0/+4
| | | | | | | | | | Fixes incorrect lowering of YUV samplers when there are non-yuv samplers. Signed-off-by: Rob Clark <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3368> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3368>
* nir: assert that nir_lower_tex runs after lowering derefsRob Clark2020-01-131-0/+6
| | | | | | | | | It isn't going to do the right thing, because texture_index/ sampler_index defaults to zero. Signed-off-by: Rob Clark <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3368>
* i965: support EXT_EGL_image_storageGurchetan Singh2020-01-132-0/+30
| | | | | | i965 can support this. Reviewed-by: Tapani Pälli <[email protected]>
* i965: refactor intel_image_target_texture_2dGurchetan Singh2020-01-131-4/+15
| | | | | | | intel_image_target_texture_tex_storage can reuse much of this code. Reviewed-by: Tapani Pälli <[email protected]>