mesa/src/amd/common/ac_binary.h
Marek Olšák bfb6c41b64
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
amd: remove unnecessary and transitive #includes
Reported by clang tools.
See: https://clangd.llvm.org/guides/include-cleaner

struct ac_cmdbuf had to be moved to ac_cmdbuf_base.h because we can't
include ac_cmdbuf.h->sid.h->amdgfxregs.h in radeon_winsys.h for r300.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41091>
2026-04-24 21:53:07 +00:00

47 lines
1.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>
#ifdef __cplusplus
extern "C" {
#endif
struct radeon_info;
struct ac_compiler_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 bytes */
unsigned spi_ps_input_ena;
unsigned spi_ps_input_addr;
unsigned float_mode;
unsigned scratch_bytes_per_wave;
bool wgp_mode;
unsigned rsrc1;
unsigned rsrc2;
unsigned rsrc3;
};
void ac_parse_shader_binary_config(const char *data, size_t nbytes, unsigned wave_size,
const struct ac_compiler_info *compiler_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 */