Caio Oliveira
90967e7b16
brw: Add brw_load_payload_inst
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36730 >
2025-09-12 00:25:03 +00:00
Caio Oliveira
09a26526cc
brw: Add brw_mem_inst
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36730 >
2025-09-12 00:25:02 +00:00
Caio Oliveira
f0f1e63f99
brw: Add brw_tex_inst
...
Incorporate some "control sources" directly into the instruction.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36730 >
2025-09-12 00:25:02 +00:00
Caio Oliveira
0fcce2722f
brw: Add brw_send_inst
...
Move all the SEND specific fields from brw_inst into brw_send_inst.
This new instruction kind will contain all variants of SENDs plus the
virtual opcodes that were already relying on those SEND fields.
Use the `as_send()` helper to go from a brw_inst into the brw_send_inst
when applicable. Some of the code was changed to use the brw_send_inst
type directly.
Until other kinds are added, all the instructions are allocated the same
amount of space as brw_send_inst. This ensures that all
brw_transform_inst() calls are still valid. This will change after
a few patches so that BASE instructions can use less memory.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36730 >
2025-09-12 00:25:01 +00:00
Caio Oliveira
29c12bbebf
brw: Centralize brw_inst allocation
...
Add and use brw_new_inst() and brw_clone_inst() and do not use stack
allocated brw_insts. The builder was changed to not use the temporary
ones either.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36730 >
2025-09-12 00:24:56 +00:00
Caio Oliveira
ab8af62745
brw: Use a builder to track position in lower_simd
...
Removes brw_builder::at() since it is now unused, replaced by various
other helpers.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34681 >
2025-07-19 17:49:48 +00:00
Caio Oliveira
ac2b072312
brw: Add more specific brw_builder helpers
...
Replace uses of brw_builder::at() with various more descriptive
variants. Use block pointer from instruction when possible.
A couple of special cases remained and will be handled in separate patches.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34681 >
2025-07-19 17:49:47 +00:00
Lionel Landwerlin
9d342081e7
brw/nir: add intrinsics to read attribute payload register indirectly
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34109 >
2025-05-08 06:48:35 +00:00
Caio Oliveira
a7ff177a88
brw: Consider bfloat16 in lower simd width pass
...
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34105 >
2025-04-29 16:29:37 +00:00
Caio Oliveira
7ae638c0fe
brw: Add brw_builder::uniform()
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34355 >
2025-04-04 23:07:21 +00:00
Caio Oliveira
8e2a7cb42d
brw: Embed at_end() inside brw_builder(brw_shader *) constructor
...
All remaining uses of that constructor would also use at_end(),
and vice-versa. So just implement that behavior in the constructor
itself.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33815 >
2025-03-06 23:33:38 +00:00
Caio Oliveira
66307811c3
brw: Remove block parameter from brw_inst::remove()
...
Use brw_inst::block instead.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33815 >
2025-03-06 23:33:38 +00:00
Caio Oliveira
5c55b29d1a
intel/brw: Rename a few remaining functions to remove fs prefix
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32536 >
2025-02-11 09:13:28 +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
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
2b92eb0b2c
intel/brw: Use brw prefix instead of namespace for dep analysis enum
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33048 >
2025-02-05 21:47:07 +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
Caio Oliveira
5ac82efd35
intel/brw: Rename fs_builder to brw_builder
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33076 >
2025-01-18 16:12:55 +00:00
Caio Oliveira
f2d4c9db92
intel/brw: Rename brw_fs_builder.h to brw_builder.h
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33076 >
2025-01-18 16:12:54 +00:00
Caio Oliveira
4d43ee0dd6
intel/brw: Remove uses of VLAs
...
Was causing trouble in some build configurations, we don't really need
them. Use ralloc for consistency.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org >
Reviewed-by: Antonio Ospite <None>
Reviewed-by: Kenneth Graunke <None>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32916 >
2025-01-10 07:05:35 +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
Caio Oliveira
25384dccc0
intel/brw: Remove 'fs' prefix from passes filenames
...
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