Commit graph

35243 commits

Author SHA1 Message Date
Marek Olšák
57c3f70018 util: fix a memory leak in blitter 2010-06-27 15:13:14 +02:00
Marek Olšák
0a19d57b84 r300g: separate the hyperz state and pipelined FB regs out of the FB state 2010-06-27 15:13:14 +02:00
Marek Olšák
808ad22592 r300g: release referenced objects in destroy_context 2010-06-27 15:13:13 +02:00
Marek Olšák
639a7daa85 r300g: reference surfaces in set_framebuffer_state 2010-06-27 15:13:13 +02:00
Marek Olšák
408a886127 r300g: group debug messages 2010-06-27 15:13:13 +02:00
Marek Olšák
0a9510814e r300g: turn rasterizer state into a command buffer 2010-06-27 15:13:13 +02:00
Marek Olšák
c200c47e6c r300g: move emission of the MSPOS regs into the framebuffer state
Now the question is whether we are allowed to ignore gl_rasterization_rules and
pipe_rasterizer_state::multisample. The former is invariant anyway and
I think the latter would need re-emitting the AA state which is quite costly,
considering that it implicitly flushes the whole pipeline (all AA regs
in the AA state are *unpipelined*).
2010-06-27 15:13:13 +02:00
Marek Olšák
bb47d1c26f r300g: turn invariant state into a command buffer 2010-06-27 15:13:12 +02:00
Marek Olšák
8959f48bce r300g: initialize some crucial state in the first CS 2010-06-27 15:13:08 +02:00
Marek Olšák
fcacc6a076 r300g: introduce VAP invariant state
Unlike other invariant states, this one must be emitted after VAP flush.
2010-06-26 17:57:20 +02:00
Marek Olšák
8350d1d6f1 r300g: immediate mode cleanup 2010-06-26 17:47:32 +02:00
Marek Olšák
5acdfdbf42 r300g: update my notes about fastfill and zbuffer compression 2010-06-26 17:43:58 +02:00
Marek Olšák
f39800b339 r300g: enum r300_blitter_op is a bitmask 2010-06-26 17:35:56 +02:00
Marek Olšák
8924201530 draw: fix build with llvm and make 2010-06-26 14:01:41 +02:00
Vinson Lee
ecd8c66d6a mesa: Remove unnecessary header. 2010-06-26 00:47:52 -07:00
Vinson Lee
2943f1ed8c st/mesa: Remove unnecessary headers. 2010-06-26 00:38:05 -07:00
Vinson Lee
3443b581fb draw: Remove unnecessary header. 2010-06-26 00:31:57 -07:00
Zack Rusin
4503bd33da draw: deleted by mistake 2010-06-25 20:06:53 -04:00
Zack Rusin
a5c44986a3 draw: initialize headers in the none post paths as well 2010-06-25 19:58:09 -04:00
Zack Rusin
8ebfcf31eb draw: limit the number of vertex shader variants kept around
we used to create and cache unltimited number of variant, this
change limits the number of variants kept around to a fixed number.
the change is based on a similar patch by Roland for llvmpipe fragment
shaders.
2010-06-25 19:33:27 -04:00
Zack Rusin
5cf1921e6d draw: initialize vertex header 2010-06-25 19:33:27 -04:00
Brian Paul
4ae530370d gallium/util: fix pipe_sampler_view_reference() calls
The conditionals aren't needed.
2010-06-25 14:12:34 -06:00
Brian Paul
e099ed2c64 softpipe: rename a var 2010-06-25 09:56:22 -06:00
Chia-I Wu
7a9246c5d7 draw: Work around an invalid write.
SSE vertex shader does not seem to honor the execution mask.  Pad the
output array as a workaround.
2010-06-25 23:17:18 +08:00
Brian Paul
a879d14ecf mesa: initialize extension string when context is first bound
...instead of waiting until glGetString(GL_EXTENSIONS) is called.
This fixes a problem where the MESA_EXTENSION_OVERRIDE env var is
ignored if the app never calls glGetString(GL_EXTENSIONS).

NOTE: this is a candidate patch for the 7.8 branch.
2010-06-25 08:47:33 -06:00
Brian Paul
cc8c142e2a llvmpipe: fix comment typo 2010-06-25 08:47:22 -06:00
Brian Paul
fd60bf8e33 softpipe: fix comment typo 2010-06-25 08:47:22 -06:00
Marek Olšák
5d1cc93077 r300g: a couple more chipsets do not have HiZ RAM 2010-06-24 22:24:22 +02:00
Corbin Simpson
474dc40fb4 gallium/docs: Vertex data formats.
I'm not sure if I really got it right. This seems like one of those
"Duh, of course it works that way" things, but I'd like the
documentation to be readable by people not acquainted with OGL/D3D.
2010-06-24 07:57:30 -07:00
Corbin Simpson
484bb0ea58 glhd: Add test for logicop enable.
Only for first RT at the moment, as there is no trivial way in galahad
to look at framebuffer state and (sadly) people don't usually calloc
their CSOs, so flags could be wrongly set.

