Lionel Landwerlin
2f156ddb50
brw: factor out base prog_data setting
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Michael Cheng <michael.cheng@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33643 >
2025-02-22 08:30:22 +00:00
Lionel Landwerlin
a9b6a54a8c
brw: fix component packing starting index
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 6845dede59 ("brw: add support for no VF input slot compaction")
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33553 >
2025-02-14 20:17:54 +00:00
Lionel Landwerlin
6845dede59
brw: add support for no VF input slot compaction
...
Normally the driver & compiler work together to use as few
3DSTATE_VERTEX_ELEMENTS/VERTEX_BUFFER_ELEMENT data as possible.
The compiler ignores unused bits and driver avoids emitting the
corresponding elements in 3DSTATE_VERTEX_ELEMENTS.
For device generated commands, we want an 3DSTATE_VERTEX_ELEMENTS
programming that is independent from the shader so that we can
implement indirect pipeline binding without complicating the
generation shader as well as emitting fewer generated commands.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32418 >
2025-02-13 14:36:15 +00:00
Lionel Landwerlin
4f892ae4f7
brw: enable vertex fetching component packing
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32418 >
2025-02-13 14:36:15 +00:00
Lionel Landwerlin
e9e4aa0f29
brw: remove nr_attribute_slots from vs_prog_data
...
It's not used outside of the compiler.
We add a new nr_attribute_regs which now seems useless but will be
useful in a later change.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32418 >
2025-02-13 14:36:15 +00:00
Lionel Landwerlin
c00830083e
brw: fix indentation
...
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32418 >
2025-02-13 14:36:15 +00:00
Caio Oliveira
cf3bb77224
intel/brw: Rename fs_visitor to brw_shader
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32536 >
2025-02-11 09:13:28 +00:00
Caio Oliveira
352a63122f
intel/brw: Rename files brw_fs.cpp/h to brw_shader.cpp/h
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32536 >
2025-02-11 09:13:28 +00:00
Caio Oliveira
f8a979466b
intel/brw: Rename and move thread_payload types to own header
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32536 >
2025-02-11 09:13:28 +00:00
Caio Oliveira
ea87bab4ce
intel/brw: Remove 'using namespace brw' directives
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33418 >
2025-02-06 07:58:55 -08:00
Caio Oliveira
92085e7bab
intel/brw: Remove 'fs' prefix from brw_from_nir functions
...
Reviewed-by: Dylan Baker <dylan.c.baker@intel.com>
Reviewed-by: Dylan Baker <None>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33330 >
2025-02-03 23:08:11 +00:00
Caio Oliveira
d59bd421a2
intel/brw: Rename fs_inst to brw_inst
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33114 >
2025-01-31 00:57:21 +00:00
Francisco Jerez
70fecb1483
intel/brw: Report number of GRF registers used in brw_stage_prog_data.
...
This is similar to what we used to do on pre-SNB platforms, the number
of GRF registers used by the shader will be used on Xe3+ to adjust the
trade-off between thread-level parallelism and size of the GRF file.
Plumb the value through prog_data so the driver can set up the
hardware state accordingly.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32664 >
2025-01-29 23:39:32 +00:00
Francisco Jerez
d2af77aa6b
intel/brw: Use urb_read_length instead of nr_attribute_slots to calculate VS first_non_payload_grf.
...
Makes sure the number of registers reserved for the payload matches
the size of the URB read, which prevents the VS shared function from
writing past the end of the register file on Xe3 with VRT enabled.
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32664 >
2025-01-29 23:39:32 +00:00
Caio Oliveira
563631cdd8
intel/brw: Rely on existing helper for dispatch width of geometry stages
...
Helper already exists and is used in the functions, just save the value
so can be reused.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33175 >
2025-01-23 20:29:31 +00:00
Caio Oliveira
0b310ae4d8
intel/brw: Rename fs_generator to brw_generator
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32844 >
2025-01-17 00:04:41 +00:00
Caio Oliveira
3659934862
intel/brw: Add brw_generator.h header
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32844 >
2025-01-17 00:04:41 +00:00
Caio Oliveira
e1aebf8a0c
intel/brw: Remove 'fs' prefix from passes and related functions
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32813 >
2025-01-02 18:11:05 +00:00
Sviatoslav Peleshko
2a4efe21c5
intel/brw/gfx9: Implement WaClearArfDependenciesBeforeEot
...
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11928
Signed-off-by: Sviatoslav Peleshko <sviatoslav.peleshko@globallogic.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31746 >
2024-10-23 15:02:27 +00:00
Caio Oliveira
8a39231e4f
intel/brw: Move calculate_cfg out of fs_visitor
...
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30169 >
2024-07-25 15:37:13 +00:00
Caio Oliveira
b98930c770
intel/brw: Move regalloc and scheduling functions out of fs_visitor
...
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30169 >
2024-07-25 15:37:13 +00:00
Caio Oliveira
a8b4b9dd51
intel/brw: Reduce scope of some VS specific functions
...
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30169 >
2024-07-25 15:37:13 +00:00
Caio Oliveira
fdb029fe1b
intel/brw: Move and reduce scope of run_*() functions
...
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30169 >
2024-07-25 15:37:13 +00:00
Iván Briano
a9f24fb5f1
intel/brw: fix subgroup size of geometry stages for lnl+
...
Fixes dEQP-VK.subgroups.size_control.*allow_varying_subgroup_size* and
maybe others checking subgroup size.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29177 >
2024-05-14 23:13:37 +00:00
Caio Oliveira
dae59e7078
intel/brw: Remove runtime_check_aads_emit
...
It was used for Gfx4 payload.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27691 >
2024-02-28 05:45:39 +00:00
Caio Oliveira
63a4a4400a
intel/brw: Remove edgeflag_is_last VS parameter
...
Suggested by Ken.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27691 >
2024-02-28 05:45:39 +00:00
Caio Oliveira
5a3f65e678
intel/brw: Remove unused attrib workarounds
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27691 >
2024-02-28 05:45:39 +00:00
Caio Oliveira
6e88fa8a77
intel/brw: Remove Gfx8- code from brw_compile_* functions
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27691 >
2024-02-28 05:45:38 +00:00
Caio Oliveira
7c23b90537
intel/brw: Always use scalar shaders
...
Remove scalar_stage[] array, since now it is always scalar. This
removes any usage of vec4 shaders in brw.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27691 >
2024-02-28 05:45:37 +00:00
Caio Oliveira
9bfccc1935
intel/brw: Move brw_compile_* functions out of vec4-specific files
...
These contain code that is both fs and vec4. Will make easier later to
delete vec4 files.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27691 >
2024-02-28 05:45:37 +00:00