Skip to content
Snippets Groups Projects
Commit 12015dbc authored by Dave Airlie's avatar Dave Airlie Committed by Juan A. Suárez
Browse files

r600: implement callstack workaround for evergreen.


This is ported from the sb backend, there are some issues with
evergreen stacks on the boundary between entries and ALU_PUSH_BEFORE
instructions.

Whenever we are going to use a push before, we check the stack
usage and if we have to use the workaround, then we switch to
a separate push.

I noticed this problem dealing with some of the soft fp64 shaders,
in nosb mode, they are quite stack happy.

This fixes all the glitches and inconsistencies I've seen with them

Reviewed-by: default avatarRoland Scheidegger <sroland@vmware.com>
Tested-by: default avatarElie Tournier <elie.tournier@collabora.com>
Cc: <mesa-stable@lists.freedesktop.org>
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
(cherry picked from commit 5d4fbc2b)
[Juan A. Suarez: resolve trivial conflicts]
Signed-off-by: default avatarJuan A. Suarez Romero <jasuarez@igalia.com>

Conflicts:
	src/gallium/drivers/r600/r600_shader.c
parent 0eaa2fc8
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment