Commit Graph

13325 Commits

Author SHA1 Message Date
Ian Romanick d806d451e6 GLSL: AttachShader returns INVALID_OPERATION for repeated attach
The GL_ARB_shader_objects spec says that glAttachShaderARB is supposed
to return GL_INVALID_OPERATION if a shader is attached to a program
where it is already attached.  _mesa_attach_shader perviously returned
without error in this case.
2008-09-29 12:18:06 -07:00
Jouk Jansen fc13269b82 mesa: asst updates for VMS 2008-09-29 08:35:05 -06:00
Shunichi Fuji e095d5812a mesa: drop calloc from _mesa_get_fixed_func_vertex_program
Signed-off-by: Shunichi Fuji <palglowr@gmail.com>
2008-09-29 10:38:45 +01:00
Ian Romanick 2b8d8989fb Use 3Dnow! x86-64 routines only on processors that support 3Dnow!
Added an x86-64 CPUID function and use it to detect 3Dnow!  If 3Dnow!
is available, use _mesa_3dnow_transform_points4_3d_no_rot,
_mesa_3dnow_transform_points4_perspective,
_mesa_3dnow_transform_points4_2d_no_rot, and _mesa_3dnow_transform_points4_2d.

This fixes long standing bug #8724.
2008-09-28 20:32:05 -07:00
Ian Romanick b5d59222cc Remove TNL-to-VP tracking from i965
The i965 driver previously had it's own set of code to convert
fixed-function TNL state to a vertex program.  Core Mesa has code to
do this, so there is no reason to duplicate that effort in the driver.
In fact, this duplication leads to bugs when other aspects of the Mesa
infrastructure change.
2008-09-28 20:32:05 -07:00
Tobias Jakobi 2e5d717007 glapi: add DISPATCH_FUNCTION_SIZE 2008-09-27 08:51:45 +01:00
Tobias Jakobi a23026effc glapi: add gl_dispatch_functions_start and end 2008-09-27 08:47:55 +01:00
Eric Anholt 7d99ddcb2b intel: Fix a number of memory leaks on context destroy. 2008-09-26 15:39:20 -07:00
Jeremy Huddleston 8338cc25f9 configs: darwin: Don't build GLw
(cherry picked from commit ef688ba1ee366a8937a41075cbe8b76a9bf75013)
2008-09-26 12:37:31 -07:00
Brian Paul a4a5a37f27 mesa: remove invalid assertions that programs have parameters
Fixes failure with demos/fplight.c
2008-09-26 07:45:06 -06:00
Brian Paul 4bc39c58eb mesa: fix assertion in _mesa_reference_program() 2008-09-26 07:40:45 -06:00
Brad King ee80c64be8 mesa: fix param indexing 2008-09-26 07:40:05 -06:00
Brian 1e3a44fab0 mesa: fix cast/conversion for optional code 2008-09-25 19:57:34 -06:00
Brian Paul b3c3bc63f0 mesa: fix typo (s/feadback/feedback/). Fixes broken selection/feedback. 2008-09-25 18:55:52 -06:00
Brian Paul 8124faf89d mesa: fix float->int mapping for glGetIntegerv(GL_DEPTH_CLEAR_VALUE) 2008-09-25 11:54:00 -06:00
Brian Paul 6222eb3fcd mesa: fix some VBO buffer object issues
The VBO module may use a real VBO or a malloc'd buffer for vertex storage.
Be careful not to accidentally replace the later with the former when drawing.
Check if using a real VBO at destroy time to prevent a double-free.
2008-09-25 11:03:46 -06:00
Sam Hocevar 507ef82077 mesa: fix function params to match prototypes 2008-09-25 09:58:27 -06:00
Sam Hocevar 7be5411ce6 mesa: prevent the slang code generator from aborting when faced with a sampler variable redeclaration. 2008-09-25 09:53:09 -06:00
Sam Hocevar 561787e697 i965: support for sin() and cos() in vertex shaders. 2008-09-25 09:49:36 -06:00
Sam Hocevar 831bfb9053 i965: more meaningful message for unsupported opcodes. 2008-09-25 09:49:18 -06:00
Eric Anholt c5945c2d17 intel: Fix clears to depth_stencil texture attachments.
Broken by 0adfd10210, showed up as an assertion
failure in a software fallback in the shadowtex demo when we failed to
recognize the texture format.
2008-09-24 15:13:19 -07:00
Brian 1fe385fdc9 set SamplerUnit[] entry in load_texture() just to be safe
(cherry picked from commit fce4612f8a)
2008-09-24 10:15:07 -07:00
Brian dff0b0e772 use PROGRAM_CONSTANT instead of PROGRAM_STATE_VAR when generating immediates/literals
(cherry picked from commit fdc8636bdc)
2008-09-24 10:13:46 -07:00
Brian 9b7e5a51f4 set program->SamplersUsed bit when using a texture instruction 2008-09-24 10:13:31 -07:00
Brian 93fef22d05 Remove ctx field from texenvprog_cache 2008-09-24 10:11:37 -07:00
Brian fb3c41f504 include programopt.h
(cherry picked from commit 83fad68ec1)
2008-09-24 10:04:31 -07:00
Brian c81cce7831 Disable vertex shader fog, compute fog in fragment shader. 2008-09-24 10:04:17 -07:00
Brian 19d77d6cfa temporarily set the FRAG_BIT_FOGC bit in InputsRead when fog is enabled
(cherry picked from commit 63be96bdc7)
2008-09-24 10:03:27 -07:00
Keith Whitwell 8e7d941d7a mesa: fix main/ prefix in include 2008-09-23 21:08:50 -07:00
Keith Whitwell 33fef8be82 vbo: unmap and remap immediate vbo before/after each draw.
Also use BufferData(NULL) to get fresh storage and avoid synchronous
operation where we would have to flush and wait for the fence after each
draw because of the map.

