Commit graph

28654 commits

Author SHA1 Message Date
José Fonseca
3e8f665c1e python/retrace: Cope with null constant buffers. 2009-11-03 17:12:33 +00:00
José Fonseca
a2e868b977 python/retrace: Add missing colon. 2009-11-03 17:12:33 +00:00
Brian Paul
a017ad2861 progs/tests: debug code for getting texture component sizes 2009-11-03 10:01:10 -07:00
Michal Krol
7ccf60ae40 tgsi: Up tgsi_exec's control flow nesting to 32. 2009-11-03 16:56:50 +00:00
Brian Paul
4bced42341 Merge branch 'mesa_7_6_branch' 2009-11-03 09:54:09 -07:00
Brian Paul
800e553e7a mesa: clean-up, remove some flushing in FBO functions
Remove some unneeded flushes.
Replace FLUSH_CURRENT w/ FLUSH_VERTICES in other places.
2009-11-03 09:52:25 -07:00
Brian Paul
4de18fb093 mesa: fix indentation 2009-11-03 09:52:25 -07:00
Brian Paul
5698d7cd75 mesa: clean-up formatting 2009-11-03 09:52:25 -07:00
Brian Paul
18af75e501 mesa: avoid extraneous _NEW_BUFFER changes in _mesa_BindFramebufferEXT() 2009-11-03 09:52:25 -07:00
Brian Paul
c7048f9d9f mesa: use FLUSH_VERTICES() in _mesa_drawbuffers() 2009-11-03 09:52:25 -07:00
Brian Paul
8df699b3bb mesa: avoid extraneous _NEW_BUFFER state in _mesa_drawbuffers() 2009-11-03 09:52:25 -07:00
Brian Paul
b28c637382 mesa: use ffs() to shorten loop in _mesa_drawbuffers() 2009-11-03 09:52:25 -07:00
Brian Paul
2d11c48223 mesa: added assertion, another comment 2009-11-03 09:52:25 -07:00
Brian Paul
bcbfda71b0 intel: avoid unnecessary front buffer flushing/updating
Before, if we just called glXMakeCurrent() and didn't render anything we'd
still trigger a flushFrontBuffer() call.

Now only set the intel->front_buffer_dirty field at state validation time
just before we draw something.

NOTE: additional calls to intel_check_front_buffer_rendering() might be
needed if I missed some rendering paths.
2009-11-03 09:52:25 -07:00
Marek Olšák
a0cd2b7029 st/mesa: clip pixels in draw_stencil_pixels to avoid crash
Signed-off-by: Brian Paul <brianp@vmware.com>
2009-11-03 09:48:04 -07:00
Brian Paul
e60ebebb39 st/mesa: don't use util_blit_pixels_writemask() for depth or depth/stencil
util_blit_pixels_writemask() only works for color formats at this time.
Also, it might never work for depth/stencil surfaces since we can't get
handle stencil values in a fragment shader.

Fixes glCopyTexSubImage(GL_DEPTH_COMPONENT).
2009-11-03 09:48:04 -07:00
Brian Paul
0197348641 st/mesa: fix tests for depth and depth/stencil texture formats 2009-11-03 09:48:04 -07:00
Brian Paul
644d8fd363 mesa: added comment 2009-11-02 19:38:35 -07:00
Brian Paul
7157479b25 mesa: use _mesa_get_current_tex_object() 2009-11-02 19:38:35 -07:00
Brian Paul
1afe60e802 mesa: use _mesa_get_current_tex_object() 2009-11-02 19:38:35 -07:00
Brian Paul
b8fdb900fb mesa: make _mesa_get_current_tex_objec() public 2009-11-02 19:38:35 -07:00
Ian Romanick
731810f854 ARB prog parser: Fix a couple issues with previous merge from mesa_7_6_branch
Since the addition of support for Nvidia condition codes, the lexer internally
uses handle_ident to select between returning IDENTIFIER and USED_IDENTIFIER.
Also, use return_string instead of strdup.

Fixes bug #24809.
2009-11-02 12:44:14 -08:00
Vinson Lee
e055665752 glx: Fix memory leak if XF86DRICreateDrawable() fails
Signed-off-by: Brian Paul <brianp@vmware.com>
2009-11-02 12:35:47 -07:00
Pierre Ossman
213ec8251c r600: implement LOG op in compiler 2009-11-02 11:30:00 -05:00
Pierre Ossman
d00cbba403 r600: implement EXP op in compiler 2009-11-02 11:29:54 -05:00
Michal Krol
c379fbbe24 tgsi/ureg: Add negate and swizzle for predicates. 2009-11-02 14:59:52 +00:00
Brian Paul
c02cd82b46 mesa: fix incorrect approx bits/channel for fxt1 formats
See bug 24806.
2009-11-02 06:52:10 -07:00
Brian Paul
a40055f4b6 gallium/util: add casts to silence warnings 2009-11-02 06:51:47 -07:00
Michal Krol
962ece9540 tgsi/ureg: Update for gallium interface changes. 2009-11-02 09:44:21 +00:00
Michal Krol
aa2b2e5d7d tgsi: Update for gallium interface changes. 2009-11-02 09:44:20 +00:00
Michal Krol
0a7d50ed7e gallium: Cleanup predicate and condition code TGSI tokens.
There is little point in having a special TGSI token just to handle
predicate register updates. Remove tgsi_dst_register_ext_predicate token
and instead use a new PREDICATE register file to update predicates.
Actually, the contents of the obsolete token are being moved
to tgsi_instruction_ext_predicate, where they should be
from the very beginning.

