#ifndef CPU_RV64_BRGEMM_JIT_BRGEMM_KERNEL_HPP
#define CPU_RV64_BRGEMM_JIT_BRGEMM_KERNEL_HPP
#include "cpu/rv64/brgemm/brgemm_types.hpp"
#include "cpu/rv64/jit_generator.hpp"
namespace dnnl {
namespace impl {
namespace cpu {
namespace rv64 {
struct jit_brgemm_kernel_t;
struct brgemm_kernel_common_t : public brgemm_kernel_t {
brgemm_kernel_common_t(const brgemm_desc_t &brg);
~brgemm_kernel_common_t() override;
status_t create_kernel() override;
void operator()(brgemm_kernel_params_t *) const override;
const brgemm_desc_t &get_brg() const override { return brg_; }
private:
brgemm_desc_t brg_;
jit_brgemm_kernel_t *jit_kernel_ = nullptr;
};
} } } }
#endif