| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2016-06-10 | Fix Verilog codegen for reg | Andrew Waterman | |
| Previously, we emitted if-else sequences for reg updates. Recent improvements to FIRRTL resulted in the emission of explicit mux networks instead. While equivalent, doing so reduces QoR, presumably because ECAD tools are tuned to the habits of manual Verilog coders. This seems to be a result of WRefs appearing between the regs and muxes. Chasing down the sources of the WRefs corrects the code generation. This patch reduces the Rocket pipeline area by about 2% and improves rocket-chip's Verilator performance by about 8%. | |||
| 2016-06-09 | Initializes register addresses. (#189) | Adam Izraelevitz | |
| Fixes #187. | |||
| 2016-06-09 | Merge branch 'master' into fix-warning | Adam Izraelevitz | |
| 2016-06-08 | Fix for bug introduced in #174 | azidar | |
| Addresses #184 Problem was that the width inferencer must assume a minimal width for self-referencing widths contained in a MaxWidth. Otherwise, it cannot solve the constraint. | |||
| 2016-06-07 | Merge pull request #179 from sdtwigg/fixminwidth | Adam Izraelevitz | |
| Fix bug in FIRRTL width inference, refactor associated functions | |||
| 2016-06-07 | Merge pull request #153 from ucb-bar/update-check-high-form | Adam Izraelevitz | |
| Update check high form | |||
| 2016-06-07 | Merge pull request #182 from ucb-bar/bringup-hwacha | Adam Izraelevitz | |
| Guard mem read ports with random data if read addr is out of range | |||
| 2016-06-07 | Fix non-thread safe Serialize by splitting it into class and object | Jack Koenig | |
| 2016-06-06 | Fix bug in FIRRTL width inference, refactor associated functions | Stephen Twigg | |
| When folding over lists for MinWidth and MaxWidth, would assume 0 as a start value. 0 persists through MinWidth resulting in under-constraining The functions were also refactored to be more readable and aligned with scala style/best practices. | |||
| 2016-06-06 | Guard mem read ports with random data if read addr is out of range | jackkoenig | |
| Add function for diff assignments for sim and synthesis to VerilogEmitter Fixes #155 | |||
| 2016-06-01 | Suppress "match may not be exhaustive" warning | Andrew Waterman | |
| 2016-05-24 | Remove prefix checking from Check High Form | jackkoenig | |
| Made obsolete by #120 | |||
| 2016-05-24 | Added Errors class and fixed tests. | azidar | |
| Canonicalizes catching/throwing PassExceptions. | |||
| 2016-05-24 | add better type mismatch error message | Colin Schmidt | |
| also check for it int unittest | |||
| 2016-05-24 | Remove nested AND in creation of readwrite ports for mems. | jackkoenig | |
| Fixes #147 | |||
| 2016-05-24 | Fix LowerTypes to check for wmode instead of rmode | jackkoenig | |
| 2016-05-12 | Restructured Compiler to use Transforms. Added an InlineInstance pass. | Adam Izraelevitz | |
| Transforms are new unit of modularity within the compiler. | |||
| 2016-05-12 | Implement File Info | jackkoenig | |
| 2016-05-11 | Remove trait StanzaPass and related dead code | jackkoenig | |
| 2016-05-10 | Remove old SplitExp pass (replaced by SplitExpressions) | jackkoenig | |
| 2016-05-10 | Modified Verilog compiler to use new passes | Adam Izraelevitz | |
| RemoveValidIf, SplitExpressions, and PadWidths | |||
| 2016-05-10 | Added RemoveValidIf pass. | Adam Izraelevitz | |
| This is to start moving stuff out of Emitter and into separate passes | |||
| 2016-05-10 | Added new (and correct) Split Expressions pass | Adam Izraelevitz | |
| 2016-05-10 | Added pad widths to eliminate all implicit width extending | Adam Izraelevitz | |
| 2016-05-10 | Added constant propagation rule for greater/less thans | Adam Izraelevitz | |
| 2016-05-10 | Fixed emission of memory ports to all be in the same always @ clock. | Adam Izraelevitz | |
| Changed initialization to assign the correct number of random bits. | |||
| 2016-05-03 | Remove line in Verilog Emitter erroneously printing ); before module def | jackkoenig | |
| Fixes #133 | |||
| 2016-05-03 | Refactor Check Initialization to trace voids through temporary nodes | jackkoenig | |
| 2016-05-03 | Make style and spacing of Check Initialization more idiomatic Scala | jackkoenig | |
| 2016-05-03 | Move Check Initialization to its own file | jackkoenig | |
| 2016-05-03 | Rewrite ExpandWhens to memoize complex default values | jackkoenig | |
| Fixes #113 and Fixes #150 | |||
| 2016-05-03 | Change style and spacing of Expand Whens to be more idiomatic Scala | jackkoenig | |
| 2016-05-03 | Move ExpandWhens to its own file | jackkoenig | |
| 2016-05-03 | Add Utils function getDeclaration | jackkoenig | |
| 2016-05-03 | Move splitRef and mergeRef from LowerTypes to Utils | jackkoenig | |
| Make EmptyExpression part of WIR | |||
| 2016-05-03 | Add HasInfo trait to IR, IsDeclaration mixes in HasInfo | jackkoenig | |
| Change Field from IsDeclaration to HasName Make WDefInstance an IsDeclaration | |||
| 2016-04-29 | Change PassUtils to use Utils.time function | jackkoenig | |
| 2016-04-29 | Cleanup Parser comments and imports - No functional changes | jackkoenig | |
| 2016-04-29 | Add timing to Parser | jackkoenig | |
| 2016-04-29 | Add time function to Utils | jackkoenig | |
| time uses LazyLogging, also delete import PrimOps._ (cyclic reference) | |||
| 2016-04-26 | Make sure nested expressions don't make it to the Emitter | Andrew Waterman | |
| 2016-04-26 | Split ValidIf from within PrimOps | Andrew Waterman | |
| 2016-04-26 | Fixed the check for bundle equality to allow relative flips to be wrong, but ↵ | Adam Izraelevitz | |
| the leaf directions are the same | |||
| 2016-04-26 | Added flag to parser to turn off using source locators. This allows for ↵ | Adam Izraelevitz | |
| easier testing, because we don't the source locator information to say a test fails | |||
| 2016-04-26 | Fixed bug in recursive check for whether BundleType contains flips. | Adam Izraelevitz | |
| 2016-04-22 | Add Uniquify Pass | jackkoenig | |
| Also add pass to Verilog Compiler list of passes This pass appends '_' to the names of aggregate types that would cause a name collision during LowerTypes. | |||
| 2016-04-22 | Refactor LowerTypes | jackkoenig | |
| Make loweredName a public utility function of the Pass | |||
| 2016-04-22 | Move LowerTypes to its own file | jackkoenig | |
| 2016-04-22 | Add utility functions for coverting and computing Gender and Flip | jackkoenig | |
| 2016-04-22 | Add isGround and isAggregate functions to Type Utils. | jackkoenig | |