Remove the NVIDIA-specific condition code tokens -- nobody uses them
and they can be emulated with predicates if needed.

Introduce PIPE_CAP_SM3 that indicates whether a driver supports
SM3-level instructions, and in particular predicates.

Add PIPE_CAP_MAX_PREDICATE_REGISTERS that can be used to query the driver
how many predicate registers it supports (currently it would be 1).
2009-11-02 09:44:18 +00:00
Michal Krol
eb699d64ec softpipe: Sanitise shader semantic and interpolator handling.
Handle the remaining semantic names and indices.
Respect color interpolator when not flatshading.
2009-11-02 09:44:16 +00:00
Younes Manton
87d7c1aa15 nouveau: Assume all texture blankets are linear for now. 2009-11-01 18:27:47 -05:00
Corbin Simpson
1f630fa016 r300g: Miscellania. Avoid draw segfaults, s/true/TRUE/, etc.
Cleared out my git stash.
2009-11-01 11:54:52 -08:00
Maciej Cencora
3d73852121 r300g: fix geometry corruptions
PVS flush is needed before changing the vertex shader or vertex shader constants.
2009-11-01 11:02:02 -08:00
Maciej Cencora
2db46af875 r300g: split constant buffer and shader emittion 2009-11-01 11:01:40 -08:00
Corbin Simpson
cab749a1d0 r300g: Adopt osiris' PSC data and swizzle.
A fair amount more flexible and easier to maintain.
2009-11-01 09:24:02 -08:00
Christoph Bumiller
5de8f97440 nv50: handle TGSI_SEMANTIC_FACE 2009-11-01 14:28:08 +01:00
Christoph Bumiller
496c9eaacf nv50: make IF condition safe
Don't assume that a SET that writes to IF's argument
directly precedes the IF.
2009-11-01 14:28:04 +01:00
Christoph Bumiller
99e308a0e0 nv50: implement TGSI_OPCODE_AND/OR/XOR
Will use AND for gl_FrontFacing, the face input
is either 0 or 0xffffffff.
2009-11-01 14:27:35 +01:00
Christoph Bumiller
1cc16e1b83 nv50: fix textures with block size != cpp
First, using width * block size as pitch is evidently
wrong if a block contains more than 1 texel.

For tiled textures, since a block occupies a contiguous
area of memory, y addressing in m2mf has to be done by
block index, not the y coordinate itself.

This should fix compressed textures.
2009-10-31 20:51:09 +01:00
Younes Manton
91232b7004 nouveau: Support X8R8G8B8 textures on nv30, nv40 and RTs on nv10-nv40. 2009-10-31 09:42:49 -04:00
Christoph Bumiller
9831e1f76c nv50: use SIFC also for shader upload
Adds a more generic SIFC transfer function.
2009-10-31 13:40:33 +01:00
Christoph Bumiller
525f529d13 nv50: make MRTs work
We have to indicate to the hw whether the FP exports
multiple colour results.
Method 0x121c is used to specify the number of RTs.
Also deactivate zeta explicitly if there's no zsbuf.
2009-10-31 13:40:33 +01:00
Dave Airlie
73b45b0669 radeon: add missing include 2009-10-31 21:24:50 +10:00
Marek Olšák
c9928ac3ee r300g: correct the pitch calculation for smaller mipmaps 2009-10-31 07:30:48 +01:00
Marek Olšák
3f60130b87 r300g: pretend NPOT support
It's requires to get GL2.1, therefore, much more piglit tests can be used
for testing. Figure out later how to emulate this.
2009-10-31 07:30:48 +01:00
Marek Olšák
a8f85dceb5 r300g: fix reading from the destination buffer in blending 2009-10-31 07:30:48 +01:00
Marek Olšák
63c9450ae7 r300g: add precalculating of pixel pitch, add a new NPOT flag 2009-10-31 07:30:48 +01:00
Marek Olšák
11180b4471 r300g: remove unnecessary assertions
Also, correct typos in comments.
2009-10-31 07:30:48 +01:00