summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300/r500_fragprog.c
AgeCommit message (Collapse)Author
2008-05-23r5xx: More trig work.Corbin Simpson
SCS now works. COS/SIN have slight issues still.
2008-05-21r5xx: Fixed LRP.Corbin Simpson
Works perfectly. It's a complex one, though, so it might fail in weird ways...
2008-05-21r5xx: Change debug info for readability.Corbin Simpson
It's weird seeing the compiled program before the assembly, that's all.
2008-05-21r5xx: Initial (broken) OPCODE_LRP.Corbin Simpson
Will compile, run, and not eat your kids, but the math is wrong.
2008-05-21r5xx: Add OPCODE_POW.Corbin Simpson
Necessary for Google Earth, among other things.
2008-05-21r500: print out opcode stringDave Airlie
2008-05-21r500: finish main texture instruction decodingDave Airlie
2008-05-20r5xx: Count refs so we don't have to guess on temp reg allocation.Corbin Simpson
As a bonus, we can now have multiple temp temps, by slot.
2008-05-19r5xx: Fixup SOP insts.Corbin Simpson
Use the correct swizzle for alpha/SOP stuff.
2008-05-19r5xx: New fix for COS/SIN/SCS.Corbin Simpson
Not perfect yet, but getting better.
2008-05-19r5xx: Fixup emit_tex, add debugging info, enable temp temps.Corbin Simpson
emit_tex now chases itself with an OUT if needed. Added airlied's dump_program, with some fixes.
2008-05-19r500: add more input srcsDave Airlie
2008-05-19r500: fix swz gets and some returnsDave Airlie
2008-05-19r500: add mask debuggingDave Airlie
2008-05-19r500: add fragment program debug dumperDave Airlie
2008-05-19r5xx: Fix magic offsets for output fifo write masks.Corbin Simpson
Well, this sure explains a lot.
2008-05-18r5xx: Swap sources for CMP.Corbin Simpson
Follows the same pattern as the op on r3xx/r4xx. Thanks airlied.
2008-05-18r5xx: Fix typo of epic proportions.Corbin Simpson
2008-05-18r5xx: ALU/OUT fixups.Corbin Simpson
Lots of small changes. Intentionally breaks some tex stuffs.
2008-05-17r5xx: Add OPCODE_KIL.Corbin Simpson
2008-05-17r5xx: Added OPCODE_DPH.Corbin Simpson
Like DP4, but with one swizzle change.
2008-05-17r5xx: Fix FRC.Corbin Simpson
This makes tri-frc work. (Remind me again why I'm allowed near a compiler, lawl.)
2008-05-17r5xx: Fix SCS.Corbin Simpson
Output instructions need to be marked OUT so they can write to the fifo. Also, negation doesn't work with SWZ yet.
2008-05-17r5xx: Add OPCODE_SWZ.Corbin Simpson
It's so easy!
2008-05-17r5xx: Add OPCODE_SCS.Corbin Simpson
It's disabled, though, because it doesn't work. I'll figure it out later...
2008-05-17r5xx: Adding more opcodes.Corbin Simpson
EX2, FRC, LG2, SIN, RCP, and RSQ, if you care. All of these except FRC are like COS. This pretty much rounds out the set of opcodes which can be done in one ALU inst.
2008-05-17r5xx: First swing at OPCODE_COS.Corbin Simpson
2008-05-17r5xx: Unbreak MAX and MIN.Corbin Simpson
Both of them had faulty copypasta.
2008-05-17r500: set fragprog end to correct placeDave Airlie
2008-05-17r500: write out the correct FP registersAlex Deucher
2008-05-15r500: shift tex src properlyDave Airlie
2008-05-15r500: remove some debuggingDave Airlie
2008-05-15r500: split output/pixel masks and emit in the correct placesDave Airlie
2008-05-15r500: add cmp support in theoryDave Airlie
2008-05-15r500: some trivial fixups to get tri working.Dave Airlie
the counter was being used one instruction over the end
2008-05-07r500: for rectangular textures set to unscaled coordinates.Dave Airlie
2008-05-07r5xx: Fix FP inputs. (For good?)Corbin Simpson
FP inputs are now counted and mapped correctly, and temps are allocated tightly and correctly.
2008-05-06r5xx: Fix false error with DP3/DP4.Corbin Simpson
DP3/DP4 only takes two arguments, but tried to load three, causing a false fallback to the dumb shader.
2008-05-06r5xx: Index inputs and temps.Corbin Simpson
This is not the same as r3xx indexing. It only tries to protect inputs on the pixel stack from getting clobbered by temps or texs. Texs don't need special treatment since they read from special input regs and write to the same temp regs as ALU/FC instructions.
2008-05-06r5xx: FP: Add OPCODE_TXB.Corbin Simpson
Tex lookup with biased LOD. Should magically work.
2008-05-06r5xx: FP: Make MOV/ABS look pretty.Corbin Simpson
We can't really do anything like emit_alu, so we're doing emit_mov instead.
2008-05-06r5xx: Emit an OUT instruction at the end of execution.Corbin Simpson
This should make TEX/TXP work right. (Note: "Should" is not "does.")
2008-05-06r5xx: We update max_temp_idx now, so no need to hard-code it.Corbin Simpson
This roughly doubles the speed of glxgears (GINAB) by allowing more pixels to run concurrently.
2008-05-06r5xx: Fix typo.Corbin Simpson
Gotta be more careful with my cut'n'paste, lawl.
2008-05-06r5xx: Use max_temp_idx.Corbin Simpson
2008-05-05r500: consolidate tex instructionsDave Airlie
you cannot change a tex into an output so this means we have to actually do another instruction after this one to mov if its an output
2008-05-05r500: mov cleanup macrosDave Airlie
2008-05-05r500: make tri-param workDave Airlie
This makes constant work which are 32-bit on r500 unlike r300. Switch MOV to using MAD no idea if we might have negative things MAX 0,-5 is likely to do the wrong thing..
2008-05-03r5xx: Fix for loops.Corbin Simpson
Thanks to dli in IRC for pointing this out.
2008-05-03r5xx: Fix dumb shader.Corbin Simpson
For some reason, FGLRX doesn't actually set R500_US_INST_TEX. Let us not make that same mistake.