Merge branch 'master' of github.com:steveicarus/iverilog
This commit is contained in:
commit
139c4154c3
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2005-2015 Stephen Williams (steve@icarus.com)
|
||||
* Copyright (c) 2005-2016 Stephen Williams (steve@icarus.com)
|
||||
*
|
||||
* This source code is free software; you can redistribute it
|
||||
* and/or modify it in source code form under the terms of the GNU
|
||||
|
|
@ -187,6 +187,7 @@ void draw_ufunc_vec4(ivl_expr_t expr)
|
|||
{
|
||||
ivl_scope_t def = ivl_expr_def(expr);
|
||||
ivl_signal_t retval = ivl_scope_port(def, 0);
|
||||
(void) retval;
|
||||
|
||||
/* Take in arguments to function and call function code. */
|
||||
draw_ufunc_preamble(expr);
|
||||
|
|
@ -198,6 +199,7 @@ void draw_ufunc_real(ivl_expr_t expr)
|
|||
{
|
||||
ivl_scope_t def = ivl_expr_def(expr);
|
||||
ivl_signal_t retval = ivl_scope_port(def, 0);
|
||||
(void) retval;
|
||||
|
||||
/* Take in arguments to function and call the function code. */
|
||||
draw_ufunc_preamble(expr);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1999-2015 Stephen Williams (steve@icarus.com)
|
||||
* Copyright (c) 1999-2016 Stephen Williams (steve@icarus.com)
|
||||
*
|
||||
* This source code is free software; you can redistribute it
|
||||
* and/or modify it in source code form under the terms of the GNU
|
||||
|
|
@ -650,6 +650,7 @@ static unsigned int get_format_char(char **rtn, int ljust, int plus,
|
|||
* It is needed by vhdlpp to correctly implement time'image(). */
|
||||
PLI_INT32 time_prec = vpi_get(vpiTimePrecision, info->scope);
|
||||
|
||||
free(timeformat_info.suff);
|
||||
if(time_units < -12)
|
||||
timeformat_info.suff = strdup(" fs");
|
||||
else if(time_units < -9)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2001-2012 Stephen Williams (steve@icarus.com)
|
||||
* Copyright (c) 2001-2016 Stephen Williams (steve@icarus.com)
|
||||
*
|
||||
* This source code is free software; you can redistribute it
|
||||
* and/or modify it in source code form under the terms of the GNU
|
||||
|
|
@ -113,7 +113,8 @@ void codespace_delete(void)
|
|||
count_opcodes -= 1;
|
||||
if ((cur+idx)->opcode == &of_VPI_CALL) {
|
||||
vpi_call_delete((cur+idx)->handle);
|
||||
} else if ((cur+idx)->opcode == &of_EXEC_UFUNC) {
|
||||
} else if (((cur+idx)->opcode == &of_EXEC_UFUNC_REAL) ||
|
||||
((cur+idx)->opcode == &of_EXEC_UFUNC_VEC4)) {
|
||||
exec_ufunc_delete((cur+idx));
|
||||
} else if ((cur+idx)->opcode == &of_FILE_LINE) {
|
||||
delete((cur+idx)->handle);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2001-2015 Stephen Williams (steve@icarus.com)
|
||||
* Copyright (c) 2001-2016 Stephen Williams (steve@icarus.com)
|
||||
*
|
||||
* This source code is free software; you can redistribute it
|
||||
* and/or modify it in source code form under the terms of the GNU
|
||||
|
|
@ -4985,7 +4985,7 @@ bool of_RET_REAL(vthread_t thr, vvp_code_t cp)
|
|||
assert(fun_thr->parent);
|
||||
fun_thr = fun_thr->parent;
|
||||
}
|
||||
assert(index >= 0 && index < fun_thr->args_real.size());
|
||||
assert(index < fun_thr->args_real.size());
|
||||
unsigned depth = fun_thr->args_real[index];
|
||||
// Use the depth to put the value into the stack of
|
||||
// the parent thread.
|
||||
|
|
@ -5007,7 +5007,7 @@ bool of_RET_VEC4(vthread_t thr, vvp_code_t cp)
|
|||
assert(fun_thr->parent);
|
||||
fun_thr = fun_thr->parent;
|
||||
}
|
||||
assert(index >= 0 && index < fun_thr->args_vec4.size());
|
||||
assert(index < fun_thr->args_vec4.size());
|
||||
unsigned depth = fun_thr->args_vec4[index];
|
||||
|
||||
int off = off_index? thr->words[off_index].w_int : 0;
|
||||
|
|
@ -5077,7 +5077,7 @@ bool of_RETLOAD_REAL(vthread_t thr, vvp_code_t cp)
|
|||
assert(fun_thr->parent);
|
||||
fun_thr = fun_thr->parent;
|
||||
}
|
||||
assert(index >= 0 && index < fun_thr->args_real.size());
|
||||
assert(index < fun_thr->args_real.size());
|
||||
unsigned depth = fun_thr->args_real[index];
|
||||
// Use the depth to extract the values from the stack
|
||||
// of the parent thread.
|
||||
|
|
@ -5097,7 +5097,7 @@ bool of_RETLOAD_VEC4(vthread_t thr, vvp_code_t cp)
|
|||
assert(fun_thr->parent);
|
||||
fun_thr = fun_thr->parent;
|
||||
}
|
||||
assert(index >= 0 && index < fun_thr->args_vec4.size());
|
||||
assert(index < fun_thr->args_vec4.size());
|
||||
unsigned depth = fun_thr->args_vec4[index];
|
||||
// Use the depth to put the value into the stack of
|
||||
// the parent thread.
|
||||
|
|
|
|||
Loading…
Reference in New Issue