gallium/pb: remove 8 bytes from pb_buffer by packing variables
Only svga used usages beyond 16 bits. All other drivers are OK with 16 bits. Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9809>
This commit is contained in:
@@ -112,24 +112,23 @@ struct pb_buffer
|
||||
{
|
||||
struct pipe_reference reference;
|
||||
|
||||
/* For internal driver use. It's here so as not to waste space due to
|
||||
* type alignment. (pahole)
|
||||
*/
|
||||
uint8_t placement;
|
||||
|
||||
/* Alignments are powers of two, so store only the bit position.
|
||||
* alignment_log2 = util_logbase2(alignment);
|
||||
* alignment = 1 << alignment_log2;
|
||||
*/
|
||||
uint8_t alignment_log2;
|
||||
|
||||
pb_size size;
|
||||
|
||||
/**
|
||||
* Used with pb_usage_flags or driver-specific flags, depending on drivers.
|
||||
*/
|
||||
unsigned usage;
|
||||
uint16_t usage;
|
||||
|
||||
/**
|
||||
* For internal driver use. It's here so as not to waste space due to
|
||||
* type alignment. (pahole)
|
||||
*/
|
||||
unsigned placement;
|
||||
pb_size size;
|
||||
|
||||
/**
|
||||
* Pointer to the virtual function table.
|
||||
|
||||
@@ -34,8 +34,8 @@
|
||||
|
||||
|
||||
/* These extra flags are used wherever the pb_usage_flags enum type is used */
|
||||
#define VMW_BUFFER_USAGE_SHARED (1 << 20)
|
||||
#define VMW_BUFFER_USAGE_SYNC (1 << 21)
|
||||
#define VMW_BUFFER_USAGE_SHARED (1 << 14)
|
||||
#define VMW_BUFFER_USAGE_SYNC (1 << 15)
|
||||
|
||||
struct SVGAGuestPtr;
|
||||
struct pb_buffer;
|
||||
|
||||
Reference in New Issue
Block a user