Commit Graph

190776 Commits

Author SHA1 Message Date
Alyssa Rosenzweig
d90887a7f1 asahi: rm dated comment
no longer confusing.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
8fd2e3c71b asahi: rm another num_vertices use
this wasn't even for vertices, just primitives!

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
5af1828440 asahi: mv vertex_id_for_topology_class into GS lowering
not used with tess.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
a76e8447ac asahi: don't use load_num_vertices in geometry shaders
It makes the uniform upload path more complicated (since num_vertices is backed
by a software compute shader construct), but we can just use gs_grid[0] the way
we already for rast shaders.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
0b7b201ab6 asahi: move some GS lowering into lower_gs
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
a27a803961 asahi: add agx_index_size_to_B helper
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
f18f578b63 asahi: rm dead code
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
f6b863df30 asahi: set src_type for store_output
Fixes: 1632948a76 ("nir: validate src_type of store_output intrinsics, require bit_size >= 16")
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
5b3af5b7e6 asahi: rearrange VS uniforms
this puts draw parameters in the right order and adds in the draw ID. together
this makes MDI a lot more straightforward to do efficiently.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
6d518609e3 asahi: eliminate troublesome empty uniforms
these don't do what you expect and are wasteful.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
0e845e38f9 asahi: free libagx if we don't use a ralloc memctx
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
6b47d9c600 asahi: move primitive MSAA field
works on Cull but not Cull 2, because forget me.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
cccf0609a6 asahi: simplify image atomic lowering
Do more calculation in the preamble so we can do less pointer chasing and keep
everything within our 64-bit budget.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
9069ac986b asahi: fix cull unknown bits
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
e04779ad4b asahi: lower texture instructions with epilogs
for eMRT

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
f4991baa89 asahi: fix sample ID with multiblock epilogs
eMRT + MSAA + epilog case.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
cf653997d7 asahi: fix store_output component/offset
with epilogs

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
696f4654d4 asahi: fix rgb565 blending
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
292cd87054 asahi: clarify format code in image lowering
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
18239f3e88 asahi: handle agx_ppp_fragment_face_2 with no info
for null fs

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
afdc6891c1 asahi: mv AGX_MAX_OCCLUSION_QUERIES define
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
883b5407c8 asahi: rework VBO lower for divisor=0
silly special case that we should handle.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
602d9b98d8 asahi: fix txf/image_load robustness with arrays
need to zero out OOB layers, not clamp!

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
3dd148bfc0 asahi: fix 1D array atomics
we grabbed the wrong component, also should be optimizing out the twiddling.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
4d832f8433 asahi: add missing rgba4 format
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
12ebea098c asahi: drop rgb10a2_sint rendering
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
5f40b0e9fd asahi: rm deadcode
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
3cb8c1de81 asahi: get debug in common
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
15333424a5 asahi: plumb shader stage into info
convenient.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
ee79b71753 asahi: pack UVS key properly
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
1df1260259 asahi: fix prolog emit
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
6373de5195 asahi: move agx_link_varyings_vs_fs
nothing gl here except for point sprites

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
fadb990463 asahi: cleanup fs epilog link info
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
71692a5d0b asahi: resize key
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
a38f7c9151 asahi: rm unused #include
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:26 +00:00
Alyssa Rosenzweig
ad5f46ff8c asahi: implement PIPE_CAP_QUERY_MEMORY_INFO
Steam uses it.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
74963d5364 asahi: unwrap pointless null check
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
8494288451 asahi: assert bo size > 0
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
4e05f549ea asahi: agx_translate_sample_count
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
feabbddc2a asahi: calculate validity when unpacking
for smarter printing.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
ac726ae5a9 asahi: mark eMRT loads as in-bounds
for layer clamping purposes.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
ac114030a7 ail: constify everything
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
efa9f242a8 agx: fix UB in cursor comparison
padding here is implementation-defined, do the cleaner thing. fixes invalid IR
generated with gcc but not clang.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reported-by: Janne Grunau <janne-fdr@jannau.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
bcffc84306 agx: optimize elect()
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
bc26e11c2a agx: lower more quad ops
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
7aa17a122f agx: implement quad_ballot
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
8a656b29f3 agx: handle quad reduce
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
1be0e8e348 agx: stash early_fragment_test info
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Mary Guillemard
1c8aab388c agx: speed-up dce
Follows aco changes, there shouldn't be any loop header phis that are
dead code (as nir_opt_dce ensure that)

Signed-off-by: Mary Guillemard <mary@mary.zone>
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00
Alyssa Rosenzweig
5b03e7bab3 agx: fix bogus unit test
broken SSA.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29179>
2024-05-14 04:57:25 +00:00