summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* gallium: remove TGSI_OPCODE_CLAMPMarek Olšák2017-02-1814-86/+5
| | | | | | | Not used and not widely supported. Use MIN+MAX instead. Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* ac/llvm: use min+max instead of AMDGPU.clamp on LLVM 5.0Marek Olšák2017-02-181-0/+17
| | | | | | | It selects v_med3_f32, which has the same rate & size. Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: stop using TGSI_OPCODE_CLAMP by moving it amd/commonMarek Olšák2017-02-185-24/+22
| | | | | Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* tgsi/lowering: stop using TGSI_OPCODE_CLAMPMarek Olšák2017-02-181-4/+13
| | | | | | | v2: do it correctly Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* st/mesa: stop using TGSI_OPCODE_CLAMPMarek Olšák2017-02-181-10/+4
| | | | | Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: use R600_RESOURCE_FLAG_UNMAPPABLE where it's desirableMarek Olšák2017-02-185-26/+50
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* gallium/radeon: add R600_RESOURCE_FLAG_UNMAPPABLEMarek Olšák2017-02-182-2/+3
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* gallium/radeon: change r600_aligned_buffer_create to take flags, not bindMarek Olšák2017-02-182-4/+4
| | | | | | All call sites set bind = 0. The next commit will use this. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: upload constants into VRAM instead of GTTMarek Olšák2017-02-184-10/+18
| | | | | | | | This lowers lgkm wait cycles by 30% on VI and normal conditions. The might be a measurable improvement when CE is disabled (radeon) or under L2 thrashing. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* gallium/radeon: use TCC line size as alignment in other placesMarek Olšák2017-02-184-5/+9
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: use a clever alignment for index buffer uploadsMarek Olšák2017-02-181-4/+7
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: use a clever alignment for descriptor uploadsMarek Olšák2017-02-181-4/+7
| | | | | | | Non-VBO descriptors won't be smaller than the cache line, so simply use the cache line size. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: use a clever alignment for constant buffer uploadsMarek Olšák2017-02-185-1/+21
| | | | | | This results in a very tiny decrease in lgkm wait cycles. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: move index buffer flushing into a non-upload indexed caseMarek Olšák2017-02-181-7/+6
| | | | | | The other codepaths don't need this. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: use SI_MAX_ATTRIBS where it should be usedMarek Olšák2017-02-184-5/+5
| | | | | | for consistency; no change in behavior Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: sort members of si_shader_key::partMarek Olšák2017-02-181-6/+6
| | | | | | and improve some comments Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: have separate LS and ES main shader parts in the shader selectorMarek Olšák2017-02-183-5/+49
| | | | | | | This might reduce the on-demand compilation if the initial VS/LS/ES determination is wrong. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: don't compile pure monolithic shaders asynchronouslyMarek Olšák2017-02-181-2/+6
| | | | | | there is no point, we have to wait anyway. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: allow unaligned vertex buffer offsets and strides on CIK-VIMarek Olšák2017-02-181-3/+9
| | | | | | | | | So that we can disable u_vbuf for GL core profiles. This is a v2 of the previous VI-only patch. It requires SH_MEM_CONFIG.ALIGNMENT_MODE = UNALIGNED on CIK-VI. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: remove the fix_size3 workaroundMarek Olšák2017-02-183-36/+0
| | | | | | not needed with the shader fallback Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: add a workaround for clamping unaligned RGB 8 & 16-bit vertex loadsMarek Olšák2017-02-185-6/+60
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* radeonsi: make fix_fetch an array of uint8_tMarek Olšák2017-02-185-23/+25
| | | | | | so that we can add 3-component fallbacks. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* vl: fix a buffer leak in the bicubic filter by using an uploaderMarek Olšák2017-02-181-16/+11
| | | | | | there's no error checking, because the previous code didn't do it either. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* gallium/hud: create files after graphs are created to get final namesMarek Olšák2017-02-185-12/+23
| | | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Reviewed-by: Edmondo Tommasina <edmondo.tommasina@gmail.com>
* gallium/u_suballoc: allow setting pipe_resource::flagsMarek Olšák2017-02-185-9/+24
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* gallium/u_suballoc: use clear_buffer if availableMarek Olšák2017-02-181-7/+14
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* gallium/util: correctly unref a buffer in u_prim_restartMarek Olšák2017-02-181-1/+1
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* gallium/util: remove unused u_index_modify helpersMarek Olšák2017-02-182-101/+0
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* gallium/util: remove unused helper util_draw_texquadMarek Olšák2017-02-182-72/+0
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* gallium/docs: remove documentation of non-existent instructionsMarek Olšák2017-02-181-26/+0
| | | | trivial
* anv/TODO: Check off Storage Image Without FormatJason Ekstrand2017-02-171-1/+0
| | | | The code for this landed a few days ago.
* ac/llvm: fix various findMSB bugsMarek Olšák2017-02-181-2/+3
| | | | | | sffbh needs to be suffixed with ".i32" Reviewed-by: Dave Airlie <airlied@redhat.com>
* glsl: link error if unsized array not-last in ssboJose Maria Casanova Crespo2017-02-171-1/+7
| | | | | | | | | | | | | | | | | | | | | | If an unsized declared array is not the last in an SSBO and an implicit size can not be defined on linking time, the linker should raise an error instead of reaching an assertion on GL. This reverts part of commit 3da08e166415a745139c1127040a24e8a45dc553 getting back to the behavior of commit 5b2675093e863a52b610f112884ae12d42513770 The original patch was correct for GLES that should produce a compile-time error but the linker error is still necessary in desktop GL. Fixes the following piglit tests: tests/spec/arb_shader_storage_buffer_object/non_integral_size_array_member.shader_test tests/spec/arb_shader_storage_buffer_object/unsized_array_member.shader_test Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Iago Toral Quiroga <itoral@igalia.com> Signed-off-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
* i965/fs: fix uninitialized memory accessLionel Landwerlin2017-02-171-3/+2
| | | | | | | | Found while running shader-db under valgrind. Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Cc: "13.0 17.0" <mesa-stable@lists.freedesktop.org>
* glsl: disable on disk shader cache when running as another userTimothy Arceri2017-02-171-0/+4
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa/formatquery: use consistent local function namesAlejandro Piñeiro2017-02-171-9/+9
| | | | Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
* radv: Use different allocator for descriptor set vram.Bas Nieuwenhuizen2017-02-172-71/+29
| | | | | | | | | This one only keeps allocated memory in the list, and list nodes in the descriptor sets. Thsi doesn't need messing around with max_sets, and we get automatic merging of free regions. Signed-off-by: Bas Nieuwenhuizen <basni@google.com> Reviewed-by: Dave Airlie <airlied@redhat.com>
* radv: Never try to create more than max_sets descriptor sets.Bas Nieuwenhuizen2017-02-172-2/+6
| | | | | | | | | | | We only use the freed ones after all free space has been used. If the app only allocates small descriptor sets, we might go over max_sets before the memory is full. Signed-off-by: Bas Nieuwenhuizen <basni@google.com> Reviewed-by: Dave Airlie <airlied@redhat.com> CC: <mesa-stable@lists.freedesktop.org> Fixes: f4e499ec79147f4172f3669ae9dafd941aaeeb65
* i965/fs: fix 32-bit data type to int64 conversion on BSW/BXTSamuel Iglesias Gonsálvez2017-02-171-7/+7
| | | | | | | | | | | The 32-bit to 64-bit conversions need to have the 32-bit data source elements aligned to 64-bit but only with doubles as destination type. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99660 Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com> Tested-by: Mark Janes <mark.a.janes@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
* glsl: fix scons builds with shader cacheTimothy Arceri2017-02-172-0/+4
| | | | | For now its disabled for scons so wrap glsl cache calls in a define conditional.
* util/disk_cache: fix typo in function stubTimothy Arceri2017-02-171-1/+1
|
* i965/fs: Remove hand-coded 64-bit packing optimizationsJason Ekstrand2017-02-161-50/+0
| | | | | | | | | | The optimization in unpack_64 is clearly subsumed with the opt_algebraic optimizations in the previous commit. The pack optimization may not be quite handled by opt_algebraic but opt_algebraic should get the really bad cases. Also, it's been broken since it was merged and we've never noticed so it must not be doing anything. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
* nir/algebraic: Optimize 64bit pack/unpackJason Ekstrand2017-02-161-0/+6
| | | | | | This reduces the instruction count in some fp64 and int64 piglit tests Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
* nir: Rename lower_double_pack to lower_64bit_packJason Ekstrand2017-02-164-7/+6
| | | | | | | There's nothing "double" about it other than, perhaps, the fact that it packs two 32-bit values. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
* nir: Combine the int and double [un]pack opcodesJason Ekstrand2017-02-169-99/+48
| | | | | | | NIR is a typeless IR and the two opcodes, when considered bitwise, do exactly the same thing. There's no reason to have two versions. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
* i965/fs: Fix the inline nir_op_pack_double optimizationJason Ekstrand2017-02-161-1/+1
| | | | | | | We can only do the optimization if the source *is* SSA. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Cc: "13.0 17.0" <mesa-stable@lists.freedesktop.org>
* swr: remove unneeded extern "C"George Kyriazis2017-02-161-3/+0
| | | | | | the guards have been added to the header files that needed them. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
* gallium: add extern "C" guardsGeorge Kyriazis2017-02-162-0/+15
| | | | | | Added extern "C" __cplusplus guards on headers that did not have them. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
* util/disk_cache: check cache exists before calling munmap()Timothy Arceri2017-02-171-1/+2
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* util/disk_cache: add support for removing old versions of the cacheTimothy Arceri2017-02-171-0/+37
| | | | Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>