Age | Commit message (Collapse) | Author |
|
|
|
|
|
Most of flow control is like this.
|
|
That is to say, gl_TexCoord[i] now works, fixing glsl-texcoord-array
on swrast.
|
|
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.
|
|
|
|
Despite the docs, the corresponding hardware instructions are r5xx-only.
|
|
|
|
|
|
Bug #27914.
|
|
|
|
|
|
|
|
|
|
Fix r600_context.h -> r700_oglprog.h -> r600_context.h include
recursion.
|
|
This reverts commit b4d0c0e0ee983ee614b047799c3e01221a353c98.
Now that ir_mat_op_to_vec is landed, this change is no longer needed.
|
|
This will be used by the Mesa IR and likely most HW backends, as it
allows other optimizations to occur that might not otherwise.
Fixes glsl-vs-mat-sub-1, glsl-vs-mat-div-1.
|
|
Need to flush command stream before mapping texture image
that is referenced by current cs.
Candidate for 7.8 branch.
Signed-off-by: Maciej Cencora <m.cencora@gmail.com>
|
|
When searching for valid miptree check images in range
of [BaseLeve, MaxLevel] not [MinLod, MaxLoad].
Prevents unnecessary miptree allocations in cases when during
every rendering operation different texture image level
was selected using MIN_LOD = MAX_LOD = level (for every level
new miptree for whole texture was allocated).
Candidate for 7.8 branch.
Signed-off-by: Maciej Cencora <m.cencora@gmail.com>
|
|
Always store selected miptree in texObj->mt so get_base_teximage_offset returns correct data.
Found with piglit/mipmap-setup.
Candidate for 7.8 branch.
Signed-off-by: Maciej Cencora <m.cencora@gmail.com>
|
|
Candidate for 7.8 branch
Signed-off-by: Maciej Cencora <m.cencora@gmail.com>
|
|
|
|
|
|
This reverts commit 7b8726a99da961fe0ace7c7ee567f82217715fe4.
|
|
|
|
Fix GCC 'implicit declaration of function' compiler warnings resulting
from commit 00fb58ed5d7104e675fe48d84e5049e5f7dbb9d7.
|
|
first working version of arb_geometry_shader4
|
|
|
|
Fixes r600_emit.h -> r600_cmdbuf.h -> r600_emit.h include recursion.
|
|
|
|
just like in Gallium it's a basic functionality needed by a lot
of modern graphcis extensions
|
|
r700_chip.h included r600_context.h, which included r700_chip.h.
Remove the unnecessary r600_context.h inclusion and add missing
headers.
|
|
|
|
|
|
|
|
The other similar integer/float conversion macros are in macros.h.
|
|
This pass renames register in order to make it easier for the pair
scheduler to group TEX instructions together.
This fixes fdo bug #28606
|
|
The following instruction sequence will no longer be emitted in separate
TEX blocks:
0: TEX temp[0].xyz, temp[1].xy__, 2D[0];
1: TEX temp[1].xyz, temp[2].xy__, 2D[0];
This fixes fdo bug #25109
|
|
The code to emit an array of OpenGL state vars lacked the code
to handle the gl_TextureMatrix[] array.
Fixes fd.o bug 28967
NOTE: this is a candidate for the 7.8 branch.
|
|
|
|
Most places in the code simply use a static name, which works because
names are never used to look up an ir_variable. generate_temporary is
simply unnecessary (and looks like it would leak memory, and isn't
thread safe...)
|
|
|
|
When EU executes 'wait' instruction, it stalls and sets notification
register state. Host can issue MMIO write to clear notification
register state to allow EU continue on executing again.
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
|
|
|
|
|
|
|
|
This came from commit cf255e382d147fe3ca450f0dcec3525190e7dcbc
|
|
Fixes fd.o bug 27216. May also be the root cause of fd.o bug 28950.
We weren't propogating the storage info for the x=foo() expression up
through the IR tree to the inequality expression.
NOTE: This is a candidate for the Mesa 7.8 branch.
|
|
|
|
Previously, a register defined at main scope and used in a loop in a
loop could end up getting marked as needed only from the definition
outside of the loops to the end of the inner loop, and we would
cleverly slot in something else in its register in the end of the
outer loop.
Fixes glsl-vs-loop-nested and glsl-fs-loop-nested on glsl2. This
doesn't happen much on master because the original compiler does its
own register allocation, so we find little we can do with linear scan
register (re)allocation.
|