Open
Description
The test test_pyverilator_finish_2_same_files
(https://github.com/csail-csg/pyverilator/blob/master/pyverilator/tests/test_pyverilator.py#L633-L692)
fails because sim_1 and sim_2 both load the same shared object and the verilator gotFinish
uses a global variable to track if the simulator has finished. Once one finishes, both sims see gotFinish
to be true.
There are three possible solutions:
- Produce uniquely named so files for each sim
- Make copies of so files whenever they are opened.
- Use
dlmopen
to open a copy of the shared object (see the dlmopen branch https://github.com/csail-csg/pyverilator/tree/dlmopen)
I got the dlmopen
solution working, but its messy, and I don't know if it will work on other machines. I'll think about this problem more before making any changes.
Metadata
Metadata
Assignees
Labels
No labels