Commit graph

15249 commits

Author SHA1 Message Date
José Fonseca
1942e29bf7 softpipe: Implement texture blankets. 2008-07-05 00:55:18 +09:00
José Fonseca
194cfc7a4e scons: Enable gcc SSE2 intrinsics on x86. 2008-07-04 22:28:57 +09:00
Brian Paul
dd3311aa89 mesa: added _vbo_VertexAttrib4f() 2008-07-03 17:21:23 -06:00
Brian Paul
7366f3fc54 mesa: fix incorrect array size, added assertion 2008-07-03 17:21:23 -06:00
Brian Paul
0ed3f6f575 mesa: fix array storage allocation bug 2008-07-03 17:21:23 -06:00
Brian Paul
22ac107971 mesa: regenerated file 2008-07-03 17:21:22 -06:00
Brian Paul
4d1d6ed159 mesa: additional vec4 constructor 2008-07-03 17:21:22 -06:00
Brian Paul
d4172263e5 mesa: fix various error codes 2008-07-03 17:21:22 -06:00
Brian Paul
bb18a8b2ea mesa: fix some error codes in _mesa_ShaderSourceARB() 2008-07-03 17:21:22 -06:00
Brian Paul
d015ffa6ea mesa: fix problem freeing framebuffer/renderbuffer objects
Basically, set up no-op Delete() methods for the DummyFrame/Renderbuffer obj
2008-07-03 17:21:22 -06:00
Brian Paul
51abbdd227 gallium: added a4r4g4b4_put_tile_rgba() 2008-07-03 17:21:22 -06:00
Brian Paul
78388c0e37 mesa: added case for fixed pt 2008-07-03 17:21:22 -06:00
Brian Paul
f042d662e2 gallium: increase TGSI interpreter's number of temp registers to 64
Also, clean up the definitions of the misc/extra temp regs.
A few new assertions too.
2008-07-03 17:21:22 -06:00
Brian Paul
00eb309c31 gallium: move, increase ST_MAX_SHADER_TOKENS 2008-07-03 17:21:22 -06:00
Brian Paul
3c12874857 gallium: increase TGSI_EXEC_MAX_COND_NESTING, etc 2008-07-03 17:21:21 -06:00
Brian Paul
2212c214f1 gallium: fix surface memleak in bitmap code
Found w/ tunnel2.c demo.
2008-07-03 10:12:37 -06:00
José Fonseca
ade03755bc pipebuffer: Silent warnings.
Although rarely hit in normal apps, they are too noisy with test suites.
2008-07-03 21:28:56 +09:00
José Fonseca
79ca9734ea Support conversion of YUV surfaces. 2008-07-03 20:50:23 +09:00
José Fonseca
c193cc506f gallium: Don't forget to get overllaping blits working again. 2008-07-03 20:50:23 +09:00
Jakob Bornecrantz
d94c7063ec i915: EGL almost works again 2008-07-03 12:12:25 +02:00
Jakob Bornecrantz
28f3d390dd egl: Fix demodriver 2008-07-03 12:10:36 +02:00
José Fonseca
8ccab31356 gallium: Use surface_copy for 1:1 blits. 2008-07-03 15:06:24 +09:00
José Fonseca
27d8d6f44f scons: Add a env.CodeGenerate method to simplify code generation via python scripts.
env.CodeGenerate(
	target = 'my_source.c',
	script = 'my_generator.py',
	source = ['input.txt', 'another.txt'],
	command = 'python $SCRIPT $SOURCE > $TARGET'
)

It will take care generating all appropriate dependencies, including any
module imported by the generator script, and the respective .pyc file
side effects.
2008-07-03 15:06:24 +09:00
Brian Paul
1ca2306147 mesa: fix vertex array validation test for attribute 0 (vert pos)
We don't actually need vertex array[0] enabled when using a vertex
program/shader.

