Brian
19710c95da
turn off debug output
2007-10-26 19:29:38 -06:00
Brian
8fed2466e4
Re-implement GLSL texture sampler variables.
...
GLSL sampler variables indicate which texture unit to use for TEX instructions.
Previously, this was baked into the fragment/vertex program and couldn't be
readily changed once set.
Now, SamplerUnits[] array indicates which texture unit is to be used for
each sampler variable. These values are set with glUniform1i().
This is extra state that must be passed to the fragment/vertex program
executor at runtime.
2007-10-26 19:19:51 -06:00
Zack Rusin
789d248558
Hold a stack of temporaries so that we can redeclare them
...
for all defined functions. Fixes crashes in function calls.
2007-10-26 19:12:56 -04:00
Brian
78c1f8b2de
convert OPCODE_END -> TGSI_OPCODE_RET
2007-10-26 13:10:37 -06:00
Brian
f92083c338
if we hit RET w/ empty call stack, halt
2007-10-26 13:10:37 -06:00
Brian
6b30f3888e
Initial support for immediate values in TGSI programs.
...
These can be evaluated at compile time.
Code disabled pending clarifications of TGSI immediate data structures.
2007-10-26 13:10:37 -06:00
Zack Rusin
67e4b82996
Get basic function calls working in the shaders.
2007-10-26 14:59:38 -04:00
Zack Rusin
56da35ef76
Fix swizzle fetching in tgsi_util_get_full_src_register_extswizzle. Shorten
...
the swizzle coding in LLVM compilation using it and fix some warnings.
2007-10-26 14:59:38 -04:00
Zack Rusin
61d998c966
Make ret part of the instruction block instead of implicitely
...
closing at the end of parsing.
2007-10-26 14:59:38 -04:00
Brian
e4f6f0ec02
surface_alloc() is now a winsys function.
...
This allows surfaces to be allocated without a rendering context.
A few loose ends to resolve, but in working condition.
2007-10-26 10:45:42 -06:00
José Fonseca
f7be1b419a
Actually move region_alloc() and region_release() to intel_winsys.
2007-10-26 13:31:04 +01:00
Brian
ec85467457
clean-up, simplify some tile code, more to come
2007-10-25 20:35:23 -06:00
Brian
f684120417
Move region_alloc() and region_release() to pipe_winsys.
...
This allows regions to be allocated w/out a rendering context.
2007-10-25 20:35:23 -06:00
Brian
616112ea2e
silence warning
2007-10-25 20:32:45 -06:00
Brian
ee80e0b620
Move the get/put_tile() functions to pipe_context.
...
The _rgba versions are temporary until the state tracker is updated.
2007-10-25 20:32:45 -06:00
Brian
afd19177e4
tex comments
2007-10-25 20:32:45 -06:00
Brian
aaac436c6c
added some comments
2007-10-25 20:32:45 -06:00
Brian
3dde3715db
update TILE_TOP/BOTTOM_* values to match softpipe
2007-10-25 20:32:45 -06:00
Brian
86f09fd1a7
s/GLfloat/float/, s/GLint/int/, etc
2007-10-25 20:32:45 -06:00
José Fonseca
18a22a4302
Briefly describe the buffer management interface.
2007-10-25 23:41:23 +01:00
José Fonseca
1d2ff452d4
Expand pkg-config flags before invoking the compiler.
...
This allows IDEs such as Eclipse to get the correct c-preprocessor flags used
from the build output.
2007-10-25 23:37:25 +01:00
José Fonseca
414a933ad2
Ignore generated files.
2007-10-25 23:25:02 +01:00
Michel Dänzer
8568fadaf2
LLVM requires linking with the C++ compiler.
...
It's basically luck if it works with the C compiler on some platforms...
2007-10-25 18:26:26 +02:00
Zack Rusin
4a4e6f2cab
Implement loops
2007-10-25 11:47:25 -04:00
Zack Rusin
1d17cb721a
Fix nested swizzles. Actually fetch the destination contents
...
instead of input.
2007-10-25 09:04:41 -04:00
Zack Rusin
1d26e9c447
Fix nested conditionals
2007-10-25 09:04:41 -04:00
Zack Rusin
e842b5e5ba
Test some functionality of vp using GLSL that pure vp isn't testing.
2007-10-25 09:04:41 -04:00
Zack Rusin
7073ef9682
Implement else ops.
2007-10-25 09:04:41 -04:00
keithw
731352f03e
set vcache.referenced bit always
2007-10-25 10:21:52 +01:00
Zack Rusin
5022ee43fc
Make branching work :) Simply allow output variables as valid
...
operand inputs when they've been assigned already.
2007-10-24 19:26:09 -04:00
Zack Rusin
1c5fec714d
Simplify branch handling. Prepare for proper decleration extraction.
2007-10-24 19:20:32 -04:00
Brian
7636aac54b
Fix glDrawElements + VBO rendering when ptr/offset is not zero.
...
When an index VBO is bound, glDrawElement's indices pointer is really an
offset into the element buffer. Add that offset to the prims[i].start
value before calling pipe->draw_elements().
Fixes vbo.c conform test.
2007-10-24 14:40:09 -06:00
Brian
40a0b053f7
Revert "Undo indexOffset change (I think, git???)"
...
This reverts commit 11ce6244a7 .
2007-10-24 14:35:40 -06:00
Brian
11ce6244a7
Undo indexOffset change (I think, git???)
2007-10-24 14:34:40 -06:00
Brian
3733b1f2e9
add to git
2007-10-24 12:43:52 -06:00
Brian
f68fce1f1f
Implement gl_PointCoord attribute for GLSL fragment shaders.
...
Contains the normalized fragment position within a point sprite.
2007-10-24 12:38:07 -06:00
Brian
3a345e0003
print CAL label
2007-10-24 12:32:42 -06:00
Brian
e506514dbb
fix bug in RET code
2007-10-24 12:32:42 -06:00
Brian
4eafe69a2a
better debug output
2007-10-24 12:32:42 -06:00
Brian
76a4fd098f
a bit more work for optimizing clears in tile cache (not enabled yet)
2007-10-24 12:32:42 -06:00
Brian
b78e90807a
flush pipe in draw_stencil_pixels()
2007-10-24 12:32:42 -06:00
Brian
47f2e97019
get_tile() for z16, z32, s8z24 surfaces needs to return 4 floats per pixel (for depth texture sampling)
2007-10-24 12:32:42 -06:00
Brian
af96043167
added a pipe->flush() call in xmesa_clear()
2007-10-24 12:32:41 -06:00
Zack Rusin
02cf317ed6
Add copyright headers and do some cleanups.
2007-10-24 12:48:06 -04:00
Zack Rusin
9d4b51aab8
Remove the silly function and remove the bogus comment.
2007-10-24 11:41:28 -04:00
Zack Rusin
d76a7b61bb
Cleanup some code.
2007-10-24 11:21:05 -04:00
Zack Rusin
5040eefbb7
Implement arl, lerp opcodes and do a first stab at if/endif
...
handling and branching support.
2007-10-24 11:21:05 -04:00
Zack Rusin
ba823b3ded
Implement cross product and abs opcode
2007-10-24 11:21:05 -04:00
Zack Rusin
1248b9776b
Implement extended swizzling.
2007-10-24 11:21:05 -04:00
Zack Rusin
743e96eec5
Implement SGE and SLT
2007-10-24 11:21:04 -04:00