Corbin Simpson [Mon, 25 Jan 2010 18:52:19 +0000 (10:52 -0800)]
Revert "r300g,radeong: finish and enable the immediate mode"
This reverts commit
112239e9a66a155d36fe2ad0ab130e6f26eff298.
Luca Barbieri [Wed, 20 Jan 2010 01:39:27 +0000 (17:39 -0800)]
Fix compressed texture loads for non-minimal pitches again
My commit
eea6a7639f767b1d30b6ef1f91a9c49e3f3b78f0 does a memcpy of height
lines, but that's wrong because the texture has a block layout and we
must thus use the number of vertical blocks instead of the height.
Signed-off-by: Brian Paul <brianp@vmware.com>
Chia-I Wu [Mon, 25 Jan 2010 14:29:51 +0000 (22:29 +0800)]
winsys/drm: Correctly install EGL drivers.
Remove extraneous quotes that prevent some drivers to be installed when
there are more than one display in EGL_DISPLAYS.
José Fonseca [Mon, 25 Jan 2010 13:17:47 +0000 (13:17 +0000)]
pipebuffer: Reapply the mesa_7_7_branch's changes.
After the last mesa_7_7_branch merge the old master code remained,
instead of the newer mesa_7_7_branch's code. This commit makes both
branches match, modulo interface changes.
Note: future mesa_7_7_branch -> master merges will most likely hit
conflicts in these files. Unless otherwise stated, the mesa_7_7_branch
is the reference.
José Fonseca [Mon, 25 Jan 2010 11:54:54 +0000 (11:54 +0000)]
llvmpipe: Remove lp_tex_sample_c.c again.
Popped back to life in some merge. Not necessary even as a reference,
since it is identical to softpipe's sp_tex_sample.c with renamed symbols.
Corbin Simpson [Mon, 25 Jan 2010 09:12:30 +0000 (01:12 -0800)]
gallium-docs: Add note on scissor.
Marek Olšák [Sun, 17 Jan 2010 23:15:52 +0000 (00:15 +0100)]
r300g,radeong: finish and enable the immediate mode
Nearly 100% performance increase in glxgears.
Marek Olšák [Sun, 17 Jan 2010 22:13:51 +0000 (23:13 +0100)]
r300g: fix zero-area scissor
Marek Olšák [Sat, 16 Jan 2010 23:57:04 +0000 (00:57 +0100)]
r300g,radeong: set tiling flags in libdrm
Marek Olšák [Sat, 23 Jan 2010 16:19:44 +0000 (17:19 +0100)]
radeong: do not emit a zero-sized command stream
Fixing a hardlock introduced in
fcbd285e421903ee0a65f19f5d633b25b5923c24 and
reproducible with piglit/bugs/fdo23489.
Chia-I Wu [Mon, 25 Jan 2010 03:55:48 +0000 (11:55 +0800)]
egl: Native types are renamed in EGL 1.3.
Rename Native*Type to EGLNative*Type.
Chia-I Wu [Mon, 25 Jan 2010 03:39:44 +0000 (11:39 +0800)]
egl: Make resource void pointer in _eglCheckResource.
This emphasizes the fact that the resource to be checked could really be
invalid and have an unknown type.
Chia-I Wu [Mon, 25 Jan 2010 03:34:09 +0000 (11:34 +0800)]
egl: Install EGL headers.
Install EGL (and KHR) headers along with the library.
Chia-I Wu [Sat, 15 Aug 2009 14:58:13 +0000 (22:58 +0800)]
egl: Add support for EGL_KHR_image.
Individual drivers still need to implement the API hooks.
Chia-I Wu [Sat, 15 Aug 2009 14:57:47 +0000 (22:57 +0800)]
egl: Update headers.
Update to the current versions found at
http://www.khronos.org/registry/egl/. There is one modification in
khrplatform.h for GCC visibility.
Igor Oliveira [Sun, 24 Jan 2010 16:26:31 +0000 (12:26 -0400)]
egl: check if driver_name is null
Marcin Slusarz [Sun, 24 Jan 2010 18:27:59 +0000 (19:27 +0100)]
nv50: fix uninitialized variable in nv50_revdep_reorder
"unsafe" is never initialized, but used
(found by valgrind)
Marcin Slusarz [Wed, 20 Jan 2010 22:27:07 +0000 (23:27 +0100)]
nv50: fix crash in nv50_pre_pipebuffer_map (nv50_screen->cur_ctx)
nv50_pre_pipebuffer_map references screen->cur_ctx which points
to freed memory after the context is destroyed.
This crash is easily triggerable by progs/xdemos/glxcontexts.
Marcin Slusarz [Sun, 17 Jan 2010 22:51:22 +0000 (23:51 +0100)]
nouveau/winsys: be nice and close the device on destroy
Marcin Slusarz [Sun, 17 Jan 2010 22:50:50 +0000 (23:50 +0100)]
nouveau: fix winsys object leak
Christoph Bumiller [Sun, 24 Jan 2010 13:22:41 +0000 (14:22 +0100)]
nv50: fix handling of FragCoord input
Christoph Bumiller [Sat, 23 Jan 2010 17:35:27 +0000 (18:35 +0100)]
nv50: only flush texture caches on st request
Christoph Bumiller [Sun, 24 Jan 2010 14:13:17 +0000 (15:13 +0100)]
nv50: implement render_condition
Still not handling queries on multiple contexts though.
Chia-I Wu [Sun, 24 Jan 2010 13:04:35 +0000 (21:04 +0800)]
egl: Add and use make_library_path.
Add a platform specific function to turn a library name to a library
path. It is used to convert EGL_DRIVER or the default driver to a
library path that can be loaded.
Chia-I Wu [Sun, 24 Jan 2010 12:53:41 +0000 (20:53 +0800)]
egl: Remove _eglFindAPIs.
This function is not used and should have been removed by last commit.
My mistake.
Chia-I Wu [Sun, 24 Jan 2010 12:44:39 +0000 (20:44 +0800)]
egl: Remove unused helper functions.
_eglFillInConfigs and _eglFindAPIs have no user in Mesa and are unlikely
to find one soon. It should be fine to remove them.
Chia-I Wu [Sun, 24 Jan 2010 12:21:23 +0000 (20:21 +0800)]
egl: Remove unused casting functions.
_eglUIntToPointer and _eglPointerToUInt are no longer used.
Chia-I Wu [Sun, 24 Jan 2010 12:32:34 +0000 (20:32 +0800)]
egl: Make surfaces and contexts resources.
Turn _EGLSurface and _EGLContext into _EGLResource so that they can be
managed uniformly.
Chia-I Wu [Sun, 24 Jan 2010 12:30:04 +0000 (20:30 +0800)]
egl: Add _EGLResource and _EGLResourceType.
Resources are objects managed by a display. They can be linked to or
unlinked from a display. It is also possible to check if a resource is
valid.
Chia-I Wu [Sat, 23 Jan 2010 14:57:23 +0000 (22:57 +0800)]
egl: Move surface functions in egldisplay.[ch] to eglsurface.[ch]
Move functions to where they should be. There should be no real change
here.
Chia-I Wu [Sat, 23 Jan 2010 14:53:59 +0000 (22:53 +0800)]
egl: Move context functions in egldisplay.[ch] to eglcontext.[ch].
Move functions to where they should be. There should be no real change
here.
Chia-I Wu [Sun, 24 Jan 2010 03:03:20 +0000 (11:03 +0800)]
mesa/es: Improve Makefile rules.
Make sure glapi headers are cleaned when "make clean". Make sure all
sources depend on subdirs-stamp-tmp so that sources/headers are
generated first.
subdirs-stamp-tmp will be removed after a successful build. It might be
a problem when a build fails. But it is much better than where we
currently are: glapi headers are never cleaned or re-generated.
Dave Airlie [Sun, 24 Jan 2010 05:37:23 +0000 (15:37 +1000)]
r300g: avoid the use of goto
I was being lazy on Sunday morning, Droste on irc called me on it ;-)
Dave Airlie [Sun, 24 Jan 2010 04:58:45 +0000 (14:58 +1000)]
r300g: fix flushing harder.
I swear ipers runs here after this commit.
After we flush we need to redo the space check
Chia-I Wu [Sat, 23 Jan 2010 12:18:43 +0000 (20:18 +0800)]
egl: Install drivers to ${libdir}/egl.
Install EGL drivers to EGL_DRIVER_INSTALL_DIR, which is default to
${libdir}/egl.
Chia-I Wu [Sat, 23 Jan 2010 12:09:20 +0000 (20:09 +0800)]
st/vega: Clean up Makefile.
Chia-I Wu [Sat, 23 Jan 2010 12:08:02 +0000 (20:08 +0800)]
st/es: Pass -linker and -ldflags to mklib.
Dave Airlie [Sat, 23 Jan 2010 10:07:08 +0000 (20:07 +1000)]
r300: fix wrong call in last commit
Dave Airlie [Sat, 23 Jan 2010 09:35:42 +0000 (19:35 +1000)]
r300g: fix up buffer emission ordering.
This fixes the code space checking VBOs, then resetting the space list
and space checking other buffers. it fixes demos/ipers
Signed-off-by: Dave Airlie <airlied@redhat.com>
Dave Airlie [Sat, 23 Jan 2010 02:57:51 +0000 (12:57 +1000)]
r300: only enable half floats on r500s.
Thank to MAD for point it out.
Dave Airlie [Sat, 23 Jan 2010 02:29:33 +0000 (12:29 +1000)]
Merge branch 'arb_half_float_vertex'
Chia-I Wu [Sat, 23 Jan 2010 02:31:21 +0000 (10:31 +0800)]
Revert "add segl"
This reverts commit
fe33b7083b0081b91ee338acbe966400c6b9a7b9. It was
not supposed to be pushed yet.
Dave Airlie [Fri, 22 Jan 2010 21:38:06 +0000 (07:38 +1000)]
r300: half float support
Signed-off-by: Dave Airlie <airlied@redhat.com>
Dave Airlie [Mon, 18 Jan 2010 06:30:56 +0000 (16:30 +1000)]
i965: add support for ARB_half_float_vertex
enables the extension on i965 and adds support to the draw upload for
the vertex format.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Dave Airlie [Mon, 18 Jan 2010 06:29:31 +0000 (16:29 +1000)]
mesa: add core support for ARB_half_float_vertex.
Adds the extension to the list + support to the APIs.
also add t_draw.c support to convert for sw rast.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Dave Airlie [Mon, 18 Jan 2010 06:27:27 +0000 (16:27 +1000)]
glapi: add GL_HALF_FLOAT enum support.
Regenerate enums files and GLX indirect.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Dave Airlie [Mon, 18 Jan 2010 06:25:30 +0000 (16:25 +1000)]
progs: add trivial ARB_half_float_vertex support.
This is just a trivial port of vp-array.c
Signed-off-by: Dave Airlie <airlied@redhat.com>
Chia-I Wu [Sat, 23 Jan 2010 02:23:37 +0000 (10:23 +0800)]
glapi: Include glheader.h in glapi_nop.c.
In addition to OpenGL headers, glheader.h also defines OpenGL ES types
that are used in core Mesa or ES overlay.
Chia-I Wu [Fri, 22 Jan 2010 16:11:48 +0000 (00:11 +0800)]
add segl
Brian Paul [Sat, 23 Jan 2010 01:47:23 +0000 (18:47 -0700)]
glapi: define GLfixed, GLclampx types for ES 1
I'm not 100% sure this is the best fix, but it seems OK.
Brian Paul [Sat, 23 Jan 2010 01:35:36 +0000 (18:35 -0700)]
svga: fix up breakage from earlier 7.7 merge
Brian Paul [Sat, 23 Jan 2010 00:56:35 +0000 (17:56 -0700)]
st/mesa: fix incorrect freeing of drawpixels vertex shaders
These shaders are not st_vertex_shaders, but tgsi ureg shaders.
Fixes fd.o bug 25959.
Brian Paul [Sat, 23 Jan 2010 00:20:37 +0000 (17:20 -0700)]
gallium/util: add missing util/u_bitmask.c to Makefile
Brian Paul [Fri, 22 Jan 2010 23:23:50 +0000 (16:23 -0700)]
mesa: use memcpy() in _mesa_ProgramEnv/LocalParameters4fvEXT()
Brian Paul [Fri, 22 Jan 2010 23:18:56 +0000 (16:18 -0700)]
mesa: use switch in _mesa_DeletePrograms()
Brian Paul [Fri, 22 Jan 2010 23:09:03 +0000 (16:09 -0700)]
Merge branch 'mesa_7_7_branch'
Conflicts:
src/mesa/shader/prog_execute.c
Brian Paul [Fri, 22 Jan 2010 22:41:08 +0000 (15:41 -0700)]
mesa: re-implement _mesa_ProgramEnvParameter4fvARB() with memcpy()
This is faster and ensures that NaN floats get stored properly.
Before, NaN values (which might be used with UP2H, UP2US, UP4B and
UP4UB) weren't getting stored properly with gcc -O3.
This is the second part of the fix for the piglit fp-unpack-01 failure
(bug 25973).
Brian Paul [Fri, 22 Jan 2010 22:36:28 +0000 (15:36 -0700)]
mesa: use new fetch_vector1ui() function for 'unpack' GPU instructions
The UP2H, UP2US, UP4B and UP4UB instructions interpret the float
registers as integers. With gcc -O3 some bits were getting mixed up
somewhere. This is part of the fix for the piglit fp-unpack-01 test
failure (bug 25973).
Brian Paul [Fri, 22 Jan 2010 20:07:04 +0000 (13:07 -0700)]
xlib/softpipe: more buffer free fixes
The previous memory leak fix didn't always work properly.
Now check the xm_buffer::smh field (now documented!) to
see if the buffer points to shared memory.
Alan Hourihane [Fri, 22 Jan 2010 19:32:12 +0000 (19:32 +0000)]
Remove obsolete file
Brian Paul [Fri, 22 Jan 2010 19:27:25 +0000 (12:27 -0700)]
gallium/aux: re-add pb_buffer_fenced.[ch] accidentally remove during merge
Brian Paul [Fri, 22 Jan 2010 19:17:02 +0000 (12:17 -0700)]
Merge branch 'mesa_7_7_branch'
Conflicts:
src/gallium/auxiliary/draw/draw_context.c
src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
src/gallium/auxiliary/pipebuffer/Makefile
src/gallium/auxiliary/pipebuffer/SConscript
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/gallium/auxiliary/tgsi/tgsi_scan.c
src/gallium/drivers/i915/i915_surface.c
src/gallium/drivers/i915/i915_texture.c
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/llvmpipe/lp_tex_sample_c.c
src/gallium/drivers/llvmpipe/lp_texture.c
src/gallium/drivers/softpipe/sp_prim_vbuf.c
src/gallium/state_trackers/xorg/xorg_dri2.c
src/gallium/winsys/drm/intel/gem/intel_drm_api.c
src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c
src/gallium/winsys/drm/radeon/core/radeon_drm.c
src/gallium/winsys/drm/vmware/core/vmw_screen_dri.c
src/mesa/state_tracker/st_cb_clear.c
Brian Paul [Fri, 22 Jan 2010 18:45:40 +0000 (11:45 -0700)]
gallium/draw: apply DRAW_PIPE_FLAG_MASK to all vertex elements
Depending on first/last provoking vertex either the first or last
element/index may have the extra DRAW_PIPE_x flags. Mask off those
bits for all vertex elements to be safe (esp. for the quad case).
This may be overly cautious, but it's a cheap operation.
Fixes a segfault caused by large/bogus vertex indexes otherwise.
Brian Paul [Fri, 22 Jan 2010 18:39:19 +0000 (11:39 -0700)]
gallium/draw: added comments, whitespace fixes
Alan Coopersmith [Fri, 22 Jan 2010 17:38:06 +0000 (10:38 -0700)]
mesa: Add "shader/" path to #include statements in shader parser/lexer sources
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Note sure why the compiler's -I paths aren't doing the job, but this is OK.
Signed-off-by: Brian Paul <brianp@vmware.com>
Brian Paul [Fri, 22 Jan 2010 16:35:12 +0000 (09:35 -0700)]
glapi: clean-up and simplify glapi_nop.c code
Removed _glapi_noop_enable_warnings() and _glapi_set_warning_func().
Just check the DEBUG env vars and call fprintf(stderr) with a warning
message instead.
Brian Paul [Fri, 22 Jan 2010 16:32:12 +0000 (09:32 -0700)]
glapi: split the no-op dispatch code into new glapi_nop.c file
This unclutters the glapi.c file a bit.
Brian Paul [Fri, 22 Jan 2010 15:15:14 +0000 (08:15 -0700)]
glapi: fix int->pointer conversions warnings in no-op functions
Brian Paul [Thu, 21 Jan 2010 20:46:53 +0000 (13:46 -0700)]
progs/xdemos: add z/Z keys for scaling the rendering
Brian Paul [Thu, 21 Jan 2010 20:08:21 +0000 (13:08 -0700)]
gallium/draw: fix-up comments, whitespace
Brian Paul [Thu, 21 Jan 2010 20:02:56 +0000 (13:02 -0700)]
gallium/draw: replace int with boolean
Ruediger Oertel [Fri, 22 Jan 2010 14:53:27 +0000 (06:53 -0800)]
Fix PowerPC related typo in spantmp2.h
Signed-off-by: Matthias Hopf <mhopf@suse.de>
Signed-off-by: Brian Paul <brianp@vmware.com>
Andre Maasikas [Fri, 22 Jan 2010 14:55:47 +0000 (16:55 +0200)]
r600: enable sampler lod* bits
bits, settings derived from testing, might contain some errors...
Andre Maasikas [Fri, 22 Jan 2010 12:06:10 +0000 (14:06 +0200)]
r600: update vport z & clipping when depth_clamp is changed
fixes piglit depth_clamp
Andre Maasikas [Fri, 22 Jan 2010 11:47:31 +0000 (13:47 +0200)]
r600: fix brownbag, only align if we are dealing with cubemap
Andre Maasikas [Fri, 22 Jan 2010 11:32:04 +0000 (13:32 +0200)]
r600: cubemap levels seem to be aligned to 8 images
Andre Maasikas [Fri, 22 Jan 2010 10:57:01 +0000 (12:57 +0200)]
radeon/fbo: flush rendering before generating mipmaps
or maybe should flush(also) in finish_render_texture...
Andre Maasikas [Mon, 4 Jan 2010 07:26:46 +0000 (09:26 +0200)]
radeon/fbo: use correct depth texture offset for depth textures
Andre Maasikas [Fri, 22 Jan 2010 10:31:24 +0000 (12:31 +0200)]
r600: enable draw_offset
fixes some fbo cases (mipmaps, cube textures ..)
Chia-I Wu [Fri, 22 Jan 2010 09:10:28 +0000 (17:10 +0800)]
docs: Update sourcetree.html for EGL and the state trackers.
Chia-I Wu [Fri, 22 Jan 2010 08:31:43 +0000 (16:31 +0800)]
st/egl_g3d: Rename to st/egl.
Simply the name to egl.
Chia-I Wu [Fri, 22 Jan 2010 08:25:11 +0000 (16:25 +0800)]
winsys/drm: Update the options of mklib in Makefile.egl_g3d.
Pass -linker, -ldflags, and $(MKLIB_OPTIONS) to mklib.
Chia-I Wu [Fri, 22 Jan 2010 08:02:39 +0000 (16:02 +0800)]
egl: Remove egl_softpipe.
With the addition egl_x11_swrast, egl_softpipe is sort of deprecated.
The new driver serves the same purpose as egl_softpipe does. It is
based on egl_g3d and provides more features.
Chia-I Wu [Fri, 22 Jan 2010 07:51:51 +0000 (15:51 +0800)]
winsys/drm: Add swrast.
The swrast winsys always returns NULL when drm_api_create is called.
José Fonseca [Fri, 22 Jan 2010 05:18:25 +0000 (21:18 -0800)]
vmware/core: Update for pipebuffer changes.
In particular, delay patching GMR relocations until the buffers are
validated, since the buffers relative offset can only be established then.
Vinson Lee [Fri, 22 Jan 2010 07:41:57 +0000 (23:41 -0800)]
st/mesa: Remove unnecessary header from st_cb_viewport.c.
Chia-I Wu [Fri, 22 Jan 2010 07:18:45 +0000 (15:18 +0800)]
st/egl: Remove the egl state tracker.
The egl_g3d state tracker has support for KMS, and the support is based
on the egl state tracker. As egl_g3d provides more features, it should
be better to keep only egl_g3d to unify the efforts.
Vinson Lee [Fri, 22 Jan 2010 07:24:40 +0000 (23:24 -0800)]
progs/trivial: Remove unnecessary header from tri-fbo-tex-mip.c.
Chia-I Wu [Fri, 22 Jan 2010 07:12:19 +0000 (15:12 +0800)]
egl: Remove USING_EGL and the related drivers.
They do not build for a long while and there seems to be no active
users. It might be better for them to live in the git histroy.
Chia-I Wu [Fri, 22 Jan 2010 07:07:58 +0000 (15:07 +0800)]
egl: Remove the demo driver.
The demo driver has outdated. It is suggested to look at any of the
drivers that is functioning.
Vinson Lee [Fri, 22 Jan 2010 07:09:06 +0000 (23:09 -0800)]
i915g: Remove unnecessary header.
Vinson Lee [Fri, 22 Jan 2010 07:07:29 +0000 (23:07 -0800)]
pipebuffer: Remove unnecessary header.
Chia-I Wu [Fri, 22 Jan 2010 06:41:00 +0000 (14:41 +0800)]
st/egl_g3d: Use glxinit.c from egl_xdri.
It is used to fetch the GLX visuals/fbconfigs. Use egl_xdri's version
to avoid duplication. It might be better to rewrite that part though.
Chia-I Wu [Fri, 22 Jan 2010 07:05:31 +0000 (15:05 +0800)]
docs: Update the status of egl_xdri.
Mention that it also supports DRISW.
Chia-I Wu [Fri, 22 Jan 2010 06:15:14 +0000 (14:15 +0800)]
egl_xdri: Add support for DRISW.
Try DRISW if both DRI2 and DRI fail. It can also be forced by setting
EGL_SOFTWARE. When DRISW is used, single-buffered modes are ignored.
Vinson Lee [Fri, 22 Jan 2010 06:57:12 +0000 (22:57 -0800)]
draw: Remove unnecessary headers.
Chia-I Wu [Fri, 22 Jan 2010 06:28:23 +0000 (14:28 +0800)]
egl_xdri: Flush commands on context switch and buffer swap.
The corresponding DRI functions does not flush for us.
Chia-I Wu [Fri, 22 Jan 2010 06:53:31 +0000 (14:53 +0800)]
egl_xdri: Report only OpenGL support.
It reported OpenGL ES support because some demos did not set
EGL_RENDERABLE_TYPE correctly. The demos are fixed.
Chia-I Wu [Fri, 22 Jan 2010 06:13:25 +0000 (14:13 +0800)]
egl_xdri: Do not reinitialize in __glXInitialize.
__glXInitialize should return the same GLX display for the same X
display. This issue is triggered by
a35f6bb207efe3c959bbd16a37f2049e5aceeea9.
Chia-I Wu [Fri, 22 Jan 2010 06:23:22 +0000 (14:23 +0800)]
egl_glx: Report only OpenGL support.
It reported OpenGL ES support because some demos did not set
EGL_RENDERABLE_TYPE correctly. The demos are fixed.