| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
We need to update VP_RESULT_MAP and/or COORD_REPLACE_MAP
when light_twoside and/or point_sprite are changed.
|
|
|
|
|
|
|
|
|
|
|
| |
For each FP input, don't assume that the VP output will be
at the same position, but scan the semantics instead, then
put the correct output reg indices into VP_RESULT_MAP.
Position is still assumed to be the first output/input.
See 07fafc7c9346aa260829603bf3188596481e9e62, which renders
previous assumptions incorrect.
|
| |
|
|
|
|
|
|
| |
Simplifies things since the second to last one will then
be converted in the subsequent pass that ensures alignment
automatically.
|
|
|
|
|
| |
The hardware wants the pattern the same way it is
passed to glPolygonStipple.
|
|
|
|
| |
width/height/depth arrays
|
| |
|
|
|
|
|
| |
This should be the default setting.
See also 7d967b9b7c08aea2a471c5bf6aced8bfafdae874.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Mip-mapped 3D textures are not arrays of 2D layers
with a mip-map layout like 2D textures, therefore we
cannot use image_nr == depth for them.
Making use of "volume tiling" modes now, the allowed
modes are 0xZY where Z <= 5 and y <= 5.
|
| |
|
|
|
|
|
| |
Don't assume that a SET that writes to IF's argument
directly precedes the IF.
|
|
|
|
|
| |
Will use AND for gl_FrontFacing, the face input
is either 0 or 0xffffffff.
|
|
|
|
|
|
|
|
|
|
|
| |
First, using width * block size as pitch is evidently
wrong if a block contains more than 1 texel.
For tiled textures, since a block occupies a contiguous
area of memory, y addressing in m2mf has to be done by
block index, not the y coordinate itself.
This should fix compressed textures.
|
|
|
|
| |
Adds a more generic SIFC transfer function.
|
|
|
|
|
|
|
| |
We have to indicate to the hw whether the FP exports
multiple colour results.
Method 0x121c is used to specify the number of RTs.
Also deactivate zeta explicitly if there's no zsbuf.
|
|
|
|
|
|
|
|
| |
Some cards have crippling defaults set and use only 4
of 32 lanes. This should activate 16 on these.
Those that allow 32 by default should still do so.
Found out by Marcin Kościelnicki.
|
| |
|
| |
|
|
|
|
| |
We should really learn to not waste so many though.
|
|
|
|
|
| |
Contained some rather obvious thinking errors before,
and didn't consider offsets from TGSI ADDRESS regs.
|
| |
|
|
|
|
|
|
|
|
|
| |
These haven't been used by the mesa state tracker since the
conversion to tgsi_ureg, and it seems that none of the
other state trackers are using it either.
This helps simplify one of the biggest suprises when starting off with
TGSI shaders.
|
|
|
|
|
| |
Set the same bits as for linear filtering (in addition
to max anisotropy), and 2 unknown bits I've seen set.
|
| |
|
|
|
|
|
| |
Allow indirect uniform access and increase the
limit on parameters from 128 to 512.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
We only have a per nv50_reg negation flag, if an
nv50_reg is used more than once in a TGSI op with
different sign modes, we'd generate wrong code.
We probably can't do much better without more
invasive changes.
|
| |
|
|
|
|
|
|
| |
Requesting a new real buffer from the kernel and
copying all the data is wasteful e.g. if only a
few (but widely spread) vertices are accessed.
|
|
|
|
|
|
|
| |
Add proper flushes for TIC and TSC and remove
the costly 2D.0110 flush in nv50_flush.
Correct TIC and TSC bo sizes.
|
|
|
|
| |
Similar to nv40.
|
| |
|
| |
|
|
|
|
| |
Tested with progs/demos/multiarb.
|
|
|
|
| |
Signed-off-by: Ben Skeggs <[email protected]>
|
|
|
|
|
|
| |
Always test for PIPE_TRANSFER_READ/WRITE using the bit-wise and operator, and
add a pipe_transfer_buffer_flags() helper for getting the buffer usage flags
corresponding to them.
|
|
|
|
|
| |
If you e.g. only need alpha, it ends up in the first reg,
not the last, as it would when reading rgb too.
|
|
|
|
|
|
|
| |
Until now, only primitives wholly outside the view volume
were not drawn.
This was only visibile when using a viewport smaller than
the window size, naturally.
|
| |
|
|
|
|
| |
Separated the integer rounding mode flag for cvt.
|
|
|
|
|
|
| |
There's a good chance a loop won't execute correctly
though since our TEMP allocation assumes programs to
be executed linearly. Will fix later.
|
| |
|
|
|
|
|
| |
No longer used. S3TC support is queried via
pipe_screen::is_format_supported.
|
|
|
|
| |
- And reduce RING_SPACE to 2, instead of 3.
|
| |
|
|
|
|
|
|
|
| |
When swapping sources 0 and 1, EQ of course does *not*
become NE, etc.
Introduced in 2b963f5c723401aa2646bd48eefe065cd335e280.
|