Kenneth Graunke
d6a32d4b54
ir_constant_visitor: Add support for dFdx and dFdy operations.
...
If the argument is a constant expression...it's not changing per pixel,
so the result is simply 0.
2010-06-09 15:23:40 -07:00
Kenneth Graunke
b843c7a20c
Implement dFdx, dFdy, and fwidth via new expression opcodes.
2010-06-09 14:44:39 -07:00
Kenneth Graunke
cbd881da3f
Implement 'refract' builtin.
2010-06-09 14:44:39 -07:00
Eric Anholt
94731797c6
intel: Use the blitter to upload TexSubImage data to busy textures.
...
This avoids many pipeline stalls in cairo-gl.
[ # ] backend test min(s) median(s) stddev. count
Before:
[ 0] gl firefox-talos-gfx 36.799 36.851 2.34% 3/3
[ 0] gl firefox-talos-svg 33.429 35.360 3.46% 3/3
After:
[ 0] gl firefox-talos-gfx 35.895 36.250 0.48% 3/3
[ 0] gl firefox-talos-svg 26.669 29.888 5.34% 3/3
This doesn't avoid all the pipeline stalls because the kernel reports
!busy for buffers on the flushing list. That should be fixed in .36.
2010-06-09 14:23:46 -07:00
Eric Anholt
503eb57a00
i965: Avoid calloc/free in the CURBE upload process.
...
In exchange we end up with an extra memcpy, but that seems better than
calloc/free. Each buffer is 4k maximum, and on the i965-streaming
branch this allocation was showing up as the top entry in
brw_validate_state profiling for cairo-gl.
2010-06-09 14:17:52 -07:00
Kenneth Graunke
3ffedf1249
Fix some typing issues in asin.
...
CorrectFunction.vert now passes.
2010-06-09 14:15:04 -07:00
Kenneth Graunke
c476ba8fe2
Add a completely bogus implementation of the noise[1234] builtins.
...
idr suggested this. Eventually we will need a real one.
2010-06-09 14:07:35 -07:00
Kenneth Graunke
855fcb22c1
Implement 'acos' builtin.
...
This is tacked on to the end of the 'asin' file because acos calls asin,
whech means asin needs to be defined first. Alphabetical order fail.
2010-06-09 13:52:32 -07:00
Carl Worth
2fb30a2e49
Merge remote branch 'kwg/fixes'
2010-06-09 13:29:37 -07:00
Kenneth Graunke
539f29323f
Implement 'faceforward' builtin.
2010-06-09 13:27:16 -07:00
Kenneth Graunke
29b22287fe
Implement 'distance' builtin.
2010-06-09 13:17:00 -07:00
Kenneth Graunke
cdf1726ffd
Add remaining signatures for 'clamp' builtin.
2010-06-09 13:10:00 -07:00
Kenneth Graunke
76796ed66f
Add remaining signatures for 'max' builtin.
2010-06-09 13:05:40 -07:00
Kenneth Graunke
47d44c877e
Add remaining signatures for 'min' builtin.
2010-06-09 13:04:16 -07:00
Kenneth Graunke
2438f64e63
Add remaining signatures for 'mod' builtin.
2010-06-09 13:04:03 -07:00
Marek Olšák
45fb47d50c
r300g: try harder to create a transfer object
...
I was told this wouldn't help to fix the FDO bug #28443 , but still,
it's a harmless last resort.
Also, linear textures safely fallback to an unpipelined transfer here.
2010-06-09 21:43:31 +02:00
Zack Rusin
1d11eac93f
draw: make sure geometry shader correctly iterates the output buffer
2010-06-09 15:02:08 -04:00
Marek Olšák
f571a569a0
r300g: debug output texture size
2010-06-09 20:22:52 +02:00
Marek Olšák
950be3fa3c
r300g: return NULL texture early if buffer_create fails
2010-06-09 20:17:27 +02:00
Kenneth Graunke
b97efa5db5
ir_function_cloning_visitor: Add support for ir_texture.
2010-06-09 11:14:58 -07:00
Kenneth Graunke
8331d48948
Don't call _mesa_glsl_initialize_types for every builtin function.
...
This was clearly wrong; types are now only initialized once.
2010-06-09 11:14:58 -07:00
Kenneth Graunke
57503a22d7
Only initialize types after #extension directives have been processed.
...
Since _mesa_glsl_initialize_types add types for various extensions, we
can't call it until after processing "#extension foo : disable" lines.
Fixes tex_rect_02.frag.
2010-06-09 11:14:58 -07:00
Kenneth Graunke
4b0029a97d
Commit output of texture_builtins.py and refresh builtin_function.cpp.
2010-06-09 11:14:58 -07:00
Kenneth Graunke
5e65c1ccae
texture_builtins.py: Support the EXT_texture_array extension.
2010-06-09 11:14:58 -07:00
Kenneth Graunke
0d80f71867
Add EXT_texture_array support.
2010-06-09 11:14:58 -07:00
Kenneth Graunke
cc249f79e7
generate_builtins.pl: Support stage-specific builtins even for extensions.
2010-06-09 11:14:58 -07:00
Kenneth Graunke
c34a624c9f
texture_builtins.py: Fixes for Array variants.
...
The array layer is now included as part of the texture coordinate.
2010-06-09 11:14:58 -07:00
Kenneth Graunke
538da12092
texture_builtins.py: Add support for 130 Proj variants.
2010-06-09 11:14:58 -07:00
Kenneth Graunke
b3bcea7db6
Add a python script to generate texture builtins.
2010-06-09 11:14:58 -07:00
Kenneth Graunke
9aefbe838c
generate_builtins.pl: Support directiories for each extension.
2010-06-09 11:14:58 -07:00
Kenneth Graunke
9d1fc46f0c
generate_builtins.pl: Support _fs directories as well as _vs.
2010-06-09 11:14:57 -07:00
Kenneth Graunke
56d3f6ad78
Set the type of ir_texture properly; infer it from the sampler type.
2010-06-09 11:14:57 -07:00
Kenneth Graunke
dd5b4a544b
ir_reader: Add support for reading ir_texture.
2010-06-09 11:14:57 -07:00
Kenneth Graunke
3c7934bfaa
ir_reader: Refactor reading of dereferences for later reuse.
2010-06-09 11:14:57 -07:00
Kenneth Graunke
26d74cd1d1
Add stub visitor support for ir_texture.
2010-06-09 11:14:57 -07:00
Kenneth Graunke
be298063b5
ir_print_visitor: Add support for ir_texture.
2010-06-09 11:14:57 -07:00
Kenneth Graunke
c30f6e5dea
Add mappings between ir_texture_opcode and strings.
2010-06-09 11:14:57 -07:00
Ian Romanick
81377c012c
Define IR instruction for texture look-ups
2010-06-09 11:14:57 -07:00
Zack Rusin
da4185ca77
draw: make sure the buffer is big enough to fit everything emitted by the gs
2010-06-09 14:11:43 -04:00
Ian Romanick
2f8b0435b0
Use array delete operator to delete an array
...
This was detected by valgrind. I think GCC still does the right
thing, but the C++ spec allows the compiler to do something
stupid... like crash or only delete the first entry in the array.
2010-06-09 11:00:23 -07:00
Roland Scheidegger
26d5d4d995
llvmpipe: fix copy & paste bug in clear logic
...
fixes bug 28450.
2010-06-09 18:46:52 +02:00
Zack Rusin
04490ad31d
draw: fix geometry shader which emit multiplie primitives
2010-06-09 11:59:53 -04:00
Zack Rusin
d27d45a2df
graw: add a multiple primitive geometry shader test
2010-06-09 11:44:19 -04:00
Zack Rusin
db7ed20730
nv: fix compile after the latest gs changes
2010-06-09 11:29:45 -04:00
Zack Rusin
d4ef0f6c67
geometry shaders: make gs work with changable primitives and variable number of vertices
...
lots and lots of fixes for geometry shaders. in particular now we work when the gs
emits a different primitive than the one the pipeline was started with and also
we work when gs emits more vertices than would fit in the original buffer.
2010-06-09 11:13:34 -04:00
Thomas Hellstrom
cec9955acc
xorg/vmwgfx: Disable 3D by default.
...
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
2010-06-09 07:40:07 +02:00
Thomas Hellstrom
2e27bf8b7c
st/xorg: Add a customizable option to disable 3D.
...
If no customizer is present, 3D will be enabled by default.
Otherwise the option will default to the customizer value.
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
2010-06-09 07:40:07 +02:00
Ben Skeggs
ebd98b3496
nvfx: fix typo from gallium-msaa merge
2010-06-09 11:59:49 +10:00
Ben Skeggs
851ca2f7f9
nv50: fix typo from gallium-msaa merge
2010-06-09 11:59:01 +10:00
Ben Skeggs
7bf678f7ec
nv50: use MARK_RING correctly
2010-06-09 11:59:01 +10:00