Commit Graph

37100 Commits

Author SHA1 Message Date
Kenneth Graunke
17a307d154 ast_function: Actually do type conversion on function arguments. 2010-07-14 16:49:24 -07:00
Kenneth Graunke
1fdcdb2dca exec_list: Add a new replace_with method. 2010-07-14 16:49:24 -07:00
Kenneth Graunke
53120805a8 Refresh autogenerated file builtin_function.cpp. 2010-07-14 16:49:24 -07:00
Kenneth Graunke
d5316aeb38 glsl2/builtins: Rework clamp to use scalar/vector combinations. 2010-07-14 16:49:24 -07:00
Kenneth Graunke
8984203abb glsl2/builtins: Rework min/max to use scalar/vector combinations. 2010-07-14 16:49:24 -07:00
Kenneth Graunke
ce5ae5f49d ir_constant_expression: Add support for ir_binop_mod. 2010-07-14 16:49:24 -07:00
Kenneth Graunke
79fed377f4 ir_constant_expression: Add support for ir_binop_min and ir_binop_max.
These now work on scalar/vector combos. Semantically, if a is a scalar,
min(a, vec2(x,y)) == vec2(min(a,x), min(a,y))
2010-07-14 15:50:28 -07:00
Kenneth Graunke
891a0647e4 ir_constant_expression: Add support for ir_binop_pow. 2010-07-14 15:50:28 -07:00
Kenneth Graunke
3fab376bef ir_constant_expression: Add support for ir_unop_cos. 2010-07-14 15:50:28 -07:00
Kenneth Graunke
908afd16d1 ir_constant_expression: Add support for ir_unop_sin. 2010-07-14 15:50:28 -07:00
Kenneth Graunke
074720477c ir_constant_expression: Add support for ir_unop_floor. 2010-07-14 15:50:28 -07:00
Kenneth Graunke
c1ee30a145 ir_constant_expression: Add support for ir_unop_ceil. 2010-07-14 15:50:28 -07:00
Kenneth Graunke
323d909ab2 ir_constant_expression: Add support for ir_unop_trunc.
This uses a C99 function.
2010-07-14 15:50:28 -07:00
Kenneth Graunke
cb63929df4 ir_constant_expression: Add support for ir_unop_log2.
This uses a C99 function.
2010-07-14 15:50:27 -07:00
Kenneth Graunke
aca01edc83 ir_constant_expression: Add support for ir_unop_exp2.
This uses a C99 function.
2010-07-14 15:50:27 -07:00
Kenneth Graunke
14b7b2660c ir_constant_expression: Add support for ir_unop_sign. 2010-07-14 15:50:27 -07:00
Kenneth Graunke
5e840dba44 ir_constant_expression: Remove bogus assert in ir_unop_abs case.
abs is defined for integral types; it's even implemented.
2010-07-14 15:50:27 -07:00
Kenneth Graunke
7d19bf2ec3 glsl2: Remove ir_program bong hits. 2010-07-14 15:50:27 -07:00
Brian Paul
2f4ce25645 mesa: fix _mesa_Texture/Render/BufferObjectUnpurgeable() return values
Fixes piglit object_purgeable-api-pbo, object_purgeable-api-vbo
and object_purgeable-api-texture failures with swrast.

NOTE: This is a candidate for the 7.8 branch.
2010-07-14 15:13:55 -06:00
Brian Paul
f2bfc2b7d2 mesa: update assertions and fix refcounting in depth/stencil renderbuffer code 2010-07-14 15:13:54 -06:00
Brian Paul
4beea12f17 mesa: silence a printf warning 2010-07-14 15:13:54 -06:00
Brian Paul
871feeb165 llvmpipe: delete lp_test_*.o files with make clean 2010-07-14 15:13:54 -06:00
Brian Paul
1957bef995 gallium: added CLEAN_EXTRA var for make clean target 2010-07-14 15:13:54 -06:00
Nick Bowler
f8d81c31ce dri2: Track event mask in client code.
When direct rendering is being used, DRI2 BufferSwapComplete events are
sent unconditionally to clients, even if they haven't been requested.
This causes error messages to be printed by every freeglut application
of the form

  freeglut (./gears): Unknown X event type: 104

and might confuse other clients.

This is a fixed up version of the patch by Jesse Barnes, which drops
BufferSwapComplete events if they are not requested by clients.

Fixes fdo bug 27962.

Signed-off-by: Nick Bowler <nbowler@draconx.ca>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2010-07-14 10:23:09 -07:00
José Fonseca
467928c6e0 gallium: Ensure prototypes are wrapped in extern "C".
Fixes MSVC build failure due to inconsistent _ReadWriteBarrier
prototype.
2010-07-14 16:15:56 +01:00
José Fonseca
d023fb3928 llvmpipe: Remove redundant alignments.
The lp_rast_shader_inputs' alignment is irrelevant now that it contains
pointers instead of actual data.

