- 12 Nov, 2020 26 commits
-
-
Marcin Ślusarz authored
-
Marcin Ślusarz authored
-
Marcin Ślusarz authored
-
Marcin Ślusarz authored
-
Marcin Ślusarz authored
Without this patch, copy propagation pass can optimize out buffer loads out of compare & swap loop, which then leads to infinite loop. Triggered by a change to atomicCompSwap float test in piglit. Fixes: 8424cd8f ("nir: Account for atomics in copy propagation.") Suggested-by:
Jason Ekstrand <jason@jlekstrand.net> Signed-off-by:
Marcin Ślusarz <marcin.slusarz@intel.com> Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Reviewed-by:
Jason Ekstrand <jason@jlekstrand.net> Part-of: <mesa/mesa!7538>
-
Rob Clark authored
Also fix evil-twin table_lock which they turned up. Signed-off-by:
Rob Clark <robdclark@chromium.org> Part-of: <mesa/mesa!7580>
-
Rhys Perry authored
NGG is disabled if this is false. Signed-off-by:
Rhys Perry <pendingchaos02@gmail.com> Reviewed-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <mesa/mesa!7577>
-
Rob Clark authored
It is UB to initialize unions on the stack and rely on bits not covered by the initialized union member to be zero. Lets just simplify it and move the entire nir_const_value off the stack. While we're in there, sprinkle around some const. Closes: mesa/mesa#3778Signed-off-by:
Rob Clark <robdclark@chromium.org> Reviewed-by:
Jason Ekstrand <jason@jlekstrand.net> Part-of: <mesa/mesa!7579>
-
yshui authored
This enables GL applications to be written without any involvement of Xlib. EGL X11 platform is actually already xcb-only underneath, so this commit just add the necessary interface changes so eglDisplay can be created from a xcb_connection_t. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Yuxuan Shui <yshuiv7@gmail.com> Part-of: <mesa/mesa!6474>
-
Alexander Kanavin authored
anv_batch_chain.c includes genX_bits.h but doesn't ensure it gets generated first. This causes build failures, as observed here: https://autobuilder.yoctoproject.org/typhoon/#/builders/86/builds/1501/steps/8/logs/step2dReviewed-by:
Tapani Pälli <tapani.palli@intel.com> Signed-off-by:
Alexander Kanavin <alex.kanavin@gmail.com> Part-of: <mesa/mesa!7412>
-
Erik Faye-Lund authored
Fixes: 4e9328e3 ("nir_builder: Return a new builder from nir_builder_init_simple_shader().") Fixes: 5f992802 ("nir/builder: Drop the mem_ctx arg from nir_builder_init_simple_shader().") Fixes: eda3e4e0 ("nir/builder: Add a name format arg to nir_builder_init_simple_shader().") Reviewed-By:
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <mesa/mesa!7574>
-
xantares authored
guard the drm includes that are not available on this platform Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Reviewed-By:
Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <mesa/mesa!7432>
-
Samuel Pitoiset authored
fossils-db (Vega10): Totals from 779 (0.56% of 139517) affected shaders: CodeSize: 1187928 -> 1187508 (-0.04%); split: -0.04%, +0.00% Instrs: 247353 -> 244608 (-1.11%); split: -1.11%, +0.00% Cycles: 1127472 -> 1116420 (-0.98%); split: -0.98%, +0.00% VMEM: 139720 -> 138297 (-1.02%); split: +0.00%, -1.02% SMEM: 51069 -> 50735 (-0.65%); split: +0.04%, -0.69% Copies: 11548 -> 11547 (-0.01%); split: -0.03%, +0.03% Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Timur Kristóf <timur.kristof@gmail.com> Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Part-of: <mesa/mesa!7425>
-
Samuel Pitoiset authored
Only on GFX8-9 because GFX10 doesn't zero the upper 16 bits. No fossils-db changes. Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Timur Kristóf <timur.kristof@gmail.com> Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Part-of: <mesa/mesa!7425>
-
Samuel Pitoiset authored
No fossils-db changes. Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Timur Kristóf <timur.kristof@gmail.com> Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Part-of: <mesa/mesa!7425>
-
Samuel Pitoiset authored
v_mad_u32_u16 will be selected by isel to keep the range analysis information around and to combine more v_add_u32+v_mad_u32_u16 together. When it's not possible to optimize that pattern, fallback to v_mul_u32_u24 which is VOP2 instead of VOP3. No fossils-db changes. Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Timur Kristóf <timur.kristof@gmail.com> Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Part-of: <mesa/mesa!7425>
-
Samuel Pitoiset authored
To indicate that the upper 16-bits are always 0 and that optimizing v_mad_u32_u16 to v_mul_u32_u24 is valid. Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Timur Kristóf <timur.kristof@gmail.com> Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Part-of: <mesa/mesa!7425>
-
Samuel Pitoiset authored
When one instruction doesn't fit into the existing labels, use the generic one. Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Timur Kristóf <timur.kristof@gmail.com> Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Part-of: <mesa/mesa!7425>
-
Erik Faye-Lund authored
There's not yet any users of this function on Windows, but it prints a warning during builds, and seems easy enough to implement. So let's add a trivial implementation. Reviewed-by:
Jesse Natalie <jenatali@microsoft.com> Part-of: <mesa/mesa!7548>
-
Christian Gmeiner authored
Also remove duplicates. Signed-off-by:
Christian Gmeiner <christian.gmeiner@gmail.com> Reviewed-by:
Michel Dänzer <mdaenzer@redhat.com> Part-of: <!7553>
-
Iago Toral authored
So far, we have only been supporting X11, so we assumed that we were running inside X11 and would always try to get an authenticated fd from Xorg during device initialization. While this works for desktop Raspbian, it is not really correct and it is not what we want to do when we start considering other WSIs. Initially, one could think we can still do this by guarding the WSI code under the proper instance extension check. This, however, doesn't work reliably, as the Vulkan loader can call vkEnumerateDevices without enabling surface extensions on the instance, which then can lead to us not initializing any display_fd and failing with VK_ERROR_INITIALIZATION_FAILED, which is not correct, so while we can try to acquire the display_fd here, it might not always work, and we should definitely not fail initialization of the physical device for that. Instead, with this change we move acquisition of display_fd to swapchain creation time where required extensions need to be enabled in the instance. This was also suggested by Daniel Stone during review of a work-in-progress implementation for the Wayland WSI. There is a special case to consider though: applications like Zink that don't use Vulkan's swapchains at all but still allocate images that they intend to use for WSI. We need to handle these by checking that we have indeed acquired a display_fd before doing any memory allocation for WSI, and acquiring one at that time if that's not the case. This change also removes the render_fd and display_fd fields from the logical device (which we were copying from the physical device), because now there is no guarantee that we have acquired a display_fd at the time we create a logical device. Instead, we now put a reference to the physical device on the logical device from which we can access these. Finally, this also fixes a regression introduced with VK_KHR_display, where if that extension is enabled but we are running inside a compositor, we would acquire a display_fd that is not authenticated and try to use that instead of acquiring an authenticated display_fd from the display server. Fixes: b1188c94 (v3dv: VK_KHR_display extension support) Reviewed-by:
Alejandro Piñeiro <apinheiro@igalia.com> Part-of: <mesa/mesa!7546>
-
Iago Toral authored
Reviewed-by:
Alejandro Piñeiro <apinheiro@igalia.com> Part-of: <mesa/mesa!7546>
-
Samuel Pitoiset authored
Even if the s_lshl is used more that once, it can still be combined. fossils-db (Vega10): Totals from 771 (0.55% of 139517) affected shaders: SGPRs: 46216 -> 46304 (+0.19%); split: -0.02%, +0.21% VGPRs: 38488 -> 38464 (-0.06%) SpillSGPRs: 1894 -> 1875 (-1.00%); split: -3.12%, +2.11% CodeSize: 5681856 -> 5679844 (-0.04%); split: -0.07%, +0.03% MaxWaves: 5320 -> 5323 (+0.06%) Instrs: 1093960 -> 1093474 (-0.04%); split: -0.09%, +0.05% Cycles: 47198380 -> 47258872 (+0.13%); split: -0.06%, +0.19% VMEM: 176036 -> 176283 (+0.14%); split: +0.16%, -0.02% SMEM: 53397 -> 53255 (-0.27%); split: +0.03%, -0.30% VClause: 23156 -> 23152 (-0.02%); split: -0.03%, +0.01% SClause: 35716 -> 35726 (+0.03%); split: -0.00%, +0.03% Copies: 139395 -> 139871 (+0.34%); split: -0.04%, +0.39% Branches: 33808 -> 33798 (-0.03%); split: -0.04%, +0.01% PreSGPRs: 35381 -> 35331 (-0.14%); split: -0.20%, +0.06% Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Part-of: <mesa/mesa!7539>
-
Samuel Pitoiset authored
Signed-off-by:
Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Part-of: <mesa/mesa!7539>
-
Kenneth Graunke authored
Commit eda3e4e0 moved the creation of s->info.name to shader creation time, rather than after the compile. A few lines after creating the shader, prog_to_nir clobbers s->info entirely, losing the name. This dropped the "ARB" indicator that iris uses to switch math to the legacy non-IEEE mode used by ARB_vertex_program/fragment_program. Revert that hunk and go back to doing things the way they were. Fixes: eda3e4e0 ("nir/builder: Add a name format arg to nir_builder_init_simple_shader().") Closes: mesa/mesa#3777Acked-by:
Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com> Part-of: <mesa/mesa!7564>
-
Kenneth Graunke authored
In commit eda3e4e0, Eric added names to various programs. In that patch, he also renamed our passthrough TCS shader from "passthrough" to "passthrough TCS". The passthrough TCS directly supplies the VUE headers rather than doing the whole "patch parameters are in backwards order" reswizzling dance. We failed to detect this and started trying to supply vec4s starting at component 3, leading to a stack smash on an array of 7 sources, not to mention the values were being put in the wrong place. Easy fix: update the code for the new name. Fixes: eda3e4e0 ("nir/builder: Add a name format arg to nir_builder_init_simple_shader().") Closes: mesa/mesa#3777Reviewed-by:
Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com> Part-of: <mesa/mesa!7564>
-
- 11 Nov, 2020 14 commits
-
-
Vinson Lee authored
Fix missing-prototypes build error. src/microsoft/compiler/dxil_nir_algebraic.c:5761:1: error: no previous prototype for ‘dxil_nir_lower_16bit_conv’ [-Werror=missing-prototypes] 5761 | dxil_nir_lower_16bit_conv(nir_shader *shader) | ^~~~~~~~~~~~~~~~~~~~~~~~~ Fixes: b9c61379 ("microsoft/compiler: translate nir to dxil") Signed-off-by:
Vinson Lee <vlee@freedesktop.org> Reviewed-by:
Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <mesa/mesa!7559>
-
Vinson Lee authored
Signed-off-by:
Vinson Lee <vlee@freedesktop.org> Reviewed-by:
Timothy Arceri <tarceri@itsqueeze.com> Part-of: <mesa/mesa!7415>
-
Vinson Lee authored
Fix defect reported by Coverity Scan. Uninitialized scalar field (UNINIT_CTOR) uninit_member: Non-static class member field data.is_xfb is not initialized in this constructor nor in any functions that it calls. Signed-off-by:
Vinson Lee <vlee@freedesktop.org> Reviewed-by:
Timothy Arceri <tarceri@itsqueeze.com> Part-of: <mesa/mesa!7414>
-
Vinson Lee authored
Suggested-by:
Ian Romanick <ian.d.romanick@intel.com> Signed-off-by:
Vinson Lee <vlee@freedesktop.org> Reviewed-by:
Ian Romanick <ian.d.romanick@intel.com> Part-of: <mesa/mesa!7389>
-
Jason Ekstrand authored
Fixes: a8ac0bd7 "intel/fs/gen12: Workaround unwanted SEND execution..." Reviewed-by:
Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com> Part-of: <mesa/mesa!7536>
-
Eric Anholt authored
Seems some sort of linux change (bugfix?) resulted in the db410cs selecting device mode for the db410cs due to the micro cable being plugged in (fastboot runs them in device mode), so we weren't finding the network and getting artifacts out. Closes: #3728 Acked-by:
Rob Clark <robdclark@chromium.org> Part-of: <mesa/mesa!6971>
-
Eric Anholt authored
I'm surprised these were listed as flaky instead of xfails, since I would have expected them to always fail given my experience on freedreno and broadcom. But let's try turning them back on and see if it's actually flaky since the test has been fixed. Reviewed-by:
Tomeu Vizoso <tomeu.vizoso@collabora.com> Part-of: <mesa/mesa!6971>
-
Eric Anholt authored
I want the new version to show the fix in the fd-largeconsts branch (and make sure the pass keeps working, and make sure other drivers get around to fixing the issue). While I'm here, cherry-pick in the VK test along with the GLES one, and also the fix for clip_three on ARMs. Since the VK and GL test lists were changing, I took the opportunity to reset freedreno xfails lists to just the tests that are being run with the CTS uprev, and increase its coverage to 1/10th of the CTS across two boards (since we just freed up a bunch of runtime with the grouped gles "other" job). For panfrost, I didn't spend the time characterizing the t720 fragment_ops flakes like I did for the deqp-runner change. Given that the random behavior changes between CTS versions, it doesn't seem to be worth the time to do so. Reviewed-by:
Tomeu Vizoso <tomeu.vizoso@collabora.com> Part-of: <mesa/mesa!6971>
-
Eric Anholt authored
To increase our VK coverage on a630, we want to have two jobs in parallel, but we still can't hit full coverage so we need the fractional setting to be separate from gitlab CI's flags for setting up parallel jobs. Reviewed-by:
Tomeu Vizoso <tomeu.vizoso@collabora.com> Part-of: <mesa/mesa!6971>
-
Eric Anholt authored
This saves the minute and a half boot time on each of these minute-or-less test jobs. The whole job was 3.5 minutes in my last run. Acked-by:
Rob Clark <robdclark@chromium.org> Part-of: <mesa/mesa!6971>
-
Eric Anholt authored
The recent change to install kernel modules for AMD included a sed job to disable kernel modules in the defconfig. This somehow broke booting on a307, except the commit failed to bump the arm64_test tag so it wasn't noticed until the next uprev. (I didn't notice when landing the next change to that container to add the deqp runner, because I didn't get a git conflict on rebasing my tag bump so I didn't bump the tag again to pull in the kernel changes and catch the fail). I've spent a while trying to debug what's happened (including what *should* be a replication of the kernel build on my local db410c) and come up empty. Just punt and disable the AMD kernel module changes on baremetal to fix it. Bump every container using lava_build.sh to make sure we don't screw anything up with the script changes. Fixes: 60c5729d ("ci: Distribute ADMGPU driver to LAVA as a module") Reviewed-by:
Tomeu Vizoso <tomeu.vizoso@collabora.com> Part-of: <mesa/mesa!6971>
-
Eric Anholt authored
Reviewed-by:
Tomeu Vizoso <tomeu.vizoso@collabora.com> Part-of: <mesa/mesa!6971>
-
Eric Anholt authored
This cleans up a bunch of gross sprintfs and keeps the caller from needing to remember to ralloc_strdup. I added a couple of '"%s", name ? name : ""' to radv where I didn't fully trace through whether a non-null name was being passed in. I also took the liberty of adding a basic name to a few shaders (pan_blit, unit tests) Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Part-of: <mesa/mesa!7323>
-
Eric Anholt authored
This looks a lot more simple now! Reviewed-by:
Rhys Perry <pendingchaos02@gmail.com> Part-of: <mesa/mesa!7323>
-