panfrost: Inline panfrost_get_default_swizzle
[mesa.git] / src / gallium / drivers / panfrost / pan_assemble.c
index acb688651e6877049f416f12ecf2345afa26ca6e..6f84248b2f1fb1ddfd8b5315f550054d9c6cedc2 100644 (file)
@@ -27,6 +27,7 @@
 #include <string.h>
 #include "pan_bo.h"
 #include "pan_context.h"
+#include "pan_format.h"
 #include "pan_util.h"
 
 #include "compiler/nir/nir.h"
@@ -114,6 +115,10 @@ panfrost_shader_compile(
         case MESA_SHADER_FRAGMENT:
                 meta->attribute_count = 0;
                 meta->varying_count = util_bitcount64(s->info.inputs_read);
+                if (s->info.outputs_written & BITFIELD64_BIT(FRAG_RESULT_DEPTH))
+                        state->writes_depth = true;
+                if (s->info.outputs_written & BITFIELD64_BIT(FRAG_RESULT_STENCIL))
+                        state->writes_stencil = true;
                 break;
         case MESA_SHADER_COMPUTE:
                 /* TODO: images */
@@ -136,7 +141,7 @@ panfrost_shader_compile(
         /* Separate as primary uniform count is truncated */
         state->uniform_count = program.uniform_count;
 
-        meta->midgard1.unknown2 = 8; /* XXX */
+        meta->midgard1.flags_hi = 8; /* XXX */
 
         unsigned default_vec1_swizzle = panfrost_get_default_swizzle(1);
         unsigned default_vec2_swizzle = panfrost_get_default_swizzle(2);