*/
#include "r600_pipe.h"
#include "r600_public.h"
+#include "r600_isa.h"
#include <errno.h>
#include "pipe/p_shader_tokens.h"
{
struct r600_context *rctx = (struct r600_context *)context;
+ r600_isa_destroy(rctx->isa);
+
pipe_resource_reference((struct pipe_resource**)&rctx->dummy_cmask, NULL);
pipe_resource_reference((struct pipe_resource**)&rctx->dummy_fmask, NULL);
rctx->allocator_so_filled_size = u_suballocator_create(&rctx->context, 4096, 4,
0, PIPE_USAGE_STATIC, TRUE);
- if (!rctx->allocator_so_filled_size)
+ if (!rctx->allocator_so_filled_size)
+ goto fail;
+
+ rctx->isa = calloc(1, sizeof(struct r600_isa));
+ if (!rctx->isa || r600_isa_init(rctx, rctx->isa))
goto fail;
rctx->blitter = util_blitter_create(&rctx->context);