Commit Graph

23072 Commits

Author SHA1 Message Date
Brian Paul a185bcbdec mesa: move gl_array_attrib::_MaxElement to gl_array_object::_MaxElement
This value is per array object.
2009-05-21 09:17:08 -06:00
Brian Paul 899c524a49 vbo: s/8/MAX_TEXTURE_COORD_UNITS/ 2009-05-21 09:17:08 -06:00
Jonathan Adamczewski 2c007517b5 cell: perform triangle cull a little earlier
In spu_tri.c:setup_sort_vertices() triangles are culled after the
vertices are sorted.  This patch moves the check a little earlier
and performs the actual check a little faster through intrinsics and
a little trickery.

Reduced code size and less work is done before a triangle is deemed
OK to skip.
2009-05-21 08:19:00 -06:00
Jonathan Adamczewski b4824520ec cell: unroll inner loop of spu_render.c:cmd_render()
It was taking approximately 50 cycles to extract the vertex indices,
calculate the vertex_header pointers and call tri_draw() for each
three vertices - .

Unrolled, it takes less than 100 cycles to extract, unpack,
calculate pointers and call tri_draw() eight times.  It does have a
nasty jump-tabled switch.  I'm sure that there's a better way...

Code size of spu_render.o gets larger due to the extra constants and
work in the inner loop, there are extra stack saves and loads
because there are more registers in use, and an assert.  spu_tri.o
gets a little smaller.
2009-05-21 08:18:03 -06:00
Brian Paul 5b27b4ad37 st: add support for GL_EXT_vertex_array_bgra 2009-05-21 08:15:54 -06:00
Corbin Simpson 3af0952bc9 r300-gallium: r500-fs: POW.
I feel so unclean.
2009-05-20 23:22:16 -07:00
Corbin Simpson cfd241e8a6 r300-gallium: r500-fs: LRP.
Goddammit. This cannot be the "easy way." :C
2009-05-20 21:52:11 -07:00
Corbin Simpson f1f0893eba r300-gallium: r500-fs: Combine function. 2009-05-20 16:53:45 -07:00
Corbin Simpson d67fb5ea1d r300-gallium: Prevent assert when fogcoords are present.
Seems like this file is the source of all bad logic. (Pun intended.)
2009-05-20 16:05:11 -07:00
Corbin Simpson d04c85d01b r300-gallium: Another constantbuf shader recompile test.
Less briefly... Shaders need to be recompiled if their constantbuf
offsets have changed. However, since we only change them from shaders if
immediates need to be emitted, we shouldn't bother if the shader doesn't
use immediates.
2009-05-20 14:55:03 -07:00
Corbin Simpson 4151c0ea91 r300-gallium: Raise constantbuf limits.
Still not correct, but really I don't care.
2009-05-20 14:38:22 -07:00
Corbin Simpson 364a4a8293 r300-gallium: fs: Remove cruft from way back when. 2009-05-20 14:17:27 -07:00
Corbin Simpson 0ba7f76233 radeon-gallium: Add surface_buffer_create callback. 2009-05-20 13:21:17 -07:00
Corbin Simpson 9e8de1b911 r300-gallium: Make surface_copy actually load the texture in shader. 2009-05-20 12:22:24 -07:00
Corbin Simpson b22b6f0743 r300-gallium: Add missing R481 PCI ID.
Per 74cb2aba on xf86-video-ati.
2009-05-20 12:08:00 -07:00
Corbin Simpson 65946ef081 r300-gallium: Make surface_copy work, and refactor buffer validation. 2009-05-20 11:46:26 -07:00
Corbin Simpson 4550423211 radeon-gallium: Don't permit reading and writing a BO in one CS.
This fixes some silent problems in current libdrm_radeon.

surface_copy still locks up hard.
2009-05-20 07:18:08 -07:00
Brian Paul 0c75cb5afe st: reformatting, comments, var renaming 2009-05-19 20:05:28 -06:00
Brian Paul d0eccc4187 Merge branch 'mesa_7_5_branch' 2009-05-19 10:07:45 -06:00
Mathias Fröhlich 042d9a5132 mesa: allow depth/stencil textures to be attached to GL_STENCIL_ATTACHMENT
See sourceforge bug #2793846.
2009-05-19 09:59:01 -06:00
Brian Paul c99a60c40d mesa: assign trb->Base.StencilBits in update_wrapper().
When we render to a depth/stencil texture there are stencil bits.
2009-05-19 09:57:01 -06:00
Brian Paul 43d8ace88d mesa: print more info when valid_texture_object() fails 2009-05-19 09:21:39 -06:00
Jakob Bornecrantz bd59dd69ba trace: Improve shader wrapping 2009-05-18 20:54:09 +01:00
Jakob Bornecrantz 7d11a392d7 st/dri: Only create new textures if drawable has changed 2009-05-18 20:54:09 +01:00
Corbin Simpson d0639d067e r300-gallium: Fix (another) wrong value in MSPOS.
Again, thanks to agd5f.
2009-05-18 09:51:10 -07:00
Corbin Simpson 026f4c97dc radeon-gallium: Remove BO validation debug.
It appears that that area of code "just works" much like classic Mesa's
version, so might as well not waste scrollback on it.
2009-05-18 09:51:10 -07:00
Corbin Simpson 5236ea3900 r300-gallium: Cleanup viewport state setup. 2009-05-18 09:51:09 -07:00
Corbin Simpson 301d238c1a r300-gallium: Always do VTE, never software viewport.
This makes glxgears draw properly with SW TCL.
2009-05-18 09:51:09 -07:00
Brian Paul edfbf7dccb Merge branch 'mesa_7_5_branch'
Conflicts:

	Makefile
	src/mesa/main/version.h
