+ /* No need to copy the contents of a non-fb_fetch_output output variable
+ * to the temporary allocated for it, since its initial value is
+ * undefined.
+ */
+ if (temp->data.mode == nir_var_shader_out &&
+ !temp->data.fb_fetch_output)
+ continue;
+
+ /* Can't copy the contents of the temporary back to a read-only
+ * interface variable. The value of the temporary won't have been
+ * modified by the shader anyway.
+ */
+ if (newv->data.read_only)
+ continue;
+