/*
* Copyright 2017 Advanced Micro Devices, Inc.
+ * All Rights Reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
#include "si_shader.h"
-#define MAX_GLOBAL_BUFFERS 22
+#define MAX_GLOBAL_BUFFERS 32
struct si_compute {
struct pipe_reference reference;
struct si_screen *screen;
- struct tgsi_token *tokens;
+ union {
+ struct tgsi_token *tgsi;
+ struct nir_shader *nir;
+ } ir;
struct util_queue_fence ready;
struct si_compiler_ctx_state compiler_ctx_state;
struct pipe_resource *global_buffers[MAX_GLOBAL_BUFFERS];
unsigned use_code_object_v2 : 1;
- unsigned variable_group_size : 1;
unsigned uses_grid_size:1;
- unsigned uses_block_size:1;
unsigned uses_bindless_samplers:1;
unsigned uses_bindless_images:1;
+ bool reads_variable_block_size;
+ unsigned num_cs_user_data_dwords;
};
void si_destroy_compute(struct si_compute *program);