Age | Commit message (Collapse) | Author |
|
|
|
Scissor are emited for every primitive so fix that in prediction.
|
|
|
|
Prediction code making too small prediction may cause space check aserttion
failure later in rendering. So warning about any failure to predict correctly
should be fixed.
|
|
Trying to make understanding code easier with small refactoring and renaming.
|
|
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 allows us to return the unused portion of the dma buffer
to the allocator instead of wasting nearly 16k a pop.
Cherry picked and ported to new code by Pauli.
|
|
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
We keep dma buffer objects in list untill they have been unused for many
draw operations. Current limit of having 100 flushes is just guess for
good performance/memory trade off.
Moving WARN_ONCE macro to common context because it is used in multiple drivers.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
|
|
This stuff was a vestige of the r600 bring up and
now mostly serves to periodically break the build.
|
|
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
|
|
|
|
both for normal and cube textures, this fixes demos/multiarb
(with 6 enabled texture units) and fixes #23142.
|
|
|
|
|
|
|
|
Move all the metaops to a dri_metaops file and port radeon/intel
to use the new common meta ops code.
|
|
Fixes those formats in fbo_firecube.
Only tested with r300, radeon and r200 compile tested only.
|
|
Fixes fgl_glxgears and progs/demos/fbotexture after pressing 'c'.
Tested with r300, radeon and r200 compile tested only.
|
|
Need to retrieve the bits from the rrb not from screen struct
|
|
|
|
This moves a big chunk of the space checking code into libdrm so
it can be shared by the DDX.
|
|
half stealing the code without taking the intel regions
|
|
This reverts commit 0952645fe04a27968565ea4d913500c23b1b11e3.
Need to revisit where this is going wrong
|
|
Add all source files that are symlink'ed from common radeon code to the
ignore list.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
|
|
This allows us to return the unused portion of the dma buffer
to the allocator instead of wasting nearly 16k a pop.
|
|
|
|
still always enable max, but the right values this time.
More work should probably be done for saner limits without mm, and/or
dri conf option allow_large_textures (which is ignored) removed.
3D limit on r100 is pretty arbitrary as still handled by swrast anyway.
Also fix r300 limits (except 3d I've no idea what the max is anyway so
keep using mesa default).
|
|
|
|
|
|
drm cmd checker rightfully fell over any cube emit
|
|
Fixes #22181. R200 requires this since DP4 is used in hw tnl mode.
R300 prefers it (should be faster due to no instruction dependencies), but
both methods should be correct (when sw tcl is used though, MUL/MAD might
be faster). Probably doesn't make much difference for R100 since vertex progs
are executed in software anyway, but let's just keep it the same there too.
|
|
In DRI1 kernel emit scissor but in dri2 cs path we have to
explicitly program them.
|
|
|
|
|
|
The duplication of state data caused a crash due to double-free on destruction
of context, because a variable wasn't correctly null'ed out.
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
|
|
|
|
This still need some work to actually report somethings reasonable
if no memory manager is available.
|
|
|
|
In r*00SetTexBuffer2(), if the passed in text glx_texture_format
is GLX_TEXTURE_FORMAT_RGB_EXT, then we should use an RGB-only
texture format, even if the DRI buffer has four channels.
https://bugs.freedesktop.org/show_bug.cgi?id=21609
|
|
This was broken with last merge see 62043b27575c378c027251316421e4699f461108
for explanations
|
|
Conflicts:
src/mesa/drivers/dri/r200/r200_state.c
src/mesa/drivers/dri/r300/r300_context.h
src/mesa/drivers/dri/r300/r300_fragprog.c
src/mesa/drivers/dri/r300/r300_state.c
src/mesa/drivers/dri/r300/r300_texmem.c
src/mesa/drivers/dri/r300/r300_texstate.c
src/mesa/drivers/dri/r300/r500_fragprog.c
src/mesa/drivers/dri/radeon/radeon_screen.c
src/mesa/drivers/dri/radeon/radeon_state.c
|
|
Still doesn't fix cubemaps, I really missed the whole drmsupports
thing when testing this all originally
|