Age | Commit message (Collapse) | Author |
|
Previously for frame throttling we would wait on the first batch after
a swap before emitting another swap, because we had no hook after a
swap was emitted. This meant that if an app managed to squeeze
everything it for a frame had into one batch, it would lock-step with
the GPU. With the swapbuffers changes, we now have the entrypoint we
want.
This takes the WoW intro screen from 25% GPU idle and visibly jerky to
4-5% GPU idle and rather smooth. Other apps such as OpenArena have
run into this problem as well.
|
|
Sun cc 5.9 and later (__SUNPRO_C >= 0x590) support __attribute__ calls
for aligned, always_inline, noinline, pure, const, and malloc.
This commit includes updates to files that were regenerated by gl_XML.py
after adding the __SUNPRO_C checks to it
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
|
|
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
|
|
We initialized width/height/depth from pt->width0/height0/depth0 above.
|
|
|
|
based on Maciej's r300 patch.
|
|
|
|
as per 46dc6fd3ed5ef96cda53641a97bc68c3bc104a9f
|
|
|
|
|
|
Only enabled with KMS.
|
|
Only enabled with KMS.
|
|
Some of those still look atrocious. :T
|
|
|
|
I'm getting better at this, I think.
|
|
I fail at Sphinx-style ReST.
|
|
|
|
From IRC with Jakob.
|
|
The codepaths in the function were almost entirely different.
|
|
|
|
Fixes piglit vp-arl-constant-array-huge-overwritten.
|
|
This function was untested, sorry.
|
|
And fix some obvious mistakes introduced in the
previous instancing commit.
|
|
Fixes lockup triggered by this ingenious shader:
1: CALL :3
2: END
3: BGNSUB ...
|
|
|
|
The dimension index always addresses the second-dimension axis.
|
|
|
|
Allows declaring a contiguous block of immediates. Useful for
relative indexing.
|
|
It makes no difference with gcc -O3, for example.
|
|
|
|
Signed-off-by: Brian Paul <brianp@vmware.com>
|
|
|
|
the new relocation for CB_COLOR0_FRAG & CB_COLOR0_TILE add 4
dwords to the default command stream. Increase the prediction
default size to take this into account
|
|
FRAG & TILE buffer are unused but still they need
to be associated with a valid relocation so that
userspace can't try to abuse them to overwritte
GART and then try to write anywhere in system
memory.
|
|
rtype enums are different, DST_REG_OUTPUT got SRC_REG_CONSTANT in some
shaders and produced invalid output/hang
as TEX output is temp register always set out src to SRC_REG_TEMPORARY
|
|
We have broken 1000 FPS. Hell yes.
Heavily inspired by Marek's patch, but using pipebuffer instead of
a roll-your-own malloc.
|
|
As per classic r300.
Not sure why glean/polygonOffset still fails, but we do emit the same register
values as in classic.
|
|
|
|
|
|
Fix a wrong comment and remove an unnecessary #include.
|
|
4 samples should be enough for GLUT to be satisfied, and I think most
of the HW that does any MSAA, can do it.
Note that any pipe that doesn't multisample can just ignore the
corresponding flag in pipe_rasterizer_state.
|
|
Split from the next patch for bisection purposes only.
|
|
|
|
The kernel will decide on its own what to give us.
|
|
X Display was wrongly passed to eglCopyBuffers.
|
|
It uses a slow path to copy the render buffer of the surface to the
target pixmap. We might be able to create a pipe context for
EGLDisplay's use and use a blitter context for the purpose. It is left
for a future consideration.
|
|
The function may be used to support, for example,
EGL_MATCH_NATIVE_PIXMAP and EGL_KHR_image_pixmap.
|
|
A validate call asks for the buffers of a native surface. Using a mask
to represent the interested buffers is more intuitive. It also rules
out corner cases such as a single attachment being listed multiple
times.
|
|
egl_g3d calls st_set_framebuffer_surface on window resize. It updates
the renderbuffer's geometry and makes st_resize_framebuffer a no-op.
This commit improves the no-op check a little bit. It can do better
after gallium-fb-dimensions is merged.
|
|
This removes the last reference to winsys and is per mesa/st.
|