crocus: inline the d/s resource handling functions
authorDave Airlie <airlied@redhat.com>
Fri, 2 Jul 2021 20:36:32 +0000 (06:36 +1000)
committerDave Airlie <airlied@redhat.com>
Mon, 5 Jul 2021 04:47:30 +0000 (14:47 +1000)
These are pretty simple, so inlining is fine and helps drawoverhead

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11707>

src/gallium/drivers/crocus/crocus_resource.c
src/gallium/drivers/crocus/crocus_resource.h

index d058e09..5510f4f 100644 (file)
@@ -289,17 +289,10 @@ crocus_query_dmabuf_modifiers(struct pipe_screen *pscreen,
    *count = supported_mods;
 }
 
-struct pipe_resource *
+static struct pipe_resource *
 crocus_resource_get_separate_stencil(struct pipe_resource *p_res)
 {
-   /* For packed depth-stencil, we treat depth as the primary resource
-    * and store S8 as the "second plane" resource.
-    */
-   if (p_res->next && p_res->next->format == PIPE_FORMAT_S8_UINT)
-      return p_res->next;
-
-   return NULL;
-
+   return _crocus_resource_get_separate_stencil(p_res);
 }
 
 static void
@@ -311,34 +304,6 @@ crocus_resource_set_separate_stencil(struct pipe_resource *p_res,
 }
 
 void
-crocus_get_depth_stencil_resources(const struct intel_device_info *devinfo,
-                                   struct pipe_resource *res,
-                                   struct crocus_resource **out_z,
-                                   struct crocus_resource **out_s)
-{
-   if (!res) {
-      *out_z = NULL;
-      *out_s = NULL;
-      return;
-   }
-
-   /* gen4/5 only supports packed ds */
-   if (devinfo->ver < 6) {
-      *out_z = (void *)res;
-      *out_s = (void *)res;
-      return;
-   }
-
-   if (res->format != PIPE_FORMAT_S8_UINT) {
-      *out_z = (void *) res;
-      *out_s = (void *) crocus_resource_get_separate_stencil(res);
-   } else {
-      *out_z = NULL;
-      *out_s = (void *) res;
-   }
-}
-
-void
 crocus_resource_disable_aux(struct crocus_resource *res)
 {
    crocus_bo_unreference(res->aux.bo);
index d5df228..b16a718 100644 (file)
@@ -27,7 +27,7 @@
 #include "util/u_inlines.h"
 #include "util/u_range.h"
 #include "intel/isl/isl.h"
-
+#include "intel/dev/intel_device_info.h"
 #include "crocus_bufmgr.h"
 
 struct crocus_batch;
@@ -306,12 +306,41 @@ struct crocus_format_info crocus_format_for_usage(const struct intel_device_info
                                                   enum pipe_format pf,
                                                   isl_surf_usage_flags_t usage);
 
-struct pipe_resource *crocus_resource_get_separate_stencil(struct pipe_resource *);
+static inline struct pipe_resource *
+_crocus_resource_get_separate_stencil(struct pipe_resource *p_res)
+{
+   /* For packed depth-stencil, we treat depth as the primary resource
+    * and store S8 as the "second plane" resource.
+    */
+   if (p_res->next && p_res->next->format == PIPE_FORMAT_S8_UINT)
+      return p_res->next;
+
+   return NULL;
+
+}
+static inline void
+crocus_get_depth_stencil_resources(const struct intel_device_info *devinfo,
+                                   struct pipe_resource *res,
+                                   struct crocus_resource **out_z,
+                                   struct crocus_resource **out_s)
+{
+   /* gen4/5 only supports packed ds */
+   if (devinfo->ver < 6) {
+      *out_z = (void *)res;
+      *out_s = (void *)res;
+      return;
+   }
+
+   if (res && res->format != PIPE_FORMAT_S8_UINT) {
+      *out_z = (void *) res;
+      *out_s = (void *) _crocus_resource_get_separate_stencil(res);
+   } else {
+      *out_z = NULL;
+      *out_s = (void *) res;
+   }
+}
+
 
-void crocus_get_depth_stencil_resources(const struct intel_device_info *devinfo,
-                                        struct pipe_resource *res,
-                                        struct crocus_resource **out_z,
-                                        struct crocus_resource **out_s);
 bool crocus_resource_set_clear_color(struct crocus_context *ice,
                                      struct crocus_resource *res,
                                      union isl_color_value color);