Age | Commit message (Collapse) | Author |
|
r600_state_predict
Conflicts:
src/mesa/drivers/dri/r300/r300_cmdbuf.c
src/mesa/drivers/dri/radeon/radeon_cmdbuf.h
|
|
|
|
This fixes openarena reloc errors. This needs to be
made more dynamic.
|
|
|
|
|
|
|
|
|
|
use properly implemented OUT_BATCH_TABLE where possible
|
|
|
|
|
|
Not doing so seems to cause lock-ups or rendering problems
on some chips. I think there is an logic issue related to
CB and VGT on some chips. We ran into similar issues in
r600_demo IIRC.
|
|
|
|
This makes sure that objects are leaving wait list only when they are processed by gpu.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
Gives a nice speed boost in most apps since
we only emit what state we need.
|
|
|
|
|
|
|
|
DPH can output to any component, not just to X. This allows fpalu.c
to run without hitting the assertion in emit_dph.
|
|
|
|
|
|
|
|
|
|
Hopefully suokko's emit size impovements will
land soon.
|
|
All rendering is checked in r300PredictTryDrawPrimsSize which mamde these calls useless.
|
|
|
|
|
|
Trying to make understanding code easier with small refactoring and renaming.
|
|
|
|
|
|
We do flush for cmd buffer in case there isn't enough space left for whole
rendering operation. This protects dma regions from getting released in middle
of state emit.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
|
|
This makes it easier to predict size of next rendering operation so we
can do early flush.
|
|
This fixes some state atom check functions from returing wrong emit size.
There is emit code cleanup so that emit function selection is done in init
time instead of runtime.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
- emit prediction
- fixes to emit_sizes for data
- clean up of excesive use of radeonEnsureCmdBufferSpace
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
Calling EnsureCmdBufSpace is not required because rendering pipeline has to quarentee free space.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
This patch makes render emit size prediction count the corect maximum emit size
for state.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
Patch adds prediction functionthat tries to predict emit size to the smallest
possible values that is quarenteed to be higher than worst case scenario in
rendering pipeline.
State emit size prediction code is in place but fix for emit sizes is included
in next patch.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
This fixes bug that xdemos/manywin would segfault if it was run with command
./manywin 2. Demo is tring to call glXSwapBuffers while another context was
bind using glXMakeCurrent.
Fix is simple makes drawable and readable persistent untill they change or
context is destroyed.
I found a logic error when same dri context is used for multiple drawables
which caused readable and drawable to fall out of sync in special case. Fix
is simple just updating drawables more often than in original patch.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
|
|
The commit "ARP prog parser: Implement the spec, not what makes sense"
broke the parsing of scalar constants. This commit reverts that part
of that commit. Now vp_swizzle.c passes.
|
|
switches more state handling to common code. We need
should be more fine grained with the state atoms
eventually.
|
|
Slowing migrating to atom based system like
the other radeon drivers.
|
|
We probably want to go finer grained eventually, but
this is a good start.
|
|
fixes corruption issues with apps like teapot and
geartrain.
|
|
These regs don't use the SET_CONTEXT_REG packet,
so they weren't getting set correctly.
|
|
Plus, add a comment about 'type' error checking.
See bug 19087.
|
|
make sure we allocate enough space for relocs
|