| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
As a by-product, remove the memory leak of nv_basic_blocks.
|
| |
|
| |
|
|
|
|
|
| |
Otherwise we might clobber the origin interpolation result or
use the result of the RCP before its definition.
|
|
|
|
|
|
|
|
|
| |
Since atm our OPs aren't typed but instead values are, we need to
take care if they're used as different types (e.g. a load makes a
value u32 by default).
Maybe this should be changed (also to match TGSI), but it should
work as well if done properly.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
At some point we'll want to support real subroutines instead of
just inlining them into the main shader.
Since recursive calls are forbidden, we can just save all used
registers to a fixed local memory region and restore them on a
return, no need for a stack pointer.
|
| |
|
| |
|
|\
| |
| |
| |
| | |
Conflicts:
src/gallium/drivers/nv50/nv50_program.c
|
| |
| |
| |
| | |
Signed-off-by: Jerome Glisse <[email protected]>
|
| |
| |
| |
| |
| |
| |
| | |
The CMP instruction needed to be flipped to properly handle
operand==0.
Fixes fd.o bug 29923.
|
| | |
|
| |
| |
| |
| | |
spotted by taiu on irc
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
The code for handling implicit conversions should probably get
refactored, but for now, this is easy.
Fixes piglit test constructor-26.vert.
|
| |
| |
| |
| | |
I'm not sure if this is strictly necessary, but it seems wise.
|
| |
| |
| |
| | |
Fixes piglit test constructor-27.vert.
|
| |
| |
| |
| |
| |
| |
| |
| | |
return_constructors
Now that constructors are not generated as functions or stored in the
symbol table, there is no need to flag whether or not constructors
should be returned.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Fixes piglit test cases glsl-[fv]s-all-0[12].
|
| |
| |
| |
| | |
fixes at least 2 more piglits.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
One can bind same texture or sampler to different slot,
each slot needs it own state. The solution implemented
here is not exactly beautifull or optimal need to think
to somethings better.
Signed-off-by: Jerome Glisse <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If the matrix being constructed was larger than the source matrix, it
would overwrite the lower-right part of the matrix with the wrong
values, rather than leaving it as the identity matrix.
For example, constructing a mat4 from a mat2 should only use a writemask
of "xy" when copying from the source, but was using "xyzw".
Fixes the code generated by piglit test constructor-23.vert.
|
| |
| |
| |
| |
| | |
Fixes piglit test case constructor-21.vert and changes
constructor-22.vert to give the correct output.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This was triggering even for matrix-from-matrix constructors. It is
perfectly legal to construct a mat3 from a mat2 - the rest will be
filled in by the identity matrix.
Changes piglit test constructor-23.vert from FAIL to PASS, but the
generated code is incorrect.
|
| |
| |
| |
| | |
There are no integer matrix types, so switching on them is silly.
|
| |
| |
| |
| | |
fixes problems in valgrind with uninitialised values.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Like the constant handling and the handling of other uniforms, we add
the whole thing to the Parameters, avoiding messy, incomplete logic
for adding just the elements of a builting uniform that get used.
This means that a driver that relies only on ParameterValues[] for its
parameters will have an increased parameter load, but drivers
generally don't do that (since they have other params they need to
handle, too).
Fixes glsl-fs-statevar-call (testcase for Ember). Bug #29687.
Regresses glsl-vs-array-04 on 965. Thanks to a slight change in
register allocation, this test of undefined behavior now wraps around
the register space and unexpectedly reads the constant value it's
trying to compare to. The test should probably not look at the
resulting color, since behavior is undefined.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Most of these are just typecasting to long to match the arg type. I
don't really care too much about getting a GLsizei or whatever
appropriate type in. However, there were a number of real bugs, like
missing arguments or passing floats to integer format specifiers. My
favorite: printflike("%s, argument") is missing an argument.
|
| | |
|
| |
| |
| |
| |
| |
| | |
shown by the glsl-vs-point-size failing on r600g.
the test passes on softpipe and I get a full piglit test run completing on r600g.
|
| |
| |
| |
| | |
Signed-off-by: Jerome Glisse <[email protected]>
|
| |
| |
| |
| |
| | |
Signed-off-by: Dave Airlie <[email protected]>
Signed-off-by: Jerome Glisse <[email protected]>
|
| |
| |
| |
| |
| |
| |
| | |
Out of bounds reads could happen for reducing WxH to WxH/2
or WxH to W/2xH.
Fixes fd.o bug 29918.
|
| | |
|
| | |
|
| |
| |
| |
| | |
Signed-off-by: Alex Deucher <[email protected]>
|
| |
| |
| |
| |
| | |
Free the buffers before the visuals. Fixes valgrind warning
reported in fd.o bug 29919.
|
| |
| |
| |
| | |
Fixes glsl-fs-dot-vec2-2.
|
| |
| |
| |
| |
| | |
Reduces glsl-vs-all-01 from 42 Mesa IR instructions (including the
END) to 17.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make state statically allocated, this kills a bunch of code
and avoid intensive use of malloc/free. There is still a lot
of useless duplicate function wrapping that can be kill. This
doesn't improve yet performance, needs to avoid memcpy states
in radeon_ctx_set_draw and to avoid rebuilding vs_resources,
dsa, scissor, cb_cntl, ... states at each draw command.
Signed-off-by: Jerome Glisse <[email protected]>
|