13afc45f8fe61467e4e97fd3164308562c7c721f |
|
16-Mar-2017 |
Alex Smith <asmith@feralinteractive.com> |
radv/ac: Fix shared memory offset calculation The index passed to get_shared_memory_ptr is an attribute slot index, i.e. the index of a vec4 within LDS. Therefore this must be scaled by sizeof(vec4) to give the LDS byte offset. Fixes: f4e499ec791 ("radv: add initial non-conformant radv vulkan driver") Signed-off-by: Alex Smith <asmith@feralinteractive.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> CC: <mesa-stable@lists.freedesktop.org> (cherry picked from commit ce4058dafd2dd283addaa99e8d5b51e53f634f9b)
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
ed5c3fad3778d338f0f886e87381bd9e1d3737cf |
|
13-Mar-2017 |
Dave Airlie <airlied@redhat.com> |
radv: setup llvm target data layout Ported from radeonsi, pointed out by Tom. "This prevents LLVM from using sext instructions for local memory offsets and allows the backend to fold immediate offsets into the instruction. This also prevents some incorrect code generation for ptrtoint and inttoptr instructions." Cc: "13.0 17.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Tom Stellard <tstellar@redhat.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit b8ee70384adc3286d18febba7a92047118cc0f0f) [Emil Velikov: resolve trivial conflicts] Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Conflicts: src/amd/common/ac_nir_to_llvm.c
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
823f6d48a12c748312e46db76f8f159e42bfe622 |
|
07-Mar-2017 |
Fredrik Höglund <fredrik@kde.org> |
radv/ac: fix multiple descriptor sets with dynamic buffers The dynamic_offset_offset in the descriptor set binding layout is relative to the dynamic_offset_start for the set in the pipeline layout. Cc: 17.0 <mesa-stable@lists.freedesktop.org> Signed-off-by: Fredrik Höglund <fredrik@kde.org> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> (cherry picked from commit 162beb2abbe6b81d81863b3ac88ec8effcbf7c9d)
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
21e3f2f24c45e76d66c520173ced26158ef079fc |
|
28-Feb-2017 |
Dave Airlie <airlied@redhat.com> |
radv: fix txs for sampler buffers I messed this up when I wrote it, this fixes: dEQP-VK.memory.pipeline_barrier.*uniform_texel_buffer.* Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Cc: "17.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit e66be3d3bb40160c7b7d57c596e4a25da168f1e6)
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
1e868de4500a46abde745a517ead42afd3a904ca |
|
06-Feb-2017 |
Dave Airlie <airlied@redhat.com> |
radv/ac: avoid the fmask path when doing txs. This fixes the vulkan samples deferredmultisampling test. Cc: "17.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit a864ef7f4824a8319b74d4cf1c82e2dd25672ff1)
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
241e0b7068c0ae8e5e3480b9f6846a5749184626 |
|
03-Feb-2017 |
Dave Airlie <airlied@redhat.com> |
radv: fix shared memory load/stores. If we have an indirect index here we need to scale it by attribute slots e.g. is this is vec2[256] then we get an indir_index in the 0.255 range but the vec2 are aligned inside vec4 slots. So scale the indir index, then extract the channels. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Cc: "17.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 106a51440d018031b94c91758eecc7424a3bb5ee) [Emil Velikov: resolve trivial conflicts] Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Conflicts: src/amd/common/ac_nir_to_llvm.c
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
e789af4a9f10e56f908e3c55c6d764d62c7838de |
|
03-Feb-2017 |
Dave Airlie <airlied@redhat.com> |
radv/ac: correctly size shared memory usage. We count the number of slots used, but slots are vec4 sized, so we have to scale by 16 not 4. Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Cc: "17.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit a1a8aef4c9dbdf254036adada95f0d6e394c5d6a)
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
9ecfbafedb09565b6ac5735c7893b0f58a46b8df |
|
31-Jan-2017 |
Dave Airlie <airlied@redhat.com> |
radv/ac: apply slice rounding to 1d arrays as well. Fixes: dEQP-VK.glsl.texture_functions.texture.*1darray* Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Cc: "17.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 8477aa71d902d6a6fd89741151f8d119a72a7dc0)
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
eaf311d90d20c819e5fa8a9cb7dd781bdb257041 |
|
30-Jan-2017 |
Dave Airlie <airlied@redhat.com> |
radv/ac: implement txs for buffer textures. This fixes a bunch of buffer related: dEQP-VK.memory.pipeline_barrier.* tests, that were crashing in LLVM due to this being missing. Reviewed-by: Andres Rodriguez<andresx7@gmail.com> Cc: "17.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 0ecd426490b043aac6a5db0a6e0feaa39f6d9c54)
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
bbb4562def6e91e69b1613b1c8d72d4a125c7d45 |
|
30-Jan-2017 |
Dave Airlie <airlied@redhat.com> |
radv/ac: handle nir irem opcode. This fixes: dEQP-VK.spirv_assembly.instruction.compute.opsrem.* Reviewed-by: Andres Rodriguez <andresx7@gmail.com> Cc: "17.0" <mesa-stable@lists.freedesktop.org" Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit ecc3fa3ba3967624f67abe8d8188102a08c20d7c)
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
7083ca262581540265765bb0af7a11616fe1c6a3 |
|
30-Jan-2017 |
Dave Airlie <airlied@redhat.com> |
radv/ac: fix multisample subpass image. We weren't adding the fragment position properly. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Cc: "17.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 059dd171759bb89d915c049de1ca1c93865c21d3)
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
d7d772f9031ece78320f1765b811d5a1e588b311 |
|
28-Jan-2017 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
radv/ac: Use base in push constant loads. Apparently the source is not an address but an offset, so we actually need to use the base. Signed-off-by: Bas Nieuwenhuizen <basni@google.com> Reviewed-by: Dave Airlie <airlied@redhat.com> CC: <mesa-stable@lists.freedesktop.org> (cherry picked from commit 96c60b7f07e626d9ca0fc5789117f0c725ba1da2)
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
788610081198260d6974f86ed62a4b9aaf59b8c4 |
|
16-Jan-2017 |
Dave Airlie <airlied@redhat.com> |
radv/ac: split part of llvm compile into a separate function This is needed to have common code for gs copy shader emission. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
5dadd7ca27da6cd5bbac95c8e09130ec4a384e2b |
|
16-Jan-2017 |
Dave Airlie <airlied@redhat.com> |
radv/ac: switch an if to switch makes it easier to add other shader stages. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
6b635bbe16c93ad13afa3390d20c2f0f033e065d |
|
16-Jan-2017 |
Dave Airlie <airlied@redhat.com> |
radv: add support for writing layer/viewport index (v2) This just adds the infrastructure to allow writing layer and viewport index. It's just a first patch out of the geom shader tree, and doesn't do much on its own. v2: add missing if statement change (Bas) Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
d4392a877c0d4c930e8d2a016ae2c8b801e49c49 |
|
16-Jan-2017 |
Dave Airlie <airlied@redhat.com> |
radv/ac: use ctx->voidt in more places. (v2) Just noticed this while in the area. v2: one replacement was incorrect. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
1007047ca1086eef89f65c87e7ea2371c4f80513 |
|
10-Jan-2017 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
ac/nir: use ac_emit_fdiv throughout ... and eliminate emit_fdiv and nir_to_llvm_context::fpmath_md_*, which are now unused. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
38c67f77ed35423bdba5ee1ffd5ab6e5b1765f90 |
|
10-Jan-2017 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
ac/nir: use ac_build_gather_values[_extended] throughout ... and eliminate the non-ac copies. Mostly straight-forward search & replace. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
2c9d26a3564c215695758b4d6b44a838b7a286d4 |
|
10-Jan-2017 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
ac/nir: use ac_emit_llvm_intrinsic throughout ... by straight-forward search & replace, and eliminate emit_llvm_intrinsic. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
a0ce09b4b2a3063e49a02de3d12096cf462d10a3 |
|
10-Jan-2017 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
amd/common: unify cube map coordinate handling between radeonsi and radv Code is taken from a combination of radv (for the more basic functions, to avoid gallivm dependencies) and radeonsi (for the new and improved derivative calculations). v2: add 0.5 offset to tex coords only after derivative calculation v3: - really only touch the first three coordinates - rebase on the removal of the 1.5 --> 0.5 offset change Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> (v2) Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
ada66480b29be5730b217943e626b246ce6c67fd |
|
30-Dec-2016 |
Dave Airlie <airlied@redhat.com> |
radv/ac: add support for multi sample image coords This just adds the nir->llvm support, enabling the extension causes some failures on llvm 3.9 at least, but this code seems fine. NIR passes the sampler in src[1].x, and we LLVM/SI requires it as the last parameters in the coords (coord[2] for 2D, coord[3] for 2DArray). Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
4813c9ade70b4181ccf5d0ab462cf34da96373a6 |
|
23-Dec-2016 |
Dave Airlie <airlied@redhat.com> |
radv: handle multi-component shared load/stores. This was seen in doom shaders, so handle it properly. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave AIrlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
27a8aab882980e35b66f7f318fd2fd7b500401b4 |
|
07-Dec-2016 |
Fredrik Höglund <fredrik@kde.org> |
radv: fix dual source blending Add the index to the location when assigning driver locations for output variables. Otherwise two fragment shader outputs declared as: layout (location = 0, index = 0) out vec4 output1; layout (location = 0, index = 1) out vec4 output2; will end up aliasing one another. Note that this patch will make the second output variable in the above example alias a possible third output variable with location = 1 and index = 0. But this shouldn't be a problem in practice since only one color attachment is supported when dual-source blending is used. Cc: "13.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
fd249c803e3ae2acb83f5e3b7152728e73228b7b |
|
12-Dec-2016 |
Ilia Mirkin <imirkin@alum.mit.edu> |
treewide: s/comparitor/comparator/ git grep -l comparitor | xargs sed -i 's/comparitor/comparator/g' Just happened to notice this in a patch that was sent and included one of the tokens in question. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Acked-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
90c29784c66577f33ca5c8139e33ad027a212125 |
|
10-Dec-2016 |
Grazvydas Ignotas <notasas@gmail.com> |
radv/ac: some fix maybe-uninitialized warnings Mark some paths unreachable so that compiler knows variables are initialized in all valid paths. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
bd56de88dfb192310f3432a3c0e0ddc3469c6d55 |
|
08-Dec-2016 |
Dave Airlie <airlied@redhat.com> |
radv/ac: no need to pass nir to the post outputs handling We don't use the nir shader in here at all. Reviewed by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
d38eece4e6bde42f8e63238497075213bb573f72 |
|
08-Dec-2016 |
Dave Airlie <airlied@redhat.com> |
radv: fix warnings in ubo load code. Reviewed by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
0fafe94a3904f3e20a566077d49983d33b909b17 |
|
08-Dec-2016 |
Dave Airlie <airlied@redhat.com> |
radv/ac: pass a mask of array params not a number. This makes it easier to add new params before the array ones. Reviewed by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
c46c376977275a3327c42ad30ec4df4cb7a4b060 |
|
08-Dec-2016 |
Dave Airlie <airlied@redhat.com> |
radv/ac: don't pass nir to create_function This isn't needed for later things like geom shader copy shaders, we won't have NIR. Reviewed by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
e54af02567c8482c3aae983bdb6b58abe41c0eb0 |
|
08-Dec-2016 |
Dave Airlie <airlied@redhat.com> |
radv/ac: use build_gep0 instead of opencoding it. Reviewed by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
c7dc1b010ae581f532240b661cb3d1c82e117e7e |
|
28-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv: make push constants optional We don't set the push constants slot up unless something will cause us to need it. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
dfef9c7c1fcf0070784d1a19386d885bb1b3f511 |
|
28-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv: only emit descriptor sgprs when needed This only emits enough descriptor sgprs for the number of sets in the layout, and only emits the descriptors necessary for the current stage. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
ae61ddabe8cfa1e2c8c55c478a7ea70563f64b63 |
|
28-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv: move userdata sgpr ownership to compiler side. This isn't fully what we want yet, but is a good step on the way. This allows the compiler to create the information structures for the state setting side, however the state setting still expects things to be pretty much in 2 sgpr wide register sets, and can't handle the indirect setting yet. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
92d7563fba04219a0a96a4949182b1f94b6d79b0 |
|
01-Dec-2016 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
ac/nir: Only use the first component for SSBO atomics. Signed-off-by: Bas Nieuwenhuizen <basni@google.com> Reviewed-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
8033f78f94c7c6349e1c6a4d63fe3accb34b36f1 |
|
05-Dec-2016 |
Dave Airlie <airlied@redhat.com> |
radv: fix another regression since shadow fixes. This fixes: dEQP-VK.glsl.texture_gather.basic.2d.depth32f.* Cc: "13.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
abc887faa108b52f1e622ac8c1a3e30c4f317475 |
|
30-Nov-2016 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
ac/nir: Fix out of bounds array access. With nir_intrinsic_ssbo_atomic_comp_swap we run out of params. Signed-off-by: Bas Nieuwenhuizen <basni@google.com> Reviewed-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
f3a3fea973a145fe16f70866dcfc22c3c5322a91 |
|
24-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv: force persample shading when required. We need to force persample shading when a) shader uses sample_id b) shader uses sample_position c) shader uses sample qualifier. Also since ps_iter_samples can now change independently of the rasterizer samples we need to move setting the regs more often. This fixes: dEQP-VK.pipeline.multisample_interpolation.centroid_interpolate_at_consistency.* dEQP-VK.pipeline.multisample_interpolation.centroid_qualifier_inside_primitive.137_191_1.* dEQP-VK.pipeline.multisample_interpolation.sample_interpolate_at_distinct_values.* dEQP-VK.pipeline.multisample_interpolation.sample_qualifier_distinct_values.128_128_1.* Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
b8c9ce4459af5857c3f68f4bd6a3e33357e22337 |
|
29-Nov-2016 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
ac/nir: Fix accessing an unitialized value. Signed-off-by: Bas Nieuwenhuizen <basni@google.com> Reviewed-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
05533ce418851b12fd0a1e940a633f9280203aab |
|
29-Nov-2016 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
radv: Use different intrinsic for ubo loads. Not sure about the deprecation path, but this intrinsic can be lowered to SMEM loads. This results in a significant Talos performance improvement. v2: Fix for LLVM attribute changes. Signed-off-by: Bas Nieuwenhuizen <basni@google.com> Reviewed-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
020978af12ef6d598bc5efeae3704c0eb8cdafd2 |
|
28-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv: brown-paper bag for a forgotten else. This fixes the fix: radv/ac/llvm: fix regression with shadow samplers fix Signed-off-by: Dave Airlie <airlied@redhat.com> Cc: "13.0" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
b2e217369e1ca4bf9d7741721559a4506b1f0ce8 |
|
28-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv/ac/llvm: fix regression with shadow samplers fix This fixes b56b54cbf1d8e70c87a434da5350d11533e5fed8: radv/ac/llvm: shadow samplers only return one value It makes sure we only do that for shadow sampling, as opposed to sizing requests. Signed-off-by: Dave Airlie <airlied@redhat.com> Cc: "13.0" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
b56b54cbf1d8e70c87a434da5350d11533e5fed8 |
|
24-Oct-2016 |
Dave Airlie <airlied@redhat.com> |
radv/ac/llvm: shadow samplers only return one value. The intrinsic engine asserts in llvm due to this. Reported-by: Christoph Haag <haagch+mesadev@frickel.club> Cc: "13.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
bb8ac183404541ca8dee31563709d5aca8de0e73 |
|
24-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv: fix texel fetch offset with 2d arrays. The code didn't limit the offsets to the number supplied, so if we expected 3 but only got 2 we were accessing undefined memory. This fixes random failures in: dEQP-VK.glsl.texture_functions.texelfetchoffset.sampler2darray_* Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Cc: "13.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
5cbcbc75f437b805e5c3c0c3b5c1192c0d68c1f5 |
|
23-Nov-2016 |
Fredrik Höglund <fredrik@kde.org> |
radv: add support for anisotropic filtering on SI-CI Ported from radeonsi. Note that si_make_texture_descriptor() already sets img7 to the mask value referred to in the comment. Reviewed-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
220912e21432dba996cb2694dea480c65cf6a7c6 |
|
21-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv: fix sample id loading The sample id is packed into bits 8-12, so adjust things properly. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
3c6151ccafeb47febb8320b7f4f7bbc0e819708e |
|
16-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv/ac: add implementation of load_sample_pos intrinsic. This fixes a bunch of crashes in CTS tests looking for this. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
5697cfb7ec08e827a48adc2cd34364696e209147 |
|
21-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv/ac: cleanup ddxy emission This cleans up the ddxy emission along the same lines as radeonsi. It also means we don't use LDS on VI chips we use the dspermute interface, it also removes some duplicated code. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
b1340fd708bb873617b8a529ac45cbc9507bd6c4 |
|
18-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv: spir-v allows texture size query with and without lod. The translation to llvm was failing here due to required lod. This fixes some new SteamVR shaders. Cc: "13.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
713522fb8d4366d29be18edc3d5f33faba1cb7c4 |
|
15-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
ac/nir/llvm: fix channel in texture gather lowering code. This fixes a number of CTS tests like: dEQP-VK.glsl.texture_gather.basic.2d.rgba8ui.size_npot.clamp_to_edge_repeat Cc: "13.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
0b98e885e707a679fffb096aa802cfe4a80ce334 |
|
11-Nov-2016 |
Daniel Scharrer <daniel@constexpr.org> |
ac/nir/llvm: Fix setting function attributes for intrinsics This fixes a NULL pointer dereference for intrinsics with more than one function attribute introduced in commit 2fdaf38. The fix is ported from the lp_build_intrinsic changes in commit 8bdd52c. Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
2de85eb97ab2ef45ec23f694a566cd0ec8192885 |
|
10-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv: fix texturesamples to handle single sample case We can only read the valid samples if this is an MSAA texture, which means the type field must be 0x14 or 0x15. This fixes: dEQP-VK.glsl.texture_functions.query.texturesamples.* Cc: "13.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
19decd8ce43a7fad9b6a276d47296336f062ca23 |
|
10-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv: fixup botched llvm API changes. Reported-by: Jan Vesely <jan.vesely@rutgers.edu> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
2fdaf38c0106d87f89fa20fbe229e66d9a3ad14a |
|
10-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
ac/nir/llvm: adopt to new LLVM attribute API. Ported from corresponding changes to gallivm. tested build against 3.9 and master. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
dd77faeca2819fc78a72f71ca9b996c209378cde |
|
02-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
ac/nir: add support for discard_if intrinsic (v2) We are going to start lowering to this in NIR code, so prepare radv for it. v2: handle conversion to kilp properly (nha) Cc: "13.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
bafc75b4370bfbec0c91ff6bb4d4972fb37bb22a |
|
08-Nov-2016 |
Dave Airlie <airlied@redhat.com> |
radv: emit correct last export when Z/stencil export is enabled I was getting a random GPU hang in the renderpass simple tests, it turns out sometimes radv emitted the wrong thing "last". This fixes the logic to emit Z/stencil last if they occur, and not mark a color output as last. Also this relies on the Z/STENCIL being the first two fragment outputs, which they are so yay. Fixes: dEQP-VK.renderpass.simple.color_depth (random hangs) Cc: "13.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
8eabee9ec0c164bd18babfe15311db14040ad337 |
|
27-Oct-2016 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
amd/common: move llvm helper prototype to ac_llvm_util.h Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
d548fa882b865b8e5052954b872e392312c38ab8 |
|
24-Oct-2016 |
Dave Airlie <airlied@redhat.com> |
radv/ac/llvm: trim texture return values The intrinsic engine asserts in llvm due to this, as we put a vec4 into a vec1, and the next instruction isn't expecting it. So trim the vector at the end before inserting it. Reported-by: Christoph Haag <haagch+mesadev@frickel.club> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Cc: "13.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
e1af20f18a86f52a9640faf2d4ff8a71b0a4fa9b |
|
13-Oct-2016 |
Timothy Arceri <timothy.arceri@collabora.com> |
nir/i965/anv/radv/gallium: make shader info a pointer When restoring something from shader cache we won't have and don't want to create a nir_shader this change detaches the two. There are other advantages such as being able to reuse the shader info populated by GLSL IR. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
d842546ad1ebdb4825f0cbca2d68a56139d88e2a |
|
20-Oct-2016 |
Dave Airlie <airlied@redhat.com> |
radv: use emit_icmp for samples_identical 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>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
67c91ef2a228b0843bdbb4b7b7128ef45e3dd71f |
|
19-Oct-2016 |
Dave Airlie <airlied@redhat.com> |
radv: fix samples_identical return value. 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.
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
63406b669e74d9ff38a45f362ceac816a7dad668 |
|
18-Oct-2016 |
Dave Airlie <airlied@redhat.com> |
radv: fix fmask ptr issue We were using the wrong descriptor in the fmask picking code.
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
b0e11a153c4b8cd9bf29bdb8e26a776de241a5b4 |
|
10-Oct-2016 |
Dave Airlie <airlied@redhat.com> |
radv: start using defines for the user sgpr offsets 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>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
5c66d46d6ace0603227e4b919b132416444949e7 |
|
13-Oct-2016 |
Tom Stellard <thomas.stellard@amd.com> |
radv: Use new image load/store intrinsic signatures v2 These were changed in LLVM r284024. v2: - Only use float types for vdata of llvm.amdgcn.image.store. LLVM doesn't support integer types for this intrinsic. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
30e63fb0e422228cefb44dc4c28e0f282bdbb34c |
|
13-Oct-2016 |
Tom Stellard <thomas.stellard@amd.com> |
radv: Fix incorrect comment Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|
f4e499ec79147f4172f3669ae9dafd941aaeeb65 |
|
07-Oct-2016 |
Dave Airlie <airlied@redhat.com> |
radv: add initial non-conformant radv vulkan driver This squashes all the radv development up until now into one for merging. History can be found: https://github.com/airlied/mesa/tree/semi-interesting This requires llvm 3.9 and is in no way considered a conformant vulkan implementation. It can run a number of vulkan applications, and supports all GPUs using the amdgpu kernel driver. Thanks to Intel for providing anv and spirv->nir, and Emil Velikov for reviewing build integration. Parts of this are: Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Acked-by: Edward O'Callaghan <funfunctor@folklore1984.net> Authors: Bas Nieuwenhuizen and Dave Airlie Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/amd/common/ac_nir_to_llvm.c
|