summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* glapi: Move PrimitiveBoundingBox and BlendBarrier definitions into ES3.2 ↵Francisco Jerez2016-10-241-13/+17
| | | | | | | | | | | | | | | | | | category. These two GLES 3.2 entry points were being defined in the category of the ARB_ES3_2_compatibility and KHR_blend_equation_advanced extensions respectively instead of in the ES3.2 category. Defining them in the ES3.2 category makes sure that the gl_procs.py generator emits declarations in the glprocs.h header file for the unsuffixed GLES-only entry points that PrimitiveBoundingBoxARB and BlendBarrierKHR respectively alias. This should avoid a compilation failure during scons builds in combination with "mapi: export all GLES 3.2 functions in libGLESv2.so". Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Dylan Baker <dylan@pnwbakers.com> (cherry picked from commit 15a084a03998c5c86206137fdaf6f43b5f98485a)
* nvc0: do not break 3D state by pushing MS coordinates on FermiSamuel Pitoiset2016-10-241-43/+44
| | | | | | | | | | | | | | | | | | | Long story short, 3D and CP are aliased on Fermi and initializing compute after pushing the MS sample coordinate offsets seems to corrupt 3D state for weird reasons. I still don't have the faintest clue what is going on, but this seems to only affect Fermi generation. A possible fix could be to use two different channels, one for 3D and one for CP. This fixes a bunch of regressions pinpointed by piglit. Fixes: "nvc0: fix up image support for allowing multiple samples" Cc: "13.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> (cherry picked from commit 42273edf79c2500957f51690499aa3405cc689db)
* radeonsi: fix 64-bit loads from LDSNicolai Hähnle2016-10-241-1/+1
| | | | | | | | | | Fixes spec/arb_tessellation_shader/execution/dvec[23]-vs-tcs-tes, among others. Cc: "12.0 13.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Marek Olšák <marek.olsak@amd.com> (cherry picked from commit 4a2dbfff05f7be271c2aa72e783e24b31906db51)
* st/mesa: only set primitive_restart when the restart index is in rangeNicolai Hähnle2016-10-241-2/+13
| | | | | | | | | | | | | | Even when enabled, primitive restart has no effect when the restart index is larger than the representable values in the index buffer. Fixes GL45-CTS.gtf31.GL3Tests.primitive_restart.primitive_restart_upconvert for radeonsi VI. v2: add an explanatory comment Cc: "12.0 13.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Marek Olšák <marek.olsak@amd.com> (v1) (cherry picked from commit bfa50f88cea2ba9f4dc4b825828d2c8f02866fc3)
* st/glsl_to_tgsi: sort input and output decls by TGSI indexNicolai Hähnle2016-10-241-0/+28
| | | | | | | | | Fixes a regression introduced by commit 777dcf81b. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98307 Reviewed-by: Marek Olšák <marek.olsak@amd.com> Cc: 13.0 <mesa-stable@lists.freedesktop.org> (cherry picked from commit 3d9b57e49304f9690c4a2b50afb8cdd4d253a1df)
* st/glsl_to_tgsi: fix block copies of arrays of structsNicolai Hähnle2016-10-241-2/+4
| | | | | | | | | | | Use a full writemask in this case. This is relevant e.g. when a function has an inout argument which is an array of structs. v2: use C-style comment (Timothy Arceri) Reviewed-by: Marek Olšák <marek.olsak@amd.com> (v1) Cc: 13.0 <mesa-stable@lists.freedesktop.org> (cherry picked from commit a1895685f8f341e7facf3c5705bdee99860e3082)
* st/glsl_to_tgsi: fix block copies of arrays of doublesNicolai Hähnle2016-10-241-0/+1
| | | | | | | | | | Set the type of the left-hand side to the same as the right-hand side, so that when the base type is double, the writemask of the MOV instruction is properly fixed up. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Cc: 13.0 <mesa-stable@lists.freedesktop.org> (cherry picked from commit ca592af880b71feb8ebbf79f704380d0deb47b33)
* nv50/ir: process texture offset sources as regular sourcesIlia Mirkin2016-10-241-53/+94
| | | | | | | | | | | | | | | | With ARB_gpu_shader5, texture offsets can be any source, including TEMPs and IN's. Make sure to process them as regular sources so that we pick up masks, etc. This should fix some CTS tests that feed offsets directly to textureGatherOffset, and we were not picking up the input use, thus not advertising it in the shader header. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Tested-by: Dave Airlie <airlied@redhat.com> Cc: 12.0 13.0 <mesa-stable@lists.freedesktop.org> (cherry picked from commit cd45d758ff87305ceecca899fe7325779bb6755b)
* nv50,nvc0: avoid reading out of bounds when getting bogus so infoIlia Mirkin2016-10-242-2/+8
| | | | | | | | | | The state tracker tries to attach the info to the wrong shader. This is easy enough to protect against. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Cc: 12.0 13.0 <mesa-stable@lists.freedesktop.org> (cherry picked from commit 313fba5ee1de9416930e45da8aff63a24763940b)
* wsi/wayland: fix error pathEric Engestrom2016-10-241-0/+4
| | | | | | | | Fixes: 1720bbd353d87412754f ("anv/wsi: split image alloc/free out to separate fns.") Cc: "13.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Eric Engestrom <eric@engestrom.ch> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 8bf7717e1f84d180f42fb665772878d3b6d27459)
* radv: use emit_icmp for samples_identicalDave Airlie2016-10-241-1/+1
| | | | | | | | | | On a debug llvm build we'd assert on the next compare when the return from samples_identical was i1 instead of i32. Cc: "13.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit d842546ad1ebdb4825f0cbca2d68a56139d88e2a)
* Revert Use absolute path in intel_icd.json and related patches.Emil Velikov2016-10-193-15/+2
| | | | | | | | | | | | | | | | | This commit effectively reverts the following commits: This reverts commit 0b6837a643bbbf3c57c5cc5030279fb4389b23b7. This reverts commit 05f36435ef117e48f457b44877d04dd6249b3bb7. This reverts commit a2ae67aa47df6dd41802462105dac7ce5ab676a2. While the feature introduced is convinient for development it is not as useful for distributions. Furthermore it even breaks things as one wishes to have both 32 and 64 bit package installed on the same system. Keep the functionality in development branch(es) and drop it from distribution packages to avoid confusion and misuse. Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
* radeonsi: remove cb0_is_integer handlingMarek Olšák2016-10-193-13/+3
| | | | | | st/mesa does this for us. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* st/mesa: disable alpha-test, alpha-to-coverage, alpha-to-one for integer FBsMarek Olšák2016-10-192-2/+4
| | | | | | v2: rebased Reviewed-by: Brian Paul <brianp@vmware.com>
* mesa: remove gl_shader_compiler_options::EmitNoNoiseMarek Olšák2016-10-195-7/+1
| | | | | | | it's always true Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* glsl_to_tgsi: remove code for fixing up TGSI labelsMarek Olšák2016-10-191-90/+2
| | | | | | | I don't know what this was supposed to do, but all TGSI labels were always 0. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* glsl_to_tgsi: remove subroutine supportMarek Olšák2016-10-192-205/+5
| | | | | | | | Never used. The GLSL compiler doesn't even look at EmitNoFunctions. v2: add back "return" support in "main" Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa_to_tgsi: remove remnants of flow control and subroutine supportMarek Olšák2016-10-191-92/+1
| | | | | | Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* mesa_to_tgsi: drop support for instructions that can't occur hereMarek Olšák2016-10-191-72/+0
| | | | | | Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* glsl_to_tgsi: allocate glsl_to_tgsi_instruction::tex_offsets on demandMarek Olšák2016-10-191-1/+4
| | | | | | | sizeof(glsl_to_tgsi_instruction): 384 -> 264 Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* glsl_to_tgsi: merge buffer and sampler fields in glsl_to_tgsi_instructionMarek Olšák2016-10-191-32/+31
| | | | | | | sizeof(glsl_to_tgsi_instruction): 416 -> 384 Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* glsl_to_tgsi: reduce the size of glsl_to_tgsi_instruction using bitfieldsMarek Olšák2016-10-191-17/+19
| | | | | | | | sizeof(glsl_to_tgsi_instruction): 464 -> 416 Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* glsl_to_tgsi: reduce the size of st_dst_reg and st_src_regMarek Olšák2016-10-191-31/+40
| | | | | | | | | I noticed that glsl_to_tgsi_instruction is too huge. sizeof(glsl_to_tgsi_instruction): 752 -> 464 (-38%) Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* glsl_to_tgsi: remove unused st_translate::tex_offsetsMarek Olšák2016-10-191-1/+0
| | | | | Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* glsl_to_tgsi: remove unused parameters from calc_deref_offsetsMarek Olšák2016-10-191-9/+5
| | | | | Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* glsl_to_tgsi: use array_id for temp arrays instead of hacking high bitsMarek Olšák2016-10-191-13/+19
| | | | | Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
* egl: bring back the default glapi.so nameEric Engestrom2016-10-191-3/+1
| | | | | | | | | | | | | Earlier commit replaced the default platform specific libglapi.so name with an #error. This may have been overzealous since the name is the correct for the BSD platforms, at least. Reinstate the hunk - bringing back OpenBSD, et al. to a successful build state. Fixes: 7a9c92d071d ("egl/dri2: non-shared glapi cleanups") [Emil Velikov: format the patch from Eric, add commit message and tag.] Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* i965: fix subnr overflow in suboffset()Iago Toral Quiroga2016-10-191-8/+5
| | | | Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
* radv: decompress fmask before reading using texture unitDave Airlie2016-10-193-6/+5
| | | | | | | | Before we can read the fmask using the compute shader, we need to decompress the fmask in place. This fixes a bunch of remaining failure and hopefully multisampling in Talos.
* radv: fix samples_identical return value.Dave Airlie2016-10-191-0/+3
| | | | | | | This was returning an inversion, so not doing as it should have. We need to compare the fmask value with 0, and return the result from that.
* radv: fix wsi porting regression in swapchain destroy.Dave Airlie2016-10-191-3/+10
| | | | | The code in anv is right, there's a pending patch to fix this up different, but I'll sync the code for now.
* radv: fix fmask ptr issueDave Airlie2016-10-191-4/+18
| | | | We were using the wrong descriptor in the fmask picking code.
* radv: simplify fast clear shadersDave Airlie2016-10-191-46/+2
| | | | There is no need for anything but a noop shader here.
* vulkan/wsi: fix out of tree build.Dave Airlie2016-10-191-1/+1
|
* radv: start using defines for the user sgpr offsetsDave Airlie2016-10-193-14/+34
| | | | | | | | This adds some comments and adds defines for the user sgprs, so that we can move them around easier later and not have to change/revalidate every one of these. Signed-off-by: Dave Airlie <airlied@redhat.com>
* radv: port to common wsi codebaseDave Airlie2016-10-197-1860/+216
| | | | | | | | | | This drops all the radv WSI code in favour of using the new shared code that was ported from anv This regresses Talos for now, Jason has pointed out the bug is in Talos and we should wait for them to fix it. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv: move to using shared wsi codeDave Airlie2016-10-1910-9/+74
| | | | | | | | This moves the shared code to a common subdirectory and makes anv linked to that code instead of the copy it was using. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv/wsi: remove all anv references from WSI common codeDave Airlie2016-10-199-99/+98
| | | | | | the WSI code should be now be clean for sharing. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv: move common wsi code to x11/wayland common files.Dave Airlie2016-10-1910-1656/+1851
| | | | | | | Next task is to rename all the anv_ out of this, and move to a common location Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv/wsi/wayland: add callback to get device format properties.Dave Airlie2016-10-193-7/+27
| | | | | | This avoids having to know the toplevel API name. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv/wsi/wl: stop using device in more placesDave Airlie2016-10-193-20/+28
| | | | Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv/wsi: split out surface creation to avoid instance APIDave Airlie2016-10-192-29/+64
| | | | Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv/wsi: move further away from passing anv displays aroundDave Airlie2016-10-194-39/+35
| | | | Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv/wsi: split image alloc/free out to separate fns.Dave Airlie2016-10-194-219/+180
| | | | | | | This moves these outside the wsi platform code, so we can reuse that code Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv/wsi: switch to using VkDevice in swapchainDave Airlie2016-10-194-14/+14
| | | | Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv/wsi/x11: more refactoring to use generic handlesDave Airlie2016-10-191-27/+43
| | | | Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv/wsi/x11: start refactoring out the image allocation/free functionalityDave Airlie2016-10-191-22/+52
| | | | Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv/wsi: drop device from get formatDave Airlie2016-10-194-5/+5
| | | | | | Just use the wsi_device instead. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv/wsi: remove device from get_support interfaceDave Airlie2016-10-194-5/+10
| | | | | | replace with wsi_device and allocator. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* anv/wsi/x11: abstract WSI interface from internals.Dave Airlie2016-10-191-9/+24
| | | | | | | This allows the API and the internals to be split, and the internals shared. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>