Likewise, lp_rast_triangle's size alignment is meaningless.
2010-07-14 14:53:35 +01:00
Chris Li
bed78862d4 llvmpipe: Addi ssse3 swizzling for B8G8R8A8_UNORM. 2010-07-14 14:38:02 +01:00
José Fonseca
c6c62164c3 gallium: Add a macro for memory barriers. 2010-07-14 14:38:02 +01:00
José Fonseca
5e2437a232 gallium: Add a new PIPE_ARCH_SSSE3 define for SSSE3 compiler support. 2010-07-14 14:38:02 +01:00
Zack Rusin
582132aaef Merge branch 'mesa-2d-registers' 2010-07-13 21:54:14 -04:00
Zack Rusin
1491c6aa2d mesa: add comments and change Index2D to just Index2 2010-07-13 21:49:53 -04:00
Marek Olšák
9fa64ea675 r300/compiler: fix swizzling in the transformation of Abs modifiers 2010-07-14 02:01:03 +02:00
Eric Anholt
021222c6a8 ir_to_mesa: Add convenience function for opcodes with no src/dst reg.
Most of flow control is like this.
2010-07-13 12:24:39 -07:00
Jakob Bornecrantz
20a3dda726 i965g: Fix scons build of dri driver 2010-07-13 19:32:16 +01:00
Eric Anholt
c10a68522c glsl2: When linking makes a variable not a varying output, make it ir_var_auto.
This almost fixes glsl-unused-varying, except that the used varying
gets assigned to the first varying slot (position).
2010-07-13 11:07:16 -07:00
Roland Scheidegger
217926f350 llvmpipe: fix comment typo 2010-07-13 19:59:38 +02:00
Roland Scheidegger
edac740095 llvmpipe: move rasterizer to screen instead of setup context
there's no point of having this per context, so move to screen
(and protect with a mutex).
2010-07-13 19:58:58 +02:00
Eric Anholt
4d5da50b94 ir_to_mesa: Add support for variable array indexing of builtin varyings.
That is to say, gl_TexCoord[i] now works, fixing glsl-texcoord-array
on swrast.
2010-07-13 09:52:20 -07:00
Eric Anholt
f8a2b65bc9 ir_to_mesa: Add support for array dereferences on the LHS of assignments.
The big change is to delay address reg setup until the instruction
that needs the deref.  It was hard to use the deref chain support for
the LHS because it does the copy of the dereffed value to a temporary
(to avoid problems when two src regs are array derefs), so we wouldn't
haev a pointer to actual storage in the end.

Fixes glsl-vs-arrays on swrast.
2010-07-13 09:52:20 -07:00
José Fonseca
962da13ba3 llvmpipe: Align texture data to the cache line. 2010-07-13 17:32:44 +01:00
Keith Whitwell
e21e7ab4da llvmpipe: eliminate the set_state rasterizer command
Just put a pointer to the state in the tri->inputs struct.  Remove
some complex logic for eliminating unused statechanges in bins at the
expense of a slightly larger triangle struct.
2010-07-13 17:28:54 +01:00
Keith Whitwell
d4b64167b5 llvmpipe: pass mask into fragment shader
Move this code back out to C for now, will generate separately.

Shader now takes a mask parameter instead of C0/C1/C2/etc.

Shader does not currently use that parameter and rasterizes whole
pixel stamps always.
2010-07-13 17:23:49 +01:00
Keith Whitwell
3bd9aedbac llvmpipe: move fences from per-bin to per-thread
Rather than inserting an lp_rast_fence command at the end of each
bin, have each rasterizer thread call this function directly once
it has run out of work to do on a particular scene.

This results in fewer calls to the mutex & related functions, but more
importantly makes it easier to recognize empty bins.
2010-07-13 17:23:48 +01:00
José Fonseca
6d17f00600 llvmpipe: Always swizzle/unswizzle whole tiles.
This was already the case, but the generated (un)swizzling code was not
benefiting of that knowledge.
2010-07-13 17:23:48 +01:00
Ian Romanick
4e6a3e0d2d glsl2: Remove unnecessary casts of clone return values 2010-07-13 09:22:35 -07:00
Jakob Bornecrantz
654009f7f8 llvmpipe: Ignores! 2010-07-13 07:49:00 -07:00
Jakob Bornecrantz
04453a32b4 targets: Link xorg drivers with LLVM if built 2010-07-13 07:49:00 -07:00
Jakob Bornecrantz
433a08445c targets: Clean up xorg make files a bit 2010-07-13 07:49:00 -07:00
Jakob Bornecrantz
4f956889b7 st/xorg: When selecting st via configure make sure to test for xorg-server 2010-07-13 07:49:00 -07:00
Brian Paul
271af2a874 libgl-xlib: add depend to make clean list 2010-07-13 07:46:22 -06:00