提交 155a5854 编写于 作者: 饶先宏's avatar 饶先宏

202108152304

上级 f7bf9f43
......@@ -488,8 +488,8 @@ do { \
#define WIRE(name, width) hdl4se_module_SetVariable(pobj->pmodule, VID(name), VTYPE_WIRE, width, 0, 1, #name)
#define REG(name, width) hdl4se_module_SetVariable(pobj->pmodule, VID(name), VTYPE_REG, width, 0, 1, #name)
#define WIRE_SIGNED(name, width) hdl4se_module_SetVariable(pobj->pmodule, VID(name), VTYPE_WIRE, width, 0, 0, #name)
#define REG_SIGNED(name, width) hdl4se_module_SetVariable(pobj->pmodule, VID(name), VTYPE_REG, width, 0, 0, #name)
#define WIRE_S(name, width) hdl4se_module_SetVariable(pobj->pmodule, VID(name), VTYPE_WIRE, width, 0, 0, #name)
#define REG_S(name, width) hdl4se_module_SetVariable(pobj->pmodule, VID(name), VTYPE_REG, width, 0, 0, #name)
#define GWIRE(name, width, func) \
do { \
......
......@@ -113,19 +113,17 @@ do { \
#define UpdateVariable(v) \
do { \
if (v->type != VTYPE_REG) { \
int updatefunc; \
if (LOCKED_COMP_SWAP(v->updatefunc, VUF_UPDATING, VUF_WAITUPDATE) != VUF_UPDATED) {\
threadlockLock(v->lock); \
updatefunc = v->updatefunc; \
if (updatefunc == VUF_UPDATING) { \
if (v->updatefunc != VUF_UPDATED) { \
if (v->genfuncindex >= 0) { \
functionCallAndSetNone(v->moduledata->funcs.array[v->genfuncindex]); \
} \
else if (v->module != NULL) { \
hdl4se_module_GetValue(&v->module->data, v->moduleportindex, v->width, v); \
} \
v->updatefunc = VUF_UPDATED; \
} \
v->updatefunc = VUF_UPDATED; \
threadlockUnlock(v->lock); \
} \
} \
......@@ -692,7 +690,7 @@ int hdl4se_module_ClkTick(sGeneralModule* pobj)
#define LOCKED_UPDATE 0
#if LOCKED_UPDATE
int hdl4se_var_set_update(ModuleVariable* v)
static int hdl4se_var_set_update(ModuleVariable* v)
{
int i;
if (v == NULL)
......@@ -711,7 +709,7 @@ int hdl4se_var_set_update(ModuleVariable* v)
return 0;
}
#else
int hdl4se_var_set_update(ModuleVariable* v)
static int hdl4se_var_set_update(ModuleVariable* v)
{
int i;
if (v == NULL)
......
......@@ -241,7 +241,7 @@ static int hdl4sesim_hdl4se_simulator_SetReset(HOBJECT object, int reset)
return 0;
}
#define THREADCOUNT 3
#define THREADCOUNT 9
static int hdl4sesim_hdl4se_simulator_ClkTick(HOBJECT object)
{
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册