Jason Ekstrand
73434b665b
intel/genxml: Drop SLMEnable from L3CNTLREG on Gen11
...
SML is no longer in the L3$ on Gen11+. It's not incredibly clear from
the docs but no Gen11 platforms are in the list of platforms on which
this bit exists. Also, we've been always setting it false on Gen11 in
ANV and i965 thanks to GEN_L3P_SLM being zero with no ill effects.
Cc: "20.0" mesa-stable@lists.freedesktop.org
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3454 >
2020-01-30 18:45:53 -06:00
Jason Ekstrand
e1bdb127b6
anv,iris: Set 3DSTATE_SF::DerefBlockSize to per-poly on Gen12+
...
According to the BSpec, this should prevent hangs when using shaders
with large URB entries. A more precise fix can be done but it requires
re-arranging URB setup.
Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3454 >
2020-01-30 18:45:52 -06:00
Jason Ekstrand
9da9abf8a7
genxml: Add a new 3DSTATE_SF field on gen12
...
Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3454 >
2020-01-30 18:45:49 -06:00
Dylan Baker
21dd0a1514
docs/release-calendar: 20.0.0-rc1 has been released
2020-01-30 14:43:17 -08:00
Brian Ho
58fd26c433
turnip: Fix vkCmdCopyQueryPoolResults with available flag
...
Previously, calling vkCmdCopyQueryPoolResults with the
VK_QUERY_RESULT_WITH_AVAILABILITY_BIT flag set the query result
field in the buffer to 0 if unavailable and the query result if
available. This was a misunderstanding of the Vulkan spec, and this
commit corrects the behavior to emitting a separate available
result in addition to the query result.
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3560 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3560 >
2020-01-30 20:30:46 +00:00
Brian Ho
1a3e2a7fa8
turnip: Fix vkGetQueryPoolResults with available flag
...
Previously, calling vkGetQueryPoolResults with the
VK_QUERY_RESULT_WITH_AVAILABILITY_BIT flag set the query result
field in *pData to 0 if unavailable and the query result if
available. This was a misunderstanding of the Vulkan spec, and this
commit corrects the behavior to eriting a separate available result
in addition to the query result.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3560 >
2020-01-30 20:30:46 +00:00
Brian Ho
1c3319cf81
turnip: Free event->bo on vkDestroyEvent
...
Fixes a leak from freeing event but not event->bo.
Reviewed-by: Jonathan Marek <jonathan@marek.ca >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3639 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3639 >
2020-01-30 18:50:06 +00:00
Kenneth Graunke
594cb30356
loader: Fix leak of kernel driver name
...
This is strdup'd, it needs to be freed.
CID: 1458032
Fixes: f93bb2fb102 ("loader: Check if the kernel driver is i915 before loading iris")
Reviewed-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3630 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3630 >
2020-01-30 10:08:17 -08:00
Jan Zielinski
f09c466732
docs: Update SWR tessellation support
...
Update features.txt to reflect ARB_tessellation_shader
support in SWR
Reviewed-by: Krzysztof Raszkowski <krzysztof.raszkowski@intel.com >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3636 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3636 >
2020-01-30 11:18:15 +00:00
Kenneth Graunke
bdba744d70
i965: Use brw_batch_references in tex_busy check
...
If the batch references the buffer, we will have to flush the batch
immediately before mapping it, at which point it will be busy.
(This bug has existed for a long time...even going back to BLT-era...)
Fixes: 779923194c ("i965/tex_image: Use meta for instead of the blitter PBO TexImage and GetTexImage")
Fixes: d5d4ba9139 ("i965/tex_subimage: use meta instead of the blitter for PBO TexSubImage")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3616 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3616 >
2020-01-30 10:01:21 +00:00
Christian Gmeiner
d3fa18a1fa
etnaviv: drm-shim: add GC400
...
These are the ETNAVIV_PARAM's returned from a GC400 found on a
STM32MP157C-DK2 Discovery Board running mainline kernel.
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3195 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3195 >
2020-01-30 04:05:39 +00:00
Qiang Yu
c5e4d28724
lima: add noheap debug option
...
Disable using heap buffer when set.
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com >
Signed-off-by: Qiang Yu <yuq825@gmail.com >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3264 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3264 >
2020-01-30 03:39:21 +00:00
Qiang Yu
b220aec628
lima: create heap buffer with new interface if available
...
Newly added heap buffer create interface can create a
large enough buffer whose backup memory can increase
dynamically as needed.
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com >
Tested-by: Andreas Baierl <ichgeh@imkreisrum.de >
Signed-off-by: Qiang Yu <yuq825@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3264 >
2020-01-30 03:39:21 +00:00
Qiang Yu
92465cc999
lima: sync lima_drm.h with kernel
...
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com >
Tested-by: Andreas Baierl <ichgeh@imkreisrum.de >
Signed-off-by: Qiang Yu <yuq825@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3264 >
2020-01-30 03:39:21 +00:00
Icenowy Zheng
cd30c4d719
lima: fix lima_set_vertex_buffers()
...
When setting the vertex buffers, lima calls
util_set_vertex_buffers_mask() to reference and copy buffers. That
function
function adds dst with start_slot internally, so lima should not offset
the destination address again.
This is discovered when comparing with other drivers, and fixed by
removing the extra offset in lima_set_vertex_buffers().
This fixes draws that get translated in u_vbuf, because u_vbuf adds
extra vertex buffers when translating.
Signed-off-by: Icenowy Zheng <icenowy@aosc.io >
Reviewed-by: Andreas Baierl <ichgeh@imkreisrum.de >
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3620 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3620 >
2020-01-30 07:51:35 +08:00
Jonathan Marek
1c5d84fcae
turnip: hook up cmdbuffer event set/wait
...
Gets some basic tests under "dEQP-VK.synchronization.*event*" passing
Signed-off-by: Jonathan Marek <jonathan@marek.ca >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3123 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3123 >
2020-01-29 23:13:43 +00:00
Christian Gmeiner
5b5b762475
etnaviv: drop default state for PE_STENCIL_CONFIG_EXT2
...
It gets emitted when needed.
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Reviewed-by: Jonathan Marek <jonathan@marek.ca >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3631 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3631 >
2020-01-29 23:31:04 +01:00
Daniel Schürmann
d78e0de772
docs: add new features for RADV/ACO.
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3627 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3627 >
2020-01-29 22:05:37 +00:00
Samuel Pitoiset
3a3b16a395
radv: refactor physical device properties
...
Based on ANV. This removes a bunch of duplicated code for properties.
Fixes: 1b8d99e288 ("radv: bump conformance version to 1.2.0.0")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3626 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3626 >
2020-01-29 21:44:56 +00:00
Rob Clark
5b9fe18485
freedreno: remove flush-queue
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Rob Clark
b3b1fa5e2b
freedreno: add gmem_lock
...
The gmem state is split out now, so it does not require synchronization.
But gmem rendering still accesses vsc state from the context.
TODO maybe there is a better way? For gen's that don't do vsc resizing,
this is probably easier.. but for a6xx there isn't really a great
position for more fine grained locking. Maybe it doesn't matter since
in practice the lock shouldn't be contended.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Rob Clark
91f9bb99c5
freedreno: add gmem state cache
...
Which also has the benefit of getting rid of fd_context::gmem.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Rob Clark
712f8802ee
freedreno: get GMEM state from batch
...
Prep work to reduce churn in next patch.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Rob Clark
4bcc3a0923
freedreno/a2xx: constify gmem state
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Rob Clark
5d442144ae
freedreno/a3xx: constify gmem state
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Rob Clark
7236d6dd4c
freedreno/a4xx: constify gmem state
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Rob Clark
2d2f4a55eb
freedreno/a5xx: constify gmem state
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Rob Clark
637ca78ee2
freedreno/a6xx: constify gmem state
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Rob Clark
82a64af907
freedreno: constify fd_vsc_pipe
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Rob Clark
cbae9f34e9
freedreno: constify fd_tile
...
In a following patch, when we cache the gmem state, we will want to
treat the gmem state as immuatable. So start converting things to
const to make this more clear.. fd_tile is a good place to start.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Rob Clark
c7ab8874d0
freedreno: consolidate GMEM state
...
The tile and vsc_pipe arrays are really part of the GMEM configuration.
So pull these out of fd_context and into fd_gmem_stateobj.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Rob Clark
62c10b395e
freedreno: extract vsc pipe bo from GMEM state
...
Prep work for reorganizing GMEM state and extracting out of fd_context.
The vsc pipe bo was the one thing that doesn't change with GMEM/tile
config.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3503 >
2020-01-29 21:19:41 +00:00
Alejandro Piñeiro
d5c32db076
turnip: remove unused descriptor state dirty
...
It was only used to be initialized to zero. Not even updated as
descriptor sets are bind.
As far as I understand, setting the bit TU_CMD_DIRTY_DESCRIPTOR_SET on
tu_cmd_state.dirty is used instead.
Reviewed-by: Jonathan Marek <jonathan@marek.ca >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3624 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3624 >
2020-01-29 20:52:52 +00:00
Timur Kristóf
e73f604b21
aco: Fix the meaning of is_atomic.
...
Previously, is_atomic really meant "is not atomic", contrary to its name.
This commit fixes it to mean what one would think it means.
Fixes: 69bed1c918
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3618 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3618 >
2020-01-29 20:32:31 +00:00
Kenneth Graunke
ba148813d7
iris: Support multiple chained batches.
...
There was never much point in artificially limiting chaining to two
batches - we can trivially support arbitrary length chains.
Currently, we should only ever have 1 or 2, but this may change.
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3613 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3613 >
2020-01-29 19:53:22 +00:00
Kenneth Graunke
94f9c5fff6
iris: Make iris_emit_default_l3_config pull devinfo from the batch
...
No need to pass it, we can just use batch->screen->devinfo.
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3613 >
2020-01-29 19:53:22 +00:00
Kenneth Graunke
afcb6625e3
iris: Drop 'engine' from iris_batch.
...
For the moment, everything is I915_EXEC_RENDER, so this isn't necessary.
But even should that change, I don't think we want to handle multiple
engines in this manner.
Nowadays, we have batch->name (IRIS_BATCH_RENDER, IRIS_BATCH_COMPUTE,
possibly an IRIS_BATCH_BLIT for blorp batches someday), which describes
the functional usage of the batch. We can simply check that and select
an engine for that class of work (assuming there ever is more than one).
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3613 >
2020-01-29 19:53:22 +00:00
Eric Anholt
06b13dfed2
tu: Fix binning address setup after pack macros change.
...
This fixes a regression in "vkcube -m headless" rendering, but upsettingly
none of my CTS tests I've been using.
Fixes: 59f29fc845 ("turnip: Convert the rest of tu_cmd_buffer.c over to the new pack macros.")
Caught-by: Jonathan Marek <jonathan@marek.ca >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3609 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3609 >
2020-01-29 19:30:09 +00:00
Brian Ho
3d5bdea2cf
turnip: Enable occlusionQueryPrecise
...
This commit enables the occlusionQueryPrecise feature. No additonal
work is required as occlusion queries are already implemented to
track exact sample counts.
Also enables a number of extra tests on the Vulkan CTS.
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3605 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3605 >
2020-01-29 19:05:23 +00:00
Daniel Schürmann
6f718edced
aco: simplify gathering of MIMG address components
...
This patch has a slight effect on pipelinedb:
Totals from affected shaders:
SGPRS: 23616 -> 21504 (-8.94 %)
VGPRS: 15088 -> 14444 (-4.27 %)
Spilled SGPRs: 0 -> 0 (0.00 %)
Spilled VGPRs: 0 -> 0 (0.00 %)
Private memory VGPRs: 0 -> 0 (0.00 %)
Scratch size: 0 -> 0 (0.00 %) dwords per thread
Code Size: 662660 -> 664600 (0.29 %) bytes
LDS: 49 -> 49 (0.00 %) blocks
Max Waves: 3079 -> 3204 (4.06 %)
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3602 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3602 >
2020-01-29 18:45:23 +00:00
Daniel Schürmann
901f06e9ad
aco: simplify adjust_sample_index_using_fmask() & get_image_coords()
...
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3602 >
2020-01-29 18:45:23 +00:00
Daniel Schürmann
99d032f3cd
aco: fix register allocation with multiple live-range splits
...
This patch fixes register allocation if multiple live-range splits
occur to the same variable within one instruction.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3602 >
2020-01-29 18:45:23 +00:00
Daniel Schürmann
71440ba0f5
aco: reorder VMEM operands in ACO IR
...
For all VMEM instructions, the resource constant is now
in operands[0]. For MIMG instructions, the sampler shares
operands[1] with write data in case this instruction writes memory.
Moving the VADDR to be the last operand for MIMG is the first step to
support Navi NSA encoding.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3602 >
2020-01-29 18:45:23 +00:00
Caio Marcelo de Oliveira Filho
8548fe19f0
nir: Make nir_deref_path_init skip trivial casts
...
In a NIR generated using SPIR-V initializers to variables, copy
propagation can end up transforming
vec1 32 ssa_33 = deref_var &@1 (shared mat2x4)
vec1 32 ssa_35 = mov ssa_33
vec1 32 ssa_7 = deref_cast (mat2x4 *)ssa_35 (shared mat2x4) /* ptr_stride=0 */
into
vec1 32 ssa_33 = deref_var &@1 (shared mat2x4)
vec1 32 ssa_7 = deref_cast (mat2x4 *)ssa_33 (shared mat2x4) /* ptr_stride=0 */
Before the optimization, the "head" of a path of deref that uses ssa_7
will be the cast. After, it will be the variable in ssa_33. Since
the types are the same, this is a trivial cast that would be picked up
by nir_opt_deref.
If we need to compare such deref-chain after optimization with another
deref-chain for the same variable, the compare function will get
confused by the cast in the middle.
One alternative would be to add nir_opt_deref to places that compare
derefs, but that might not scale well, so skip the trivial casts when
generating the paths instead.
Motivated by the discussion in
https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3047#note_383660 .
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3420 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3420 >
2020-01-29 18:25:36 +00:00
Rhys Perry
db19e96c8c
aco: fix exec mask consistency issues
...
There seems to be more, these are just the ones found in
Detroit: Become Human shaders.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3257 >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3257 >
2020-01-29 18:02:27 +00:00
Rhys Perry
c7d0514168
aco: parallelcopy exec mask before s_wqm
...
It can be used later and we want any uses to not be fixed to exec, so it's
definition can't be fixed to exec because of how exec masks interact with
register demand calculation.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3257 >
2020-01-29 18:02:27 +00:00
Rhys Perry
517fc3abc4
aco: fill reg_demand with sensible information in add_coupling_code()
...
process_block() will use this to determine the register demand of the
before the current instruction. Previously, it was filled with zeroes
which could result in process_block() only using the register demand
of after the current instruction.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3257 >
2020-01-29 18:02:27 +00:00
Rhys Perry
26d2511bcb
aco: improve assertion at the end of spiller
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3257 >
2020-01-29 18:02:27 +00:00
Rhys Perry
5ea23ba659
aco: set exec_potentially_empty after continues/breaks in nested IFs
...
Fixes: 93c8ebfa ('aco: Initial commit of independent AMD compiler')
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3257 >
2020-01-29 18:02:27 +00:00
Rhys Perry
4e83e05e62
aco: error when block has no logical preds but VGPRs are live at the start
...
This would have caught the liveness error fixed in the previous commit.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3257 >
2020-01-29 18:02:27 +00:00