Age | Commit message (Collapse) | Author |
|
Remove duplicated include.
Signed-off-by: Brian Paul <brianp@vmware.com>
|
|
|
|
NOTE: This is a candidate for the 7.9 branch.
|
|
This commit fixes an infinite loop in foreach_s if remove_from_list is used
more than once on the same item with other list operations in between.
NOTE: This is a candidate for the 7.9 branch because the commit
"r300g: fixup long-lived BO maps being incorrectly unmapped when flushing"
depends on it.
|
|
reimplement the flush stage added for r300 to allow a custom DSA stage
to be used in the pipeline, this allows for r600 hw DB->CB flushes.
|
|
These can be used by other drivers, like r600g.
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
Depth-only and stencil-only clears should mask out depth/stencil from the
output, mask out stencil/input from input, and OR or ADD them together.
However, due to a typo they were being ANDed, resulting in zeroing the buffer.
|
|
Fixes glean texture_srgb test.
|
|
|
|
Changes in v3:
- Also change trace, which I forgot about
Changes in v2:
- No longer adds tessellation shaders
Currently each shader cap has FS and VS versions.
However, we want a version of them for geometry, tessellation control,
and tessellation evaluation shaders, and want to be able to easily
query a given cap type for a given shader stage.
Since having 5 duplicates of each shader cap is unmanageable, add
a new get_shader_param function that takes both a shader cap from a
new enum and a shader stage.
Drivers with non-unified shaders will first switch on the shader
and, within each case, switch on the cap.
Drivers with unified shaders instead first check whether the shader
is supported, and then switch on the cap.
MAX_CONST_BUFFERS is now per-stage.
The geometry shader cap is removed in favor of checking whether the
limit of geometry shader instructions is greater than 0, which is also
used for tessellation shaders.
WARNING: all drivers changed and compiled but only nvfx tested
|
|
These are the non-trivial conversions that this function recognizes,
which was produced by u_format_compatible_test.c:
b8g8r8a8_unorm -> b8g8r8x8_unorm
a8r8g8b8_unorm -> x8r8g8b8_unorm
b5g5r5a1_unorm -> b5g5r5x1_unorm
b4g4r4a4_unorm -> b4g4r4x4_unorm
l8_unorm -> r8_unorm
i8_unorm -> l8_unorm
i8_unorm -> a8_unorm
i8_unorm -> r8_unorm
l16_unorm -> r16_unorm
z24_unorm_s8_uscaled -> z24x8_unorm
s8_uscaled_z24_unorm -> x8z24_unorm
r8g8b8a8_unorm -> r8g8b8x8_unorm
a8b8g8r8_srgb -> x8b8g8r8_srgb
b8g8r8a8_srgb -> b8g8r8x8_srgb
a8r8g8b8_srgb -> x8r8g8b8_srgb
a8b8g8r8_unorm -> x8b8g8r8_unorm
r10g10b10a2_uscaled -> r10g10b10x2_uscaled
r10sg10sb10sa2u_norm -> r10g10b10x2_snorm
State trackers and pipe drivers should be updated to take advantage of
this knowledge, e.g., in surface_copy.
|
|
color format.
|
|
Include p_compiler.h for size_t and boolean symbols.
|
|
Include p_state.h for complete type to pipe_draw_info.
|
|
|
|
Removing another function duplication in u_blitter.
|
|
The function was duplicated.
|
|
Thanks to Michal for spotting it.
|
|
|
|
Include p_state.h for PIPE_MAX_COLOR_BUFS symbol.
|
|
Include p_compiler.h for uint symbol.
Clean up forward declarations.
|
|
Include p_compiler.h for boolean symbol.
|
|
Include p_state.h for pipe_surface symbol.
|
|
|
|
Include p_compiler.h for boolean symbol.
Include u_debug.h for assert symbol.
|
|
Include p_format.h for enum pipe_format symbol.
Include p_state.h for pipe_box symbol.
|
|
Remove p_defines.h.
Remove unnecessary forward declarations.
Add forward declaration for pipe_context.
|
|
This begins a process of repurposing this file. The existing usage is
as a header file for some software blit fallbacks, which should be
moved to a more appropriately named header.
|
|
s->close_first was on the wrong side of the inequality.
Caught by blender.
Thanks to AndrewR for reporting this.
|
|
util_fill_rect could not handle formats with more than 32 bits,
since the fill color was a uint32_t value. Fix this by using
a util_color union instead, and also expand the union so it
works with formats which have up to 256 bits (the max of any
format currently defined).
|
|
Before, we were discarding the compiled vertex program on each
vertex program change.
Now we compile the program as if there were 6 clip planes and
dynamically patch in an "end program" bit at the right place.
Also, nv30 should now work.
|
|
Signed-off-by: Brian Paul <brianp@vmware.com>
|
|
This is a typo fix of earlier commit 0f3b3751b8643352dcc242567b3696bd1505df1d.
|
|
dump_cpu is used only when DEBUG is defined.
Fixes the following GCC warning on builds without DEBUG defined.
util/u_cpu_detect.c:76: warning: 'debug_get_option_dump_cpu' defined but not used
|
|
|
|
Fixes build error with MSVC.
|
|
|
|
|
|
|
|
Thanks to Jose Fonseca for pointing out they were missing.
|
|
|
|
C++ doesn't accept function <-> void* conversions without a putting a
fight.
|
|
Unused now that check_os_katmai_support was removed.
|
|
|
|
This commit adds the ability to produce a log file containing all
reference count changes, and object creation/destruction, on Gallium
objects.
The data allows to answer these crucial questions:
1. This app is exhausting all my memory due to a resource leak: where
is the bug?
2. Which resources is this app using at a given moment? Which parts of
the code created them?
3. What kinds of resources does this app use?
4. How fast does this app create and destroy resources? Which parts of
the code create resources fast?
The output is compatible with the one produced by the similar facility
in Mozilla Firefox, allowing to use Mozilla's tools to analyze the data.
To get the log file:
export GALLIUM_REFCNT_LOG=<file>
To get function names and source lines in the log file:
tools/addr2line.sh <file>
To process the log file, see:
http://www.mozilla.org/performance/refcnt-balancer.html
|
|
|
|
Without this, any form of logging that dumps stack traces continuously
will spend a lot of time resolving symbol names.
|
|
|
|
|
|
|