Caio Oliveira
aeda865b6d
intel/compiler: Rename BRW_TESS_* enums to INTEL_TESS_*
...
And move to the intel_shader_enums.h file.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27475 >
2024-02-14 22:31:23 -08:00
Caio Oliveira
26dd1f0bba
intel/compiler: Rename BRW_WM_MSAA_* enums to INTEL_MSAA_*
...
And move to the intel_shader_enums.h file.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27475 >
2024-02-14 22:31:23 -08:00
Caio Oliveira
a88084f8be
intel/compiler: Rename brw_image_param to isl_image_param
...
And move them to ISL.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27475 >
2024-02-14 22:31:23 -08:00
Jesse Natalie
1314c5b357
microsoft/compiler: Fix wave size control for SM6.8+
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27624 >
2024-02-15 00:29:50 +00:00
Jesse Natalie
e21774eb0a
microsoft/compiler: Fix wave size control for SM6.6+
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27624 >
2024-02-15 00:29:50 +00:00
Jesse Natalie
0daad70f9f
microsoft/compiler: For emulating scan, ensure all threads are active when reading cross-lane
...
HLSL docs say WaveReadLaneAt is undefined if the target lane is inactive. This makes
sense since the target lane may need to *send* the data, rather than it being pulled
by the calling lane. So don't early-out on the loop, iterate through the whole wave
on all threads and read the cross-lane data before branching.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27624 >
2024-02-15 00:29:50 +00:00
Timothy Arceri
219be55807
glsl: add missing error check for half float varying
...
We should never get here currently as the parser should not even
process float16_t without half float enabled. However it seems
like a good idea to add this for completeness.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27585 >
2024-02-14 23:50:21 +00:00
Eric Engestrom
66f36a79ef
docs: add sha256sum for 24.0.1
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27622 >
2024-02-14 22:00:59 +00:00
Eric Engestrom
c9bc04180d
docs: add release notes for 24.0.1
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27622 >
2024-02-14 22:00:59 +00:00
Alyssa Rosenzweig
1ca256b762
docs: update for GL4.6 and ES3.2 on asahi
...
https://rosenzweig.io/blog/conformant-gl46-on-the-m1.html
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
c7bec0d3c8
asahi: advertise GL4.6 and ES3.2
...
https://rosenzweig.io/blog/conformant-gl46-on-the-m1.html
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
c116d1efbb
agx: add "is helper program?" key bit
...
so we can enforce correctness a bit more at build-time. if the helper program
does not fit in the required RA, spilling will be broken in the driver; now this
is a build-time failure instead of a silent runtime one.
Closes https://gitlab.freedesktop.org/asahi/mesa/-/issues/36
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
a3f647fde1
asahi: precompile helper program
...
1. avoids cluttering shaders,internal print
2. reduces screen create overhead. this cuts average "glxinfo" runtime by about
25%, and seems to shave maybe 0.5% off the CTS job.
3. enforces helper program builds successfully as a build-time assertion
4. reduces the libagx generated blob for now, since g13 binaries are more
compact than serialized NIR
Closes https://gitlab.freedesktop.org/asahi/mesa/-/issues/37
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
e1644a2307
asahi: reorder compiler before clc
...
so clc can call the compiler.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
020e2959d2
agx: decouple from libagx
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
4a3b905bb8
agx: move texture lowering into lib
...
This is a bit annoying, but it gets rid of the libagx dep which is preventing
precompiling helper programs.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
0fa6901f32
agx: call texture lowering in the driver
...
libagx dependency.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
beb8aca7a2
agx: move SSBO lowering
...
agxv uses a different path
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
1f465d72dd
asahi: split out genxml/ directory
...
src/asahi/lib is creating dependency hell, let's start splitting it up so we can
ease some of the clc related pains.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
35c671ecef
asahi: clean up format table renderability
...
infer renderability from whether we specify a renderable format. nfc now that
rgb9e5 is fixed.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
0ee0969f79
asahi: use #pragma once
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
951219a4fc
ail: use #pragma once
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
3333c2cdeb
asahi/lib: use #pragma once
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
a296e7ec3a
agx: use #pragma once
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
af04176860
agx: decouple compiler from genxml
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
23b77d3329
agx: rm ridiculous dependency
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
4e8a42645b
asahi: quelch gcc warning
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
b39de8bb4a
asahi: Implement ARB_texture_barrier by decompression
...
Your perf goes not stonks, sorry. Passes
KHR-GL40.texture_barrier_ARB.*.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
589338e8fc
agx: sink wait_pix
...
No reason not to, noticed when poking at the earlier parts of the series.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
6c5d3fe1b5
agx: rm unused opt_ixor_bcsel
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
2dc1189a9c
agx: rm unused backend nr_samples
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
27ddcea2b3
agx: call agx_nir_lower_sample_mask earlier
...
A given sample needs depth testing to happen before writing its colour, which
requires shuffling pass order.
To do so, merge agx_nir_opt_ixor_bcsel into regular late alg pass
now that we can, which is actually a small shader-db win.
Closes https://gitlab.freedesktop.org/asahi/mesa/-/issues/30
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
9cb03ba5c7
agx: rm dead sample count argument
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
fd0068612f
agx: remove discard -> zs_emit lower
...
doesn't seem to be necessary, the Sonoma compiler uses
sample_mask-based discards even with zs_emit.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
0eb9b62199
asahi: rm ia key
...
fully dynamic in GS now.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
cb0b027c59
asahi: make clip_halfz dynamic
...
we could move this to the linker but meh, this is good enough for now
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
beb7ddba2b
asahi: always support ARB_clip_control
...
perf impact has been neglible.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
9aa8bac229
asahi: support GS in shaderdb
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
6673924b7e
asahi: make gs topology dynamic
...
even with shobjs, we know the class of topology statically, so we just need to
select between the (up to) 3 compatible topologies, and luckily there are common
subexpressions we can factor out when calculating all 3 at once.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
049434f89c
asahi: make provoking vertex dynamic
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
dbb2b25ef9
asahi: eliminate tri fan %
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
7ab1755b54
asahi: avoid silly psiz writes even with gs
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
43dd8b87cb
asahi: simplify expressions involving xfb
...
post-invert cleanup
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
b44630aa94
asahi: rm dead
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
159d85d32c
asahi: implement GS disk caching
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
86782156e7
asahi: invert geometry shaders
...
instead of dumping GS outputs to memory and using a GS copy vertex shader,
invert the GS to get a hardware vertex shader to use directly. theoretically,
reduces mem bandwidth at the cost of repeated work if we don't optimze well.
perhaps more importantly, it should reduce heap usage.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:32 +00:00
Alyssa Rosenzweig
1ac3e48fcc
asahi: fix vertex out size calc
...
expression underallocates if var31 is actually used!
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:31 +00:00
Alyssa Rosenzweig
141e084f55
asahi: use load_instance_id in gs lowering
...
it will lower differently in the prepass vs the rast shader
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:31 +00:00
Alyssa Rosenzweig
3641a37e8f
asahi: set gs_grid[0] even for direct draws
...
gs rast program needs to know the # of input primitives
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:31 +00:00
Alyssa Rosenzweig
200ca69086
asahi: support stage override in sysval lower
...
for gs rast program. should clean up later but for now this will do
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27616 >
2024-02-14 21:02:31 +00:00