Commit graph

92185 commits

Author SHA1 Message Date
Brian
fe1d15acc7 added micro_trunc(), re-order some code 2007-10-02 15:17:37 -06:00
Brian
8955bc3458 Minor optimization: no-op CAL when ExecMask==0x0. 2007-10-02 14:25:43 -06:00
Brian
6aab3e3d26 Added TGSI_FILE_OUTPUT case in fetch_src_file_channel().
GLSL output variables (such as vertex varyings) can be read (they're not
write-only).
2007-10-02 14:17:47 -06:00
Brian
4ad80ad5cf Implement CAL/RET and a call stack for subroutines.
The glsl/brick.c shader demo runs now.
2007-10-02 14:05:21 -06:00
Brian
5e49ec339d Added TGSI_OPCODE_END
Halt program execution when we get to END instruction.  The GLSL compiler
puts subroutines after the end instruction so we have to stop before then.
2007-10-02 13:49:38 -06:00
Brian
4726489248 Fold expand_program() into tgsi_exec_prepare() 2007-10-02 13:41:56 -06:00
Brian
e2009d0871 no more need for tgsi_exec_machine_run2(), remove dead code 2007-10-02 11:49:43 -06:00
Brian
9ac03856f5 remove dead code 2007-10-02 11:47:21 -06:00
Brian
0d13ade0cd Move tgsi machine state init/allocations so they're done less frequently.
This, plus expanding all instructions ahead of time, seems to have improved
the performance of program execution by 8x or so.
2007-10-02 11:46:11 -06:00
Brian
57d3770f35 checkpoint: unpack all instructions before interpretation. Actual looping works. 2007-10-02 10:38:56 -06:00
Jouk
584b84256b Merge branch 'master' of git+ssh://joukj@git.freedesktop.org/git/mesa/mesa 2007-10-02 15:17:23 +02:00
Brian
cdf99a9fad comments/code for min/max_lod - revisit someday 2007-10-01 18:10:53 -06:00
Brian
de1d725f44 updated glext.h license info (Khronos), plus other clean-ups 2007-10-01 17:57:25 -06:00
Brian
4c19f95a39 use i915_miptree_layout when using an i915 2007-10-01 15:39:15 -06:00
Brian
f8b2148a2b avoid updating vertex format when it doesn't really change 2007-10-01 14:46:19 -06:00
Brian
a24031d50c don't crash in RasterPos if feedback not implemented yet 2007-10-01 13:55:16 -06:00
Brian
3c41589420 disable debug printf 2007-10-01 13:54:37 -06:00
Brian
726060680b don't crash when fog enabled, still not rendered correctly though 2007-10-01 13:54:24 -06:00
Brian
dab288b982 remove specular color assertion (the path works) 2007-10-01 13:50:24 -06:00
Brian
b13618c316 fix a few vert/frag program items to get i915 driver going again 2007-10-01 13:45:53 -06:00
Zou Nan hai
3d6c410990 fragment shader function call fix, gl_FragCoord fix 2007-09-30 13:47:05 +08:00
Brian
f8ee72d98f fix VBO-split infinite loop (bug 12164) 2007-09-29 12:01:34 -06:00
Brian
2727cfddbf hack in some code to test loops, break 2007-09-29 10:44:05 -06:00
Brian
78f3cd1e08 Initial conditional execution support for loops and BRK instruction.
Also, instead of passing cond mask to each micro op, just apply it in the
store_dest() function.
2007-09-29 10:43:29 -06:00
Chris Rankin
4f96000e29 r200: Implement SetTexOffset hook.
Implementation guidance by Michel Dänzer, final testing by Timo Aaltonen.
2007-09-29 18:14:06 +02:00
Brian
91550f0a17 remove unused tgsi_exec_cond_* types 2007-09-29 09:51:11 -06:00
Zou Nan hai
b0b48798c7 support continue, fix conditional 2007-09-29 15:00:52 +08:00
Brian
9405ec6251 temporary hack to test nested conditionals 2007-09-28 21:04:56 -06:00
Brian
fc38c82771 Initial implementation of IF/ELSE/ENDIF using conditional masking.
mach->CondMask controls writing to each of the 4 components in a quad.
mach->CondMaskStack handles nested conditionals.
Only a few of the micro ops (add/sub/mul/store) have been updated to obey CondMask at this time.
2007-09-28 21:04:34 -06:00
Brian
ae7f200788 fix bug causing unnecessary translations 2007-09-28 20:31:24 -06:00
Dan Nicholson
2a3e33865d add support for LDFLAGS env var 2007-09-28 18:42:21 -06:00
Brian
e776e7a95a update the DRM/DRI instructions 2007-09-28 18:39:41 -06:00
Brian
bbcbd362a9 remove old debug code, fix warning 2007-09-28 16:20:10 -06:00
Brian
78876bf61c fix st_use_program() 2007-09-28 16:19:51 -06:00
Brian
6775c1e8cc Remove test for EXT_blend_logic_op in glGetString when determining GL version.
EXT_blend_logic_op is slightly different from GL 1.1's RGBA logicop mode
and does not have to be supported.  Per conversation with Roland.
2007-09-28 16:06:43 -06:00
Brian
636480cc9c Instead of linked program pairs, keep a list of vertex programs translated for each fragment program. 2007-09-28 15:39:39 -06:00
Brian
f14ece2d2c Use texture->first_level, not 0, when not mipmapping.
Fixes crash when GL_BASE_LEVEL!=0.
Also, remove old assertion.
2007-09-28 15:39:39 -06:00
José Fonseca
f971bdc051 Gallium's doxygen documentation. 2007-09-28 18:48:15 +01:00
José Fonseca
59424e2d34 Update x86's static and profile configs. 2007-09-28 18:18:50 +01:00
Jesse Barnes
d99f6c4a2a Go back to using old drm_i915_flip_t field name
This field shouldn't have been renamed in the first place.  Go back to using
the old name so that the tree is backward and forward compatible again.
2007-09-28 10:11:52 -07:00
Zack Rusin
8731e391f5 Use sse only if GALLIUM_SSE is defined 2007-09-28 12:29:30 -04:00
Zack Rusin
a1a989f0be Redoing the way we handle vertex shaders for the draw module. 2007-09-28 12:29:22 -04:00
Zack Rusin
f78193f444 Remove gl dependency from the x86 assembler code 2007-09-28 12:29:14 -04:00
Zack Rusin
901577e07f Revert "Redoing the way we handle vertex shaders for the draw module."
This reverts commit 6dcfddb8e2.
2007-09-28 12:28:16 -04:00
Zack Rusin
f2a33a63f1 Revert "Use sse only if GALLIUM_SSE is defined"
This reverts commit 57b5d36057.
2007-09-28 12:28:06 -04:00
Zack Rusin
57b5d36057 Use sse only if GALLIUM_SSE is defined 2007-09-28 09:12:20 -04:00
Zack Rusin
6dcfddb8e2 Redoing the way we handle vertex shaders for the draw module. 2007-09-28 09:12:20 -04:00
Zou Nan hai
e75ae0dc79 fix 2007-09-28 17:04:48 +08:00
Zou Nan hai
4087c90eff support nested function call in pixel shader 2007-09-28 16:37:01 +08:00
Brian
7966e479dc set miptree pitch to region pitch after allocating the region in st_miptree_create()
This fixes rendering with small (4x4) textures with softpipe.
Haven't yet tested with i915.
2007-09-27 16:33:01 -06:00