Commit graph

12652 commits

Author SHA1 Message Date
Corbin Simpson
78fa506059 r5xx: New fix for COS/SIN/SCS.
Not perfect yet, but getting better.
2008-05-19 23:56:53 -07:00
Dave Airlie
f0d76d526b r300/r500: fixup some of the register write sizes 2008-05-20 16:30:36 +10:00
Dave Airlie
2005de48f9 r300: some ctrl-m's wierd. 2008-05-20 16:02:19 +10:00
Dave Airlie
282cdc8b5c r300/r500: fix RS col fmt bits 2008-05-20 15:59:56 +10:00
Xiang, Haihao
c6b36e5498 i965: Check fallback before accounting for index/vertex buffer size. fix #16028. 2008-05-20 13:28:42 +08:00
Brian Paul
e469d78d33 fix tempReg test in _mesa_combine_programs() 2008-05-19 16:03:43 -06:00
Corbin Simpson
476248befe r5xx: Fixup emit_tex, add debugging info, enable temp temps.
emit_tex now chases itself with an OUT if needed.
Added airlied's dump_program, with some fixes.
2008-05-19 11:06:41 -07:00
Brian Paul
fbfe2a58de Fix program refcounting assertion failure during context tear-down
When purging the program hash table, the refcount _should_ be one since
the program is referenced by the hash table.  Need to explicitly set to
zero before calling delete().

Also, purge high-level shader hash tables before low-level program hash tables.
2008-05-19 08:43:36 -06:00
Dave Airlie
03b3fed8f1 r500: add more input srcs 2008-05-19 21:58:28 +10:00
Dave Airlie
ac315792bf r500: fix swz gets and some returns 2008-05-19 21:40:40 +10:00
Dave Airlie
60b8e1f524 r500: add mask debugging 2008-05-19 21:11:55 +10:00
Dave Airlie
cddab021e3 r500: add fragment program debug dumper 2008-05-19 20:24:09 +10:00
Corbin Simpson
c60bdcf8a8 r5xx: Fix magic offsets for output fifo write masks.
Well, this sure explains a lot.
2008-05-19 00:00:08 -07:00
Corbin Simpson
2708d7f700 r5xx: Swap sources for CMP.
Follows the same pattern as the op on r3xx/r4xx. Thanks airlied.
2008-05-18 23:52:54 -07:00
Corbin Simpson
a6c38f2f64 r5xx: Fix typo of epic proportions. 2008-05-18 23:35:07 -07:00
Corbin Simpson
2225b9bdb0 r5xx: ALU/OUT fixups.
Lots of small changes. Intentionally breaks some tex stuffs.
2008-05-18 22:38:28 -07:00
Brian Paul
fd59f19cd2 Move _mesa_init_glsl_driver_functions() into shader_api.c
This allows making a bunch of functions static, and removes a state
tracker dependency on driverfuncs.c