On the other hand, of course, galahad will hopefully encourage more
people to calloc their CSOs. :3
2010-06-24 07:22:29 -07:00
Corbin Simpson
49735d1c6c gallium/docs: Lops override the rest of the blending state when enabled. 2010-06-24 07:22:29 -07:00
Brian Paul
05a18f48e5 gallium/docs: updated remaining semantic label docs 2010-06-24 07:50:29 -06:00
nobled
fd7de146f6 pipe: Add PIPE_OS_HURD
One tiny step toward porting Gallium to the GNU/Hurd kernel
(and fixing Debian bug #585618).

Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
2010-06-24 06:45:36 -07:00
Corbin Simpson
06a75bd873 gallium/docs: Add lop table.
Was feeling kind of weird without it.
2010-06-24 06:43:50 -07:00
Corbin Simpson
1e10464557 gallium/docs: Slight clarification and formatting for Blend. 2010-06-24 06:43:50 -07:00
Brian Paul
ca12aefdac Merge branch 'shader-file-reorg'
1. Move all GL entrypoint functions and files into src/mesa/main/
This includes the ARB vp/vp, NV vp/fp, ATI fragshader and GLSL bits
that were in src/mesa/shader/

2. Move src/mesa/shader/slang/ to src/mesa/slang/ to reduce the tree depth

3. Rename src/mesa/shader/ to src/mesa/program/ since all the
remaining files are concerned with GPU programs.

4. Misc code refactoring.  In particular, I got rid of most of the
GLSL-related ctx->Driver hook functions.  None of the drivers used
them.

Conflicts:
	src/mesa/drivers/dri/i965/brw_context.c
2010-06-23 22:30:26 -06:00
Marek Olšák
f2122d4724 r300g: remove an XXX comment 2010-06-24 06:15:45 +02:00
Marek Olšák
69adebf594 r300g: move AA registers into the new AA state 2010-06-24 06:10:47 +02:00
Marek Olšák
93bce03b27 r300g: separate the cache flush from the framebuffer state 2010-06-24 06:10:47 +02:00
Marek Olšák
a2f14153cc r300g: reorder and cleanup register writes everywhere 2010-06-24 06:10:47 +02:00
Marek Olšák
6b15a8d2af r300g: add "has HiZ" flag, add ZMask regs 2010-06-24 06:10:47 +02:00
Brian Paul
7315300fa5 gallium/docs: document TGSI_SEMANTIC_EDGEFLAG 2010-06-23 17:38:58 -06:00
Brian Paul
a544a8a82a gallium/docs: update TEXTURE_SHADOW_MAP MAX_PREDICATE_REGISTERS 2010-06-23 17:38:42 -06:00
Brian Paul
50b3f2e789 gallium/docs: fix definitions of TGSI_SEMANTIC_POSITION, COLOR 2010-06-23 17:00:23 -06:00
Brian Paul
bf2d2772a2 draw: use gallium's TRUE/FALSE 2010-06-23 17:00:22 -06:00
Vinson Lee
fddd5834ff llvmpipe: Remove unnecessary header. 2010-06-23 15:17:00 -07:00
Corbin Simpson
e6ee4e1bdf glhd: Simple rasterizer checks.
From the documentation.
2010-06-23 11:34:51 -07:00
Corbin Simpson
666fdc01c4 id, glhd: Unbreak texturing.
Argfl.
2010-06-23 11:25:52 -07:00
Corbin Simpson
9526305834 glhd: Use an environment variable (GALAHAD) to enable. Off by default. 2010-06-23 11:06:42 -07:00
Keith Whitwell
64682da8ab draw: don't try to precalculate the pipeline output primitive
We were previously calculating a value which was either the geometry
shader output primitive or the application's input primitive, and
passing that to the various front/middle/back components for use as
the ultimate rendering primtive.

Unfortunately, this was not correct -- if the vcache decomposition
path is active and geometry shaders are *not* active, we can end up
with a third primitive -- specifically the decomposed version of the
input primitive.

Rather than trying to precalculate this, just let the individual
components inform their successors about which primitive type they are
recieving.
2010-06-23 18:10:20 +01:00