Alyssa Rosenzweig
44f2715777
pan/bi: Use bi_worklist in analyze_helper_requirements
...
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16279 >
2022-05-03 17:56:16 +00:00
Alyssa Rosenzweig
89db718936
pan/bi: Add u_worklist wrapper macros
...
..expanding to bi_block.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16279 >
2022-05-03 17:56:16 +00:00
Alyssa Rosenzweig
d496fe153a
pan/bi: Count blocks
...
For u_worklist.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16279 >
2022-05-03 17:56:16 +00:00
Alyssa Rosenzweig
eb0001bf2b
pan/bi: Rename bi_block->name to bi_block->index
...
This is consistent with nir_block and (IMO) less confusing.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16279 >
2022-05-03 17:56:16 +00:00
Lionel Landwerlin
5a2dd4a44d
docs: explain state emission in Anv
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16220 >
2022-05-03 17:12:45 +00:00
Lionel Landwerlin
797a8850b9
anv: remove static_state_mask
...
This is now unnecessary. Either an instruction is never dynamic and
it's emitted in genX_pipeline.c or it can be and it's emitted in
genX_cmd_buffer.c/gfx8_cmd_buffer/gfx7_cmd_buffer.c
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16220 >
2022-05-03 17:12:45 +00:00
Lionel Landwerlin
74a27a6ccb
anv: don't emit 3DSTATE_VF_TOPOLOGY in pipeline batch
...
v2: drop primitive_topology = 0xffffffff (Tapani)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16220 >
2022-05-03 17:12:45 +00:00
Lionel Landwerlin
48229d11ba
anv: don't emit 3DSTATE_DEPTH_BOUNDS in pipeline batch
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16220 >
2022-05-03 17:12:45 +00:00
Lionel Landwerlin
76e735d09c
anv: don't emit 3DSTATE_BLEND_STATE_POINTERS in pipeline batch
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16220 >
2022-05-03 17:12:45 +00:00
Lionel Landwerlin
e9d000a831
anv: don't emit 3DSTATE_WM in pipeline batch
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16220 >
2022-05-03 17:12:44 +00:00
Lionel Landwerlin
065242d623
anv: don't emit 3DSTATE_STREAMOUT in pipeline batch
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16220 >
2022-05-03 17:12:44 +00:00
Lionel Landwerlin
ce8bb29342
anv: never emit 3DSTATE_CPS in the pipeline batch
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16220 >
2022-05-03 17:12:44 +00:00
Lionel Landwerlin
168b13364f
anv: rework sample location
...
On Gfx7 we can only give the sample location for a given multisample
number. This means everytime the multisampling value changes, we have
to re-emit the locations. It's fine because it's also where
(3DSTATE_MULTISAMPLE) the number of samples is stored.
On Gfx8+ though, 3DSTATE_MULTISAMPLE only holds the number of samples
and all the sample locations for all number of samples are located in
3DSTATE_SAMPLE_PATTERN. So to be more effecient there, we need to
track the locations for all sample numbers and compare new values with
the relevant sample count when touching the dynamic state.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16220 >
2022-05-03 17:12:44 +00:00
Lionel Landwerlin
810518fda7
Revert "anv: fix dynamic state emission"
...
This reverts commit f348103fce
. The
change was causing performance regressions.
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16220 >
2022-05-03 17:12:44 +00:00
Lionel Landwerlin
69e6417e19
anv: add missing logic op set in pipeline dyn state
...
v2: add ANV_CMD_DIRTY_DYNAMIC_LOGIC_OP check (Tapani)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: 75ad0e4b08
("anv: support blending logic op dynamic state")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16220 >
2022-05-03 17:12:44 +00:00
Lionel Landwerlin
5048f15737
anv: reset all dynamic state after secondary execution
...
We don't know in what state the secondary buffer will leave the HW
when it ends. It's easier to consider everything needs to be reemitted
for now.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16220 >
2022-05-03 17:12:44 +00:00
Fabrice Fontaine
7d87478124
src/util/futex.h: fix build on 32-bit architectures using 64-bit time_t
...
Fix the following build failure on 32-bit architectures using 64-bit
time_t (e.g. riscv32):
../src/util/futex.h: In function 'sys_futex':
../src/util/futex.h:39:19: error: 'SYS_futex' undeclared (first use in this function); did you mean 'sys_futex'?
39 | return syscall(SYS_futex, addr1, op, val1, timeout, addr2, val3);
| ^~~~~~~~~
| sys_futex
Fixes:
- http://autobuild.buildroot.org/results/692700a5f967760a0b8cd358b1712f1d5a7b681e
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12496 >
2022-05-03 16:40:22 +00:00
Marek Olšák
a0dad2f1db
radeonsi: remove si_create_surface_custom
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
584e996ddd
radeonsi: remove si_create_sampler_view_custom and related code
...
This was used for compressed and subsampled gfx copies.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
cf1e562fdd
radeonsi: remove compressed and subsampled gfx copy from resource_copy_region
...
This is unused because the compute copy is always used in these cases.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
f313dc2a07
radeonsi: improve the subsampled copy_image calculation
...
This fixes a few cases for AMD_TEST=copyimage, but it's still pretty broken.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
b6beb70ea4
radeonsi: handle compressed formats in si_compute_copy_image
...
This fixes a lot of AMD_TEST=copyimage cases, but there are still some
failures.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
1ea662cfbf
radeonsi/ci: update sienna_cichlid results
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
5ffd5883b5
radeonsi/test_image_copy: test all formats
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
deeb4b0a0a
radeonsi/test_image_copy: test mipmaps
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
831dd6df0f
radeonsi/test_image_copy: test copying a block-compressed format
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
0037595004
radeonsi/test_image_copy: test all interesting texture targets
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
b2cd9864ed
radeonsi/test_image_copy: separate printing pipe_resource into a function
...
also print texture targets that are going to be tested
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
67c06c63ef
radeonsi/test_image_copy: separate generating a random pipe_resource
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
daf380d489
radeonsi/test_image_copy: simplify texture size generation
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
5a4cdc809b
radeonsi/test_image_copy: remove special SDMA codepaths
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
c49559f835
radeonsi/test_image_copy: remove linear and power-of-two size testing
...
it doesn't add any value
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
f146f3cfa1
radeonsi/test_image_copy: remove whole image copies
...
it doesn't add any value
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
8db7a2d497
radeonsi: rename si_test_blit -> si_test_image_copy_region
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
e0adb5be4d
radeonsi: don't expose formats that CB supports, but not shaders
...
e.g. R4G4B4A4_UINT
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
54ccf24e79
radeonsi: assert format support in si_compute_copy_image
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
23012ff52b
radeonsi: cosmetic changes in si_compute_copy_image
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
8c0669fe3f
radeonsi: implement compute_copy_image between 1D_ARRAY and other texture types
...
And set more optimal compute block sizes.
The compute copy is required to preserve NaNs, so this fixes a lot of
AMD_TEST=copyimage cases.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
01d994f5e6
radeonsi: add color buffer support for R9G9B9E5_FLOAT on gfx10.3
...
This was missed when we added gfx10.3.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
fd5e661954
radeonsi: add color buffer support for 2_10_10_10 pipe formats
...
The hw enum is reversed.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
4512b212e7
radeonsi: don't allow broken compute image copies into A8R8_UNORM
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
52f83dce05
radeonsi: don't report R64_*INT as a sampler format because it doesn't work
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
fbe973b66e
radeonsi: add si_can_use_compute_blit
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
350bdda83d
radeonsi: code style fix
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
8890cb2a99
radeonsi: simplify setting COMPUTE_PGM_RSRC2.SCRATCH_EN
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
3d773c7303
radeonsi: remove unused si_cs_shader_state::uses_scratch
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
77e1fc67bc
radeonsi: align the tessellation ring address to 2MB
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
121cde7cb9
radeonsi: cleanup local includes
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
0cb42c57c5
radeonsi: always print the lower-case GPU name for radeonsi-run-tests.py
...
This fixes the GPU name detection in radeonsi-run-tests.py when
the marketing name is unknown.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
88f22f188e
ac,radeonsi: report SCALED formats as unsupported by samplers and color buffers
...
This was never exercised and it doesn't work.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00