nir: pack nir_variable::data::stream
[mesa.git] / src / compiler / nir / nir.h
index 00e5028d27b97ea0e1c7330f472efd05ae0e8585..e1f0fdd707ce952ba3b27404d346d0a9188db844 100644 (file)
@@ -60,6 +60,7 @@ extern "C" {
 #define NIR_TRUE (~0u)
 #define NIR_MAX_VEC_COMPONENTS 4
 #define NIR_MAX_MATRIX_COLUMNS 4
+#define NIR_STREAM_PACKED (1 << 8)
 typedef uint8_t nir_component_mask_t;
 
 /** Defines a cast function
@@ -450,10 +451,10 @@ typedef struct nir_variable {
       /**
        * Vertex stream output identifier.
        *
-       * For packed outputs, bit 31 is set and bits [2*i+1,2*i] indicate the
-       * stream of the i-th component.
+       * For packed outputs, NIR_STREAM_PACKED is set and bits [2*i+1,2*i]
+       * indicate the stream of the i-th component.
        */
-      unsigned stream;
+      unsigned stream:9;
 
       /**
        * output index for dual source blending.