1 /* 2 * Copyright © 2022 Mary Guillemard 3 * SPDX-License-Identifier: MIT 4 */ 5 #ifndef MME_FERMI_SIM_H 6 #define MME_FERMI_SIM_H 7 8 #include "mme_sim.h" 9 10 #include <stdint.h> 11 #include <stdlib.h> 12 13 #ifdef __cplusplus 14 extern "C" { 15 #endif 16 17 struct mme_fermi_inst; 18 19 struct mme_fermi_sim_mem { 20 uint64_t addr; 21 void *data; 22 size_t size; 23 }; 24 25 void mme_fermi_sim_core(uint32_t inst_count, const struct mme_fermi_inst *insts, 26 const struct mme_sim_state_ops *state_ops, 27 void *state_handler); 28 29 void mme_fermi_sim(uint32_t inst_count, const struct mme_fermi_inst *insts, 30 uint32_t param_count, const uint32_t *params, 31 uint32_t mem_count, struct mme_fermi_sim_mem *mems); 32 33 #ifdef __cplusplus 34 } 35 #endif 36 37 #endif /* MME_FERMI_SIM_H */ 38