aboutsummaryrefslogtreecommitdiffstats
path: root/passes
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #1303 from YosysHQ/bogdanvuk/opt_shareClifford Wolf2019-08-173-1/+655
|\ | | | | Implement opt_share from @bogdanvuk
| * Use ID() macroEddie Hung2019-08-161-118/+110
| |
| * Add 'opt_share' to 'opt -full'Eddie Hung2019-08-161-0/+5
| |
| * Merge https://github.com/bogdanvuk/yosys into bogdanvuk/opt_shareEddie Hung2019-08-162-1/+658
| |\
| | * Fix wrong results when opt_share called before opt_cleanBogdan Vukobratovic2019-08-071-18/+14
| | |
| | * Support various binary operators in opt_shareBogdan Vukobratovic2019-08-041-194/+392
| | |
| | * Fix spacing in opt_share tests, change wording in opt_share helpBogdan Vukobratovic2019-08-031-6/+10
| | |
| | * Reimplement opt_share to work on $alu and $pmuxBogdan Vukobratovic2019-07-281-95/+225
| | |
| | * Implement opt_shareBogdan Vukobratovic2019-07-262-1/+330
| | | | | | | | | | | | | | | | | | This pass identifies arithmetic operators that share an operand and whose results are used in mutually exclusive cases controlled by a multiplexer, and merges them together by multiplexing the other operands
* | | Merge pull request #1300 from YosysHQ/eddie/cleanup2Clifford Wolf2019-08-1732-626/+625
|\ \ \ | |/ / |/| | Use ID::{A,B,Y,keep,blackbox,whitebox} instead of ID()
| * | Remove `using namespace RTLIL;`Eddie Hung2019-08-161-6/+5
| | |
| * | Use ID::keep more liberally tooEddie Hung2019-08-1510-19/+19
| | |
| * | Use more ID::{A,B,Y,blackbox,whitebox}Eddie Hung2019-08-1532-601/+601
| | |
* | | Merge pull request #1302 from mmicko/dfflibmap_regressionClifford Wolf2019-08-162-10/+10
|\ \ \ | | | | | | | | DFFLIBMAP pass regression fix
| * | | Regression in abc9Miodrag Milanovic2019-08-161-1/+1
| | | |
| * | | Just needed IDs to be IdStringMiodrag Milanovic2019-08-161-9/+9
| |/ /
* / / Add missing NMUX to "abc -g" handlingClifford Wolf2019-08-161-0/+1
|/ / | | | | | | Signed-off-by: Clifford Wolf <clifford@clifford.at>
* | FixEddie Hung2019-08-151-2/+2
| |
* | ID(\\.*) -> ID(.*)Eddie Hung2019-08-1525-766/+766
| |
* | Convert a few more to IDEddie Hung2019-08-151-20/+20
| |
* | Transform all "\\*" identifiers into ID()Eddie Hung2019-08-1525-782/+782
| |
* | Transform "$.*" to ID("$.*") in passes/techmapEddie Hung2019-08-1524-367/+362
| |
* | More use of IdString::in()Eddie Hung2019-08-156-14/+13
| |
* | Merge remote-tracking branch 'origin/master' into eddie/fix_1284_againEddie Hung2019-08-1512-998/+998
|\ \
| * \ Merge branch 'master' into clifford/idsClifford Wolf2019-08-151-1/+49
| |\ \
| * | | Use ID() macro in all of passes/opt/Clifford Wolf2019-08-1112-998/+998
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was obtained by running the following SED command in passes/opt/ and then using "meld foo.cc foo.cc.orig" to manually fix all resulting compiler errors. sed -i.orig -r 's/"\\\\([a-zA-Z0-9_]+)"/ID(\1)/g; s/"(\$[a-zA-Z0-9_]+)"/ID(\1)/g;' *.cc Signed-off-by: Clifford Wolf <clifford@clifford.at>
* | | | AND with an inverted input, causes X{,N}OR output to be inverted tooEddie Hung2019-08-141-2/+2
| | | |
* | | | Revert "Only sort leaves on non-ANDNOT/ORNOT cells"Eddie Hung2019-08-141-7/+6
| | | | | | | | | | | | | | | | This reverts commit 5ec5f6dec7d4cdcfd9e1a2cda999886605778400.
* | | | Only sort leaves on non-ANDNOT/ORNOT cellsEddie Hung2019-08-141-6/+7
| |/ / |/| |
* | | Revert "Since $_ANDNOT_ is not symmetric, do not sort leaves"Eddie Hung2019-08-141-4/+8
| | |
* | | Since $_ANDNOT_ is not symmetric, do not sort leavesEddie Hung2019-08-121-8/+4
| | |
* | | Merge remote-tracking branch 'origin/master' into eddie/fix_1262Eddie Hung2019-08-1142-360/+279
|\| |
| * | Revert "Wrap SB_LUT+SB_CARRY into $__ICE40_CARRY_WRAPPER"David Shah2019-08-103-111/+0
| | |
| * | Merge pull request #1258 from YosysHQ/eddie/cleanupClifford Wolf2019-08-1038-225/+218
| |\ \ | | | | | | | | Cleanup a few barnacles across codebase
| | * | substr() -> compare()Eddie Hung2019-08-0718-74/+74
| | | |
| | * | RTLIL::S{0,1} -> State::S{0,1}Eddie Hung2019-08-077-48/+48
| | | |
| | * | Merge remote-tracking branch 'origin/master' into eddie/cleanupEddie Hung2019-08-074-41/+54
| | |\ \
| | * | | Remove std:: namespaceEddie Hung2019-08-071-5/+5
| | | | |
| | * | | stoi -> atoiEddie Hung2019-08-0734-110/+110
| | | | |
| | * | | IdString::str().substr() -> IdString::substr()Eddie Hung2019-08-061-1/+1
| | | | |
| | * | | Fix typosEddie Hung2019-08-061-5/+5
| | | | |
| | * | | Use std::stoi instead of atoi(<str>.c_str())Eddie Hung2019-08-0631-100/+100
| | | | |
| | * | | Use IdString::begins_with()Eddie Hung2019-08-062-19/+17
| | | | |
| | * | | Use State::S{0,1}Eddie Hung2019-08-066-12/+12
| | | | |
| | * | | Make liberal use of IdString.in()Eddie Hung2019-08-0614-34/+34
| | | | |
| | * | | Cleanup opt_expr.ccEddie Hung2019-08-061-35/+30
| | | | |
| * | | | Merge pull request #1276 from YosysHQ/clifford/fix1273Clifford Wolf2019-08-101-15/+54
| |\ \ \ \ | | | | | | | | | | | | Disable NMUX, AOI3, OAI3, AOI4, OAI4 in ABC default gate lib
| | * | | | Disable NMUX, AOI3, OAI3, AOI4, OAI4 in ABC default gate lib, add "abc -g ↵Clifford Wolf2019-08-091-15/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | all", fixes #1273 Signed-off-by: Clifford Wolf <clifford@clifford.at>
| * | | | | Merge pull request #1267 from whitequark/proc_prune-fix-1243whitequark2019-08-091-9/+7
| |\ \ \ \ \ | | |/ / / / | |/| | | | proc_prune: fix handling of exactly identical assigns
| | * | | | proc_prune: fix handling of exactly identical assigns.whitequark2019-08-081-9/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this commit, in a process like: process $proc$bug.v:8$3 assign $foo \bar switch \sel case 1'1 assign $foo 1'1 assign $foo 1'1 case assign $foo 1'0 end end both of the "assign $foo 1'1" would incorrectly be removed. Fixes #1243.