cherry-picked from gallium-0.1
2008-05-18 16:04:55 -06:00
Brian Paul
88c0a74633 additional fog/color matrix changes from gallium-0.1 2008-05-18 15:55:24 -06:00
Brian Paul
6e92968d75 add state vars for color matrix, pixel transfer scale&bias
cherry-picked from gallium-0.1 (068c7bd912)
2008-05-18 15:52:13 -06:00
Brian Paul
2f8fc325ac mesa: added internal post color matrix scale/bias vars
cherry-picked from gallium-0.1 (302daeb2ec)
2008-05-18 15:50:20 -06:00
Brian Paul
0c78c766e4 fixes to _mesa_combine_programs(), from gallium-0.1 2008-05-18 15:46:26 -06:00
Brian Paul
5976a6a75c added div by zero check for Fog.End/Start (from gallium-0.1) 2008-05-18 15:41:36 -06:00
Brian Paul
4b6b0fd526 clean-ups / additions from gallium-0.1 branch 2008-05-18 15:41:01 -06:00
Dave Airlie
bdfd5d95c5 r300: fixup US_OUT_FMT bits 2008-05-18 17:58:29 +10:00
Dave Airlie
126673261d r500: you can have a single texcoord 2008-05-18 15:25:08 +10:00
Corbin Simpson
0910d9d4d6 r5xx: Add OPCODE_KIL. 2008-05-17 13:38:35 -07:00
Corbin Simpson
c57b3b1d2c r5xx: Added OPCODE_DPH.
Like DP4, but with one swizzle change.
2008-05-17 12:45:46 -07:00
Corbin Simpson
6dd3c0ed96 r5xx: Fix FRC.
This makes tri-frc work.
(Remind me again why I'm allowed near a compiler, lawl.)
2008-05-17 09:27:35 -07:00
Corbin Simpson
16cc362f0b r5xx: Fix SCS.
Output instructions need to be marked OUT so they can write to the fifo.
Also, negation doesn't work with SWZ yet.
2008-05-17 07:12:38 -07:00
Corbin Simpson
c11a33fe76 r5xx: Add OPCODE_SWZ.
It's so easy!
2008-05-17 07:12:37 -07:00
Corbin Simpson
d5aa421661 r5xx: Add OPCODE_SCS.
It's disabled, though, because it doesn't work. I'll figure it out later...
2008-05-17 07:12:37 -07:00
Corbin Simpson
405ee871c5 r5xx: Adding more opcodes.
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-17 07:12:37 -07:00
Corbin Simpson
0de02f1716 r5xx: First swing at OPCODE_COS. 2008-05-17 07:12:37 -07:00
Corbin Simpson
d8529d9b00 r5xx: Unbreak MAX and MIN.
Both of them had faulty copypasta.
2008-05-17 07:12:37 -07:00
Dave Airlie
5e075fb809 r500: set fragprog end to correct place 2008-05-17 13:31:14 +10:00
Alex Deucher
ba50c3fed3 r300: SC register naming cleanup 2008-05-17 10:40:47 +10:00
Alex Deucher
791c95230c r500: write out the correct FP registers 2008-05-17 10:29:52 +10:00
Brian Paul
896c0cc8ec bring in fixes/changes from gallium-0.1 2008-05-16 15:47:55 -06:00
Brian Paul
a2e6beade1 fix an attr/src mix-up when setting-up/binding vertex arrays
This fixes problems with incorrect material coefficients when glMaterial
is called per-vertex.
2008-05-16 15:23:04 -06:00
Brian Paul
f27c6f3139 fix merge collision 2008-05-16 15:17:35 -06:00
Brian Paul
f2632212ad silence warning, new assertion 2008-05-16 15:16:06 -06:00
Shunichi Fuji
e291cf6f8d free(key) in _tnl_UpdateFixedFunctionProgram() 2008-05-16 15:16:06 -06:00
Brian Paul
8bdf5b6e64 Fix a program refcounting error, don't share program parameter lists.
The refcounting bug was causing a memleak (unfreed programs).
The old parameter list sharing is not needed since the change in how
uniforms are handled.
2008-05-16 15:16:06 -06:00
Brian Paul
a3e86d43e6 minor changes to aid debugging 2008-05-16 15:16:06 -06:00
Brian Paul
eb4271ea8b remove stray, left-over RefCount++ 2008-05-16 15:16:06 -06:00
Brian Paul
6de6999edc whitespace/formatting 2008-05-16 15:16:06 -06:00
Brian Paul
1af2b14514 init SamplersUsed bits in _mesa_parse_arb_fragment_program 2008-05-16 15:16:06 -06:00
Brian Paul
885cc592df fix assertion typo: s/=/==/ 2008-05-16 15:16:06 -06:00
Shunichi Fuji
e6cd9d88d3 Fix memory leak in _tnl_UpdateFixedFunctionProgram 2008-05-16 13:18:25 -07:00
Brian Paul
0639998ee8 Fix DRI build 2008-05-16 13:15:03 -07:00