Tag 'mesa-6.5.3-1' created by Julien Cristau <[EMAIL PROTECTED]> at 2007-05-21 11:09 +0000
Tagging upload of mesa 6.5.3-1 to experimental. Changes since mesa-6.5.2-5: Aapo Tahkola (6): Fix invalid enums passed to MapBuffer Fix invalid enums passed to MapBuffer typo fix. this case still fails. support as much of GL_EXT_stencil_two_side as we can. untested. Fix #10071 - wrong max_index in vbo draw_prims. (Papadakos Panagiotis) Guess another unknown register in R300 command buffer initialization. (Oliver McFadden) Adam Jackson (2): Fix parallel make in r300 driver. Make sure GLX entrypoints are marked PUBLIC. Alan Hourihane (4): merge current trunk into vbo branch use passed target parameter Ensure we have a valid ReadBuffer for CopyTexSubImage, and Add missing OSMesaColorClamp function Alan Swanson (3): radeon: Adapt cliprect fixes from r300. r200: Adapt cliprect fixes from r300. r200: Simplify r200SetCliprects like radeonSetCliprects in radeon and r300. Ben Skeggs (100): Add start of vertex shader backend, will most likely not work correctly yet Another TODO, so I don't forget.. A couple of quick fixes, the original had some half-finished Kill all the current shader code. fix typo Dont call exit() from the DRI driver, with AIGLX this is particularly nasty We need nmesa->driFd and friends setup before we call nouveauFifoInit Some more nouveau_screen.c setup, not sure how correct it is yet though.. Fix segfault in nouveauCalcViewport Add nv30InitStateFuncs jkolb pointed out that face can also be FRONT_AND_BACK. Added stencil funcs Adapt FIFO code to deal with cases where the base GET/PUT value isn't 0. Use RENDERINPUTS macros to access render_inputs_bitset poke the correct FIFO regs Stupid bug.. More FIFO fixes. Avoid sharing subchannels with the ddx until context switching is done Fix nv30LineWidth, hw expects a ubyte. Don't bother touching lighting stuff if shaders are in use nouveauCreateDmaObject Some missing state init fix scissor Incomplete shader stuff, should mostly work for NV40. Other cards, not so Fix progs/fp/tri-xpd Fix RSQ emulation - Add InitInstruction to hw shader backend, and remove SetUnusedSource. Fix a copy+paste'o that caused some *very* strange bugs.. Some work on buffer handling, most likely not entirely correct and oops, we don't want this by default just yet... Create visuals for modes the ddx provides oops, typo Implement a simple nv30Clear, and make sure we get a nouveau_renderbuffer state cache is automagically flushed on a normal BEGIN_RING_SIZE NV_44 uses nv30InitStateFuncs too Skeletal extension handling across chipsets. Some more voodoo to get 3D going with a minimal initial context. 0x4497 doesn't have NV30_TCL_PRIMITIVE_3D_NORMALIZE_ENABLE Improve SwapBuffers a bit. NV1x/2x hw_func stubs. Get nv10_swtcl.c working enough for glxgears on NV40. Don't build passthrough shader on <NV40 nouveau: get 16bpp working nouveau: Don't fill nrb->dPriv for private buffers nouveau: maintain numClipRects/pClipRects in context. nouveau: Modify span routines to use nouveau_renderbuffer instead of driRenderbuffer nouveau: Kill some compile warnings. nouveau: Add notifier support functions nouveau: Wait on notifier to check for completion of previous commands. nouveau: Make the notifier stuff actually work.. nouveau: Make use of NOUVEAU_DEBUG for shader disasm nouveau: Add simple wrapper for NV_MEMORY_TO_MEMORY_FORMAT. nouveau: Typo nouveau: record *actual* type of memory that was alloc'd, not the requested types. nouveau: add nouveau_mem_alloc/free debugging nouveau: We'll need syncNotifier for NV_MEMORY_TO_MEMORY_FORMAT too. nouveau: Initial buffer object support nouveau: Use bufferobj interface for fragment program uploads nouveau: bump drm patchlevel. nouveau: allow the use of multiple subchannels/objects by default. nouveau: fail CreateScreen on unknown cards instead of guessing. nouveau: Add 0x0244 pciid manually for now.. nouveau: bump drm patchlevel nouveau: shader backend branching support for all cards that support it. nouveau: kill off shader pass1. nouveau: rename pass0_arb to pass0. nouveau: start converting shaders into a tree format again.. nouveau: reindent shader pass0/pass2 nouveau: unbreak nv40 nouveau: fill in condition info for instructions nouveau: allow for card-specific shader infos to be kept nouveau: DPH and CMP for NV40 which doesn't do it natively. nouveau: some extra debug output nouveau: and here's the "oops, I suck" commit :) nouveau: add result scaling to shader backend, use it in RSQ emul for NV40. nouveau: unbreak NOUVEAU_RING_DEBUG nouveau: extend notifier interface to allow multiple notifiers in a memory block. nouveau: initial GL_ARB_occlusion_query support nouveau: fix nv30 line width nouveau: unhardcode some more NV30TCL_FP_CONTROL values nouveau: maintain a map of which vtxprog input corresponds to which array nouveau: oops nouveau: remove an unused table nouveau: oops, build attrib map after we know how the final shader will look.. nouveau: rework shader param handling nouveau: NV40 glClipPlane support. nouveau: misc NV40 fixes nouveau: argh nouveau: new bufferobj code. nouveau: fix a small bug in nv10 swtcl nouveau: OUT_RINGp expects the size in dwords, not bytes. nouveau: a couple of NV3x fixes nouveau: drm interface changes nouveau: avoid using uninitialised TexSrcUnit. nouveau: NVSDBG macro nouveau: fail translate if we use too many params somehow nouveau: fix typo nouveau: SwapBuffers() needs to perform a glFlush() nouveau: update for drm interface changes (0.0.5) nouveau: some swtcl fixes nouveau: match drm version bump Bernardo Innocenti (2): remove static lib before building to make more bulletproof always print error messages, unless LIBGL_DEBUG=quiet Brian (895): New info about Mesa's git repository. New git repository info, links. Removed/obsolete. Replaced by .html files. Replaced by .html file. Updated with new mesa-commit list. Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa Use XDisplayName() when reporting errors (bug 8079). Remove the xdemo.c program from PROGS since it doesn't work with GLX/DRI. Checkpoint new GLSL compiler back-end to produce fp/vp-style assembly instructions. Rewrite/simplify most built-in functions to use updated set of __asm instructions. Checkpoint of work for new GLSL compiler back-end. Lots of assorted changes. Checkpoint work for new GLSL compiler back-end. Checkpoint for GLSL compiler changes. Retire old GLSL shader code. Move all the code for computing ctx->_TriangleCaps into state.c. Not needed. Obsolete. Checkpoint GLSL compiler work. Add new sources, remove obsolete. Remove unused 3Dlabs code. Remove unused 3Dlabs code. Obsolete. Remove unneeded -I directories (3Dlabs headers). Check in a long-misplaced spec update. Remove include of s_arbshader.h New functions for cloning programs and parameter lists. The new linker actually does a few things right now: Assorted fix-ups for the new linker. Updates for new linker (merged varying/uniform vars). Modify _mesa_strdup() so it handles NULL correctly. Replace __extension__ with LONGSTRING. Split the program.[ch] files into several new files. Move many functions into new files. Updated #includes after splitting program.h Updated includes. Updated includes. chmod a-x Updated includes. Renamed from s_nvfragprog.[ch] Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa Move some code from prog_print.c to prog_instruction.c Remove some moved extern decls. include prog_print.h remove some unneeded includes remove unneded includes remove unneeded includes remove unneeded includes Renamed s_nvfragprog.[ch] to s_fragprog.[ch], program_instruction.h to prog_instruction.h Renamed s_nvfragprog.[ch] to s_fragprog.[ch] change/add/rm several filenames simple extension function wrangler Use extfuncs.h helper. Added command line options for loading Lots of assorted changes for new GLSL compiler backend. more debug output use MAX_VARYING use MAX_VARYING updated includes updated includes varying changes varying var changes varying var changes vertex/fragment program field changes redo mat4 addition, mat4 constructor from vec4s Lots of assorted changes. code movement fix double-printing of comment info added assertion to catch use of too many temporaries start rewriting the matrix/vector functions start implementing relational operators don't allow fog when using a fragment shader (bug 9346) initial release notes for 6.5.3 Don't update span->array->z[] values from SLANG_FRAGMENT_FIXED_FRAGDEPTH. cases for NOP, BRA added cases for BRA, NOP print BRA instructions Initial code for conditional constructs. fix comment, handle NOP comments Use _mesa_free_linked_program_data() GLSL API functions. Implement if-conditionals and while loops, added temporary resolve-branches function in linker. Generate IR code for for/while loops, break and continue statements. Check for inst->CondUpdate, print .C suffix. Added instruction counter to catch infinite loops (temporary). Implement array indexing of simple vec2/3/4 types. A bit of a hack for now... rewrite +=, -= etc for floats new error msg additional error checking lots of clean-up and re-org check for null Parameters ptr in _mesa_clone_program() Massive re-org of GLSL-related API functions. Overhaul of GLSL API functions, dispatching, etc. Overhaul of GLSL API functions, dispatching, etc. Clean-up and re-org of the main GLSL object types. Fix shader object reference counting and hash table deallocation. Minor clean-ups, reformatting, comment changes. code re-org use cast wrappers for sanity checking New IR_COND node for evaluating conditional expressions (for if/while/for). added _mesa_print_parameter_list() Uniform matrix support. handle PROGRAM_UNIFORM, fix a _mesa_problem() call Checkpoing: re-organization of basic arithmetic functions. checkpoint: more basic math operator re-org added glUniformMatrix2/3fv_func checkpoint: re-org assignment operator functions checkpoint: more basic math rewritting checkpoint: ivec/int and mat/mat operations checkpoint: matrix/float, unary negation rewrite added IR_NEG for negation fix typos checkpoint: rewrite vec/mat products comment about uniforms s/attribute/varying/ added INTERP_VARYING code checkpoint: pre/post incr/decr operators chmod a-x implement unary +, - fix typos s/unsigned/size_t/ (Matthias Hopf) Fix some incorrect GL error values. Reorganize _mesa_compile_shader() code. update_texture_state() updated for new shaders finish some loose ends in _mesa_uniform() temporary disable some memory deallocations to work around a memory corruption bug initial code to get texture sampling limping along added glUniform1i_func added texture attribs in slang_find_input() minor formatting fix simplify update_texture_state() a bit, compute _EnabledCoordUnits for shaders move TexturesUsed[] into gl_program since vertex programs/shaders can use textures nowadays compute InputsRead/OutputsWritten with slang_update_inputs_outputs() update TexturesUsed[] in slang_update_inputs_outputs() update TexturesUsed[] in slang_update_inputs_outputs() Fix glPush/PopClientAttrib() for VBO state (bug 9445). document VBO bug fix 9445 Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa added _mesa_add_sampler() added PROGRAM_SAMPLER added Sampler field to prog_instruction struct added PROGRAM_SAMPLER Checkpoint glsl compiler work: sampler uniforms now implemented, linked properly. Use GLuint instead of GLint to store intermediate Z values. Fixes problems when using 32-bit Z buffer. document 32-bit Z line/point fix Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa Checkpoint: re-org of (global) variable allocation code. More to come... checkpoint: more work on variable/storage allocation Move storage allocation functions from slang_emit.c to slang_codegen.c Move some code around, add some comments. Implement projective texture sampling, 3D textures. Disable some debug output. update texture1D functions Remove if (tObj) conditional so that texture units without a texture image added 1D texture functions check if _Current == NULL for TXB implement biased texture functions Implement shadow samplers and dFdx(), dFdy() code generation. Vertex program texture samplers done, but untested (need to add TEX/TXB to remove old comment Moved NumTexInstructions, NumTexIndirections, etc. into gl_program since added _mesa_count_texture_indirections(), _mesa_count_texture_instructions() add code for generic attributes 16..31 more debug code (disabled) Implement vertex attribute binding. added a few more 2.0 functions clean up a bunch of program parameter stuff get rid of STATE_USER_ATTRIB/STATE_AUTO_ATTRIB Update _save_VertexAttrib() functions for non-aliasing behaviour. simplify _mesa_add_state_reference() fix size bug in _mesa_add_attribute() assorted code clean-ups checkpoint: codegen for global vars w/ initializers checkpoint: codegen for global vars/constants now working tweak output new vec3 constructor, replace float_add w/ vec4_add disable some code that'll eventually go away Fix a problem with inlined "return" statements. Make some attempt to free temporaries. added another vec4 constructor, updated += operator slang_variable_scope now stores array of pointers to slang_variables. Rework code related to temp register allocation, both for user variables added glUniform1fv_func, glUniform2fv_func clean-up slang_allocate_storage() fix the subassig, mulassign and divassign cases Move some global vars into slang_assemble_ctx. comments remove old globals Redo the way array indexes are handled. Resolve storage location at code emit time, not codegen time. checkpoint: ++, -- and && operators added IR_ELEMENT added vec3 constructor code Implement the ++var and --var operators, improve some constructors. Reimplement the post-increment/decrement functions. Added new directory of GL shading language demos: glsl Use arrow keys to pan and z/Z to zoom in/out to explore the fractal. fix _slang_gen_subscript() for the case when a simple vector is accessed as an array: convert index to a swizzle/writemask some additional vector constructors implement logical or, xor, not comments remove dead code when automatically binding vertex attributes, start with attrib 1, not 0 Added toyball and bumpmap tests using shaders from the OpenGL Shading Language (orange) book. added some VerteAttrib funcs draw a box, press 'a' to animate fix typo Implement codegen for the selection operator ( b ? x : y ) Fix/clean-up a number of things related to variable/temporary allocation. add texturing, other options Added OPCODE_INT to convert 4 floats to 4 ints. added IR_F_TO_I, update comments code clean-up, re-org. Added IR_F_TO_I support. New _slang_adapt_call() function. _slang_gen_function_call_name() now tries to adapt function calls (expand Rewrite a bunch of constructors. It's now important that the first minor fprintf() change handle var size > 4 in _slang_pop_var_table() rewrite matrix constructors do bounds check in _slang_push_var_table(), added comment rewrite mat4 * mat4 operator to use fewer temps rewrite additional matrix-related functions to reduce register needs remove swizzle param from new_var() remove debug code rewrite a bunch of assignment operators (like +=) Reimplement code for swizzling so that expressions like (p+q).x for vectors p and q works correctly. _mesa_add_unnamed_constant() now tries to re-use constants already in Implement constant sharing so that 4 float constants can share a single change while-loop to create new scope for loop body, per spec Implement fragment discard/kill. remove stray tab print error msg when there's a problem report error message when something fails Rewrite normalize(vec3/vec4) to use one less register. Implement do/while loops. Replace IR_CJUMP with IR_CJUMP0 and IR_CJUMP1 so rewrite more __postIncr functions Reimplement && and || to do short-circuit evaluation. Initial implementation of OPCODE_IF/ELSE/ENDIF instructions. remove unused swizzle parameter to -storage_to_src_reg() optimization: emit MAD instructions when possible Add a simple mechanism for annotating instructions for easier debugging. Added a page with shading language status, tips, etc. added shading.html link fixes for C++ warnings/errors silence C++ warnings fix g++ warnings/errors indicate which opcodes are used by Mesa GLSL, updated comments updated comment added FRAG_BIT_TEX() and FRAG_BIT_VAR() macros only setup varying vars that will be used fix varying interpolation use FRAG_BIT_TEX() remove some parenthesis new comments, ideas fixes, clean-ups, transpose span->varying array indexing asst fixes, tranpose span->varying array indexes Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa document, re-indent _mesa_ffsll() fix typo Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa note that non-member posts are auto-rejected Improved register allocation: allow four 'float' vars or temporaries to share a single register. Clean-up needed. Clean-up of var/temp allocation function parameters. minor updates minor clean-ups Lots of vartable clean-ups, fixes. Report an error message when we run out implement mix() with LRP instruction combine emit_unop(), emit_binop(), emit_triop() into emit_arith() simple noise test noise functions noise() works now s/params/pointer/ for glGetVertexAttribPointer s/params/pointer/ for glGetVertexAttribPointer s/params/pointer/ for glGetVertexAttribPointer bump version to 6.5.3 s/params/pointer/ for glGetVertexAttribPointer regenerated fix _mesa_get_uniform_location() so it uses the given program handle allow fragment-only and vertex-only programs New asm instruction and IR_CLAMP node type to allow clamping to [0,1] with instruction saturate-write option. Not finished yet. Overhaul handling of writemasks/swizzling. This fixes two problem cases: disable all x86 code, broken and will eventually be removed fix mem leak in __glXReportDamage (Panagiotis Papadakos) Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa additional assertions, bump up MAX_EXEC move span-related types/tokens into s_span.h silence uninitialized var warning silence uninitialized var warning New SWspanarrays attribs[] array. remove slang_label.c until it's ready comments Fix logic in _slang_simplify(): vec2() constructor case wasn't getting used. get rid of unused span->start field New span attrStart/attrStepX/attrStepY fields to replace fog, specular, etc. fields. More to come. Replace color, z, w, texture interpolants with new generic attrib interpolants. simplify interpolate_texcoords() simplify derivative-related code unroll inner loop of interpolate_varying() try to simplify variable initializers fix maxInst argument replace abort() with _mesa_problem() Move guts of slang_lookup_constant() into a new function in slang_simplify.c use _slang_simplify() to evaluate array sizes _slang_evaluate_int() no longer used reindent Remove all dependencies on the old slang interpreter/executor. remove slang_execute.c, slang_execute_x86.c Remove obsolete files. added newline at end remove old linker stuff remove slang_link.c and slang_analyse.c Remove old slang linker code. remove slang_export.c and related code fix emit_tex() breakage move some functions, disable some code in preparation for removing assembly code remove slang_assemble*.c files remove more assembly-related code removed obsolete shader assembly files remove more slang assembly-related files, codee remove more slang assembly-related code rename slang_assemble_typeinfo.[ch] to slang_typeinfo.[ch] rename slang_assemble_typeinfo.[ch] to slang_typeinfo.[ch] rename slang_link2.c slang_link.c rename slang_link2.c slang_link.c remove slang_library_texsample.[ch] remove slang_library_texsample.[ch] s/slang_assembly_name_space/slang_name_space/ s/slang_assembly_typeinfo/slang_typeinfo/ s/SLANG_ASSEMBLE_TYPEINFO_H/SLANG_TYPEINFO_H/ remove slang_asm_string() remove unused field remove multibyte chars move _slang_locate_function() reformat, clean-up comments remove slang_export.[ch] remove slang_builtin_vec4.gc remove slang_builtin_vec4.gc clean-ups clean-ups clean-ups add _slang_multiply_swizzles() add vec4_texcube to AsmInfo[] Only glUniform1i() can be used to set sampler uniforms. Generate error otherwise. Add _NEW_PROGRAM flag to _MESA_NEW_NEED_EYE_COORDS. Add _NEW_PROGRAM flag to _MESA_NEW_NEED_EYE_COORDS. added texdemo1 added FLUSH_VERTICES() in _mesa_use_program() shading language texture demo/test remove unused slang_operation fields minor tweaks to distance() funcs Add literal_size field to slang_operation. Merge SWvertex texcoord and varying fields into attrib[] array field. Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa Initial support of loop and subroutine instructions. indentation for program instructions (if/else, loops) Initial implementation of high-level flow-control instructions. set UseHighLevelInstructions = false for now minor formatting changes Use IR node's BranchNode field for IF/ELSE/ENDIF instructions. BRK instruction's BranchTarget field now used for efficiently breaking out of loops. additional comments for BranchTarget redo IR_IF node, removing IR_ELSE, IR_ENDIF new_node[0123]() functions replace IR_BEGIN_LOOP/IR_END_LOOP with IR_LOOP Implement CONT, improve BRK. BRK and CONT work the same Use IR_LOOP to represent do-while and for-loops. Remove old functions for generating BRA-based looping. s/%f/%g/ high vs. low level if/then/else code emit remove old loop break/cont stuff Simplify code with eval_condition(). Implement conditional BRK. Use conditional break in for/do/while loops. change BranchTarget to GLint consolidate BRA with BRK, CONT fix broken BRA for return stmts remove some cruft cont at top of loop, little clean-ups optimize conditional breaks/continues Check for constant-valued while/do loop conditions. do full swizzled matching in _mesa_lookup_parameter_constant() always init param vars to silence valgrind warnings re-enable free'ing of IR trees comments, etc Move experimental GL_MESA_program_debug functions into new file. move GL_MESA_program_debug funcs to prog_debug.c add prog_debug.c remove dead code implement IR_I_TO_F Allow int->float argument conversion in _slang_locate_function(). added a comment abort upon errors (temporary) change all enum tokens to uppercase s/_slang_link2/_slang_link/ remove dead code Lots of changes to prog_print.c code. stand-alone GLSL compiler info about stand-alone compiler s/PROG_PRINT_ARB/PROG_PRINT_DEBUG/ Merge branch 'glsl-compiler-1' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa into glsl-compiler-1 remove accidental check-in updated to version 39 glext.h version 39 updated to version 18 glxext.h version 18 more branch info added SWIZZLE_XXXX, SWIZZLE_YYYY, etc added slang_builtin.c implement support for pre-defined uniform structs (state vars) forgot to return length in parse_array_len() work on struct/array handling alloc IR_FIELD's Storage in codegen, like IR_ELEMENT clean-up, move IR_ELEMENT code checkpoint overhaul of pre-defined uniform code adjustments to STATE_ token layout/format so token[1] is always the array index Reimplement the _slang_alloc_statevar() function. remove dead code more minor changes to STATE_ indexing fix copy&paste errors remove unneeded #includes Use gl_LightSource[0].position intead of a light position uniform. disable debug updated info about arrays, predefined uniforms Merge branch 'origin' into glsl-compiler-1 Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa fix negative indentation problem merge fix: add STATE_FOG_PARAMS_OPTIMIZED, STATE_SPOT_DIR_NORMALIZED use ctx->VertexProgram._Current instead of ctx->VertexProgram._Enabled XXX comments about shaders Undo some STATE_POINT/FOG changes. Max length of state token array is now 5. updated debug code Replace slang_allocate_storage() with simpler _slang_attach_storage() get rid of some unused slang_variable fields start implementing conditions, branching reorg/clean-up/indent remove unneeded #includes, misc clean-up added CallStack, StackDepth added MAX_PROGRAM_ENV_PARAMS use MAX_PROGRAM_ENV_PARAMS remove nvvertexec.c, add prog_execute.c _mesa_ExecuteProgramNV is now a no-op emit high-level IF/ELSE/ENDIF for vertex progs now fix assertion FORCE_PROG_EXECUTE_C cpp flag, misc changes use new _mesa_execute_program() function Use the new unified vertex/fragment program interpreter from prog_execute.c. use _mesa_get_program_register() New, unified interpretor/executor for vertex and fragment programs. Remove obsolete files. updated for vbo glslcompiler build instructions expose _mesa_swizzle_string() debug code for emitting variable allocation comments label routines for implementing branches, jumps Re-implement branching with slang_labels. remove old _slang_gen_if() Replace slang_ir_node::Target w/ Field. Remove Comment field. Clean-up. comments, clean-up added slang_label.c remove unused slang_atom_pool_gen() comments, clean-up replace GLint with gl_state_index remove dead code re-expose _mesa_print_alu_instruction() s/GLint/gl_state_index/, length is now 5 not 6 s/GLint/gl_state_index/, length is now 5 not 6 SWvertex no longer has texcoord field, use attrib field instead added linux-dri-debug expose _mesa_load_tracked_matrices() Update DRI drivers for new glsl compiler. don't pass program ptr to fetch_vector[14]() reindent fix fog breakage add some missing cases in _mesa_program_state_string() added ARL, EXP, LOG, relative indexing Fix assertion in get_register_pointer(), fix EXP case. remove comment Use prog_execute.c to run vertex programs until t_vb_arbprogram.c is updated to Remove unneeded _Fragment/VertexShaderPresent fields, update comments. Outputs[] array wasn't large enough, define MAX_PROGRAM_OUTPUTS, new assertions. Undo some changes to _mesa_UpdateTexEnvProgram(). Fixes broken i915 texturing. add missing code for newer STATE_INTERNAL items make src ptr const clean-up, comment code Fix broken cubemap mipmap layout (the cubemap.c demo was segfaulting). Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa option to test mipmapping Revert "option to test mipmapping" Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa output texcoord in vertex program only copy used outputs add texture rotation Optimize the loop for copying output results. remove unused VaryingPtr s/attribs/results/ remove unused 'element' parameter from _mesa_execute_program() remove 'maxInst' parameter from _mesa_execute_program() minor clean-ups in _mesa_execute_program() s/GetFragmentProgramRegister/GetProgramRegister/ simplify _mesa_get_program_register() Add EnvParams field to gl_program_machine, avoid passing ctx to a bunch of functions. define and use MAX_PROGRAM_ADDRESS_REGS fix bounds checking in get_register_pointer() update comments remove unneeded includes Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa updated version with new Khronos license/copyright Do proper framebuffer refcounting in _mesa_make_current(). if renderbuffer ptr is null, just return Rewrite code related to buffer destruction. Merge branch 'glsl-compiler-1' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa into glsl-compiler-1 Use new slang_emit_info struct for passing context info around. Overhaul of error logging. Overhaul of error handling. Remove old error logging code. New slang_log.[ch] files. Merge branch 'glsl-compiler-1' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa into glsl-compiler-1 re-enable some code fix error flagging disable execute bit fix logic for reporting errors fix mem leak in _mesa_ShaderSourceARB() fix mem leak formatting fixes Fix a few bugs in slang_operation variable scoping. Seems to fix a double-free. re-enable var scope destruct in slang_operation_destruct() Add EmitHighLevelInstructions, EmitComments booleans to gl_shader_state. remove unused DriverMgrCtx s/matrix_stack/gl_matrix_stack/ and s/mesa_list_state/gl_dlist_state/ assert that fb->RefCount==0 in _mesa_free_framebuffer_data() fix comment info about how the compiler works s/ARB/MESA/ in extension check (bug 10126) Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa include assert.h s/unsigned int/size_t/ (bug 10135) fix clipping, display name, warnings fix bad n_dot_h normalization code (bug 9977), plus clean-up the code in general move oldFb decl into tighter scopes Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa Take care of texObj reference in _mesa_free_framebuffer_data() Fix/improve framebuffer object reference counting. fix vert/frag typo more DEBUG_PROG code fix some int arithmetic problems formatting fix fix renderbuffer mem leak unreference old framebuffer, if needed, in _mesa_reference_framebuffer() explicit calls to _mesa_unreference_framebuffer() not always needed now Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa more integer arithmetic updates destroy window during cleanup Generate an error if the vertex shader does not write to gl_Position. check for null program ptrs in _mesa_uniform() additional error detection fix incorrect HPOS write test remove bogus assertion fix swizzled writemask bug fix deferredTexture bug fix broken __postDecr() s/equal/EQUAL/, fix bugs in logical or/and code. Fix problem with nested function calls such as y = f(f(x)) remove end_label field use 2.0, 2.1 version strings regenerated s/diffuset/diffuse/ add missing gl_Point state, fix IR storage bug remove unneeded return stmt update comments more DEBUG_PROG fix gl_TextureMatrix indexing fix ProjectionMatrix typo Rework matrix-related code. check for attempted writes to read-only vars remove old assertion s/_slang_gen_hl_if/_slang_gen_if/ s/_slang_gen_hl_if/_slang_gen_if/ rewrite _slang_gen_select() to use IF node IR_CJUMP0/1 no longer used/needed remove unused new_cjump() ; and {} statements were broken fix assertion fix tmp storage problem for IR_I_TO_F Added IR_SLE and IR_SLT for <= and < operations. Update lessThan(), lessThanEqual() functions, improve some matrix constructors. fix broken vec4_seq, vec4_sne instructions added missing bvec2/3/4 constructors New IMAGE_RED_TO_LUMINANCE flag passed to _mesa_pack_rgba_span_float() to fix glGetTexImage(GL_LUMINANCE) bug #10232. gl_ClipVertex not supported yet fix _mesa_uniform_matrix() transpose bug Merge branch 'origin' into glsl-compiler-1 added GL_CURRENT_PROGRAM add NULL ptr check use gl_ModelViewProjectionMatrixTranspose in ftransform() add NULL ptr check in emit_cond() clean-up formatting Implement gl_FrontFacing for fragment shaders. check for EXT_blend_equation_separate for 2.0 Fix TEXREL issues. Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa into glsl-compiler-1 Implement support for GL_ARB_draw_buffers with GL_MAX_DRAW_BUFFERS > 1. Test the GL_ARB_draw_buffers extension. add NULL ptr check added drawbuffers.c take GL_UNPACK_ALIGNMENT into account in _mesa_image_row_stride() for GL_BITMAP type (bug 10261) clean-up, simplify _mesa_image_row_stride() extra stuff for drawbuffers test Add array bounds checking, fix memleaks, add null ptr checks. Implement GL_ARB_texture_rectangle support properly compute ctx->Texture._EnabledCoordUnits Shuffle some code around in the emit_tex() and emit_move() instructions. Check if FRAG_RESULT_COLR is written and update span->interpMask, arrayMask. comment about SPAN_* vs FRAG_BIT_* values be smarter about which fragment attribs are interpolated before running frag progs alloc an extra byte in _mesa_ShaderSourceARB() to silence a valgrind warning get rid of float_multiply, float_add, float_divide better error msg for undefined function, disable some debug output disable some debug output improve literal printing Check for, simplify vec2/3/4(x). Only do call adapting for constructors. fix ctx->Pixel.PostConvolutionScale/Bias subscript bugs document some bug fixes, lots of new features remove bogus assertion fix a number of issues in _mesa_uniform() more bug fixing, error checking remove old assertion make _slang_typeof_function() static After we've found the slang_function ptr for a SLANG_OPER_CALL node, save the ptr in the node for reuse. continue prev check-in: save ptr to slang_function for SLANG_OPER_CALL move CLIENT_ID code in xmesa_delete_framebuffer(), see bug 7205 Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa clear the b->frontxrb->drawable field in xmesa_free_buffer(), see bug 7205 s/Tranpose/Transpose/ Re-org of gl_pixel_attrib struct. pixelmap code simplification implement byteswapping for all multi-byte types in _mesa_pack_rgba_span_float(), bug 10298 Merge branch 'master' of git+ssh://[EMAIL PROTECTED]/git/mesa/mesa add some rb->Data null ptr checks (bug 7205) no-op clear if buffer width or height is zero (bug 7205) added SWIZZLE_XXXX, YYYY, etc. macros in _mesa_GetColorTable, return silently if table size is 0 silently ignore DeleteProgram/Shader(id=0) added a renderbuffer comment Colortable re-org. Assorted fixes for dealing with zero-size frame/renderbuffers. Properly compute render_inputs_bitset when using a vertex program/shader. 1D convolution (and post-conv scale/bias) were inadvertantly applied to 2D image transfers. document 1D convolution fix disable assertion merge from master indent disable apparently unused code Support for user-defined structures. added SWIZZLE_XYZW use _mesa_copy_instructions() use _mesa_alloc_instructions() print conditional writemask, if enabled In _mesa_add_unnamed_constant() and _mesa_lookup_parameter_constant() allow swizzleOut==NULL. use _mesa_copy_instructions() First pass at implementing structure compares. Overhaul emit_compare() function. updated comment updated comment minor tweaks Add the ability to generate programs that doesn't use condition codes. consolidate some code Fix issues related to the 'continue' statement. document internal compiler options Implement alpha buffer copy for SwapBuffers(). IR utility functions move some code into new slang_ir.c file When computing render_inputs_bitset, omit primary color if we have a fragment program and it doesn't need FRAG_ATTRIB_COL0. Silences valgrind warnings. Properly free the slang_ir_node->Store data (use ref counting). fix mistake in _slang_free_ir() free prog->Attributes in _mesa_delete_program() Free shader-related context state: _mesa_free_shader_state() fix some mem leaks fix mem leak disable free(var->aux) -- can lead to segfault fix mem leak destroy window on exit Fix some renderbuffer reference counting issues. Also fixes a mem leak. fix mem leak, add comments disable free() until other issues can be fixed... merge of glsl-compiler-1 branch disable printing shader program debug info minor status updates remove incorrect assertions Add _swrast_span_default_secondary_color() for use with glBitmap, glDrawPixels, etc. In _mesa_lookup_parameter_constant() make sure we return a full, 4-component swizzle. Fix a few issues with computing storage sizes with respect to swizzles. dead code elimination for constant-valued if/then/else undo some debugging hacks Additional error checking for 'return' statements. remove debug abort() calls Get rid of SLANG_OPER_GOTO, start rewrite of 'return' handling. special case RET Get rid of IR_JUMP and related code. Checkpoint: implementing true CAL/RET instructions for subroutine calls. s/SUB/BGNSUB/ simplify .a suffixing Restore the UseTexEnvProgram logic. add parenthesis around a bit-wise AND term in _tnl_InvalidateState() more parenthesis init machine->StackDepth=0 fix off by one error in OPCODE_RET fix a fragment fog regression fix some printing issues related to subroutines added _slang_label_new_unique() fix another pc off-by one Implement true CAL/RET subroutines. Some optimizations, clean-ups coming... added ftransform() comment disable MakeTexture() bump version to 6.5.3 to match version.h check that if/while/do-while condition is boolean or scalar expose _mesa_condcode_string(), fix some printing print condcodes if DEBUG_PROG Fix, clean-up code related to comparisons, condition codes, etc. added missing returns after slang_info_log_error() calls Use constant_to_src_reg() to simplify some code added some null ptr checks to handle error recovery simplify, clean-up break/cont code Don't emit OPCODE_CONT0/1, BRK0/1 instructions, clean-ups elsewhere. Get rid of BRK0, BRK1, CONT0, CONT1 instructions. Get rid of IR_CONT_IF_FALSE don't generate IR_BREAK_IF_FALSE remove IR_BREAK_IF_FALSE optimization for the emit_not() function Handle logical NOT and XOR without library functions. Results in much tighter code. fix cond code swizzle bug cond code fix more tips, validation info check that LHS of assignment is writable fix scoping mistake in previous commit that checked for writable LHSs always emit BGN/ENDSUB, for now anyway re-order tokens, fix comments If using PF_8A8B8G8R, be sure alpha is correctly handled. Fix some bugs/issues related to alpha channel support. See bug 10483. updated debug printf use _mesa_reference_renderbuffer() in a few more places Call _glapi_set_context(NULL) in _glapi_check_multithread() to make sure the _glapi_Context global gets cleared properly. remove debug printf Overlapping copies with zoomZ=-1 were broken. See bug 10521. init span.y=0 to silence warnings assorted documentation updates assorted updates Remove the never-used SI-style imports/exports code. temporary add some extra renderbuffer debug code include points.h to fix warnings fix color storage bug in convolution path for evaluators, loop to VBO_ATTRIB_TEX7, not VBO_ATTRIB_INDEX. See bug 10543 added glActiveStencilFaceEXT fix comment typo fix etags command to find headers MAX_TEXTURE_COORDS_ARB and MAX_TEXTURE_IMAGE_UNITS_ARB had wrong glGet info. add 2.1 functions fix some dependencies, remove some CFLAGS add glsl to PROGRAM_DIRS support for GLSL 1.20 non-square matrices enable GLSL 1.20 allocate __GLXdisplayPrivate w/ Xcalloc instead of Xmalloc (bug 10569) remove unneeded initialization code (see bug 10569) undo a debug/test change plug in GLSL 1.20 unit NULL ptr check update SLANG version test fix/work-around allocation bugs for non-square matrices use _mesa_reference_renderbuffer(), fix typo fix zoomed depth copies (bug 10608) fix invalid error detection problem in _mesa_bind_attrib_location(), bug 10602 as with prev commit, also fix color index mode zoomed depth copies (bug 10608) s/Shadow/SHADOW/ move/fix texture sampling funcs checkpoint: updating non-square matrix constructors and operators regenerated restore 200x200 window size, animation, version check New _mesa_reference_shader/program() function to consolidate refcounting. use _mesa_clear_shader_program_data() Added sanity checking in _slang_sizeof_type_specifier() to be sure sizes are what's expected. disable debug printfs fix bug in _playback_copy_to_current(): need to skip version position data (see bug 10587) s/version/vertex/ patch for Digital/Tru64 (bug 10635) - forwarded to OpenGL ARB as well fix negative zoom factor bug (10636), more comments more _mesa_unreference_framebuffer() calls, remove dead code set osmesa renderbuffer refcount=1 upon creation, free renderbuffer in OSMesaDestroyContext() Fix sample_depth_texture() to handle texture rectangle coords. implement shadow2DRect functions illegal to set GL_TEXTURE_MAX_LEVEL w/ GL_TEXTURE_RECTANGLE_ARB use b->display instead of b->xm_visual->display to fix some problems detected w/ valgrind Fix some assertions that could occur when an error was earlier logged. Use generic program limits instead of NV-specific ones to init program constants. unhook t_vb_arbprogram.c code - it's going away remove t_vb_arbprogram.c removed unused t_vb_arbprogram stage need to clamp MAD for linear fog remove _tnl_arb_vertex_program_stage remove _tnl_arb_vertex_program_stage Fix glActiveStencilFaceEXT dispatch problem (bug 10523). move GL_EXT_stencil_two_side into alphabetical position just clean-ups lots of changes, fixes, clean-ups don't set GL_TEXTURE_MAX_LEVEL for GL_TEXTURE_RECTANGLE_ARB as that generates an error more matrix function updates fix/simplify some texture functions regenerated In bind_inputs() set VB->EdgeFlag to NULL if it's not needed. Enable texture sampling for vertex programs/shaders. omit the glide/svga sources from stand-alone libGL (anyone using them?) add progs/glsl/ to DEMO_FILES, s/pre/rc1/ prep for 6.5.3 release added href to shading language info glean glsl test now does over 150 tests improved fog comment check _PreferPixelFog in _swrast_span_default_fog(), see bug 10669 call ProgramStringNotify() after linking Replace _mesa_parameter_longest_name() with _mesa_longest_parameter_name(). s/GL_SHADER_PROGRAM/GL_SHADER_PROGRAM_MESA/ (a Mesa-specific token) Remove bad assertions, decrement NumShaders in _mesa_detach_shader(). fix error strings, add a sanity check Fix some bugs related to querying active uniforms. Start fixing some issues with uniform variables and their types. added _slang_gltype_from_specifier() record proper datatypes for uniforms/samplers new comments comments, assertions fix an uninitialized variable and a warning Don't allow deferredTexture if using occlusion query and a frag shader. In _mesa_unpack_depth_span() look for special cases of GLuint->GLushort and GLushort->GLuint conversion. init A.curFuncEndLabel = NULL fix crash when program has invalid structure field remove invalid assertion remove invalid assertion (span->facing may be set because of polygonmode) Fix valgrind problem caused by reading text[-1]. Put gl_program_machine into swrast structure rather than using a local variable. dFdx(), etc. don't work yet Notes about shared lib version. Document depth-peel fixes. added new xm_glide.c file Long obsolete. Remove unused Imakefiles. Call _mesa_warning() instead of _mesa_problem() when external s3tc lib not found. move allocation of shProg->Attributes earlier in function free shProg->Attributes in _mesa_free_shader_program_data() fix memleak in slang_operation_insert() new varnames in slang_operation_insert() free subroutine array (fix mem leak) another bit of debug code fix instruction comment code undo a test/debug change Memory pool manager. added slang_mem.c remove unused vars, assertions remove more unused vars, assertions destroy window upon exit call grammar_alloc_free() to fix memleaks added MemPool field Use new memory pool allocator. Lots of debug code still in place... Remove all the USE_MEMPOOL debug code. memory leaks fixed prep for 6.5.3 rc2 Rename occlude.[ch] to queryobj.[ch] to better reflect contents. Rename occlude.[ch] to queryobj.[ch] s/occlude.h/queryobj.h/ Remove the !rb->Data check that was added a few months ago. fix SkipPixels bugs in _mesa_pack_bitmap(), bug 10690 specularColor.alpha should default to 1, not 0 Fix color sum bug 10688. import glxext.h version 19 Improve the code for interpolating fragment attributes a little. More to come... some re-org, clean-up remove SWvertex->fog field, use attrib field -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]