iris: Sweep the NIR in iris_create_uncompiled_shader().
authorKenneth Graunke <kenneth@whitecape.org>
Fri, 7 Jun 2019 07:57:25 +0000 (00:57 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Fri, 7 Jun 2019 08:29:38 +0000 (01:29 -0700)
We run a ton of backend specific passes here (mostly brw_preprocess_nir)
and ought to sweep up any unused memory at this point, since we're going
to hang on to this NIR for as long as the linked program lives.

src/gallium/drivers/iris/iris_program.c

index 2712eb29591070d15f518382a5e645c81b769633..eb049fae8b49f88e186b7c4cc242b4bf0baaa3ef 100644 (file)
@@ -1862,6 +1862,8 @@ iris_create_uncompiled_shader(struct pipe_context *ctx,
    NIR_PASS_V(nir, brw_nir_lower_image_load_store, devinfo);
    NIR_PASS_V(nir, iris_lower_storage_image_derefs);
 
+   nir_sweep(nir);
+
    if (nir->constant_data_size > 0) {
       unsigned data_offset;
       u_upload_data(ice->shaders.uploader, 0, nir->constant_data_size,