diff options
author | Claire Wolf <clifford@clifford.at> | 2020-04-22 16:50:45 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-22 16:50:45 +0200 |
commit | 95c74b319b36f8cb950196c3e1d10c945629c1f5 (patch) | |
tree | b45deaf4c88b165bc6be5492bf2944fba935c2c7 /backends/cxxrtl/cxxrtl.h | |
parent | cd82afb740fc2f1d9bead89fd2683be989acad37 (diff) | |
parent | 93288b8eaea3e346275082352edeea5cfb4ac38a (diff) | |
download | yosys-95c74b319b36f8cb950196c3e1d10c945629c1f5.tar.gz yosys-95c74b319b36f8cb950196c3e1d10c945629c1f5.tar.bz2 yosys-95c74b319b36f8cb950196c3e1d10c945629c1f5.zip |
Merge pull request #1979 from whitequark/cxxrtl-go-faster
cxxrtl: Gas gas gas! I'm gonna step on the gas! Tonight I'll fly!
Diffstat (limited to 'backends/cxxrtl/cxxrtl.h')
-rw-r--r-- | backends/cxxrtl/cxxrtl.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/backends/cxxrtl/cxxrtl.h b/backends/cxxrtl/cxxrtl.h index 41e6290d1..b79bbbc72 100644 --- a/backends/cxxrtl/cxxrtl.h +++ b/backends/cxxrtl/cxxrtl.h @@ -717,15 +717,16 @@ struct module { module(const module &) = delete; module &operator=(const module &) = delete; - virtual void eval() = 0; + virtual bool eval() = 0; virtual bool commit() = 0; size_t step() { size_t deltas = 0; + bool converged = false; do { - eval(); + converged = eval(); deltas++; - } while (commit()); + } while (commit() && !converged); return deltas; } }; |