This will chew through a whole load of buffer space on small draws, so
it isn't a proper solution.  Need to support a no-fence or append mapping
mode to do this right, or use user buffers.
2008-09-23 18:26:17 -07:00
Brian 6f765fbde4 added vbo_use_buffer_objects() to specify that immediate mode data should be put into bufferobjects 2008-09-23 18:26:00 -07:00
Keith Whitwell b36bc54d3c vbo: seed initial max_element value with a more likely candidate
(cherry picked from commit 026e7731e5)
2008-09-23 18:05:48 -07:00
Brian Paul 9acf207277 mesa: s/GL_POLYGON+1/PRIM_OUTSIDE_BEGIN_END/
(cherry picked from commit 8a369b909a)
2008-09-23 17:36:01 -07:00
Brian Paul 5b98236e75 mesa: glsl: fix glGetUniform for matrix queries
(cherry picked from commit 7a6eba54d0)
2008-09-23 17:34:59 -07:00
Brian Paul eda291e316 mesa: glsl: fix a number of glUniform issues
Additional error checking.
Allow setting elements of uniform arrays.  This involves encoding both
a uniform location and a parameter offset in the value returned by
glGetUniformLocation().
Limit glUniform[if]v()'s count to the size of the uniform array.
When setting bool-valued uniforms, convert all float/int values to 0 or 1.
2008-09-23 17:33:49 -07:00
Brian Paul bda6ad273d mesa: glsl: fix error check in get_uniformfv()
(cherry picked from commit 18cd9c229a)
2008-09-23 17:33:19 -07:00
José Fonseca 452a592ca4 mesa: Apply MSVC portability fixes from Alan Hourihane. 2008-09-23 17:20:38 -07:00
Brian Paul 9118b02fd0 mesa: update program->NumAddressRegs field in _slang_update_inputs_outputs() 2008-09-23 17:11:25 -07:00
Brian Paul c79779aff0 mesa: add fwd decl of fill_in_entrypoint_offset()
(cherry picked from commit b1eff0228b)
2008-09-23 17:09:24 -07:00
Brian Paul ec76910187 mesa: new gl_fragment_program fields indicating use of fog, front-facing, point coord
(cherry picked from commit d7a7b0a10d)
2008-09-23 17:01:05 -07:00
Brian 03bafd1f9f Added new _mesa_clip_copytexsubimage() function to do avoid clipping down in the drivers.
This should probably be pulled into main-line Mesa...
(cherry picked from commit 324ecadbfd)
2008-09-23 16:59:56 -07:00
Brian Paul a97226352f mesa: refactor: move GetProcAddress code from glapi.c into new glapi_getproc.c file 2008-09-23 16:56:23 -07:00
Eric Anholt d533da2db8 i965: Cope with batch getting flushed in the middle of batchbuffer emits.
This isn't required for GEM (at least, yet), but the check_aperture code
for non-GEM results in batch getting flushed during emit.  brw_state_upload
restarts state emits, but a bunch of the state emit functions were assuming
that they would be called exactly once, after prepare and before new_batch.

Bug #17179.
2008-09-23 15:53:29 -07:00
Eric Anholt 4b038e24b0 intel: Add missing include files for meta drawpixels since mesa shuffling. 2008-09-23 15:32:41 -07:00
Eric Anholt f85ea6837d intel: Replace pbo-only drawpixels function with a generic Mesa metaops.
Improves performance of some oglconform regression tests 9x.
2008-09-23 13:31:19 -07:00
Eric Anholt 15487e46a2 i915: Fix overlapping CopyPixels with negative pixel zoom.
Fixes a failure in pixel-pos.c oglconform test.
2008-09-23 13:31:12 -07:00
Eric Anholt b9532f078a i915: fix crash in flush_prim -> wait_flips -> flush_batch -> flush_prim. 2008-09-23 13:30:03 -07:00
Ian Romanick 2511d57fa4 i965: Adapt to new TNL program tracking semantics
This fixes bugzilla #17718.
2008-09-22 17:23:40 -07:00
Michel Dänzer ed4c6cbe01 r300: Adapt to the removal of _tnl_ProgramCacheInit() and friends. 2008-09-22 11:49:34 +02:00
Michel Dänzer 78f4a695ad Remove incorrect test from mmAllocMem.
0 is a perfectly valid alignment shift, see e.g. driTexturesGone() which was
broken by this.
2008-09-22 11:48:26 +02:00