summaryrefslogtreecommitdiffstats
path: root/src/mesa/shader/slang/slang_emit.c
Commit message (Expand)AuthorAgeFilesLines
* Fix problem with nested function calls such as y = f(f(x))Brian2007-03-071-0/+4
* fix some int arithmetic problemsBrian2007-03-061-3/+7
* Add EmitHighLevelInstructions, EmitComments booleans to gl_shader_state.Brian2007-02-261-11/+16
* Overhaul of error handling.Brian2007-02-261-6/+12
* Use new slang_emit_info struct for passing context info around.Brian2007-02-261-143/+160
* comments, clean-upBrian2007-02-231-5/+11
* Replace slang_ir_node::Target w/ Field. Remove Comment field. Clean-up.Brian2007-02-231-5/+4
* Re-implement branching with slang_labels.Brian2007-02-231-26/+28
* debug code for emitting variable allocation commentsBrian2007-02-221-1/+16
* remove dead codeBrian2007-02-211-18/+2
* adjustments to STATE_ token layout/format so token[1] is always the array indexBrian2007-02-211-1/+2
* checkpoint overhaul of pre-defined uniform codeBrian2007-02-211-0/+18
* clean-up, move IR_ELEMENT codeBrian2007-02-201-30/+36
* alloc IR_FIELD's Storage in codegen, like IR_ELEMENTBrian2007-02-201-4/+5
* implement support for pre-defined uniform structs (state vars)Brian2007-02-201-0/+34
* implement IR_I_TO_FBrian2007-02-161-1/+6
* comments, etcBrian2007-02-091-3/+19
* optimize conditional breaks/continuesBrian2007-02-081-6/+14
* cont at top of loop, little clean-upsBrian2007-02-081-5/+12
* fix broken BRA for return stmtsBrian2007-02-081-0/+1
* Use conditional break in for/do/while loops.Brian2007-02-081-2/+42
* high vs. low level if/then/else code emitBrian2007-02-071-77/+112
* Use IR_LOOP to represent do-while and for-loops.Brian2007-02-071-32/+50
* Implement CONT, improve BRK.Brian2007-02-061-12/+35
* replace IR_BEGIN_LOOP/IR_END_LOOP with IR_LOOPBrian2007-02-061-16/+19
* redo IR_IF node, removing IR_ELSE, IR_ENDIFBrian2007-02-061-46/+56
* BRK instruction's BranchTarget field now used for efficiently breaking out of...Brian2007-02-051-5/+19
* Use IR node's BranchNode field for IF/ELSE/ENDIF instructions.Brian2007-02-051-0/+12
* Initial implementation of high-level flow-control instructions.Brian2007-02-051-0/+72
* Initial support of loop and subroutine instructions.Brian2007-02-051-3/+26
* fix emit_tex() breakageBrian2007-02-021-0/+2
* Overhaul handling of writemasks/swizzling. This fixes two problem cases:Brian2007-01-311-11/+58
* New asm instruction and IR_CLAMP node type to allow clamping to [0,1] with in...Brian2007-01-311-5/+91
* noise functionsBrian2007-01-281-0/+9
* combine emit_unop(), emit_binop(), emit_triop() into emit_arith()Brian2007-01-281-109/+52
* implement mix() with LRP instructionBrian2007-01-281-0/+45
* Lots of vartable clean-ups, fixes. Report an error message when we run outBrian2007-01-281-12/+21
* minor clean-upsBrian2007-01-281-8/+1
* Clean-up of var/temp allocation function parameters.Brian2007-01-271-21/+9
* Improved register allocation: allow four 'float' vars or temporaries to share...Brian2007-01-271-17/+33
* fix g++ warnings/errorsBrian2007-01-231-23/+23
* Add a simple mechanism for annotating instructions for easier debugging.Brian2007-01-201-4/+148
* optimization: emit MAD instructions when possibleBrian2007-01-201-10/+50
* remove unused swizzle parameter to -storage_to_src_reg()Brian2007-01-201-18/+9
* Initial implementation of OPCODE_IF/ELSE/ENDIF instructions.Brian2007-01-201-0/+37
* Reimplement && and || to do short-circuit evaluation.Brian2007-01-201-2/+7
* Implement do/while loops. Replace IR_CJUMP with IR_CJUMP0 and IR_CJUMP1 soBrian2007-01-191-8/+18
* Implement fragment discard/kill.Brian2007-01-191-0/+19
* Implement constant sharing so that 4 float constants can share a singleBrian2007-01-181-11/+14
* Reimplement code for swizzling so that expressions like (p+q).x for vectors p...Brian2007-01-181-58/+69