virtual void compile(SL::Compiler &) = 0;
SL::Features create_features() const;
+
+public:
+ virtual void set_debug_name(const std::string &) { }
};
/**
{
VERTEX = 0,
GEOMETRY = 3,
- FRAGMENT = 4
+ FRAGMENT = 4,
+ COMPUTE = 5
};
enum StorageClass
unsigned id = 0;
Stage stage = VERTEX;
std::vector<const Variable *> globals;
+ LinAl::Vector<unsigned, 3> compute_local_size;
};
struct StructMember
void reflect_name(CodeIterator);
void reflect_member_name(CodeIterator);
void reflect_entry_point(CodeIterator);
+ void reflect_execution_mode(CodeIterator);
void reflect_void_type(CodeIterator);
void reflect_bool_type(CodeIterator);
void reflect_int_type(CodeIterator);
private:
std::vector<const InstructionBlock *> collect_visited_blocks(const std::map<unsigned, int> &) const;
void collect_visited_blocks(unsigned, std::vector<std::uint8_t> &) const;
+
+public:
+ void set_debug_name(const std::string &n) { SpirVModuleBackend::set_debug_name(n); }
};
} // namespace GL