diff options
author | Marek Olšák <[email protected]> | 2018-05-30 22:59:41 -0400 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2018-06-13 22:00:34 -0400 |
commit | f3b3ee6974d1b34b219f0d960a1424afe07a93f1 (patch) | |
tree | e2f9c85a5e16e8bedc587702f812214866fc4500 /src/gallium/drivers/radeonsi/si_pipe.h | |
parent | d6974feb90e7c813a0ceb93fa77812a0197ffe31 (diff) |
radeonsi: micro-optimize prim checking and fix guardband with lines+adjacency
Tested-by: Dieter Nützel <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_pipe.h')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_pipe.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h index ea199d3924d..eb0c226ed79 100644 --- a/src/gallium/drivers/radeonsi/si_pipe.h +++ b/src/gallium/drivers/radeonsi/si_pipe.h @@ -1505,6 +1505,23 @@ static inline unsigned si_get_total_colormask(struct si_context *sctx) return colormask; } +#define UTIL_ALL_PRIM_LINE_MODES ((1 << PIPE_PRIM_LINES) | \ + (1 << PIPE_PRIM_LINE_LOOP) | \ + (1 << PIPE_PRIM_LINE_STRIP) | \ + (1 << PIPE_PRIM_LINES_ADJACENCY) | \ + (1 << PIPE_PRIM_LINE_STRIP_ADJACENCY)) + +static inline bool util_prim_is_lines(unsigned prim) +{ + return ((1 << prim) & UTIL_ALL_PRIM_LINE_MODES) != 0; +} + +static inline bool util_prim_is_points_or_lines(unsigned prim) +{ + return ((1 << prim) & (UTIL_ALL_PRIM_LINE_MODES | + (1 << PIPE_PRIM_POINTS))) != 0; +} + /** * Return true if there is enough memory in VRAM and GTT for the buffers * added so far. |