Mesa (main): 26 new commits
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Mon Dec 20 18:59:15 UTC 2021
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1d21de788d3f4f7fbdcf5b57884bc149a2e219e3
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Mon Dec 13 15:26:13 2021 -0500
pan/bi: Specialize shaders for IDVS
We need to compile multiple variants and report them together in a
common shader info. To do so, we split off per-variant shader infos and
combine at the end.
glmark2 is very happy: https://people.collabora.com/~alyssa/idvs-g52.txt
Highlights include -bshading up 41% fps and -bbump:bump-render=high-poly
up 62% faster
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c59977c3bf4c0fe2340265f79b147fad77478e77
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Mon Dec 13 15:25:54 2021 -0500
pan/bi: Add helper to decide if IDVS should be used
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=a211d2b4e4fdf07d1773571104ad6bca7918e334
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Fri Dec 10 13:35:41 2021 -0500
pan/bi: Use position shader ST_CVT path
We need to use a preload instead of the LEA_ATTR. Not sure why.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fe8ec3111487055676e27efe2a66704b315dad10
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Mon Dec 13 12:59:43 2021 -0500
pan/bi: Split out varying store paths
This means we don't need to special case IDVS quite so hard.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e0771d5832cc91fc51765d46fe3ed8f6db111da3
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Mon Dec 13 15:24:15 2021 -0500
pan/bi: Remove the "wrong" stores in IDVS variants
Position shaders should only write gl_Position (and gl_PointSize on
Valhall), varying shaders should only write varyings.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fba5936fdb7d13416b3cf6a2719c4b4f09930ee8
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Mon Dec 13 15:23:37 2021 -0500
pan/bi: Add IDVS mode to bi_context
Various parts of the compiler switch behaviour based on IDVS variant.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c7fae2c89675eca2d59b8d1ecb58042b6b1a3792
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Mon Dec 13 15:22:30 2021 -0500
pan/bi: Allow UBO pushing to run multiple times
For IDVS.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e2f7871bcf11b42060b0ae2496edb2ae17fe91d6
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Fri Dec 10 11:23:38 2021 -0500
pan/bi: Extract bi_finalize_nir
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=62d46c7ee64509cbdaf6eeb57dfe66856401f0d3
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Mon Dec 13 13:25:21 2021 -0500
panfrost: Add panfrost_compile_inputs->no_idvs option
panvk will want IDVS support eventually, but not right now. Allow the
driver to opt out of IDVS in the mean time.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=2ff3c4a636c891aa9f57722ca1ef03aafc5ad33e
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Fri Dec 10 14:31:25 2021 -0500
panfrost: Align instance size for IDVS
Hardware requirement. Failing to do this raises a DATA_INVALID_FAULT.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=79356b2e5f1762aeaaa81cc148cd5b469a47713d
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Fri Dec 10 14:21:02 2021 -0500
panfrost: Skip rasterizer discard draws without side effects
Minor optimization, but more importantly fixes an interaction of IDVS
with rasterizer discard.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f5412409dbc8f3324c36f0ceaf488850d381ca89
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Thu Dec 9 19:05:28 2021 -0500
panfrost: Extract panfrost_batch_skip_rasterization
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3a49f4798c12a02a56dbfdfa913acd5a3eb2f839
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Thu Dec 9 18:42:01 2021 -0500
panfrost: Emit IDVS jobs
When trying to draw with an IDVS capable shader.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e5b0c514d8ab9c7722425dc5ceda6347b68dd429
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Thu Dec 9 18:41:27 2021 -0500
panfrost: Extract panfrost_draw_emit_vertex_section
To be shared with IDVS.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4d8d987f1a039c382bd8077a82ee30f257f4254f
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Thu Dec 9 17:13:45 2021 -0500
panfrost: Set secondary_* fields for IDVS
Easy now that we've split everything out nicely.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=29f63c62835b8f934793042c99b7dd65ca1e201f
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Thu Dec 9 17:10:55 2021 -0500
panfrost: Remove regalloc from v6.xml
These fields were not introduced until v7, fix that.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=83356c58f883ba761abdba294385946e1c19104b
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Thu Dec 9 17:08:13 2021 -0500
panfrost: Split out regalloc/preload helpers
The logic gets duplicated if IDVS is in use.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9e65ebb67a2517559494ad463bd57370e1b23702
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Thu Dec 9 16:26:25 2021 -0500
panfrost: Add IDVS fields to shader_info
This lets the compiler decide if IDVS should be used.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=dc4fe86a012a67a12fcefb3f6c9bab58bcdc25e4
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Sat Oct 23 17:29:14 2021 -0400
panfrost: Treat IDVS jobs as tiler for scoreboarding
These need to be chained and need to provoke a fragment job when we're
done.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8dc1936faac8804669e21901bacf170e1c009291
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Sat Oct 23 15:25:02 2021 -0400
panfrost: Fix Secondary Shader field
Off-by-one on the start.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Reported-by: Icecream95 <ixn at disroot.org>
Fixes: 73e80994d50 ("panfrost: Add secondary shader XML fields")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b27bbbe0c93adb3458ec51ab313eb8acf13af850
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Thu Dec 9 16:54:43 2021 -0500
panfrost: Remove unused shader info bits
These were only used to infer preloading and can be deleted.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7358edad423fb9a4135288cea64f9fb952cdc1b7
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Thu Dec 9 16:51:02 2021 -0500
panfrost: Set preload descriptor more accurately
Preload exactly what the shader needs, based on the compiler's mask of
uninitialized registers, rather than trying to sync pan_shader.h with
the behaviour of code gen. Would've saved me some debugging over the
years...
As a bonus this avoids preloading unnecessary registers, particularly in
compute shaders. In theory this should reduce power consumption.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=52fe998aa606a6647033bfec5e7eef71ed67f5c3
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Thu Dec 9 16:50:21 2021 -0500
panfrost: Track preloaded registers
We already collect this information. We may as well make use of it.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=e8566f7529664c993bb089367eb89a2e24d02a0a
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Mon Dec 13 12:45:50 2021 -0500
pan/indirect_draw: Support IDVS jobs
Handle as tiler jobs with an extra vertex DCD at the end.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=37ab248c775927fc7d7093d520f6a7fad9b8be46
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Mon Dec 13 12:15:55 2021 -0500
pan/indirect_draw: Split out update_dcd
This is common between vertex/tiler jobs and needs to be duplicated for
IDVS jobs.
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d696183d4dc2ac695f74f802e03b893397e9567d
Author: Alyssa Rosenzweig <alyssa at collabora.com>
Date: Mon Dec 13 15:18:56 2021 -0500
pan/indirect_draw: Don't upload garbage UBO
There should never be a CPU pointer in GPU memory, let's say that...
Fixes: 2e6d94c198e ("panfrost: Add helpers to support indirect draws")
Signed-off-by: Alyssa Rosenzweig <alyssa at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14154>
More information about the mesa-commit
mailing list