cherry-picked from master
2008-07-02 19:18:10 -06:00
Brian Paul
98b7174ad6 gallium: replace an assertion with "if (!texobj) continue"
It's possible to call update_samplers() between the time a fragment shader
is bound and when a texture image is defined (such as glClear).  This
fixes the case where we don't have a complete texture object yet.
2008-07-02 19:11:49 -06:00
Brian Paul
dad8a7c90d gallium: fix a bug in vertex program output mapping
Need to translate VERT_RESULT_PSIZ, BFC0, BFC1 to TGSI shader output slots
after all other attributes have been handled.  This fixes a bug where
generic vertex program outputs (varying vars) could get mapped to the
same slot at point size or back-face colors.
2008-07-02 19:07:11 -06:00
Brian Paul
8fb4d602db gallium: nr_attrs was off by one, updated comments, minor code movement 2008-07-02 19:05:18 -06:00
Brian Paul
39b9b05313 mesa: additional GLSL built-in constants 2008-07-02 17:10:42 -06:00
Brian Paul
dff477a5e2 mesa: when linking a shader program, make sure all the shaders compiled OK
cherry-picked from master
2008-07-02 17:08:47 -06:00
Brian Paul
40739d4ae9 mesa: added some debug code (disabled)
cherry-picked from master
2008-07-02 17:08:28 -06:00
Brian Paul
088c42c5c3 mesa: fix error codes in _mesa_shader_source(), _mesa_get_shader_source()
If the 'shader' parameter is wrong, need to either generate GL_INVALID_VALUE
or GL_INVALID_OPERATION.  It depends on whether 'shader' actually names a
'program' or is a totally unknown ID.
There might be other cases to fix...

cherry-picked from master
2008-07-02 17:08:09 -06:00
Brian Paul
16caeeab4b mesa: regenerated file 2008-07-02 17:06:26 -06:00
Brian Paul
adc709e996 mesa: added some missing equal() notEqual() intrinsics
cherry-picked from master
2008-07-02 17:05:56 -06:00
Brian Paul
8f98242d40 mesa: disable some debug assertions
We can sometimes fail these assertions because of how swizzled storage
works.  Will revisit someday.
2008-07-02 12:47:18 -06:00
Brian Paul
eab88236b3 mesa: regenerated files 2008-07-02 12:46:18 -06:00
Brian Paul
789fae163d mesa: fix all(bvec2) function typo, add missing bvec2/3/4() constuctors
cherry-picked from master
2008-07-02 12:45:55 -06:00
Brian Paul
019ad5e284 gallium: replace 128 with MAX_LABELS 2008-07-02 12:41:39 -06:00
Brian Paul
511733b862 mesa: added _mesa_print_swizzle() debugging helper 2008-07-02 12:41:39 -06:00
Roland Scheidegger
489fc4d10a mesa: fix issues around multisample enable
multisample enable is enabled by default, however gl mandates multisample
rendering rules only apply if there's also a multisampled buffer.
2008-07-02 20:22:08 +02:00
Michel Dänzer
cc31eecbcb gallium: Allow draw module to work on non-x86 platforms again. 2008-07-02 12:10:15 +02:00
José Fonseca
d16fcd07f8 pipebuffer: Debug buffer manager to detect buffer under- and overflows.
It should detect both cpu and gpu buffer overflows.
2008-07-02 12:29:07 +09:00
José Fonseca
ea4ca10b1b pipebuffer: Verify usage flag consistency. Minor cleanups. 2008-07-02 12:29:07 +09:00
Brian Paul
66b48202c2 mesa: fix a GLSL vector subscript/writemask bug
This fixes a failure for cases like:
   vec4 v;
   v[1] *= 2.0;

The v[1] actually acts like a writemask, equivalent to v.y
The fix is a bit convoluted, but will do for now.

cherry-picked from master
2008-07-01 18:40:23 -06:00
Brian Paul
eeefe175de mesa: move some functions
cherry-picked from master
2008-07-01 18:39:46 -06:00
Brian Paul
81a0acca31 mesa: make _slang_swizzle_swizzle() non-private
cherry-picked from master
2008-07-01 18:39:22 -06:00
Brian Paul
44c99ad236 mesa: better function inlining in the presence of 'return' statements
Before, the presence of a 'return' statement always prevented inlining
a function.  This was because we didn't want to accidentally return from
the _calling_ function.  We still need the semantic of 'return' when inlining
but we can't always use unconditional branches/jumps (GPUs don't always
support arbitrary branching).

Now, we allow inlining functions w/ return if the return is the last
statement in the function.  This fixes the common case of a function
that returns a value, such as:

vec4 square(const in vec4 x)
{
   return x * x;
}

which effectively compiles into:

vec4 square(const in vec4 x)
{
   __retVal = x * x;
   return;
}

The 'return' can be no-op'd now and we can inline the function.

cherry-picked from master
2008-07-01 11:48:57 -06:00
Brian Paul
7d4f01413f mesa: add/fix some IrInfo entries for debugging purposes
cherry-picked from master
2008-07-01 11:48:27 -06:00
Jakob Bornecrantz
e99ce4af8a i915: Last reference to surface -> pitch 2008-07-01 15:52:37 +02:00
José Fonseca
b3da2a9524 gallium: Use the inline keyword on C++. 2008-07-01 22:04:58 +09:00
José Fonseca
846f87d826 scons: Output mapfile on windows ddk profile builds. 2008-07-01 22:04:01 +09:00