#include "util/u_debug.h"
#include "util/u_math.h"
+#include "util/u_memory.h"
#include "util/u_prim.h"
#include "tgsi/tgsi_parse.h"
#include "tgsi/tgsi_util.h"
if (src->Register.Indirect) {
info->indirect_files |= (1 << src->Register.File);
}
+
+ /* MSAA samplers */
+ if (src->Register.File == TGSI_FILE_SAMPLER) {
+ assert(fullinst->Instruction.Texture);
+ assert(src->Register.Index < Elements(info->is_msaa_sampler));
+
+ if (fullinst->Instruction.Texture &&
+ (fullinst->Texture.Texture == TGSI_TEXTURE_2D_MSAA ||
+ fullinst->Texture.Texture == TGSI_TEXTURE_2D_ARRAY_MSAA)) {
+ info->is_msaa_sampler[src->Register.Index] = TRUE;
+ }
+ }
}
/* check for indirect register writes */
boolean color0_writes_all_cbufs;
boolean writes_viewport_index;
boolean writes_layer;
+ boolean is_msaa_sampler[PIPE_MAX_SAMPLERS];
unsigned num_written_culldistance;
unsigned num_written_clipdistance;