summaryrefslogtreecommitdiffstats
path: root/src/compiler/nir/nir_serialize.c
diff options
context:
space:
mode:
authorMatt Turner <[email protected]>2018-09-06 11:12:24 -0700
committerMatt Turner <[email protected]>2019-01-09 16:42:40 -0800
commitdde73e646fe22e50878783580d1707a2acceb054 (patch)
tree9ce2f4b77b3bc847f98c3eda585020dda212c1be /src/compiler/nir/nir_serialize.c
parent393b59e0772e7bf0426bdf61c740752c4e09dde1 (diff)
nir: Tag entrypoint for easy recognition by nir_shader_get_entrypoint()
We're going to have multiple functions, so nir_shader_get_entrypoint() needs to do something a little smarter. Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>
Diffstat (limited to 'src/compiler/nir/nir_serialize.c')
-rw-r--r--src/compiler/nir/nir_serialize.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/compiler/nir/nir_serialize.c b/src/compiler/nir/nir_serialize.c
index b4187213716..808df193754 100644
--- a/src/compiler/nir/nir_serialize.c
+++ b/src/compiler/nir/nir_serialize.c
@@ -1048,6 +1048,8 @@ write_function(write_ctx *ctx, const nir_function *fxn)
blob_write_uint32(ctx->blob, val);
}
+ blob_write_uint32(ctx->blob, fxn->is_entrypoint);
+
/* At first glance, it looks like we should write the function_impl here.
* However, call instructions need to be able to reference at least the
* function and those will get processed as we write the function_impls.
@@ -1072,6 +1074,8 @@ read_function(read_ctx *ctx)
fxn->params[i].num_components = val & 0xff;
fxn->params[i].bit_size = (val >> 8) & 0xff;
}
+
+ fxn->is_entrypoint = blob_read_uint32(ctx->blob);
}
void