Clifford Wolf
|
9ff3a9f30d
|
Switched most of "share" to dict<> and pool<>
|
2014-12-29 00:42:48 +01:00 |
Clifford Wolf
|
445686cba3
|
using dict and pool in opt_reduce
|
2014-12-28 21:27:05 +01:00 |
Clifford Wolf
|
951c72ba52
|
bugfix in opt_share
|
2014-12-28 21:26:36 +01:00 |
Clifford Wolf
|
3da46d3437
|
Renamed hashmap.h to hashlib.h, some related improvements
|
2014-12-28 17:51:16 +01:00 |
Clifford Wolf
|
6c8b0a5fd1
|
More dict/pool related changes
|
2014-12-27 12:02:57 +01:00 |
Clifford Wolf
|
66ab88d7b0
|
More hashtable finetuning
|
2014-12-27 03:04:50 +01:00 |
Clifford Wolf
|
ec4751e55c
|
Replaced std::unordered_set (nodict) with Yosys::pool
|
2014-12-26 21:59:41 +01:00 |
Clifford Wolf
|
9e6fb0b02c
|
Replaced std::unordered_map as implementation for Yosys::dict
|
2014-12-26 21:35:22 +01:00 |
Clifford Wolf
|
a6c96b986b
|
Added Yosys::{dict,nodict,vector} container types
|
2014-12-26 10:53:21 +01:00 |
Clifford Wolf
|
edb3c9d0c4
|
Renamed extend() to extend_xx(), changed most users to extend_u0()
|
2014-12-24 09:51:17 +01:00 |
Clifford Wolf
|
546e8b5fe7
|
Improved TopoSort determinism
|
2014-11-07 15:21:03 +01:00 |
Clifford Wolf
|
ab28491f27
|
Added "opt -full" alias for all more aggressive optimizations
|
2014-10-31 03:36:51 +01:00 |
Clifford Wolf
|
84ffe04075
|
Fixed various VS warnings
|
2014-10-18 15:20:38 +02:00 |
Clifford Wolf
|
18cb8b4636
|
Don't be too smart with $dff cells with "init" attribute on out signal
|
2014-10-16 11:49:31 +02:00 |
Clifford Wolf
|
66eb254fc2
|
Some cleanups in opt_clean
|
2014-10-16 11:46:57 +02:00 |
William Speirs
|
6433203b39
|
Wrapped init in std::set constructor
|
2014-10-15 00:58:05 +02:00 |
Clifford Wolf
|
35fbc0b35f
|
Do not the 'z' modifier in format string (another win32 fix)
|
2014-10-11 11:42:08 +02:00 |
Clifford Wolf
|
4569a747f8
|
Renamed SIZE() to GetSize() because of name collision on Win32
|
2014-10-10 17:07:24 +02:00 |
Clifford Wolf
|
c5c7066ea6
|
sat encoding for exclusive $pmux ctrl inputs in "share" pass
|
2014-10-03 19:01:24 +02:00 |
Clifford Wolf
|
3e4b0cac8d
|
added resource sharing of $macc cells
|
2014-10-03 12:58:40 +02:00 |
Clifford Wolf
|
c3e779a65f
|
Added $_BUF_ cell type
|
2014-10-03 10:12:28 +02:00 |
Clifford Wolf
|
600c6cb013
|
remove buffers in opt_clean
|
2014-10-03 10:04:15 +02:00 |
Clifford Wolf
|
7019bc00e4
|
resource sharing of $alu cells
|
2014-10-03 09:55:50 +02:00 |
Clifford Wolf
|
0b8cfbc6fd
|
Added support for "keep" on modules
|
2014-09-29 12:51:54 +02:00 |
Clifford Wolf
|
f9a307a50b
|
namespace Yosys
|
2014-09-27 16:17:53 +02:00 |
Clifford Wolf
|
13117bb346
|
Re-enabled assert for new logic loops in "share" pass
|
2014-09-21 19:44:08 +02:00 |
Clifford Wolf
|
96e821dc6c
|
Various improvements regarding logic loops in "share" results
|
2014-09-21 19:36:56 +02:00 |
Clifford Wolf
|
d6e2ace95b
|
Logic loop bugfix for "share" pass
|
2014-09-21 15:13:44 +02:00 |
Clifford Wolf
|
b28be0759f
|
Added "share -limit"
|
2014-09-21 15:13:06 +02:00 |
Clifford Wolf
|
a6c08b40fe
|
Still loop bug in "share": changed assert to warning
|
2014-09-21 14:51:07 +02:00 |
Clifford Wolf
|
8d60754aef
|
Do not introduce new logic loops in "share"
|
2014-09-21 13:52:39 +02:00 |
Clifford Wolf
|
edf11c635a
|
Assert on new logic loops in "share" pass
|
2014-09-21 12:57:33 +02:00 |
Clifford Wolf
|
2cbdbaad1f
|
Fixed wreduce $shiftx handling
|
2014-09-15 11:29:09 +02:00 |
Clifford Wolf
|
aab0e3bf70
|
Cleanup in wreduce
|
2014-09-14 10:01:30 +02:00 |
Ruben Undheim
|
79cbf9067c
|
Corrected spelling mistakes found by lintian
|
2014-09-06 08:47:06 +02:00 |
Clifford Wolf
|
f5a40e7043
|
Fixed "opt_const -fine" for $pos cells
|
2014-09-04 08:55:58 +02:00 |
Clifford Wolf
|
8927aa6148
|
Removed $bu0 cell type
|
2014-09-04 02:07:52 +02:00 |
Clifford Wolf
|
d5148f2e01
|
Moved "share" and "wreduce" to passes/opt/
|
2014-09-01 11:45:26 +02:00 |
Clifford Wolf
|
e07698818d
|
Using std::vector<RTLIL::State> instead of RTLIL::Const for RTLIL::SigChunk::data
|
2014-09-01 11:36:02 +02:00 |
Clifford Wolf
|
2a1b08aeb3
|
Added design->scratchpad
|
2014-08-30 19:37:12 +02:00 |
Clifford Wolf
|
7bbbe3580d
|
Optimize shift ops with constant rhs in opt_const
|
2014-08-24 17:08:43 +02:00 |
Clifford Wolf
|
641501203c
|
Added some additional log messages to opt_const
|
2014-08-24 17:08:43 +02:00 |
Clifford Wolf
|
410d043dd8
|
Renamed toposort.h to utils.h
|
2014-08-17 00:55:35 +02:00 |
Clifford Wolf
|
eb17fbade5
|
Added "opt -fast"
|
2014-08-16 15:34:15 +02:00 |
Clifford Wolf
|
f092b50148
|
Renamed $_INV_ cell type to $_NOT_
|
2014-08-15 14:11:40 +02:00 |
Clifford Wolf
|
ca87116449
|
More idstring sort_by_* helpers and fixed tpl ordering in techmap
|
2014-08-15 02:40:46 +02:00 |
Clifford Wolf
|
13f2f36884
|
RIP $safe_pmux
|
2014-08-14 11:39:46 +02:00 |
Clifford Wolf
|
8fd1c269ac
|
Fixed a performance bug in opt_reduce
|
2014-08-02 15:12:16 +02:00 |
Clifford Wolf
|
b9bd22b8c8
|
More cleanups related to RTLIL::IdString usage
|
2014-08-02 13:19:57 +02:00 |
Clifford Wolf
|
bd74ed7da4
|
Replaced sha1 implementation
|
2014-08-01 19:01:10 +02:00 |
Clifford Wolf
|
cdae8abe16
|
Renamed port access function on RTLIL::Cell, added param access functions
|
2014-07-31 16:38:54 +02:00 |
Clifford Wolf
|
397b00252d
|
Added $shift and $shiftx cell types (needed for correct part select behavior)
|
2014-07-29 16:35:13 +02:00 |
Clifford Wolf
|
7bd2d1064f
|
Using log_assert() instead of assert()
|
2014-07-28 11:27:48 +02:00 |
Clifford Wolf
|
0c86d6106c
|
Added SigPool::check(bit)
|
2014-07-27 15:38:02 +02:00 |
Clifford Wolf
|
77a1462f2d
|
Fixed bug in opt_clean
|
2014-07-27 15:13:29 +02:00 |
Clifford Wolf
|
d07a871d35
|
Improved performance of opt_const on large modules
|
2014-07-27 14:50:25 +02:00 |
Clifford Wolf
|
dbb3556e3f
|
Fixed a bug in opt_clean and some RTLIL API usage cleanups
|
2014-07-27 13:19:05 +02:00 |
Clifford Wolf
|
49f72421d5
|
Using new obj iterator API in a few places
|
2014-07-27 11:32:42 +02:00 |
Clifford Wolf
|
10e5791c5e
|
Refactoring: Renamed RTLIL::Design::modules to modules_
|
2014-07-27 11:18:30 +02:00 |
Clifford Wolf
|
4c4b602156
|
Refactoring: Renamed RTLIL::Module::cells to cells_
|
2014-07-27 01:51:45 +02:00 |
Clifford Wolf
|
f9946232ad
|
Refactoring: Renamed RTLIL::Module::wires to wires_
|
2014-07-27 01:49:51 +02:00 |
Clifford Wolf
|
946ddff9ce
|
Changed a lot of code to the new RTLIL::Wire constructors
|
2014-07-26 20:12:50 +02:00 |
Clifford Wolf
|
3f4e3ca8ad
|
More RTLIL::Cell API usage cleanups
|
2014-07-26 16:14:02 +02:00 |
Clifford Wolf
|
97a59851a6
|
Added RTLIL::Cell::has(portname)
|
2014-07-26 16:11:28 +02:00 |
Clifford Wolf
|
f8fdc47d33
|
Manual fixes for new cell connections API
|
2014-07-26 15:58:23 +02:00 |
Clifford Wolf
|
b7dda72302
|
Changed users of cell->connections_ to the new API (sed command)
git grep -l 'connections_' | xargs sed -i -r -e '
s/(->|\.)connections_\["([^"]*)"\] = (.*);/\1set("\2", \3);/g;
s/(->|\.)connections_\["([^"]*)"\]/\1get("\2")/g;
s/(->|\.)connections_.at\("([^"]*)"\)/\1get("\2")/g;
s/(->|\.)connections_.push_back/\1connect/g;
s/(->|\.)connections_/\1connections()/g;'
|
2014-07-26 15:58:23 +02:00 |
Clifford Wolf
|
cc4f10883b
|
Renamed RTLIL::{Module,Cell}::connections to connections_
|
2014-07-26 11:58:03 +02:00 |
Clifford Wolf
|
2bec47a404
|
Use only module->addCell() and module->remove() to create and delete cells
|
2014-07-25 17:56:19 +02:00 |
Clifford Wolf
|
0520bfea89
|
Fixed memory corruption in "opt_reduce" pass
|
2014-07-25 12:49:51 +02:00 |
Clifford Wolf
|
6aa792c864
|
Replaced more old SigChunk programming patterns
|
2014-07-24 23:10:58 +02:00 |
Clifford Wolf
|
9962384d3e
|
Added cover() calls to opt_const
|
2014-07-24 20:47:18 +02:00 |
Clifford Wolf
|
c094c53de8
|
Removed RTLIL::SigSpec::optimize()
|
2014-07-23 20:32:28 +02:00 |
Clifford Wolf
|
a62c21c9c6
|
Removed RTLIL::SigSpec::expand() method
|
2014-07-23 19:34:51 +02:00 |
Clifford Wolf
|
ec923652e2
|
Refactoring {SigSpec|SigChunk}(RTLIL::Wire *wire, ..) constructor -- step 3/3
|
2014-07-23 09:52:55 +02:00 |
Clifford Wolf
|
a8d3a68971
|
Refactoring {SigSpec|SigChunk}(RTLIL::Wire *wire, ..) constructor -- step 2/3
|
2014-07-23 09:49:43 +02:00 |
Clifford Wolf
|
28b3fd05fa
|
SigSpec refactoring: change RTLIL::SigSpec::chunks() to be read-only, created interim RTLIL::SigSpec::chunks_rw()
|
2014-07-22 20:58:44 +02:00 |
Clifford Wolf
|
4b4048bc5f
|
SigSpec refactoring: using the accessor functions everywhere
|
2014-07-22 20:39:37 +02:00 |
Clifford Wolf
|
a233762a81
|
SigSpec refactoring: renamed chunks and width to __chunks and __width
|
2014-07-22 20:39:37 +02:00 |
Clifford Wolf
|
137dbf3cf7
|
Added "opt_const -keepdc"
|
2014-07-21 21:38:55 +02:00 |
Clifford Wolf
|
1873480ca5
|
Added mul to mux conversion to "opt_const -fine"
|
2014-07-21 17:19:50 +02:00 |
Clifford Wolf
|
1241a9fd50
|
Added "opt_const -fine" and "opt_reduce -fine"
|
2014-07-21 16:34:16 +02:00 |
Clifford Wolf
|
e035f1d886
|
Added opt_const support for simple identities
|
2014-07-21 14:41:02 +02:00 |
Clifford Wolf
|
309ae98246
|
Apply opt_reduce WR_EN opts to the whole mux tree driving the WR_EN port
|
2014-07-18 10:28:45 +02:00 |
Clifford Wolf
|
1b00861d0a
|
Improved opt_reduce handling of mem wr_en mux bits
|
2014-07-17 12:12:04 +02:00 |
Clifford Wolf
|
d678b6533d
|
improved opt_reduce for $mem/$memwr WR_EN multiplexers
|
2014-07-16 14:08:51 +02:00 |
Clifford Wolf
|
68c059565a
|
Fixed bug in opt_reduce (see vloghammer issue_044)
|
2014-05-12 12:45:47 +02:00 |
Clifford Wolf
|
9a34486bfb
|
Fixed performance problem in opt_mux with nets driven by many conflicting drivers
|
2014-03-19 10:05:01 +01:00 |
Clifford Wolf
|
9b9c3327cc
|
Fixed undef handling in opt_reduce
|
2014-03-06 14:18:34 +01:00 |
Clifford Wolf
|
9e99984336
|
Fixed const folding of $bu0 cells
|
2014-02-27 04:09:32 +01:00 |
Clifford Wolf
|
548519875b
|
Fixed bug (typo) in passes/opt/opt_const.cc
|
2014-02-22 17:07:22 +01:00 |
Clifford Wolf
|
28e14ee50a
|
Fixed handling of "keep" attribute on wires in opt_clean
|
2014-02-16 21:58:27 +01:00 |
Clifford Wolf
|
67effc9f5b
|
Fixed opt_const handling of double invert with non-1 output width
|
2014-02-15 13:16:08 +01:00 |
Clifford Wolf
|
82c98bbbe6
|
Added opt -purge (frontend to opt_clean -purge)
|
2014-02-08 14:21:34 +01:00 |
Clifford Wolf
|
922d1c9520
|
Only count non-trivial attributes when findinf master signal in opt_clean
|
2014-02-08 14:21:04 +01:00 |
Clifford Wolf
|
274bcef66c
|
Improved detection of primary wire for a signal in opt_clean
|
2014-02-07 23:50:17 +01:00 |
Clifford Wolf
|
594d52e0b6
|
Added opt_const -undriven
|
2014-02-06 15:49:03 +01:00 |
Clifford Wolf
|
99b9c56da1
|
Fixed detection of init attribute in opt_rmdff
|
2014-02-04 23:00:32 +01:00 |
Clifford Wolf
|
ecdf1f5577
|
Improved handling of reg init in opt_share and opt_rmdff
|
2014-02-04 12:02:47 +01:00 |
Clifford Wolf
|
de336d93b2
|
More opt_const -mux_bool features
|
2014-02-02 22:41:24 +01:00 |
Clifford Wolf
|
9d0b69edaa
|
Added opt_const -mux_bool
|
2014-02-02 22:11:08 +01:00 |