2009-05-18 10:36:50 -06:00
Brian Paul 7ce105d2e6 st/mesa: fix incorrect src/dst stride params to _mesa_generate_mipmap_level()
The stride needs to be in texels, not bytes.
2009-05-18 10:28:04 -06:00
Brian Paul adabd0e81e mesa: comments for _mesa_generate_mipmap_level() 2009-05-18 10:27:31 -06:00
Brian Paul 30320f0afb softpipe: add texture target sanity check assertion 2009-05-18 10:13:44 -06:00
Brian Paul 14e5bff97b st: fix incorrect target parameter to screen->is_format_supported()
We were passing a GL texture target instead of a pipe_texture_target enum.
2009-05-18 10:12:40 -06:00
Brian Paul df37cde309 mesa: added linux-osmesa-static config
Contributed by Nicolas Noble.  See SF bug #2792536
2009-05-18 08:47:22 -06:00
Brian Paul 6e61700541 docs: link to 7.5 relnotes 2009-05-18 07:17:46 -06:00
Brian Paul da0d4e1db6 docs: emphasize the incomplete status of the nouveau/R300 gallium drivers 2009-05-18 07:17:36 -06:00
Aidan Thornton f2445dfd85 Initialize psp->waitX/waitGL for swrast_dri.so.
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=21053 .
2009-05-18 12:47:00 +02:00
Corbin Simpson 27206add27 r300-gallium: Enable GLSL for r500.
Before you get all excited, this is *not* to be construed as actual support
for GLSL shaders. The GL version is still 1.3, and stuff still sucks. Just
flicking it on so that it can be tested and developed a bit easier.
2009-05-17 21:41:25 -07:00
Corbin Simpson 9569221563 r300-gallium: r500-fs: DDX and DDY support.
Oh, look, GLSL instructions. I wonder what I'll do next.
2009-05-17 21:40:16 -07:00
Corbin Simpson 0036f2ccba dri-gallium: Add GLSL support.
Oh, look, it's more features. :3
2009-05-17 21:39:11 -07:00
Corbin Simpson 06a7b798f2 r300-gallium: Add half-right COS and SIN.
HW trig does a premultiply by 2pi, where Mesa does another premultiply by pi.
This is a problem.
2009-05-17 21:10:07 -07:00
Corbin Simpson 572d7d1358 r300-gallium: Size mismatch. 2009-05-17 20:49:39 -07:00
Corbin Simpson 6a40d1e9d9 r300-gallium, radeon-gallium: Nuke gb_pipes from orbit.
See the previous commit for an explanation. This is just all the support code
for GB_TILE_CONFIG.
2009-05-17 17:03:15 -07:00
Corbin Simpson d6e085bd76 r300-gallium: Don't set GB_TILE_CONFIG (in userspace.)
This accompanies kernel patches that make GB_TILE_CONFIG's various members
completely controlled in DRM.

GB_TILE_CONFIG has the following controls:
 - The number of GB (pixel) pipes enabled
 - The size and style of tiling
 - Subpixel precision (either 1/12 or 1/16)

Per airlied and glisse, userspace and kernel will now agree (always) on
a subpixel precision of 1/12, and tiling will always be kernel-controlled.
2009-05-17 16:44:39 -07:00
Corbin Simpson 60665ae627 r300-gallium: Clean up more invariant state.
GA_ENHANCE is now the kernel's problem.
2009-05-17 13:23:39 -07:00
Corbin Simpson e5f5390f4b r300-gallium: Update XXX.
Lops work fine as long as HW TCL is off. (I think I know why.)
2009-05-17 12:51:18 -07:00
Corbin Simpson fbcfcd9f5c r300-gallium: Correct default MSPOS.
Per agd5f.
2009-05-17 11:58:53 -07:00
Corbin Simpson 45435abcb9 r300-gallium: vs: Fix vert shader init.
Makes the last three commits suck much less. :3
2009-05-17 10:34:41 -07:00
Corbin Simpson 8dae8f28e5 r300-gallium: r500-fs: Enable depth writes, kinda.
Should work, but doesn't. Hm.
2009-05-17 10:30:59 -07:00
Corbin Simpson 7e97219ff8 r300-gallium: Comment out useless debugging code.
Those parts are nearly solid compared to the shaders.
2009-05-17 09:44:14 -07:00