aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* lima/parser: Extend rsw parsing showing strings instead of numbersAndreas Baierl2020-02-142-22/+131
| | | | | | | Reviewed-by: Vasily Khoruzhick <[email protected]> Signed-off-by: Andreas Baierl <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3807> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3807>
* radeonsi: don't wait for shader compilation to finish when destroying a contextMarek Olšák2020-02-141-3/+0
| | | | | | | | | | | | This was a hack for glsl_types deinitialization and it predates the proper fix, which was the addition of glsl_type_singleton_decref. This fixes a crash when the context is destroyed via the atexit handler. Cc: 19.3 20.0 <[email protected]> Reviewed-by: Timothy Arceri <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3800> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3800>
* freedreno/a6xx: document some unknown bitsJonathan Marek2020-02-141-1/+1
| | | | | | | Signed-off-by: Jonathan Marek <[email protected]> Reviewed-by: Rob Clark <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3814> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3814>
* freedreno: name sysmem color/depth flush eventsJonathan Marek2020-02-145-12/+12
| | | | | | | Signed-off-by: Jonathan Marek <[email protected]> Reviewed-by: Connor Abbott <[email protected]> Reviewed-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3814>
* panfrost: Simplify swizzle translationAlyssa Rosenzweig2020-02-141-32/+5
| | | | | | | | | It lines up anyway, and Gallium shouldn't change this. (And if it does, we'll deal with that then since CI would start failing.) Signed-off-by: Alyssa Rosenzweig <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3824> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3824>
* panfrost: Inline panfrost_get_default_swizzleIcecream952020-02-145-20/+23
| | | | | | | | | | | This commit replaces panfrost_get_default_swizzle with an inlined implementation where the returned values can be determined at compile time. According to perf, this previously used about 2% CPU for Openarena. Reviewed-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3824>
* zink: do not use SpvDimRectErik Faye-Lund2020-02-142-2/+2
| | | | | | | | Vulkan doesn't support SpvDimRect. But we don't need to pass this at all, as we already mark the sampler as un-normalized. Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3764> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3764>
* lima: handle early-z and pixel kill betterVasily Khoruzhick2020-02-141-5/+19
| | | | | | | | | | | | | | | | | | [1] calls bit 12 of aux0 'pixel kill' which is likely forward pixel kill described in [2]. Blob sets this bit if early-z is enabled and blending is disabled and colormask is RGBA. Bit 8 seems to be always enabled with bit 9 (early-z). Let's mimic blob behavior. [1] https://web.archive.org/web/20171026123213/http://limadriver.org/Render_State/ [2] https://community.arm.com/developer/tools-software/graphics/b/blog/posts/killing-pixels---a-new-optimization-for-shading-on-arm-mali-gpus Reviewed-by: Andreas Baierl <[email protected]> Signed-off-by: Vasily Khoruzhick <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3754> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3754>
* freedreno: allow INVALID modifierRob Clark2020-02-131-0/+1
| | | | | | | | | | | | | Re-allow INVALID modifier in import path. The legacy import path (createImageFromFds()), which is used by android, uses the INVALID modifier. Previously we would ignore this and just setup the imported buffer as linear. Restore this behavior to unbreak the legacy import path. Fixes: 9891062642a freedreno/a6xx: Implement layout for DRM_FORMAT_MOD_QCOM_COMPRESSED Signed-off-by: Rob Clark <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3817> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3817>
* freedreno/a6xx: fix Z24_UNORM_S8_UINT_AS_R8G8B8A8Jonathan Marek2020-02-131-1/+1
| | | | | | | | | | | | | | | CI didn't run so missed this. Note previously had : texfmt = TFMT6_Z24_UNORM_S8_UINT rbfmt = RB6_Z24_UNORM_S8_UINT_AS_R8G8B8A8 which are both now FMT6_Z24_UNORM_S8_UINT_AS_R8G8B8A8 Fixes: 18786cc7d55 ("freedreno/a6xx: use single format enum") Signed-off-by: Jonathan Marek <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3804>
* iris: add support INTEL_blackhole_renderLionel Landwerlin2020-02-134-0/+69
| | | | | | | | | | | | | | | v2: Use a software mechanism to manage blackhole state v3: s/iris_batchbuffer/iris_batch/ (Ken) v4: Fixup state transition mistake (Ken/Lionel) v5: Cleanup iris_batch_flush (Ken) Signed-off-by: Lionel Landwerlin <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2964> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2964>
* st: add support for INTEL_blackhole_renderLionel Landwerlin2020-02-133-0/+17
| | | | | | | | | | | | | | | | Adding a new CSO proved to be fairly difficult especially because this extension affect draw/dispatch/blit alike. Instead this change passes the state of the noop into the entry points emitting the operations affected. v2: Fix assert in default pipe caps v3: Drop whitespace changes (Ken) Signed-off-by: Lionel Landwerlin <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/2964>
* Revert "st/va: Convert interlaced NV12 to progressive"Thong Thai2020-02-131-51/+4
| | | | | | | | | | | This reverts commit 2add63060b51ea2ae432d10e1bd52d6cc0a4dcbb. Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2454 Fixes: 2add63060b51 "st/va: Convert interlaced NV12 to progressive" Signed-off-by: Thong Thai <[email protected]> Acked-by: Leo Liu <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3815> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3815>
* gallium/swr: fix rdtsc debug statistics mechanismKrzysztof Raszkowski2020-02-139-58/+44
| | | | | | Reviewed-by: Jan Zielinski <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3812> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3812>
* iris: fix aux buf map failure in 32bits app on AndroidTapani Pälli2020-02-131-8/+9
| | | | | | | | | Cc: [email protected] Reported-by: Zhifang Long <[email protected]> Signed-off-by: Tapani Pälli <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3784> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3784>
* radeonsi: make si_fence_server_signal flush pipe without workPeng Huang2020-02-121-0/+4
| | | | | | | | | | | glSignalSemaphoreEXT sometime doesn't signal the semaphore, it is because radeonsi doesn't flush if gl context doesn't have pending work. Fix the porblem by always submit ib. Reviewed-by: Marek Olšák <[email protected]> Cc: 19.3 20.0 <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3779> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3779>
* freedreno/a6xx: use single format enumJonathan Marek2020-02-129-377/+361
| | | | | | | | | | | | | | | Loses some information about which formats can be used in which cases, but we encode that information in the format table anyway. Important notes: * RB6_R10G10B10A2_UNORM becomes FMT6_R10G10B10A2_UNORM_DEST * TFMT6_8_8_8_UNORM becomes FMT6_8_8_8_X8_UNORM (not FMT6_8_8_8_UNORM) Signed-off-by: Jonathan Marek <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Kristian H. Kristensen <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3798> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3798>
* Rename nir_lower_constant_initializers to nir_lower_variable_initalizersArcady Goldmints-Orlov2020-02-121-2/+2
| | | | | | | | | This is naming is more clear as nir_variables can be initializes not just with a nir_constant but with a pointer to another nir_variable. Reviewed-by: Caio Marcelo de Oliveira Filho <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3047> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3047>
* radeon/vce: Move global function pointer si_get_pic_param to local encoder ↵Veerabadhran2020-02-125-9/+6
| | | | | | | | | | structure Multi gpu use case broken when the function was global Reviewed-by: Leo Liu <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3731> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3731>
* radeonsi: don't update states for the DCC MSAA bug on GFX6-7Marek Olšák2020-02-101-2/+2
| | | | | | Reviewed-by: Bas Nieuwenhuizen <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3646> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3646>
* radeonsi: fix the DCC MSAA bug workaroundMarek Olšák2020-02-101-1/+1
| | | | | | Cc: 19.3 20.0 <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3646>
* r600/sfn: Add some documentationGert Wollny2020-02-101-0/+69
| | | | | | Signed-off-by: Gert Wollny <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add .editorconfig fileGert Wollny2020-02-101-0/+2
| | | | | Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add support for SSBO load and storeGert Wollny2020-02-103-0/+99
| | | | | Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add support for atomic instructionsGert Wollny2020-02-106-0/+228
| | | | | | | v2: fix compilation with gcc-6 Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600: Make sure LLVM is not used for DRAWGert Wollny2020-02-101-0/+5
| | | | | | | | | For some reasone that is not yet clear the piglit gl-1.0-rendermode-feedback makes use of the LLVM pipe draw module and fails there with an assertion. Explicietly disabling LLVM fixes this. Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add lowering UBO access to r600 specific codesGert Wollny2020-02-102-2/+105
| | | | | | | | | | r600 reads vec4 from the UBO, but the offsets in nir are evaluated to the component. If the offsets are not literal then all non-vec4 reads must resolve the component after reading a vec4 component (TODO: figure out whether there is a consistent way to deduct the component that is actually read). Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add GDS instructionsGert Wollny2020-02-104-0/+504
| | | | | Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add compute shader skeletonGert Wollny2020-02-107-0/+223
| | | | | | | | | | | This adds some very basic compute shader support. v2: fix compilation with gcc-6 v3: rebase: correct barrier intrinstic Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add VS for TCS shader skeletonGert Wollny2020-02-102-0/+27
| | | | | | | This adds the VS shader type that handles the output to tesselation shaders Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add support for geometry shaderGert Wollny2020-02-107-1/+459
| | | | | | | v2: fix compilation with gcc-6 Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: add emitVertex instructionsGert Wollny2020-02-103-0/+45
| | | | | | | More preparation for GS support Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add MemRingOut instructionsGert Wollny2020-02-103-1/+143
| | | | | | | Preparing support for Geometry shaders. Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add a load GDS result instructionGert Wollny2020-02-102-0/+32
| | | | | | | This is required to read results for atomic SSBO instructions Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add lowering arrays to scratch and according instructionsGert Wollny2020-02-1010-4/+281
| | | | | | | | | Make use of the scratch space for arrays that are larger then 100 elements. Since for IO r600 is vector based, there is a bit of a scratch space waste here for arrays that use types smaller then vec4. Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: add register remappingGert Wollny2020-02-1012-0/+171
| | | | | | | | | Make use of the live range evaluation to merge registers. Since the live ranges are evaluated for register indices, the algorithm is not optimal, but for most piglits up to glsl-3.3 it does the job. Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: add live range evaluation for the GPRGert Wollny2020-02-1013-1/+1571
| | | | | | | | The algoritm is basically a copy of the TGSI implementation without the array bits. Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add the WaitAck instructionGert Wollny2020-02-106-0/+115
| | | | | Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add the VS in and FS out vectorizationGert Wollny2020-02-107-0/+977
| | | | | | | | | Since the nir default implementation doesn't support vectorizing the VS inputs and FS outputs, additional lowering passes are added here to do just that. The work is based on the Timothy Arceri's related work. Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600: enable NIR backend DEBUG flag for supported architecturesGert Wollny2020-02-103-27/+115
| | | | | | | | When NIR is enabled, a few features that are not yet supported will be explicitely disabled. Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600/sfn: Add a basic nir shader backendGert Wollny2020-02-1047-6/+12955
| | | | | | | | | | | | | This commit adds support for vertex and fragment shaders from NIR, and support for most TEX and ALU instructions. Thanks Dave Airlied for adding support for a number of ALU instructions. v2: fix compilation with gcc-6 v3: rebase: use mesa/core glsl_type_size function Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600: Update state code to accept NIR shadersGert Wollny2020-02-104-24/+67
| | | | | | | v2: Correct commit message (Konstantin Kharlamov) Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600: Add NIR compiler optionsGert Wollny2020-02-101-0/+29
| | | | | Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600: Increase space for IO values to agree with PIPE_MAX_SHADER_IN/OUTPUTSGert Wollny2020-02-101-2/+2
| | | | | Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* r600: force new CF with TEX only if any texture value is writtenGert Wollny2020-02-101-1/+3
| | | | | | | This works aound splitting the CF when the gradient is set. Signed-off-by: Gert Wollny <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3225>
* svga: Use pipe_shader_state_from_tgsi to set shader stateNeha Bhende2020-02-101-1/+1
| | | | | | | | | | | | Use pipe_shader_state_from_tgsi() to set shader state for transformed shader so that we get all correct data for respective shader state. This fixes several regressed glretrace, piglit crashes found during merging upsteam mesa Fixes: bf12bc2dd7a2 (draw: add nir info gathering and building support) Reviewed-by: Charmaine Lee <[email protected]>
* svga: fix size of format_conversion_table[]Neha Bhende2020-02-101-0/+2
| | | | | | | | | | Since we are now using sparse matrix for format_conversion_table, we have to make sure we have last entry in table which gives the sense of required size of format_conversion_table Fixes: 84db6ba7 ("svga: Drop unsupported formats from the format table") Reviewed-by: Charmaine Lee <[email protected]>
* gallium/swr: simplify environmental variabled expansion codeKrzysztof Raszkowski2020-02-101-29/+0
| | | | | | | | | | There were 2 versions of code doing the same thing. Since std::regexp are locale-sensitive better is to leave old good way to do this. Reviewed-by: Jan Zielinski <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3761> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3761>
* zink: only inspect dual-src limit if feature enabledErik Faye-Lund2020-02-101-0/+2
| | | | | Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3689> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3689>
* zink: emit blend-target indexErik Faye-Lund2020-02-103-0/+11
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3689>