Dave Airlie [Mon, 21 Nov 2005 11:39:49 +0000 (11:39 +0000)]
bit 31 of this inserts a nop after the current instruction
Dave Airlie [Mon, 21 Nov 2005 11:35:36 +0000 (11:35 +0000)]
get rid of some of those unknowns figured out from reg dumper
Brian Paul [Sun, 20 Nov 2005 17:57:22 +0000 (17:57 +0000)]
move _mesa_init_instruction() to program.c
Brian Paul [Sun, 20 Nov 2005 17:54:29 +0000 (17:54 +0000)]
s/Saturate/SaturateMode/
Brian Paul [Sun, 20 Nov 2005 17:52:40 +0000 (17:52 +0000)]
Make Saturate a 2-bit field again, renamed to SaturateMode with three
possible values: SATURATE_OFF, SATURATE_ZERO_ONE and SATURATE_PLUS_MINUS_ONE.
Brian Paul [Sat, 19 Nov 2005 23:45:10 +0000 (23:45 +0000)]
additional clean-ups and improvements
Brian Paul [Sat, 19 Nov 2005 23:29:18 +0000 (23:29 +0000)]
remove incorrect cast
Brian Paul [Sat, 19 Nov 2005 23:28:55 +0000 (23:28 +0000)]
Saturate is a 1-bit boolean field
Brian Paul [Sat, 19 Nov 2005 23:12:20 +0000 (23:12 +0000)]
Bunch of little fixes:
Fix mem leaks in _mesa_TexEnvProgramCacheDestroy().
Check if ctx->Driver.BindProgram is non-null before calling.
s/unsigned/GLuint/
Use MAX_INSTRUCTIONS instead of magic 100, check program length after it's made.
Use _mesa_init_instruction() instead of _mesa_memset().
Brian Paul [Sat, 19 Nov 2005 23:09:14 +0000 (23:09 +0000)]
call gluDeleteQuadric() to fix mem leak
Brian Paul [Sat, 19 Nov 2005 17:08:15 +0000 (17:08 +0000)]
in run_texnorm_stage() check if the texture unit is really enabled before trying to normalize the texcoords
Brian Paul [Sat, 19 Nov 2005 16:50:36 +0000 (16:50 +0000)]
update some vars
Brian Paul [Sat, 19 Nov 2005 16:43:04 +0000 (16:43 +0000)]
No longer derive 'ati_fragment_shader' from 'program' class. Only the
program->Id and program->RefCount fields were used and ATI fragment shaders
didn't have too much in common with ARB/NV vertex/fragment programs anyway.
Brian Paul [Sat, 19 Nov 2005 15:44:53 +0000 (15:44 +0000)]
remove #include arbfragparse.h
Brian Paul [Sat, 19 Nov 2005 15:42:39 +0000 (15:42 +0000)]
remove #include arbfragparse.h, s/PI/M_PI/
Brian Paul [Sat, 19 Nov 2005 15:37:00 +0000 (15:37 +0000)]
removed arbfragparse.[ch] arbvertparse.[ch]
Brian Paul [Sat, 19 Nov 2005 15:36:28 +0000 (15:36 +0000)]
Remove the _mesa_parse_arb_vertex/fragment_program() functions into
arbprogparse.c and remove arbvertparse.[ch] and arbfragparse.[ch].
Clean up quite a bit of the arb parsing code.
Rewrite parser extension code to avoid a mess of string operations every
time the parser was used.
Brian Paul [Sat, 19 Nov 2005 14:57:47 +0000 (14:57 +0000)]
update comments, remove ^M chars
Brian Paul [Sat, 19 Nov 2005 14:49:25 +0000 (14:49 +0000)]
move a bunch of gl2/shading language structs from mtypes.h to shaderobjects.h
Aapo Tahkola [Fri, 18 Nov 2005 20:53:50 +0000 (20:53 +0000)]
Try to detect when native support to given texture width is not available.
Aapo Tahkola [Fri, 18 Nov 2005 18:05:19 +0000 (18:05 +0000)]
Fix typo causing secondary color not to work properly.
Aapo Tahkola [Fri, 18 Nov 2005 17:57:27 +0000 (17:57 +0000)]
Reduce stderr noise.
Brian Paul [Fri, 18 Nov 2005 02:24:14 +0000 (02:24 +0000)]
In _mesa_RenderbufferStorageEXT(), try to avoid needless reallocation.
Simplify _mesa_GetRenderbufferParameterivEXT() queries.
Brian Paul [Thu, 17 Nov 2005 05:01:26 +0000 (05:01 +0000)]
move _mesa_update_state() calls before error tests that depend on framebuffer completeness
Brian Paul [Thu, 17 Nov 2005 05:00:17 +0000 (05:00 +0000)]
optimize drawing GL_DEPTH_STENCIL pixels into a GL_DEPTH_STENCIL renderbuffer
Brian Paul [Thu, 17 Nov 2005 04:51:56 +0000 (04:51 +0000)]
s/MEMCPY/_mesa_memcpy/ and fix typo
Brian Paul [Thu, 17 Nov 2005 04:51:08 +0000 (04:51 +0000)]
optimize case of reading GL_DEPTH_STENCIL pixels from GL_DEPTH_STENCIL renderbuffer
Brian Paul [Thu, 17 Nov 2005 02:08:10 +0000 (02:08 +0000)]
delete frame/renderbuffers upon exit, more error checking
Brian Paul [Thu, 17 Nov 2005 02:05:42 +0000 (02:05 +0000)]
improved error checking in error_check_format_type()
Thomas Hellström [Wed, 16 Nov 2005 19:24:00 +0000 (19:24 +0000)]
Fixes for x86_64 Unichrome.
Thomas Hellström [Wed, 16 Nov 2005 17:24:26 +0000 (17:24 +0000)]
Bring in last minute 6_4 branch changes to the unichrome driver
to the trunk.
Brian Paul [Wed, 16 Nov 2005 14:48:11 +0000 (14:48 +0000)]
added -ds option to test GL_EXT_packed_depth_stencil with framebuffer objects
Brian Paul [Wed, 16 Nov 2005 04:17:20 +0000 (04:17 +0000)]
additional comments about GL_DEPTH_STENCIL buffers
Brian Paul [Wed, 16 Nov 2005 04:12:08 +0000 (04:12 +0000)]
added depthstencil.[ch]
Brian Paul [Wed, 16 Nov 2005 04:09:26 +0000 (04:09 +0000)]
Use new gl_framebuffer _Depth/_StencilBuffer fields instead of
Attachment[BUFFER_DEPTH/STENCIL].Renderbuffer. The former may be wrappers
around combined depth/stencil renderbuffers attached at the later points.
Brian Paul [Wed, 16 Nov 2005 04:06:32 +0000 (04:06 +0000)]
added depthstencil.c
Brian Paul [Wed, 16 Nov 2005 04:05:54 +0000 (04:05 +0000)]
Support for combined depth/stencil renderbuffers (GL_EXT_packed_depth_stencil).
depthstencil.c provides wrappers for treating depth/stencil buffers either
as regular depth or stencil renderbuffers.
Brian Paul [Wed, 16 Nov 2005 04:00:31 +0000 (04:00 +0000)]
added _mesa_new_depthstencil_renderbuffer() for combined depth/stencil buffers
Brian Paul [Wed, 16 Nov 2005 02:47:16 +0000 (02:47 +0000)]
Added error checking in _tnl_Begin to detect incomplete framebuffer.
Set new tnl->DiscardPrimitive field to true when such error is
detected to discard the glBegin/End primitive when flushing.
Added some new comments.
Brian Paul [Wed, 16 Nov 2005 02:00:34 +0000 (02:00 +0000)]
change an assertion
Brian Paul [Wed, 16 Nov 2005 01:58:19 +0000 (01:58 +0000)]
Replace GL_POLYGON+1 with PRIM_OUTSIDE_BEGIN_END
Brian Paul [Wed, 16 Nov 2005 01:11:06 +0000 (01:11 +0000)]
add GL_INVALID_FRAMEBUFFER_OPERATION_EXT in _mesa_error()
Brian Paul [Tue, 15 Nov 2005 15:08:03 +0000 (15:08 +0000)]
fix color interpolation problem reported on VMS
Brian Paul [Tue, 15 Nov 2005 14:50:55 +0000 (14:50 +0000)]
check for ctx==NULL, bug 4087
Brian Paul [Tue, 15 Nov 2005 04:01:29 +0000 (04:01 +0000)]
Fix problem in stencil_and_ztest_span() when using h/w stencil buffer.
Fix a comment typo.
Remove some unneeded #includes.
Ian Romanick [Tue, 15 Nov 2005 01:55:46 +0000 (01:55 +0000)]
Two subtle things missed on the previous commit.
Ian Romanick [Tue, 15 Nov 2005 01:46:49 +0000 (01:46 +0000)]
Add the ability for interleave to test passing invalid format enums
and invalid stride values (see bugzilla #5058).
Ian Romanick [Mon, 14 Nov 2005 23:31:05 +0000 (23:31 +0000)]
Simple test of glInterleavedArrays functionality.
Brian Paul [Mon, 14 Nov 2005 18:23:56 +0000 (18:23 +0000)]
remove unneeded RasterPosValid check
Brian Paul [Sat, 12 Nov 2005 23:25:49 +0000 (23:25 +0000)]
Improve _mesa_print_program().
Added make_state_string() to produce a string from a GL state vector.
Brian Paul [Sat, 12 Nov 2005 23:24:32 +0000 (23:24 +0000)]
fix comment for TexSrcTarget
Brian Paul [Sat, 12 Nov 2005 18:58:12 +0000 (18:58 +0000)]
Added _mesa_light() helper function so we can avoid transforming then
un-transforming light positions and spot directions when popping light
state off the attribute stack.
Brian Paul [Sat, 12 Nov 2005 18:44:29 +0000 (18:44 +0000)]
Added OSMesaColorClamp(), bug 4917
Brian Paul [Sat, 12 Nov 2005 17:59:05 +0000 (17:59 +0000)]
update an assertion
Brian Paul [Sat, 12 Nov 2005 17:56:18 +0000 (17:56 +0000)]
update some assertions
Brian Paul [Sat, 12 Nov 2005 17:53:14 +0000 (17:53 +0000)]
Move stuff common to vertex/fragment_program into the base class, including:
Instructions, InputsRead, OutputsWritten, and Parameters.
Also, added debug functions: _mesa_print_instruction(),
_mesa_print_program_parameters() and revamp _mesa_print_program().
Brian Paul [Fri, 11 Nov 2005 15:33:36 +0000 (15:33 +0000)]
Make _mesa_is_proxy_texture() non-static and use in a few more places.
Use COPY_4FV() where possible.
Added some comments, clean-ups.
Ian Romanick [Thu, 10 Nov 2005 16:25:37 +0000 (16:25 +0000)]
Support for "fragment program to C" and TCC has been removed from the
source code, so there is no reason for this config to exist. This
fixes fdo bugzilla #5004.
Brian Paul [Thu, 10 Nov 2005 16:22:56 +0000 (16:22 +0000)]
s/MAX_LIGHTS/ctx->Const.MaxLights/ and spruce up some comments
Brian Paul [Thu, 10 Nov 2005 16:19:44 +0000 (16:19 +0000)]
fix popping of GL_SPOT_DIRECTION (bug 5005)
Brian Paul [Thu, 10 Nov 2005 05:10:49 +0000 (05:10 +0000)]
remove -DMESA_DEBUG
Brian Paul [Thu, 10 Nov 2005 05:10:25 +0000 (05:10 +0000)]
Move code to enable FP exceptions into debug.c (set MESA_DEBUG=fpexceptions).
Get rid of MESA_DEBUG preprocessor symbol, just use DEBUG instead.
Brian Paul [Wed, 9 Nov 2005 16:52:21 +0000 (16:52 +0000)]
fix popping of GL_EYE_PLANE state (bug 4996)
Brian Paul [Wed, 9 Nov 2005 16:30:50 +0000 (16:30 +0000)]
Bug 4996.
Replace use of FLOAT_TO_USHORT with either CLAMPED_FLOAT_TO_USHORT or
UNCLAMPED_FLOAT_TO_USHORT. Same should be done for UBYTE, UINT, etc.
Brian Paul [Wed, 9 Nov 2005 01:17:33 +0000 (01:17 +0000)]
use UNCLAMPED_FLOAT_TO_USHORT/UBYTE in clear_rgba_buffer() (bug #4992)
Brian Paul [Wed, 9 Nov 2005 00:56:51 +0000 (00:56 +0000)]
Move COPY_FLOAT() macro down into glide driver.
Rewrite COPY_4FV() macro to not use COPY_FLOAT(), and use integer moves as
originally intended.
Ian Romanick [Tue, 8 Nov 2005 22:54:22 +0000 (22:54 +0000)]
At keithw's request, remove all traces of the "fragment program to C" and
TCC experiment.
Ian Romanick [Tue, 8 Nov 2005 22:40:26 +0000 (22:40 +0000)]
This patch adds the missing NV_vertex_program2 and NV_vertex_program3
instructions to the various internal tables. It does not add support for
them to the parser nor does it add support for them to the program
interpreter.
It also corrects some errors in the comments in program_instruction.h.
This patch breaks the instruction union in t_vb_arbprogram.h. The opcode
field in that union was only 6 bits. When there were only 59+3 instructions
that worked fine. However, this patch increases the base instruction count
to 69. This requires 7 bits. The problem is that increasing the opcode
width to 7 bits increases the size of instruction::rsw to 33 bits. I've
increased the size of the union to 64-bit, but this is just a temporary hack
(and probably breaks the build on some systems).
Brian Paul [Tue, 8 Nov 2005 14:53:24 +0000 (14:53 +0000)]
s/_mesa_debug_fp_inst/_mesa_print_program/
Brian Paul [Tue, 8 Nov 2005 14:52:51 +0000 (14:52 +0000)]
remove _mesa_debug_fp_inst()
Brian Paul [Tue, 8 Nov 2005 14:45:48 +0000 (14:45 +0000)]
some initial work on upcoming GL_EXT_framebuffer_blit extension
Brian Paul [Tue, 8 Nov 2005 14:44:07 +0000 (14:44 +0000)]
remove a bunch of extension stuff that's in glxext.h
Brian Paul [Tue, 8 Nov 2005 14:42:52 +0000 (14:42 +0000)]
minor work in _mesa_print_program()
Brian Paul [Tue, 8 Nov 2005 14:41:41 +0000 (14:41 +0000)]
remove unneeded #includes
Brian Paul [Mon, 7 Nov 2005 17:36:34 +0000 (17:36 +0000)]
remove unneeded #includes
Brian Paul [Mon, 7 Nov 2005 16:03:46 +0000 (16:03 +0000)]
s/_mesa_debug_fp_inst/_mesa_print_program/
Brian Paul [Sat, 5 Nov 2005 20:18:51 +0000 (20:18 +0000)]
s/_mesa_debug_vp_inst/_mesa_print_program/
Brian Paul [Sat, 5 Nov 2005 20:18:18 +0000 (20:18 +0000)]
consolidate vertex/fragment program printing into _mesa_print_program()
Brian Paul [Sat, 5 Nov 2005 19:33:13 +0000 (19:33 +0000)]
use _mesa_program_file_string() and _mesa_opcode_string()
Brian Paul [Sat, 5 Nov 2005 19:32:36 +0000 (19:32 +0000)]
added _mesa_program_file_string()
Brian Paul [Sat, 5 Nov 2005 19:24:08 +0000 (19:24 +0000)]
Use _mesa_opcode_string()
Brian Paul [Sat, 5 Nov 2005 19:16:19 +0000 (19:16 +0000)]
use _mesa_num_inst_src_regs() and _mesa_opcode_string()
Brian Paul [Sat, 5 Nov 2005 19:15:27 +0000 (19:15 +0000)]
use _mesa_num_inst_src_regs() instead of nr_args()
Brian Paul [Sat, 5 Nov 2005 19:12:36 +0000 (19:12 +0000)]
added _mesa_num_inst_src_regs() and _mesa_opcode_string()
Brian Paul [Sat, 5 Nov 2005 17:23:45 +0000 (17:23 +0000)]
s/Negate/NegateBase/
Brian Paul [Sat, 5 Nov 2005 17:18:09 +0000 (17:18 +0000)]
s/TexSrcIdx/TexSrcTarget/
Brian Paul [Sat, 5 Nov 2005 17:10:45 +0000 (17:10 +0000)]
Unify vertex/fragment program instuctions.
Based on patch by Ian (#4967) but also unify instruction opcodes.
Brian Paul [Sat, 5 Nov 2005 17:08:50 +0000 (17:08 +0000)]
remove unneeded #includes
Brian Paul [Sat, 5 Nov 2005 17:07:00 +0000 (17:07 +0000)]
remove unneeded #include
Aapo Tahkola [Sat, 5 Nov 2005 14:49:26 +0000 (14:49 +0000)]
Fix broken build.
Brian Paul [Sat, 5 Nov 2005 03:12:06 +0000 (03:12 +0000)]
added MESA_GLX_ALPHA_BITS env var
Brian Paul [Sat, 5 Nov 2005 03:02:28 +0000 (03:02 +0000)]
don't need MAKE_SWIZZLE() macro
Brian Paul [Sat, 5 Nov 2005 02:15:21 +0000 (02:15 +0000)]
Replace parameter_type enum in program.[ch], use register_file enums instead.
Brian Paul [Sat, 5 Nov 2005 02:12:44 +0000 (02:12 +0000)]
minor improvements in _mesa_init_teximage_fields()
Brian Paul [Fri, 4 Nov 2005 16:52:41 +0000 (16:52 +0000)]
use VERT_RESULT_HPOS, VERT_BIT_POS tokens
Brian Paul [Fri, 4 Nov 2005 16:47:22 +0000 (16:47 +0000)]
better ffs() function (bug 4956)
Brian Paul [Fri, 4 Nov 2005 16:43:28 +0000 (16:43 +0000)]
just pass ctx to do_ndc_cliptest() rather than stuffing it in the arb_vp_machine struct
Brian Paul [Fri, 4 Nov 2005 16:41:06 +0000 (16:41 +0000)]
MESA_GLX_ALPHA_BITS env var to force visual with alpha channel
Brian Paul [Fri, 4 Nov 2005 00:58:17 +0000 (00:58 +0000)]
remove unneeded HIDDEN definition (bug 4956)
Brian Paul [Fri, 4 Nov 2005 00:52:08 +0000 (00:52 +0000)]
fix MinGW problems (bug 4956)