| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Fixes glean/texture_srgb failure, bug #23449.
|
| |
|
|
|
|
|
|
| |
When a single-buffered window was resized the new window size was never
detected. This fix that, but there's still a bug which causes window
contents corruption for certain window sizes...
|
|
|
|
| |
Fall back to interpreter for now. This doesn't happen very often.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SOA dependencies can happen when a register is used both as a source and
destination and the source is swizzled. For example:
MOV T, T.yxwz; would expand into:
MOV t0, t1;
MOV t1, t0;
MOV t2, t3;
MOV t3, t2;
The second instruction will produce the wrong result since we wrote to t0
in the first instruction. We need to use an intermediate temporary to fix
this.
This will take more work to fix for all TGSI instructions. This seems to
happen with MOV instructions more than anything else so fix that case now
and warn on others.
Fixes piglit glsl-vs-loop test (when not using SSE). See bug 23317.
|
|
|
|
| |
Users of the parser can make use of this.
|
| |
|
|
|
|
| |
Fixes piglit fp-generic tests/shaders/generic/lrp_sat.fp, bug 23316.
|
|
|
|
|
|
|
|
|
|
| |
This prevents the driver from discarding a buffer when the whole buffer
is mapped for writing, but only a portion is effectively written.
This is a temporary fix, because WRITE shouldn't imply DISCARD.
The full fix implies using PIPE_BUFFER_USAGE_DISCARD, throughout
the code, and will go only into master.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This previously was used only for decomposed (POINT/LINE/TRI) primitives,
but for some time a full range of primitives could end up in here.
Fixes trivial/lineloop-clip on softpipe, among others.
(cherry picked from commit 87cd8a3b8a2407b30916be418ff2f95dfea5d2ad)
|
|
|
|
| |
Check that the dest surface/format is renderable.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
A comment alluded to this. Now it's checked.
|
|
|
|
|
|
| |
For the surface_copy() path require same format, no flipping and no stretching.
Fixes progs/tests/copypixrate -blit
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The leading underscore is meaningful... This function is used by
_warning and _error functions as well as the more common
debug_printf().
debug_printf (without underscore) gets turned off when DEBUG is
disabled, but warning/error messages still use this function to get
their message out.
(cherry picked from commit 0ac879dca797360570543d5bd0fd64f8fb8e566e)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
So that messages are in sync with stderr.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
More common. True fix would be to use whatever the screen supports though.
|
| |
|
|
|
|
| |
Same story as in the tgsi_dump.c code (see prev commit).
|
|
|
|
|
|
|
|
| |
Fixes TGSI dump output when front/back-face register is declared.
Also, add some assertions to make sure the semantic/interpolate string
arrays have as many elements as there are tokens in the p_shader_tokens.h
file. That should catch problems like this in the future.
|
|
|
|
| |
Includes the TGSI interpreter, but not the SSE/PPC/etc code generators.
|
|
|
|
|
| |
Also fix one case where a 32 bit depth value was incorrectly converted to a
combined depth/stencil value.
|
|
|
|
|
|
|
| |
Ensure no other thread is accessing a framebuffer when it is being destroyed by
acquiring both the global and per-framebuffer mutexes. Normal access only
needs the global lock to walk the linked list and acquire the per-framebuffer
mutex.
|
|
|
|
|
| |
Fixes wglthreads -- the 2nd thread MakeCurrent call was trying to flush
the first thread context while still in use.
|
|
|
|
|
|
|
|
|
|
| |
According to
http://blogs.msdn.com/oldnewthing/archive/2008/01/15/7113860.aspx
WM_SIZE is generated from WM_WINDOWPOSCHANGED by DefWindowProc so it
can be masked out by the application.
Also there were some weird bogus WM_SIZE 0x0 messages when starting
sharedtex_mt which we don't get like this.
|
|
|
|
|
|
|
|
|
|
| |
This is a tweak to a previous fix -- it's not necessary to actually
advertise this extension to prevent these games from crashing -- they
ignore the extension string anyway. It's sufficient to just have
GetProcAddress return some dummy function addresses for SwapInterval.
Given we don't really implement this funcitonality, this is a better
fix.
|
|
|
|
|
| |
Some applications create several HDCs for the same window, so spite the WGL
API is geared towards HDCs it is not reliable searching by HDC.
|
|
|
|
|
|
|
| |
According to http://unixwiz.net/techtips/outputdebugstring.html that's
how big the buffer is.
The 512bytes limitation is in kernel mode.
|
|
|
|
|
|
|
| |
Required as some applications
retrieve and call these functions regardless of the fact that we
don't advertise the extension and further more the results of
wglGetProcAddress are NULL.
|
|
|
|
|
|
|
|
| |
mesa allocates both frontface and pointcoord registers within the fog
coordinate register, by using swizzling. to make it cleaner and easier
for drivers we want each of them in its own register. so when doing
compilation from the mesa IR to tgsi allocate new registers for both
and add new semantics to the respective declarations.
|
|
|
|
| |
Do linear search only if prefix matches.
|
|
|
|
| |
buffer_flush_mapped_range.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
buffer_flush_mapped_range.
When a buffer was mapped for write and no explicit flush range was provided
the existing semantics were that the whole buffer would be flushed, mostly
for backwards compatability with non map-buffer-range aware code.
However if the buffer was mapped/unmapped with nothing really written --
something that often happens with the vbo -- we were unnecessarily assuming
that the whole buffer was written.
The new PIPE_BUFFER_USAGE_FLUSH_EXPLICIT flag (based from ARB_map_buffer_range
's GL_MAP_FLUSH_EXPLICIT_BIT flag) allows to clearly distinguish the
legacy usage from the nothing written usage.
|
| |
|