Timothy Arceri
7b9ec592aa
glsl: use ir_rvalue_visitor for function inlining
...
This allows us to drop some duplicate code that is already in the
ir_rvalue_visitor. It also allows us to better replace rvalues
and handle swizzle in the following patch without having to add
even more duplicate code.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19890 >
2022-12-08 05:22:27 +00:00
Yiwei Zhang
34b28cfb7d
venus: scrub ignored fields for descriptor writes for push descriptor
...
Fixes: 933ca11f1a ("venus: implement vkCmdPushDescriptorSetWithTemplateKHR")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Corentin Noël <corentin.noel@collabora.com >
Reviewed-by: Dawn Han <dawnhan@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20191 >
2022-12-08 01:56:35 +00:00
Iván Briano
e1ab7629f8
vulkan: VkPolygonMode has a bit more than two values
...
Fixes: 9d0ed9cbcc ("vulkan: Add more dynamic rasterizer state")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20212 >
2022-12-08 00:40:11 +00:00
Väinö Mäkelä
4035853523
hasvk: Report correct multisampling limits on gfx7
...
Some limits reported by hasvk were too high, which caused CTS tests to
fail.
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19393 >
2022-12-08 00:16:44 +00:00
Bas Nieuwenhuizen
513442dc32
aco: Add s_delay_alu support for GFX11+
...
Roughly copied from LLVM. This facilitates better ALU usage by
switching between waves when there is an ALU stall, which isn't
automatic anymore on GFX11.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19743 >
2022-12-07 22:05:25 +00:00
Bas Nieuwenhuizen
cd3bf56ace
aco: Add helper to get cycle info for an instruction.
...
For use in s_delay_alu tracking
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19743 >
2022-12-07 22:05:25 +00:00
Bas Nieuwenhuizen
352e492c7b
aco: Add isTrans helper.
...
For the s_delay_alu tracking.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19743 >
2022-12-07 22:05:25 +00:00
Samuel Pitoiset
bdb7fd69d6
radv: mark extendedDynamicState3SampleLocationsEnable as not required by Zink
...
Only dynamic blend equation support is still required.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19924 >
2022-12-07 16:43:17 +01:00
Samuel Pitoiset
06a65be3d4
radv: advertise extendedDynamicState3LineRasterizationMode
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19924 >
2022-12-07 16:43:15 +01:00
Samuel Pitoiset
1009276312
radv: add support for dynamic line rasterization mode
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19924 >
2022-12-07 16:43:13 +01:00
Samuel Pitoiset
f992e663c7
radv: advertise extendedDynamicState3RasterizationSamples
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19924 >
2022-12-07 16:43:11 +01:00
Samuel Pitoiset
a2fe4e9b04
radv: add support for dynamic rasterization samples
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19924 >
2022-12-07 16:43:09 +01:00
Samuel Pitoiset
c88d4037aa
radv: store the number of color/ds samples to the rendering state
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19924 >
2022-12-07 16:43:07 +01:00
Mihai Preda
613e9b8e7a
nir: fix digit order in print_bitset()
...
Also fix the leading curly for the new function definitions.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19570 >
2022-12-07 12:59:33 +00:00
Mihai Preda
0320dbaff5
nir: print shader_info bools with the value
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19570 >
2022-12-07 12:59:33 +00:00
Mihai Preda
da2d36a9d5
nir: print shader_info inputs/outputs as bit ranges
...
e.g.
inputs_read: 15-17
outputs_written: 0,32
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19570 >
2022-12-07 12:59:33 +00:00
Mihai Preda
89eca6a2fa
radeonsi: add AMD_DEBUG=elements for printing vertex elements
...
in si_create_vertex_elements()
This information is useful in debugging shader inputs/outputs
Sample output:
AMD_DEBUG=elements ./bin/arb_vertex_attrib_64bit-overlapping-locations shader -auto
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 16, divisor 0
elements[1]: offset 16, buffer_index 0, dual_slot 0, format 16, divisor 0
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 104, divisor 0
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 105, divisor 0
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 106, divisor 0
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 107, divisor 0
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 16, divisor 0
elements[1]: offset 16, buffer_index 0, dual_slot 0, format 16, divisor 0
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 104, divisor 0
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 105, divisor 0
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 106, divisor 0
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 107, divisor 0
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 107, divisor 0
elements[1]: offset 16, buffer_index 0, dual_slot 1, format 107, divisor 0
elements[2]: offset 32, buffer_index 0, dual_slot 1, format 105, divisor 0
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 107, divisor 0
elements[1]: offset 40, buffer_index 0, dual_slot 1, format 107, divisor 0
elements[2]: offset 56, buffer_index 0, dual_slot 1, format 105, divisor 0
elements[0]: offset 0, buffer_index 0, dual_slot 0, format 107, divisor 0
elements[1]: offset 64, buffer_index 0, dual_slot 1, format 107, divisor 0
elements[2]: offset 80, buffer_index 0, dual_slot 1, format 105, divisor 0
PIGLIT: {"result": "pass" }
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19570 >
2022-12-07 12:59:33 +00:00
Mihai Preda
6dd170e5a4
util: minor refactor _mesa_sha1_print()
...
should not change the output; avoids an additional printf()
for the separator.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19570 >
2022-12-07 12:59:33 +00:00
Mihai Preda
e9f3f80b1d
nir: print_shader_info(): brief output
...
Make the shader_info printing less verbose by skipping the fields that
are likely not used (being zero).
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19570 >
2022-12-07 12:59:33 +00:00
Mihai Preda
814ba7d13d
nir: print_shader_info: print stage-specific shader info
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19570 >
2022-12-07 12:59:33 +00:00
Mihai Preda
37b7233c15
nir: print_shader_info() print bitsets
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19570 >
2022-12-07 12:59:33 +00:00
Mihai Preda
4ed85c16f9
nir: print more in print_shader_info()
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19570 >
2022-12-07 12:59:33 +00:00
Mihai Preda
185e65f0f5
nir: extract print_shader_info() from nir_print_shader_annotated()
...
This is a refactoring, it is not supposed to change the printed output.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19570 >
2022-12-07 12:59:33 +00:00
Otavio Pontes
2e775b8bdb
anv/hasvk: Clamping Scissor Rect values in a valid range
...
On cmd_buffer_emit_scissor(), if VkViewport height or width are set to
a value lower than 1.0, y_max or x_max can be attributed negative values,
causing an overflow. That leads to ScissorRectangleYMax or
ScissorRectangleXMax to be set to values on an unsupported range.
Clamping x_max and y_max in the valid range solves the problem.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7471
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20200 >
2022-12-07 12:19:42 +00:00
Jonathan Marek
029919f3c8
tu: allow using resolve engine for SRGB MSAA resolves
...
CTS accepts this behavior since a1be5ce2c893f525da82bc28c6e81b17cacc5d14
Signed-off-by: Jonathan Marek <jonathan@marek.ca >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20120 >
2022-12-07 11:55:51 +00:00
Marek Olšák
3c3e5cc40d
st/mesa: stop using redundant st_context::vp,tcp,tep,gp,fp,cp
...
Use ctx->XXProgram._Current instead of the st_context variables.
v2: split from a bigger commit
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Marek Olšák
33ca53ac79
st/mesa: fix the glBitmap cache wrt FS, scissor, and clamp color changes
...
We need to track those states in the cache and flush the cache
if the next glBitmap call uses different states.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Marek Olšák
525c70c61a
st/mesa: don't flag ST_NEW_RASTERIZER for _NEW_PROGRAM
...
This should have no effect thanks to previous commits.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Marek Olšák
2a25b47c87
mesa: flag ST_NEW_RASTERIZER for !needs_texcoord_semantic if changing FS
...
This will be required with the next change, which will remove
the rasterizer state dependency on _NEW_PROGRAM.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Marek Olšák
7950661aa0
mesa: remove unused composite _NEW_* flags
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Marek Olšák
0a8d741b6d
mesa: don't flag _NEW_PROGRAM for "texture_unit -> sampler" mapping changes
...
st/mesa just reorders sampler views, so we only need to rebind those.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Marek Olšák
dbc9cb6995
mesa: set fewer flags for VertexProgram.TwoSideEnabled changes
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Marek Olšák
5acc0fa1d2
mesa: set fewer dirty flags for PointSizeEnabled state changes
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Marek Olšák
5b97b452af
mesa: flag ST_NEW_FS_CONSTANTS instead of _NEW_PROGRAM for ATI_fs constants
...
We only need to update the constant buffer.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Marek Olšák
4bc0edd1cf
st/mesa: update st_context::active_states in _mesa_update_state
...
just a code movement to a better place
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Marek Olšák
aaa4b0e618
st/mesa: move check_program_state code into _mesa_update_state
...
_mesa_update_state() receives the _NEW_PROGRAM flag, so we can handle
any shader changes there.
There may be some overhead reduction because gfx_shaders_may_be_dirty
is removed.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Marek Olšák
0311827337
st/mesa: always unbind constant buffer 0 when unbinding a shader
...
softpipe loads from an unbound and destroyed constant buffer for some reason
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Marek Olšák
a77c687cfb
mesa: clean up hairy code in state.c: update_program
...
No change in behavior.
Replace:
if (shader)
bind(shader);
else
bind(NULL);
With:
bind(shader);
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19859 >
2022-12-07 09:12:41 +00:00
Erik Faye-Lund
65406bfde1
zink: fix rebase-mistake
...
This should not have re-introduced this lowering, effectively reverting
dcf3ae72ab .
Fixes: 16971cd667 ("zink: add driver-workaround for missing gl_point_size")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20195 >
2022-12-07 08:54:09 +00:00
Lionel Landwerlin
e25e17dd0c
intel/fs: clamp per vertex input accesses to patchControlPoints
...
In a tesselation control shader where an input array is accessed using
the index gl_InvocationID, we can end up accessing elements beyond the
number of input vertices specified in the shader key.
This happens because of the lowering in nir_lower_indirect_derefs().
This lowering will affect compact variables which happens in this
case :
in gl_PerVertex {
vec4 gl_Position;
float gl_ClipDistance[1];
} gl_in[gl_MaxPatchVertices];
The lowered code produced by NIR is somewhat ineffecient (implements a
binary seach) :
if (gl_InvocationID < 16) {
if (gl_InvocationID < 8) {
if (gl_InvocationID < 4) {
vec4 vals = load_at_offset(0);
value = bcsel(vals, gl_InvocationID);
} else {
vec4 vals = load_at_offset(4);
value = bcsel(vals, gl_InvocationID - 4);
}
} else {
if (gl_InvocationID < 12) {
vec4 vals = load_at_offset(8);
value = bcsel(vals, gl_InvocationID - 8);
} else {
vec4 vals = load_at_offset(12);
value = bcsel(vals, gl_InvocationID - 12);
}
}
} else {
if (gl_InvocationID < 24) {
...
} else {
...
}
}
By default the gl_MaxPatchVertices must be set at 32 items and that's
what the lowering code will use to divide the access into chunks of 4.
But when running with 3 input vertices, this means we'll pull one more
item than what was delivered in the shader payload.
This triggers issues further down the register scheduling where the
g5UD (register for the 4th item) is overwritten by a previous SEND,
leading the URB read to use an invalid handle.
This pass clamps any access load_per_vertex_input intrinsic vertex
indice to (input_vertices - 1).
Fixes issues with tests like :
dEQP-VK.clipping.user_defined.clip_distance.vert_tess.*
Also fixes a hang with zink/anv on :
KHR-GL46.draw_elements_base_vertex_tests.AEP_shader_stages
v2: Don't replace source register
v3: Implement in NIR
v4: Clamp per vertex array sizes in NIR (Jason)
v5: Move the clamping on the intel compiler
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/9749 >
2022-12-07 08:16:03 +00:00
Jason Ekstrand
9d43aebcad
nir: Use nir_component_mask_t for nir_alu_dst::write_mask
...
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20193 >
2022-12-06 18:37:19 -06:00
Dave Airlie
57b7102ef9
glx: fix xshm check to init xshm_opcode.
...
Found and proposed by Ray Strode (halfline)
Fixes: 68e8940114 ("glx/drisw: use xcb instead of X to query connection")
Reviewed-by: Emma Anholt <emma@anholt.net >
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20188 >
2022-12-06 22:31:14 +00:00
Erik Faye-Lund
2ccf481c17
zink: don't use defunct custom-flag
...
We're no longer respecting this flag, so there's no need in setting it.
Fixes: 00dc0036bb ("zink: flatten out buffer creation usage flags codepath")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20183 >
2022-12-06 22:09:46 +00:00
Konstantin Seurer
91ed8fb13a
nir: Add missing includes
...
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14831 >
2022-12-06 20:17:58 +00:00
Dawn Han
0033ec1f69
venus: check against the Vulkan type rather than type index.
...
Signed-off-by: Dawn Han <dawnhan@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20064 >
2022-12-06 19:50:53 +00:00
Dawn Han
fbf4c6e43f
venus: fix deqp tests failed on iub descriptor type
...
Fixes: abae9d4831 ("Add the iub binding count tracking")
Signed-off-by: Dawn Han <dawnhan@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20064 >
2022-12-06 19:50:53 +00:00
Samuel Pitoiset
12f26b5e6d
radv: fix guardband if the polygon mode is points or lines
...
If points or lines are drawn using the polygon mode, the guardband
should be adjusted for large points/lines.
Cc: 22.3 mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20185 >
2022-12-06 19:30:51 +00:00
Mark Collins
12b0f7ac19
tu: Destroy disk_cache during tu_physical_device_finish
...
While running VK-CTS with valgrind, the application hit the max
thread count of 500. After further investigation, this was due to
multiple instances being created with the disk cache spinning up
worker threads which wouldn't be cleaned as disk_cache_destroy
wasn't being called.
Signed-off-by: Mark Collins <mark@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20178 >
2022-12-06 19:06:50 +00:00
Emma Anholt
f7d414b3e3
mesa: Add missing dep on generated marshal header in the tests build.
...
We lost the race in a recent MR of mine.
Fixes: 381e0b43d6 ("mesa: Add test to prevent windows.h to be included in shared headers")
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20170 >
2022-12-06 18:35:37 +00:00
Mark Collins
1c3671d2ba
ir3: Disallow noperspective texture preloads
...
The `coord_offset` pass is responsible for upgrading any eligible
texture loads into prefetches, but a texture prefetch's capabilities
are limited and cannot handle any interpolation modes aside from
`smooth`.
An exception is carved out for `flat` interpolation modes, but this
doesn't exclude upgrading `noperspective` texture loads and results
in perspective-corrected samples being provided that can severely
break applications depending on this behaviour.
Fixes incorrect lighting projection on Super Mario Odyssey on
Skyline Emulator.
Fixes incorrect dirt texture mapping on Portal 2 trace on Turnip and
Zink on Turnip.
Fixes incorrect lighter shadowing on Half Life 2 trace on Turnip.
Signed-off-by: Mark Collins <mark@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19842 >
2022-12-06 17:27:50 +00:00