summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* ac: rename and move si_const_array into common codeMarek Olšák2018-01-273-18/+9
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* ac: move address space definitions to common codeMarek Olšák2018-01-271-8/+3
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* ac: don't use byval LLVM qualifier in shadersMarek Olšák2018-01-273-15/+5
| | | | | | | shader-db doesn't show any regression and 32-bit pointers with byval are declared as VGPRs for some reason. Reviewed-by: Samuel Pitoiset <[email protected]>
* gallium/radeon: set number of pb_cache buckets = number of heapsMarek Olšák2018-01-275-53/+25
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* pb_cache: let drivers choose the number of bucketsMarek Olšák2018-01-277-11/+28
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* pb_cache: call os_time_get outside of the loopMarek Olšák2018-01-271-6/+6
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* gallium/radeon: simplify radeon_flags_from_heapMarek Olšák2018-01-271-14/+8
| | | | Reviewed-by: Samuel Pitoiset <[email protected]>
* winsys/amdgpu: fix assertion failure with UVD and VCE ringsMarek Olšák2018-01-261-2/+1
| | | | Cc: 18.0 <[email protected]>
* ac: pass the number of channels to ac_build_buffer_load_format()Samuel Pitoiset2018-01-262-2/+2
| | | | | | Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]>
* radeonsi: Export signalled sync file instead of -1.Bas Nieuwenhuizen2018-01-263-0/+29
| | | | | | | | -1 is considered an error for EGL_ANDROID_native_fence_sync, so we need to actually create a sync file. Fixes: f536f45250 "radeonsi: implement sync_file import/export" Reviewed-by: Dave Airlie <[email protected]>
* swr/rast: Optimize DumpToFile output sizeGeorge Kyriazis2018-01-251-2/+1
| | | | | | | Modify DumpToFile to only dump the function, not the entire module. Reduces file sizes and speeds up the dumping. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Updated copyright datesGeorge Kyriazis2018-01-253-3/+3
| | | | | | on knob-related files. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Move memory-related JIT functionsGeorge Kyriazis2018-01-257-818/+894
| | | | | | | Move them to their own file (builder_mem.{h|cpp}). Add builder_mem.cpp to the build system. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Add extra (optional) parameter in GATHERPSGeorge Kyriazis2018-01-254-5/+10
| | | | | | | Now also takes in an additional parameter (draw context) for future expansion. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Better ExecCmd (i.e. system()) implmentationGeorge Kyriazis2018-01-253-34/+169
| | | | | | | | | Hides console window creation during JIT linker execution in apps that don't have a console. Remove hooking of CreateProcessInternalA - the MSFT implementation just turns around and calls CreateProcessInternalW which, we do hook. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Support USE_SIMD16_FRONTEND=0 for EarlyRastGeorge Kyriazis2018-01-251-33/+33
| | | | | | | | Early Rasterization did not initially work with USE_SIMD16_FRONTEND=0. Fix it so it works there, too. Please note that the default setting is USE_SIMD16_FRONTEND=1. Reviewed-by: Bruce Cherniak <[email protected]>
* svga: s/Bool/SVGA3dBool/ in SVGA3dDevCapResultBrian Paul2018-01-251-3/+3
| | | | | | And fix whitespace. To sync up with in-house code. Reviewed-by: Charmaine Lee <[email protected]>
* automake: small cleanup after the meson.build inclusionEmil Velikov2018-01-252-2/+2
| | | | | | | | | Namely extend the EXTRA_DIST list, instead of re-assigning it and bring back a file dropped by mistake. Fixes: 436ed65d38d ("autotools: include meson build files in tarball") Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Daniel Stone <[email protected]>
* automake: vc5: remove non-applicable v3dx_simulator.hEmil Velikov2018-01-251-1/+0
| | | | Signed-off-by: Emil Velikov <[email protected]>
* gallivm: fix crash with seamless cube filtering with different min/mag filterRoland Scheidegger2018-01-251-17/+21
| | | | | | | | | | | | | | We are not allowed to modify the incoming coords values, or things may crash (as we may be inside a llvm conditional and the values may be used in another branch). I recently broke this when fixing an issue with NaNs and seamless cube map filtering, and it causes crashes when doing cubemap filtering if the min and mag filters are different. Add const to the pointers passed in to prevent this mishap in the future. Fixes: a485ad0bcd ("gallivm: fix an issue with NaNs with seamless cube filtering") Reviewed-by: Jose Fonseca <[email protected]>
* swr/rast: support llvm 3.9 type declarationsGeorge Kyriazis2018-01-251-0/+14
| | | | | | | | | | LLVM 3.9 was not taken into account in initial check-in. Fixes: 01ab218bbc ("swr/rast: Initial work for debugging support.") cc: [email protected] Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104749 Acked-by: Emil Velikov <[email protected]> Reviewed-by: Bruce Cherniak <[email protected]>
* meson: fix missing dependenciesGreg V2018-01-241-1/+1
| | | | | | Fixes: 66f97f6640f5 ("meson: build radeonsi") Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* gallium/u_tests: add texture_barrier and FBFETCH testsMarek Olšák2018-01-241-1/+110
| | | | | Tested-by: Dieter Nützel <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]>
* radeonsi: don't ignore pitch for imported texturesMarek Olšák2018-01-241-2/+12
| | | | | | Cc: 17.2 17.3 <[email protected]> Tested-by: Dieter Nützel <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]>
* winsys/svga: check correct member after createGrazvydas Ignotas2018-01-231-1/+1
| | | | | | | | | .mob_fenced was already checked, probably a copy-paste bug. Found by Coccinelle. Signed-off-by: Grazvydas Ignotas <[email protected]> Reviewed-by: Eric Engestrom <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* svga: fix context alloc error handlingGrazvydas Ignotas2018-01-231-1/+1
| | | | | | | | | 'cleanup' path is dereferencing 'svga' a lot, 'done' is a better choice. Found by Coccinelle. Signed-off-by: Grazvydas Ignotas <[email protected]> Reviewed-by: Eric Engestrom <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* meson: remove lib prefix from libd3dadapter9.soChristoph Haag2018-01-231-0/+1
| | | | | | Fixes: 6b4c7047d57178d336 ("meson: build gallium nine state_tracker") Reviewed-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* swr: refactor swr_create_screen to allow for proper cleanup on errorChuck Atkins2018-01-224-56/+79
| | | | | | | | | | | | | | | | This makes the following changes to address cleanup issues: - Error conditions now return NULL instead of calling exit() - swr_creen is now freed upon error, rather than leak. - Library handle from dlopen is now closed upon swr_screen destruction v2: Added additional context in commit msg and remove unnecessary "PUBLIC" v3: Fix typo in commit message. Signed-off-by: Chuck Atkins <[email protected]> Reviewed-by: Emil Velikov <[email protected]> Cc: Bruce Cherniak <[email protected]> Cc: Tim Rowley <[email protected]> cc: [email protected]
* ac/radeonsi: add emit primitive to the abiTimothy Arceri2018-01-231-0/+1
| | | | Reviewed-by: Nicolai Hähnle <[email protected]>
* radeonsi: add generic emit primitive helperTimothy Arceri2018-01-231-7/+14
| | | | | | This will be shared by the tgsi and nir backends. Reviewed-by: Nicolai Hähnle <[email protected]>
* radeonsi/nir: fix fs output indexTimothy Arceri2018-01-231-0/+5
| | | | | | | | | | | | | | | | Fixes the following piglit tests: arb_blend_func_extended-fbo-extended-blend arb_blend_func_extended-fbo-extended-blend-explicit arb_blend_func_extended-fbo-extended-blend-explicit_gles3 arb_blend_func_extended-fbo-extended-blend-pattern arb_blend_func_extended-fbo-extended-blend-pattern_gles2 arb_blend_func_extended-fbo-extended-blend-pattern_gles3 arb_blend_func_extended-fbo-extended-blend_gles3 ext_framebuffer_multisample/alpha-to-coverage-dual-src-blend ext_framebuffer_multisample/alpha-to-one-dual-src-blend Reviewed-by: Nicolai Hähnle <[email protected]>
* ac/nir/radeonsi: add ARB_shader_ballot supportTimothy Arceri2018-01-231-0/+9
| | | | Reviewed-by: Nicolai Hähnle <[email protected]>
* radeonsi/nir: add primitive id to inputs scanTimothy Arceri2018-01-231-0/+3
| | | | | | | | | | | | | Fixes the following piglit tests: arb_tessellation_shader/fs-primitiveid-instanced glsl-1.50/primitive-id-no-gs glsl-1.50/primitive-id-no-gs-first-vertex glsl-1.50/primitive-id-no-gs-instanced glsl-1.50/primitive-id-no-gs-strip glsl-1.50/primitive-id-no-gs-strip-first-vertex Reviewed-by: Nicolai Hähnle <[email protected]>
* radeonsi/nir: add nir_intrinsic_load_sample_mask_in to ir scanTimothy Arceri2018-01-231-0/+3
| | | | | | Fixes a bunch of ARB_sample_shading piglit tests. Reviewed-by: Nicolai Hähnle <[email protected]>
* svga: Prevent use after free.Jose Fonseca2018-01-221-0/+1
| | | | | | | | | | Courtesy of clang static analyzer. I was hunting for potential sources of memory corruption using Mesa with a GL trace, and happened to find this (unrelated) issue. Cc: [email protected] Reviewed-by: Emil Velikov <[email protected]>
* etnaviv: dirty TS state when framebuffer has changedLucas Stach2018-01-211-1/+2
| | | | | | | | | | | When switching between framebuffers with and without TS, the TS state needs to be flushed to the command stream even if the derived state isn't changed. Fixes: 4ee7c2c2843c ("etnaviv: enable TS, but disable autodisable") Cc: [email protected] Signed-off-by: Lucas Stach <[email protected]> Reviewed-by: Christian Gmeiner <[email protected]>
* broadcom/vc5: Fix source file name.Vinson Lee2018-01-211-1/+1
| | | | | | Fixes: c9b2cb78972d ("vc5: add missing files to the tarball") Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* broadcom/vc5: Add missing include paths.Vinson Lee2018-01-211-2/+2
| | | | | | Fixes: 954a704da305 ("broadcom/vc5: Port the RCL setup to V3D4.1.") Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* autotools: include meson build files in tarballDylan Baker2018-01-1961-35/+93
| | | | | | | | | | | | This adds the meson.build, meson_options.txt, and a few scripts that are used exclusively by the meson build. v2: - Remove accidentally included changes needed to test make dist with LLVM > 3.9 Signed-off-by: Dylan Baker <[email protected]> Acked-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* swr/rast: Fix llvm5 behaviorGeorge Kyriazis2018-01-191-1/+2
| | | | | | | | | | For some reason llvm5 is picky about accepting a void * type in the case of building an argument list. Since we don't care about the type (we ignore the argument for now), pick another pointer type Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Enable early rasterizationGeorge Kyriazis2018-01-191-1/+1
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Implement Early Rasterization optimizationGeorge Kyriazis2018-01-194-0/+388
| | | | | | | | | | | | | | | Early Rasterization is an optimization for small triangles. Scientific workloads often contain very small triangles that has non-zero area and cannot be trivially rejected as falling between pixel centers, but does not cover any pixel center. Those triangles can be initially rasterized as early as in binner and rejected if they cover no pixels The optimization can be disabled in compilation using KNOB_ENABLE_EARLY_RAST option in knobs.h The Early Rast is disabled by default. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Enable simd16 vertex shadersGeorge Kyriazis2018-01-191-2/+2
| | | | | | | | | | | Flip the switch(es) to enable simd16 vertex shaders: USE_SIMD16_SHADERS and USE_SIMD16_VS Both have to be enabled at the same time. Currently, just setting USE_SIMD16_SHADERS does not work correctly. Reviewed-by: Bruce Cherniak <[email protected]>
* swr: Support simd16 vertex shadersGeorge Kyriazis2018-01-193-21/+30
| | | | | | | | | | | | | | | Supporting simd16 vertex shaders involves packing the output of the fetch shader appropriately, especially the vertexID buffers that have to be formatted in one simd16 register, needed by the VS. As part of this support, we needed to remove the 2nd JitManager, since it was not accounting for vector width correctly. USE_SIMD16_SHADERS is also split into two defines. The additional one (USE_SIMD16_VS) controls the width of the vertex shader (VS), while the original one (USE_SIMD16_SHADERS) controls overall front end width. Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: changed jit debug magic numberGeorge Kyriazis2018-01-191-1/+1
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Added ICLAMP builder functionGeorge Kyriazis2018-01-192-3/+3
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: Jit debug workGeorge Kyriazis2018-01-191-30/+81
| | | | | | Properly validate DLL matches OBJ for jitted function Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: silence generated file warningsGeorge Kyriazis2018-01-191-0/+1
| | | | Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: jit shader lib debug workGeorge Kyriazis2018-01-192-0/+11
| | | | | | Create shader_lib during build, link with shaders at DLL generation time Reviewed-by: Bruce Cherniak <[email protected]>
* swr/rast: AVX-512 changes to enable 16-wide VSGeorge Kyriazis2018-01-194-8/+29
| | | | | | | | | | | | | | Add a new define (USE_SIMD16_VS), to denote calling a 16-wide vertex shader. This is needed because the mesa driver can do 16-wide shaders, but rasty cannot yet, so we need to distinguish. Create a new VertexID entry (VertexID16) for the USE_SIMD16_VS case, since we need to format the vertex id in a way that is digestible by the 16-wide VS Disabled for now. To be enabled in a future checkin when driver work is complete. Reviewed-by: Bruce Cherniak <[email protected]>