[Bug 70613] Register spilling is slow

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sat Nov 23 13:18:04 PST 2013


https://bugs.freedesktop.org/show_bug.cgi?id=70613

--- Comment #7 from Kenneth Graunke <kenneth at whitecape.org> ---
Kevin,

The GLSL compiler has no support for non-inlined functions, nor do most (all?)
of the driver backends.  I have some code in a branch from 2011 that begins to
add support for proper functions in the compiler, but I never got to the
backend work.

It would be a huge amount of work to actually support non-inlined function
calls.

Eric's point is that our register spilling code is insanely stupid: if we fail
to allocate, it tries to spill a single register, and then starts over, having
to recompute the live interval analysis and register interference graphs.  This
is extremely wasteful and stupid.  If we fixed that, shaders that spill
wouldn't take obscenely long to compile.

We just haven't found time to care yet, since real world shaders that spill are
very rare.

--Ken

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-3d-bugs/attachments/20131123/0b7eacd3/attachment.html>


More information about the intel-3d-bugs mailing list