Lionel Landwerlin
642b12baef
anv: limit depth flush on dynamic render pass suspend
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27745 >
2024-02-24 13:21:09 +00:00
Lionel Landwerlin
abeac8cf96
intel/nir: only consider ray query variables in lowering
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27752 >
2024-02-24 12:56:30 +00:00
Caio Oliveira
373130a66c
intel/compiler: Remove has_render_target_reads from wm_prog_data
...
This was used only by the classic i965 driver.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27772 >
2024-02-24 02:34:59 +00:00
Caio Oliveira
10230d2eec
intel/brw: Assert Gfx9+
...
Acked-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27768 >
2024-02-24 02:10:56 +00:00
Caio Oliveira
40437bea86
intel/brw: Remove pass test cases for Gfx8-
...
And update the mock devinfo versions to be at least Gfx9.
Acked-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27768 >
2024-02-24 02:10:56 +00:00
Caio Oliveira
8c3165f0ff
intel/brw: Remove EU validation tests for Gfx8-
...
Acked-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27768 >
2024-02-24 02:10:56 +00:00
Caio Oliveira
a5b67d4bea
intel/brw: Remove EU compaction tests for Gfx8-
...
Acked-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27768 >
2024-02-24 02:10:56 +00:00
Caio Oliveira
9bc670509c
intel/brw: Remove assembler tests for Gfx8-
...
Acked-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27768 >
2024-02-24 02:10:56 +00:00
Caio Oliveira
80de55801e
intel/elk: Remove tests for Gfx9+
...
These are covered in the regular "brw" compiler.
Acked-by: Ivan Briano <ivan.briano@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27770 >
2024-02-24 01:41:31 +00:00
Konrad Dybcio
1f508a5dac
freedreno/registers: Add some HWCG regs
...
A702 sets even more of these.. Follow suit!
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27700 >
2024-02-24 01:15:04 +00:00
Rob Clark
e7ee2c8ca5
tu: Give suballoc bo's a name
...
So they show up in gem debugfs with a more useful label.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27700 >
2024-02-24 01:15:04 +00:00
Rob Clark
bcc5ddcc3b
freedreno/crashdec: Find potential fault buffers
...
Denote if a buffer we know about is covering the fault address (kernel
issue), or if the fault address is within the 2 * size range, indicating
that the buffer is potentially the one the GPU read past the end of.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27700 >
2024-02-24 01:15:04 +00:00
Caio Oliveira
32db7a9533
intel/elk: Use anonymous namespace in fs_combine_constants
...
Certain GitLab CI build use a combination of LTO and -Werror=odr that
will fail if both ELK and BRW share the same names for those helpers,
so wrap the ELK ones around anonymous namespace.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:32 +00:00
Caio Oliveira
2bc18fe46f
intel-clc: Use correct set of nir_options when building for Gfx8
...
Use the correct set of nir_options when building for Gfx8. Note this is
only used in the NIR codepath.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:32 +00:00
Caio Oliveira
c83f92087b
intel/elk: Move nir_options to its own c/h file pair
...
This will allow intel-clc tool to use the ELK nir_options in its NIR
codepath without having to link with the entire ELK compiler. That way
an Anv only build doesn't need to compile ELK.
Iris uses that codepath for Gfx8.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:32 +00:00
Caio Oliveira
6f83b1dddc
intel/tools: Add extra compiler device sha only for Gfx9+
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:32 +00:00
Caio Oliveira
8abfbc9cca
intel/meson: Rename libintel_compiler to libintel_compiler_brw
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:32 +00:00
Caio Oliveira
255a411450
intel: Use _brw suffix for genX headers that rely on brw
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:32 +00:00
Caio Oliveira
23e0cff907
intel/tools: Add ELK support for intel_hang_viewer
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:32 +00:00
Caio Oliveira
d641ca5b86
intel/tools: Add ELK support for aubinator_viewer
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:32 +00:00
Caio Oliveira
9d379f08af
intel/tools: Add ELK support for intel_hang_replay
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:32 +00:00
Caio Oliveira
c9a6b49b4b
intel/tools: Add ELK support for aubinator_error_decode
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:32 +00:00
Caio Oliveira
5338a24fe0
intel/tools: Add ELK support for aubinator
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
9796b56e41
iris: Use ELK compiler for Gfx8
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
4c3b65ccf9
iris: Rename screen->compiler to screen->brw
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
9294afe7fd
hasvk: Use ELK compiler
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
4968d1a925
crocus: Use ELK compiler
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
0669210ef4
intel/decoder: Add ELK support
...
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
80cfc3d712
intel/blorp: Remove Gfx9+ references in elk code
...
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
0e582f0dfd
intel/blorp: Add ELK support
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
f5149e025e
intel/blorp: Explicitly include brw_compiler.h header
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
4eb63a0137
intel/blorp: Move brw specific code to a separate file
...
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
4866649052
intel/elk: Create separate header for opcodes
...
This allow us to not include elk_eu_defines.h (mostly internal
information) in elk_isa_info.h (that's used by other modules).
This will help when using both brw and elk in Iris later.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
77f52417c5
intel/elk: Don't include elk_eu_defines.h in elk_nir.h
...
Those definitions are not needed by the drivers (client code), so
reduce the exposure. This will help when using both brw and elk in
Iris later.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
6648e0ebd3
intel/elk: Rename symbols
...
Either replace the BRW prefix with ELK or add an extra ELK prefix. Used
the following sed script to perform the renames in this patch:
```
# Simple prefix changes.
s/\<BRW_/ELK_/g
s/\<brw_/elk_/g
s/nir_to_brw/nir_to_elk/g
s/\<as_brw_reg\>/as_elk_reg/g
s/\<_brw_/_elk_/g
# Add prefix to various symbols.
#
# Initially I've considered using C++ namespaces here, but in various
# cases the structs or functions had to be also visible from C code.
# So added explicit prefix instead.
s/\<backend_instruction/elk_\0/g
s/\<backend_reg/elk_\0/g
s/\<backend_shader/elk_\0/g
s/\<bblock_t\>/elk_\0/g
s/\<bblock_link\>/elk_\0/g
s/\<cfg_t\>/elk_\0/g
s/\<fs_visitor\>/elk_\0/g
s/\<fs_reg\>/elk_\0/g
s/\<fs_instruction_scheduler\>/elk_\0/g
s/\<vec4_instruction_scheduler\>/elk_\0/g
s/\<instruction_scheduler\>/elk_\0/g
s/\<schedule_node\>/elk_\0/g
s/\<schedule_node_child\>/elk_\0/g
s/\<\([a-z]*_\)\?thread_payload\>/elk_\1thread_payload/g
s/\<fs_generator\>/elk_\0/g
s/\<fs_inst\>/elk_\0/g
s/\<fs_reg_alloc\>/elk_\0/g
s/\<disasm_info\>/elk_\0/g
s/\<gfx._math\>/elk_\0/g
s/\<gfx7_block_read_scratch\>/elk_\0/g
s/\<gfx6_IF\>/elk_\0/g
s/\<gfx9_fb_READ\>/elk_\0/g
s/\<gfx6_resolve_implied_move\>/elk_\0/g
# Opcodes.
s/\<opcode op\>/elk_\0/g
s/\<opcode mov_op\>/elk_\0/g
s/\<opcode opcode\>/elk_\0/g
s/enum opcode\>/enum elk_opcode/g
s/static opcode\>/static elk_opcode/g
s/\<opcode elk_op/elk_opcode elk_op/g
s/struct opcode_desc/struct elk_opcode_desc/g
s/NUM_BRW_OPCODES/NUM_ELK_OPCODES/g
s/\<.._OPCODE_/ELK_\0/g
s/\<T.._OPCODE_/ELK_\0/g
s/\<VEC4_OPCODE_/ELK_\0/g
s/\<VEC4_...\?_OPCODE_/ELK_\0/g
s/\<SHADER_OPCODE_/ELK_\0/g
# Remaining specific cases.
s/\<wm_prog_data_barycentric_modes\>/elk_\0/g
s/\<encode_slm_size\>/elk_\0/g
s/\<intel_calculate_slm_size\>/elk_\0/g
s/\<gfx6_gather_sampler_wa\>/elk_\0/g
s/\<is_3src\>/elk_\0/g
s/\<WA_/ELK_\0/g
s/\<conditional_modifier\>/elk_\0/g
s/\<pred_ctrl_align16\>/elk_\0/g
s/\<shuffle_from_32bit_read\>/elk_\0/g
s/\<shuffle_src_to_dst\>/elk_\0/g
s/\<setup_imm_..\?\>/elk_\0/g
s/\<opt_predicated_break\>/elk_\0/g
s/\<has_bank_conflict\>/elk_\0/g
s/\<dead_control_flow_eliminate\>/elk_\0/g
s/\<disasm_new_inst_group\>/elk_\0/g
s/\<disasm_initialize\>/elk_\0/g
s/\<dump_assembly\>/elk_\0/g
s/\<disasm_insert_error\>/elk_\0/g
s/\<disasm_annotate\>/elk_\0/g
s/\<enum lsc_opcode\>/enum elk_lsc_opcode/g
s/\<lsc_opcode_/elk_lsc_opcode_/g
s/\<lsc_aop_[a-z_]\+\>/elk_\0/g
s/\<type_size_vec4\>/elk_\0/g
s/\<type_size_dvec4\>/elk_\0/g
s/\<type_size_xvec4\>/elk_\0/g
s/\<type_size_[a-z4]\+_bytes\>/elk_\0/g
s/\<gfx12_systolic_depth\>/elk_\0/g
```
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
f677485ad4
intel/elk: Rename C++ namespace
...
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
ed89a42f7a
intel/elk: Update doxygen-like file comments
...
Not sure if we use them, but updated.
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
783f3d0b4f
intel/elk: Rename header guards
...
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
e6022281f2
intel/elk: Rename files to use elk prefix
...
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
b02712efc2
intel/elk: Remove DPAS lowering
...
This is meant for Gfx9+.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
b743ab7acc
intel/elk: Remove stages not used in Gfx8-
...
OpenCL, Mesh and RayTracing stages are not supported, so removing them
and related code.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:31 +00:00
Caio Oliveira
8a57012ff4
intel/elk: Use common code in intel/compiler
...
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:30 +00:00
Caio Oliveira
dcf29202d4
intel/elk: Remove a bunch of files that don't apply for Gfx8-
...
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:30 +00:00
Caio Oliveira
06b553f02c
intel/elk: Remove compiler specific devinfo hash
...
This more coarse-grained hash information for compiler (vs. full
devinfo), used only by Iris and Anv, and relevant for more recent
platforms. Remove it from elk.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:30 +00:00
Caio Oliveira
0083585fc5
intel/elk: Compile ELK library, tests and tools
...
For now is not linked to any driver. The tools were renamed to use elk
prefix to avoid conflicting with the brw ones. The run-test.py script
was also updated due to that change.
Before the new compiler can be linked together with the old (going to be
done for Iris and other tools), the symbol conflicts need to be fixed
first. This will happen in a later commit.
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:30 +00:00
Caio Oliveira
d44462c08d
intel/elk: Fork Gfx8- compiler by copying existing code
...
Based on code from commit c3ceec6cd8 .
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Acked-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27563 >
2024-02-24 00:24:30 +00:00
Faith Ekstrand
a9214460ee
nvk: Expose a host-visible VRAM type when we have REBAR
...
We use host maps of VRAM all over the driver on Maxwell+ so we know they
work. This exposes it to applications for use for data upload. To
avoid thrashing, we only expose this on systems with properly a
configured PCI controllwer with resizable BAR support.
We already choose whether or not to set the MMAP bit when creating the
BO based on memory type properties so we just need to add the type.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26622 >
2024-02-23 16:27:21 -06:00
Faith Ekstrand
f5cb1eed26
nvk: Upload shaders on the CPU when we have ReBAR
...
Without without resizable BAR, we're limited as to how much VRAM we can
map and we sometimes run out of maps for games with large numbers of
shaders. We keep using the DMA engine fallback in that case.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26622 >
2024-02-23 16:25:49 -06:00
Faith Ekstrand
9ed7f8c54e
nvk/heap: Upload shaders on the CPU when we have a map
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26622 >
2024-02-23 16:25:49 -06:00
Faith Ekstrand
d4623da9a3
nouveau/winsys: Getch the BAR size from the kernel
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26622 >
2024-02-23 16:25:49 -06:00