Module: Mesa
Branch: main
Commit: c89637388967d83fa621cc674c414eceb299b776
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=c89637388967d83fa621cc674c414eceb299b776

Author: Karol Herbst <[email protected]>
Date:   Wed Mar  1 00:38:50 2023 +0100

rusticl: generate bindings for build-id stuff

Signed-off-by: Karol Herbst <[email protected]>
Reviewed-by: Nora Allen <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21612>

---

 src/gallium/frontends/rusticl/meson.build                    |  2 ++
 src/gallium/frontends/rusticl/rusticl_mesa_bindings.h        |  1 +
 .../frontends/rusticl/rusticl_mesa_inline_bindings_wrapper.c | 12 ++++++++++++
 .../frontends/rusticl/rusticl_mesa_inline_bindings_wrapper.h |  8 ++++++++
 4 files changed, 23 insertions(+)

diff --git a/src/gallium/frontends/rusticl/meson.build 
b/src/gallium/frontends/rusticl/meson.build
index e0c65149491..696839d504f 100644
--- a/src/gallium/frontends/rusticl/meson.build
+++ b/src/gallium/frontends/rusticl/meson.build
@@ -242,6 +242,8 @@ rusticl_mesa_bindings_rs = rust.bindgen(
     '--allowlist-function',     'mesa_.*',
     '--allowlist-var',          'OS_.*',
     '--allowlist-function',     'rz?alloc_.*',
+    '--allowlist-function',     'SHA1.*',
+    '--allowlist-var',          'SHA1_.*',
     '--allowlist-function',     'u_.*',
     '--allowlist-function',     'util_format_.*',
 
diff --git a/src/gallium/frontends/rusticl/rusticl_mesa_bindings.h 
b/src/gallium/frontends/rusticl/rusticl_mesa_bindings.h
index 2c2af47e850..e96efdaf2b9 100644
--- a/src/gallium/frontends/rusticl/rusticl_mesa_bindings.h
+++ b/src/gallium/frontends/rusticl/rusticl_mesa_bindings.h
@@ -18,6 +18,7 @@
 #include "util/blob.h"
 #include "util/disk_cache.h"
 #include "util/os_time.h"
+#include "util/sha1/sha1.h"
 #include "util/u_printf.h"
 #include "util/u_sampler.h"
 
diff --git 
a/src/gallium/frontends/rusticl/rusticl_mesa_inline_bindings_wrapper.c 
b/src/gallium/frontends/rusticl/rusticl_mesa_inline_bindings_wrapper.c
index a5a30db9524..3b33a292664 100644
--- a/src/gallium/frontends/rusticl/rusticl_mesa_inline_bindings_wrapper.c
+++ b/src/gallium/frontends/rusticl/rusticl_mesa_inline_bindings_wrapper.c
@@ -7,6 +7,18 @@ blob_finish(struct blob *blob)
     __blob_finish(blob);
 }
 
+bool
+disk_cache_get_function_identifier(void *ptr, struct mesa_sha1 *ctx)
+{
+   return __disk_cache_get_function_identifier(ptr, ctx);
+}
+
+char *
+mesa_bytes_to_hex(char *buf, const uint8_t *hex_id, unsigned size)
+{
+   return __mesa_bytes_to_hex(buf, hex_id, size);
+}
+
 nir_function_impl *
 nir_shader_get_entrypoint(const nir_shader *shader)
 {
diff --git 
a/src/gallium/frontends/rusticl/rusticl_mesa_inline_bindings_wrapper.h 
b/src/gallium/frontends/rusticl/rusticl_mesa_inline_bindings_wrapper.h
index d07abd93c82..8c70f1894e0 100644
--- a/src/gallium/frontends/rusticl/rusticl_mesa_inline_bindings_wrapper.h
+++ b/src/gallium/frontends/rusticl/rusticl_mesa_inline_bindings_wrapper.h
@@ -1,17 +1,25 @@
 #define blob_finish __blob_finish
+#define disk_cache_get_function_identifier __disk_cache_get_function_identifier
+#define mesa_bytes_to_hex __mesa_bytes_to_hex
 #define nir_shader_get_entrypoint __nir_shader_get_entrypoint_wraped
 #define pipe_resource_reference __pipe_resource_reference_wraped
 #define util_format_pack_rgba __util_format_pack_rgba
 #include "nir.h"
 #include "util/blob.h"
+#include "util/disk_cache.h"
+#include "util/hex.h"
 #include "util/u_inlines.h"
 #include "util/format/u_format.h"
 #undef blob_finish
+#undef mesa_bytes_to_hex
+#undef disk_cache_get_function_identifier
 #undef nir_shader_get_entrypoint
 #undef pipe_resource_reference
 #undef util_format_pack_rgba
 
 void blob_finish(struct blob *);
+char *mesa_bytes_to_hex(char *buf, const uint8_t *hex_id, unsigned size);
+bool disk_cache_get_function_identifier(void *ptr, struct mesa_sha1 *ctx);
 const char* mesa_version_string(void);
 nir_function_impl *nir_shader_get_entrypoint(const nir_shader *shader);
 void pipe_resource_reference(struct pipe_resource **dst, struct pipe_resource 
*src);

Reply via email to