From 8cece424d1c190655940190d56adcaae587b4565 Mon Sep 17 00:00:00 2001 From: Cary R Date: Wed, 9 Apr 2008 18:45:44 -0700 Subject: [PATCH] In the context of a force/assign you cannot reuse a saved signal value. This patch removes the overly optimistic lookaside save for a signal that has been set (%set/v). This is incorrect because if a force or assign are active the value will not be set as expected. --- tgt-vvp/vvp_process.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tgt-vvp/vvp_process.c b/tgt-vvp/vvp_process.c index fd1c9829c..fea75a840 100644 --- a/tgt-vvp/vvp_process.c +++ b/tgt-vvp/vvp_process.c @@ -174,9 +174,11 @@ static void set_to_lvariable(ivl_lval_t lval, } else { - save_signal_lookaside(bit, sig, use_word, wid); fprintf(vvp_out, " %%set/v v%p_%lu, %u, %u;\n", sig, use_word, bit, wid); + /* save_signal width of 0 CLEARS the signal from the + lookaside. */ + save_signal_lookaside(bit, sig, use_word, 0); } }