mesa: Changes to 'refs/tags/post-merge-glsl-compiler-1'
Tag 'post-merge-glsl-compiler-1' created by Brian <brian@yutani.localnet.net> at 2007-03-26 16:16 +0000
checkpoint/tag master after merging in glsl-compiler-1 branch
Changes since mesa_6_5_2:
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 (1):
Fix parallel make in r300 driver.
Alan Hourihane (3):
merge current trunk into vbo branch
use passed target parameter
Ensure we have a valid ReadBuffer for CopyTexSubImage, and
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
Brian (680):
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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/git/mesa/mesa
document, re-indent _mesa_ffsll()
fix typo
Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/git/mesa/mesa
option to test mipmapping
Revert "option to test mipmapping"
Merge branch 'master' of git+ssh://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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://brianp@git.freedesktop.org/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
Brian Paul (2):
md5 sums
version bump
Carlos Martín Nieto (1):
nouveau: Implement much of the fog handling.
Christian Neumair (1):
set log level w/ env var
Christoph Bill (3):
Add early register descritpion.
r300: Use reg definition when available & add missing reg definition.
r300: Use register name & add a register about shading.
Claudio Ciccani (1):
Updated copyright header.
Daniel Nylander (1):
Swedish translation of driconf options.
Dave Airlie (5):
Merge branch 'nouveau-import'
fix issue with i915tex advertising visuals it can't support
r300: get rid of CB_DPATH legacy
r300: change vendor string to DRI R300 Project
nouveau: implement nv20Clear and nv20Scissor
Eric Anholt (8):
i965: Fix a crash with wine by not allocating >1MB on the stack.
Add reporting of damage by DRI drivers when the extension support is available.
i965: Connect INTEL_DEBUG=sync up to cmd/batch ioctls.
i965: Avoid branch instructions while in single program flow mode.
Track rename of DamagePost -> DamageAdd.
Remove dead code causing a warning.
Add _mesa_ffsll() for compatibility on OSes without ffsll(), and use it.
Bug #9604: Fix a static buffer allocation failure.
Etienne Clement (1):
test for POT before using sample_2d_linear_repeat()
Gary Wong (1):
Fix copy-and-paste mistake in comment ("scaling" should read "translation").
George Sapountzis (7):
Bug 7790: Polygons incorrectly clipped by mach64 driver
Bug 7861: mach64 with render acceleration should restore texture state
Bug 7260: mach64 texture memory mng cleanup
Drop mesa wrappers for XFree86.
Drop old (pre-AIGLX) GLcore interface.
Override Const.CheckArrayBounds for Xserver in XMesaCreateContext().
Bug 9628: no entry for GetVertexAttribPointerv
Haihao Xiang (3):
Use the tiled flag in the sarea to determine region tiling.
i965: Support linear format in i965.
fix some format conversion bugs in glGetTexImage(), bug 10288
Ian Romanick (9):
Add missing files to server generation list.
Hack indent flags for indirect_reqsize.h to eliminate extra diffs.
Use glxbyteorder.h in server-side source files.
Merge branch 'master' of ssh+git://idr@git.freedesktop.org/git/mesa/mesa
Delete two invalid assertions.
Merge branch 'master' of ssh+git://idr@git.freedesktop.org/git/mesa/mesa
Fix GLAPIENTRYP for OS X.
Fix cut-and-paste error in the name of GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB.
Merge branch 'master' of ssh+git://idr@git.freedesktop.org/git/mesa/mesa
J.Jansen (1):
Updates of the OpenVMS makefiles.
Jakob Bornecrantz (1):
Add support for CN700 chipset in miniglx
Jeremy Kolb (16):
Some compile fixes.
Added the beginnings of state (not much there yet). Fixed some includes.
Cleaning
Add more feilds to context.
State changes.
Changed invalid context fields to valid ones.
More context.
Fix compile errors. Add vblank_seq to nouveau_context.
Oops. Forgot to check in the context change.
Added OUT_RING* debugging macros. Compile with NOUVEAU_RING_DEBUG to use.
Fill in nv30PointSize and nv30Viewport.
Add include guard.
Add state initialization to context creation.
More state.
nouveau: Fixes for nv30.
Merge branch 'master' of git+ssh://git.freedesktop.org/git/mesa/mesa
Jerome Glisse (10):
Move r300 to new fbo interface based on Keith Whithwell.
Rework r300 fragprog avoid using bitfield structure.
Deleted unused file which likely have be reintroduced during git move.
r300: Correct bug introduced by fragprog rework.
Fix typo from commit 1d312ae0137eb39bf74fac91eb97ed25c289a4ca .
mesa: Update _Current ptr along Current when a new vertex program is bind.
r300: Fix vertex program position invariant bug, force position reading.
mesa: Update _Current along Current on fragment program bound.
Update doxygen doc to reflet vbo changes.
doxygen: update doxygen project number to 6.5
Keith Packard (3):
Initialize GL_ARB_occlusion_query only if DRM support is present.
Various warning fixes for i965 driver.
Merge branch 'origin'
Keith Whitwell (51):
Checkpoint of new vbo-building code. Currently builds regular arrays
Changes for new vbo-building module.
remove this module
switch over to vbo module
Fix compiler warning
checkpoint - remove dead files, otherwise untested
better handling of current attributes. Trivial dlist and varray tests work
switch several dri drivers over
Remove wakeup functions. This code is intended to be active all the
Move edgeflag into the VERT_ATTRIB_SEVEN slot. This means that our
oops, get.c is autogenerated
cleanup code, compiles with vbo changes
move public structure definitions to vbo.h
pickup structs from vbo.h
remove vtxfmt code, switch over to vbo
disable vtxfmt_a code, switch over to vbo
switch remaining drivers over to vbo
missing file
Respect array->Normalized flag.
Fix typo in display list attrib binding.
Fill in missing input slots in the vertex-array + no-vertex-program
Similarly, fill in missing input slots in the vertex-array +
Fix typo in last commit
Fix type-conversion of incoming vertices.
Fix compiler warnings.
Don't perform dangling attribute check on POS attribute. It can't by
Remove special-case handling for index and edgeflag
Split too-large draw commands.
Correctly initialize current attribute sizes.
Don't special-case FOG attribute initialization.
Remove unused index buffer.
Merge branch 'master-merge' into vbo-0.2
Merge branch 'vbo_0_1_branch' into vbo-0.2
Merge branch 'master' of git+ssh://keithw@git.freedesktop.org/git/mesa/mesa into vbo-0.2
Merge vbo_0_1_branch
Additional display list tests
Don't special-case index, edgeflag.
New debug config for linux-dri
New tests for the array functions which also provoke rebasing.
Helper for rebasing draw requests where min_index != 0.
Use new rebase helper. Remove other rebase code.
Cope with internally-generated null inputs.
Correct usage/meaning of max_index parameter.
Modify assert to reflect rebase criteria
Merge branch 'vbo-0.2-origin' into vbo-0.2
Merge branch 'vbo-0.2'
Propogate UsesKill information.
Fix off by one error in immediate state packet size.
fix typo in subrect_disable packet
fix typo in subrect_disable packet
fix off-by-one in load_state_immediate
Mathias Hopf (1):
added null xmctx check to XMesaResizeBuffers(), bug 7205
Matthieu Castet (3):
nouveau : nv10 mixing cached stuff with not cached stuff is bad.
nouveau : nv10 comment icomplete command
nouveau : NOUVEAU_RING_TRACE
Michel Dänzer (51):
Re-generate options.h with Swedish translations.
Make git ignore files only generated at build time.
glxinfo: When direct rendering is not enabled, print some hints.
Make git ignore some more generated files.
Make git ignore Emacs backup files.
i915tex: Recalculate viewport related hardware state in intelWindowMoved().
minstall: Always remove destination file before (re-)creating it.
minstall: Pass correct destination file path to $RM regardless of source path.
mipmap_limits: Fix display of current texture filtering mode.
_mesa_swizzle_ubyte_image: Only use single swizzle_copy call when strides match.
intelTexSubimage: Fix last parameter for intel_miptree_image_map().
intel_batchbuffer_flush: Don't assert cliprects when lock is not held.
intel_finalize_mipmap_tree: Add more conditions for rebuilding mipmap trees.
Share code to lay out >= 945 style 2D mipmaps between i915tex and i965 drivers.
Fix some corner cases in i945_miptree_layout_2d().
Avoid failing assertion in intel_miptree_set_image_offset() with cube maps.
Fix copy-and-paste-o of my e-mail address.
intel_finalize_mipmap_tree: Only flush batchbuffer when necessary.
Reply to: