radeonsi/gfx9: don't overallocate shader binaries
authorMarek Olšák <marek.olsak@amd.com>
Tue, 20 Jun 2017 17:34:03 +0000 (19:34 +0200)
committerMarek Olšák <marek.olsak@amd.com>
Sat, 24 Jun 2017 21:04:37 +0000 (23:04 +0200)
It's not needed. The hw doesn't fetch ahead over page boundaries.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
src/gallium/drivers/radeonsi/si_shader.c

index ecc51a3f4f5a338f83ebf55eb19d6884663959e5..6c887ddc58d2f87d3c80f1148bd223a59d98fabc 100644 (file)
@@ -4760,12 +4760,6 @@ int si_shader_binary_upload(struct si_screen *sscreen, struct si_shader *shader)
               !mainb->rodata_size);
        assert(!epilog || !epilog->rodata_size);
 
-       /* GFX9 can fetch at most 128 bytes past the end of the shader.
-        * Prevent VM faults.
-        */
-       if (sscreen->b.chip_class >= GFX9)
-               bo_size += 128;
-
        r600_resource_reference(&shader->bo, NULL);
        shader->bo = (struct r600_resource*)
                     pipe_buffer_create(&sscreen->b.b, 0,