Ikshwaku Chauhan
12706fab60
radeonsi/gfx11: updated vertex format changes
...
GFX11 format table is different than GFX10
Signed-off-by: Ikshwaku Chauhan <ikshwaku.chauhan@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22466 >
2023-04-18 21:34:02 +00:00
Ikshwaku Chauhan
da3b8c1e6b
radeonsi/gfx11: updated si_is_format_supported
...
GFX11 format table is different than GFX10, the change is
required to pass below deqp tests for gfx11:
dEQP-GLES3.functional.texture.specification.teximage2d_pbo*,
texsubimage2d_pbo*, teximage3d_pbo*, texsubimage3d_pbo*.
Signed-off-by: Ikshwaku Chauhan <ikshwaku.chauhan@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22466 >
2023-04-18 21:34:02 +00:00
Mike Blumenkrantz
543b6ca7c4
iris: use util_framebuffer_get_num_samples when setting ps dispatch samples
...
pipe_framebuffer_state::samples may be zero, which is why this helper exists
cc: mesa-stable
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22563 >
2023-04-18 21:01:23 +00:00
Mike Blumenkrantz
cbac02b7d3
zink: avoid zero-sized memcmp for descriptor layouts
...
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22559 >
2023-04-18 19:33:05 +00:00
Aleksey Komarov
f2e7482202
pan/va: fix typo in IADD_IMM.i32 description
...
`IADD.f32` replaced with `IADD.i32`
Signed-off-by: Signed-off-by: Aleksey Komarov <q4arus@ya.ru>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20467 >
2023-04-18 19:44:48 +03:00
Aleksey Komarov
82ccde0957
pan/va: Fix MUX.v2i16 and MUX.v4i8 description
...
For MUX.v2i16 should be:
`MUX.v2i16.bit A, B, mask` calculates `(A & mask) | (B & ~mask)`
For MUX.v4i8 should be:
`MUX.v4i8.bit A, B, mask` calculates `(A & mask) | (B & ~mask)`
Signed-off-by: Signed-off-by: Aleksey Komarov <q4arus@ya.ru>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20467 >
2023-04-18 19:31:57 +03:00
Eric Engestrom
2dcd6bed6a
util: enforce unreachable()'s argument being a literal string
...
This prevents the bugs fixed in the previous commits.
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22529 >
2023-04-18 13:59:55 +00:00
Eric Engestrom
5863bafbdc
vk/util: fix buggy usage of unreachable()
...
Cc: mesa-stable
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22529 >
2023-04-18 13:59:55 +00:00
Eric Engestrom
2f9520a5d0
pvr: fix buggy usage of unreachable()
...
Cc: mesa-stable
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22529 >
2023-04-18 13:59:54 +00:00
Eric Engestrom
f5ed1c79ae
compiler: fix buggy usage of unreachable()
...
Cc: mesa-stable
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22529 >
2023-04-18 13:59:54 +00:00
Eric Engestrom
0a0e485421
amd: fix buggy usage of unreachable()
...
Cc: mesa-stable
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22529 >
2023-04-18 13:59:54 +00:00
Rhys Perry
d291f368a0
ac/llvm: support implicit LOD for nir_texop_tg4
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22315 >
2023-04-18 10:42:07 +00:00
Rhys Perry
25b1974e1b
aco: support implicit LOD for nir_texop_tg4
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22315 >
2023-04-18 10:42:07 +00:00
Rhys Perry
dbb9f3a8a9
vtn: set is_gather_implicit_lod
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22315 >
2023-04-18 10:42:07 +00:00
Rhys Perry
48158636bf
nir: add is_gather_implicit_lod
...
Needed for SPV_AMD_texture_gather_bias_lod.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22315 >
2023-04-18 10:42:07 +00:00
Michel Dänzer
73e9cf6062
anv/format: Fix GetPhysicalDeviceSparseImageFormatProperties definition
...
To match its declaration (and the corresponding definition in Vulkan
headers).
Pointed out by GCC 13:
../src/intel/vulkan/anv_formats.c:1597:6: warning: conflicting types for ‘anv_GetPhysicalDeviceSparseImageFormatProperties’ due to enum/integer mismatch; have ‘void(struct VkPhysicalDevice_T *, VkFormat, VkImageType, uint32_t, VkImageUsageFlags, VkImageTiling, uint32_t *, VkSparseImageFormatProperties *)’ {aka ‘void(struct VkPhysicalDevice_T *, VkFormat, VkImageType, unsigned int, unsigned int, VkImageTiling, unsigned int *, VkSparseImageFormatProperties *)’} [-Wenum-int-mismatch]
1597 | void anv_GetPhysicalDeviceSparseImageFormatProperties(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/intel/vulkan/anv_private.h:123,
from ../src/intel/vulkan/anv_formats.c:24:
src/intel/vulkan/anv_entrypoints.h:122:30: note: previous declaration of ‘anv_GetPhysicalDeviceSparseImageFormatProperties’ with type ‘void(struct VkPhysicalDevice_T *, VkFormat, VkImageType, VkSampleCountFlagBits, VkImageUsageFlags, VkImageTiling, uint32_t *, VkSparseImageFormatProperties *)’ {aka ‘void(struct VkPhysicalDevice_T *, VkFormat, VkImageType, VkSampleCountFlagBits, unsigned int, VkImageTiling, unsigned int *, VkSparseImageFormatProperties *)’}
122 | VKAPI_ATTR void VKAPI_CALL anv_GetPhysicalDeviceSparseImageFormatProperties(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22517 >
2023-04-18 09:49:44 +00:00
Michel Dänzer
4ec052187a
vulkan: Fix GetPhysicalDeviceSparseImageFormatProperties definition
...
To match its declaration (and the corresponding definition in Vulkan
headers).
Pointed out by GCC 13:
../src/vulkan/runtime/vk_physical_device.c:230:1: warning: conflicting types for ‘vk_common_GetPhysicalDeviceSparseImageFormatProperties’ due to enum/integer mismatch; have ‘void(struct VkPhysicalDevice_T *, VkFormat, VkImageType, uint32_t, VkImageUsageFlags, VkImageTiling, uint32_t *, VkSparseImageFormatProperties *)’ {aka ‘void(struct VkPhysicalDevice_T *, VkFormat, VkImageType, unsigned int, unsigned int, VkImageTiling, unsigned int *, VkSparseImageFormatProperties *)’} [-Wenum-int-mismatch]
230 | vk_common_GetPhysicalDeviceSparseImageFormatProperties(VkPhysicalDevice physicalDevice,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/vulkan/runtime/vk_physical_device.c:26:
src/vulkan/runtime/vk_common_entrypoints.h:116:30: note: previous declaration of ‘vk_common_GetPhysicalDeviceSparseImageFormatProperties’ with type ‘void(struct VkPhysicalDevice_T *, VkFormat, VkImageType, VkSampleCountFlagBits, VkImageUsageFlags, VkImageTiling, uint32_t *, VkSparseImageFormatProperties *)’ {aka ‘void(struct VkPhysicalDevice_T *, VkFormat, VkImageType, VkSampleCountFlagBits, unsigned int, VkImageTiling, unsigned int *, VkSparseImageFormatProperties *)’}
116 | VKAPI_ATTR void VKAPI_CALL vk_common_GetPhysicalDeviceSparseImageFormatProperties(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22517 >
2023-04-18 09:49:44 +00:00
Michel Dänzer
0f7d01cdbe
mesa/st: Make st_convert_image(_from_unit) declaration match definition
...
Pointed out by GCC 13:
../src/mesa/state_tracker/st_atom_image.c:51:1: warning: conflicting types for ‘st_convert_image’ due to enum/integer mismatch; have ‘void(const struct st_context *, const struct gl_image_unit *, struct pipe_image_view *, enum gl_access_qualifier)’ [-Wenum-int-mismatch]
51 | st_convert_image(const struct st_context *st, const struct gl_image_unit *u,
| ^~~~~~~~~~~~~~~~
In file included from ../src/mesa/state_tracker/st_atom_image.c:41:
../src/mesa/state_tracker/st_texture.h:242:1: note: previous declaration of ‘st_convert_image’ with type ‘void(const struct st_context *, const struct gl_image_unit *, struct pipe_image_view *, unsigned int)’
242 | st_convert_image(const struct st_context *st, const struct gl_image_unit *u,
| ^~~~~~~~~~~~~~~~
../src/mesa/state_tracker/st_atom_image.c:134:1: warning: conflicting types for ‘st_convert_image_from_unit’ due to enum/integer mismatch; have ‘void(const struct st_context *, struct pipe_image_view *, GLuint, enum gl_access_qualifier)’ {aka ‘void(const struct st_context *, struct pipe_image_view *, unsigned int, enum gl_access_qualifier)’} [-Wenum-int-mismatch]
134 | st_convert_image_from_unit(const struct st_context *st,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
../src/mesa/state_tracker/st_texture.h:246:1: note: previous declaration of ‘st_convert_image_from_unit’ with type ‘void(const struct st_context *, struct pipe_image_view *, GLuint, unsigned int)’ {aka ‘void(const struct st_context *, struct pipe_image_view *, unsigned int, unsigned int)’}
246 | st_convert_image_from_unit(const struct st_context *st,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22517 >
2023-04-18 09:49:44 +00:00
Michel Dänzer
92a47ba1ae
llvmpipe: Make lp_build_interp_soa declaration match its definition
...
Pointed out by GCC 13:
../src/gallium/drivers/llvmpipe/lp_bld_interp.c:545:1: warning: conflicting types for ‘lp_build_interp_soa’ due to enum/integer mismatch; have ‘struct LLVMOpaqueValue *(struct lp_build_interp_soa_context *, struct gallivm_state *, struct LLVMOpaqueValue *, struct LLVMOpaqueType *, struct LLVMOpaqueValue *, unsigned int, unsigned int, enum tgsi_interpolate_loc, struct LLVMOpaqueValue *, struct LLVMOpaqueValue **)’ [-Wenum-int-mismatch]
545 | lp_build_interp_soa(struct lp_build_interp_soa_context *bld,
| ^~~~~~~~~~~~~~~~~~~
In file included from ../src/gallium/drivers/llvmpipe/lp_bld_interp.c:50:
../src/gallium/drivers/llvmpipe/lp_bld_interp.h:154:1: note: previous declaration of ‘lp_build_interp_soa’ with type ‘struct LLVMOpaqueValue *(struct lp_build_interp_soa_context *, struct gallivm_state *, struct LLVMOpaqueValue *, struct LLVMOpaqueType *, struct LLVMOpaqueValue *, unsigned int, unsigned int, unsigned int, struct LLVMOpaqueValue *, struct LLVMOpaqueValue **)’
154 | lp_build_interp_soa(struct lp_build_interp_soa_context *bld,
| ^~~~~~~~~~~~~~~~~~~
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22517 >
2023-04-18 09:49:44 +00:00
Michel Dänzer
2420b190b8
tgsi: Make ureg_DECL_output_masked definition match its declaration
...
Pointed out by GCC 13:
../src/gallium/auxiliary/tgsi/tgsi_ureg.c:483:1: warning: conflicting types for ‘ureg_DECL_output_masked’ due to enum/integer mismatch; have ‘struct ureg_dst(struct ureg_program *, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int)’ [-Wenum-int-mismatch]
483 | ureg_DECL_output_masked(struct ureg_program *ureg,
| ^~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/gallium/auxiliary/tgsi/tgsi_ureg.c:32:
../src/gallium/auxiliary/tgsi/tgsi_ureg.h:245:1: note: previous declaration of ‘ureg_DECL_output_masked’ with type ‘struct ureg_dst(struct ureg_program *, enum tgsi_semantic, unsigned int, unsigned int, unsigned int, unsigned int)’
245 | ureg_DECL_output_masked(struct ureg_program *,
| ^~~~~~~~~~~~~~~~~~~~~~~
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22517 >
2023-04-18 09:49:44 +00:00
Lionel Landwerlin
3beaaa9ae8
anv: drop lowered storage images code
...
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/22302 >
2023-04-18 08:38:55 +00:00
Lionel Landwerlin
d04d701cc6
intel/nir: add options to storage image lowering
...
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/22302 >
2023-04-18 08:38:55 +00:00
Lionel Landwerlin
d4f498a583
isl: fix a number of errors on storage format support on Gfx9/12.5
...
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/22302 >
2023-04-18 08:38:55 +00:00
Samuel Pitoiset
c221bfbd85
radv/amdgpu: remove legacy code for querying context status
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22521 >
2023-04-18 06:55:03 +00:00
Samuel Pitoiset
767a9324b9
radv/amdgpu: remove legacy code path for creating the BO list
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22521 >
2023-04-18 06:55:03 +00:00
Samuel Pitoiset
c920d676c0
radv: require DRM 3.27
...
Linux kernel 4.20+ is now required to use RADV.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22521 >
2023-04-18 06:55:03 +00:00
Tapani Pälli
d561bac6bb
isl: disable mcs (and mcs+ccs) for color msaa on gfxver 125
...
Same/similar issues are seen on MTL platform as DG2 so disable for both.
Cc: mesa-stable
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22435 >
2023-04-18 07:08:18 +03:00
Karol Herbst
f6fb189cbd
rusticl/mem: more region and origin validation
...
Fixes piglit's api@clenqueuefillimage test
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22506 >
2023-04-18 02:24:08 +00:00
Karol Herbst
1c1fb288fd
rusticl: add create_pipe_box to better deal with pipe_box restrictions
...
This puts the CL -> pipe_box logic in one place and also make sure the
pipe_box is filled in correctly so we neither read out of bounds nor do
nothing at all.
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22506 >
2023-04-18 02:24:08 +00:00
Weibin Wu
74c43834e7
winsys/gdi: GDI B5G6R5 display target support
...
Added RGB_565 support to GDI display target.
This is to fix the color corruption issue when showing 16-bit B5G6R5 framebuffer through GDI.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7637
Reviewed-by: Jesse Natalie jenatali@microsoft.com
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22507 >
2023-04-17 23:57:16 +00:00
Jesse Natalie
d75e631e76
d3d12: Support blit texture uploads
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22542 >
2023-04-17 23:25:16 +00:00
Jesse Natalie
81595cc823
d3d12: Respect buffer offsets for sampler views
...
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22542 >
2023-04-17 23:25:16 +00:00
Lionel Landwerlin
2d4fbb3025
anv: Work around the spec question about pipeline feedback vs GPL.
...
This gives anv the same behavior as turnip in not asserting, and just not
filling out feedback for those stages.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15637 >
2023-04-17 22:43:38 +00:00
Emma Anholt
e433925789
anv: Refactor repeated pipeline creation feedback output code.
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15637 >
2023-04-17 22:43:37 +00:00
Emma Anholt
647ca81654
anv: Only enable GPL if ANV_GPL=true, or if zink or DXVK are the engine.
...
Since there are concerns that the VK_EXT_GPL implementation may have
issues with mesh shading, disable it by default but give users a knob to
turn it on to experiment.
This doesn't automatically enable GPL use in zink, because we lack
extendedDynamicState2PatchControlPoints, but it means that you only need
to set ZINK_DEBUG=gpl and not both env vars.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15637 >
2023-04-17 22:43:37 +00:00
Lionel Landwerlin
3d49cdb71e
anv: implement VK_EXT_graphics_pipeline_library
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15637 >
2023-04-17 22:43:37 +00:00
Lionel Landwerlin
0b8a2de2a1
anv: add dynamic buffer offsets support with independent sets
...
With independent sets, we're not able to compute immediate values for
the index at which to read anv_push_constants::dynamic_offsets to get
the offset of a dynamic buffer. This is because the pipeline layout
may not have all the descriptor set layouts when we compile the
shader.
To solve that issue, we insert a layer of indirection.
This reworks the dynamic buffer offset storage with a 2D array in
anv_cmd_pipeline_state :
dynamic_offsets[MAX_SETS][MAX_DYN_BUFFERS]
When the pipeline or the dynamic buffer offsets are updated, we
flatten that array into the
anv_push_constants::dynamic_offsets[MAX_DYN_BUFFERS] array.
For shaders compiled with independent sets, the bottom 6 bits of
element X in anv_push_constants::desc_sets[] is used to specify the
base offsets into the anv_push_constants::dynamic_offsets[] for the
set X.
The computation in the shader is now something like :
base_dyn_buffer_set_idx = anv_push_constants::desc_sets[set_idx] & 0x3f
dyn_buffer_offset = anv_push_constants::dynamic_offsets[base_dyn_buffer_set_idx + dynamic_buffer_idx]
It was suggested by Faith to use a different push constant buffer with
dynamic_offsets prepared for each stage when using independent sets
instead, but it feels easier to understand this way. And there is some
room for optimization if you are set X and that you know all the sets in
the range [0, X], then you can still avoid the indirection. Separate
push constant allocations per stage do have a CPU cost.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15637 >
2023-04-17 22:43:37 +00:00
Lionel Landwerlin
16c7c37718
anv: move preprocessing of NIR right before compilation
...
For graphics pipelines, we'll need to load NIR for retained shaders.
We want to avoid as much processing as possible while doing that when
we're able to load ISA from cache.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15637 >
2023-04-17 22:43:37 +00:00
Lionel Landwerlin
17e7fe9d97
anv: make input attachments available through bindless
...
With independent sets, we cannot bake into the shader the binding
table entry of input attachments anymore because that final location
is affected by multiple sets.
We can still access them by looking into the descriptor buffer. This
change enables the image handle to be stored in the descriptor buffer.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15637 >
2023-04-17 22:43:37 +00:00
Lionel Landwerlin
e82b05dc64
anv: move force shading rate writes checks
...
With variable fragment shading rate, the last pre-rasterization stage
is responsible to write the shading rate value.
The current checks is as follow :
If the fragment shader can be dispatched at variable shading rate,
look for the last pre-raster stage to force the write.
We change this to :
If we're the last pre-raster stage, force the write.
That way this works for pre-rasterization shaders compiled without a
fragment shader.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15637 >
2023-04-17 22:43:37 +00:00
Lionel Landwerlin
b2d3d818d5
anv: introduce a base graphics pipeline object
...
Pipeline libraries and linked pipelines will inherit from this.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15637 >
2023-04-17 22:43:37 +00:00
Lionel Landwerlin
3ca1fdc8b5
isl: don't set inconsistent fields for depth when using stencil only
...
Since Gfx12+ 3DSTATE_STENCIL_BUFFER gained its own
Width/Depth/Format/etc... fields. So don't set those fields but leave
the address/pitch to 0.
Issue found on simulation.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15637 >
2023-04-17 22:43:37 +00:00
Sil Vilerino
f7bd375e39
frontend/va: Add VAProfileH264High10
...
Acked-by: Ruijing Dong <ruijing.dong@amd.com>
Reviewed-by: Giancarlo Devich <gdevich@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22539 >
2023-04-17 22:26:20 +00:00
Sil Vilerino
407bd51b71
d3d12: Support PIPE_VIDEO_CAP_ENC_QUALITY_LEVEL
...
Only return we support 1 quality level. The point of returning this
cap is that vlVaEndPicture will check for it and otherwise overwrite
some rate control parameters with defaults
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22530 >
2023-04-17 21:58:35 +00:00
Sil Vilerino
99f96eb81b
d3d12: Support PIPE_VIDEO_CAP_MIN_WIDTH/HEIGHT caps
...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22530 >
2023-04-17 21:58:35 +00:00
Sil Vilerino
956c582d04
d3d12: Support QPMin/QPMax app params
...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22530 >
2023-04-17 21:58:35 +00:00
Sil Vilerino
b40aacc0c2
d3d12: Support rate control HRD and MaxFrameSize app params
...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22530 >
2023-04-17 21:58:35 +00:00
Sil Vilerino
358fea01a6
d3d12: Support QVBR rate control mode
...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22530 >
2023-04-17 21:58:35 +00:00
Sil Vilerino
9c4969a249
frontend/va: Allow distinction for Min/MaxQP params sent from app and frontend defaults
...
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22530 >
2023-04-17 21:58:35 +00:00
Sil Vilerino
44c53786a0
frontend/va: Allow distinction for HRD params sent from app and frontend defaults
...
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22530 >
2023-04-17 21:58:35 +00:00