mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-28 16:50:10 +01:00
excluding: aco, radv, addrlib Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Acked-by: David Heidelberg <david.heidelberg@collabora.com> Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23113>
45 lines
1 KiB
C
45 lines
1 KiB
C
/*
|
|
* Copyright 2014 Advanced Micro Devices, Inc.
|
|
*
|
|
* SPDX-License-Identifier: MIT
|
|
*/
|
|
|
|
#ifndef AC_BINARY_H
|
|
#define AC_BINARY_H
|
|
|
|
#include <stdbool.h>
|
|
#include <stddef.h>
|
|
#include <stdint.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
struct radeon_info;
|
|
|
|
struct ac_shader_config {
|
|
unsigned num_sgprs;
|
|
unsigned num_vgprs;
|
|
unsigned num_shared_vgprs; /* GFX10: number of VGPRs shared between half-waves */
|
|
unsigned spilled_sgprs;
|
|
unsigned spilled_vgprs;
|
|
unsigned lds_size; /* in HW allocation units; i.e 256 bytes on SI, 512 bytes on CI+ */
|
|
unsigned spi_ps_input_ena;
|
|
unsigned spi_ps_input_addr;
|
|
unsigned float_mode;
|
|
unsigned scratch_bytes_per_wave;
|
|
unsigned rsrc1;
|
|
unsigned rsrc2;
|
|
unsigned rsrc3;
|
|
};
|
|
|
|
void ac_parse_shader_binary_config(const char *data, size_t nbytes, unsigned wave_size,
|
|
const struct radeon_info *info, struct ac_shader_config *conf);
|
|
|
|
unsigned ac_align_shader_binary_for_prefetch(const struct radeon_info *info, unsigned size);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* AC_BINARY_H */
|