| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|/ / / |
|
|\ \ \
| | | |
| | | | |
Add -MP to CXXFLAGS
|
| | | |
| | | |
| | | |
| | | |
| | | | |
This avoids an issue where deleting or moving headers breaks the next
incremental build until the outdated *.d files are deleted.
|
|\ \ \ \
| | | | |
| | | | | |
flatten, techmap: don't canonicalize tpl driven bits via sigmap
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
For connection `assign a = b;`, `sigmap(a)` returns `b`. This is
exactly the opposite of the desired canonicalization for driven bits.
Consider the following code:
module foo(inout a, b);
assign a = b;
endmodule
module bar(output c);
foo f(c, 1'b0);
endmodule
Before this commit, the inout ports would be swapped after flattening
(and cause a crash while attempting to drive a constant value).
This issue was introduced in 9f772eb9.
Fixes #2183.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Replace "ILANG" with "RTLIL" everywhere
|
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The only difference between "RTLIL" and "ILANG" is that the latter is
the text representation of the former, as opposed to the in-memory
graph representation. This distinction serves no purpose but confuses
people: it is not obvious that the ILANG backend writes RTLIL graphs.
Passes `write_ilang` and `read_ilang` are provided as aliases to
`write_rtlil` and `read_rtlil` for compatibility.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When an adffe is being legalized, and is not natively supported,
prioritize unmapping to adff over converting to dffsre if dffsre is not
natively supported itself.
Fixes #2361.
|
| | | | | |
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | | |
Quartus assumes unsigned multiplication by default, breaking signed
multiplies, so add an input signedness parameter to the MISTRAL_MUL*
cells to propagate to Quartus' <family>_mac cells.
|
|\ \ \ \
| |/ / /
|/| | | |
Add formal apps and template generators
|
| | | | |
|
|\ \ \ \
| |/ / /
|/| | | |
Add -nomux switch to proc
|
| | | |
| | | |
| | | |
| | | | |
running proc -nomux will ommit the proc_mux pass
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Ensure smt2 comments are associated with accessors
|
| | | | | |
|
| |_|/ /
|/| | | |
|
| |/ /
|/| |
| | |
| | |
| | |
| | | |
The techmap rules for this target do not work in the first place (note
lack of >2-input LUT mappings), and if proper support is ever added,
it'd be better placed in the synth_intel_alm backend.
|
| | | |
|
|\ \ \
| | | |
| | | | |
techmap/shift_shiftx: Remove the "shiftx2mux" special path.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Our techmap rules for $shift and $shiftx cells contained a special path
that aimed to decompose the shift LSB-first instead of MSB-first in
select cases that come up in pmux lowering. This path was needlessly
overcomplicated and contained bugs.
Instead of doing that, just switch over the main path to iterate
LSB-first (except for the specially-handled MSB for signed shifts
and overflow handling). This also makes the code consistent with
shl/shr/sshl/sshr cells, which are already decomposed LSB-first.
Fixes #2346.
|
|\ \ \ \
| | | | |
| | | | | |
opt_share: Refactor, fix some bugs.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Fixes #2334.
Fixes #2335.
Fixes #2336.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
opt_clean: Fix module keep rules.
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
- wires with keep attribute now force a module to be kept
- presence of $memwr and $meminit cells no longer forces a module to be
kept
|
|\ \ \ \ \
| | | | | |
| | | | | | |
peeopt.shiftmul: Add a signedness check.
|
| | |_|_|/
| |/| | |
| | | | |
| | | | | |
Fixes #2332.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Remove passes redundant with opt_dff
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | |/ / /
| |/| | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
techmap.CONSTMAP: Handle outputs before inputs.
|
| | |/ / /
| |/| | |
| | | | |
| | | | | |
Fixes #2321.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
peepopt.muldiv: Add a signedness check.
|
| |/ / / /
| | | | |
| | | | |
| | | | | |
Fixes #2318.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
techmap: Add support for [] wildcards in techmap_celltype.
|
| |/ / / /
| | | | |
| | | | |
| | | | | |
Fixes #1826.
|
| |_|_|/
|/| | | |
|
|\ \ \ \
| |_|_|/
|/| | | |
Support 2D bit arrays in structures. Optimise array indexing.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
It has no effect on the output ($shiftx doesn't perform any sign
extension whatsoever), so an attempt to use it should be caught early.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This reflects the behaviour of $shr/$shl, which sign-extend their A
operands to the size of their output, then do a logical shift (shift in
0-bits).
|
|\ \ \ \
| | | | |
| | | | | |
Allow %0s $display format specifier
|
| | |_|/
| |/| | |
|
|\ \ \ \
| | | | |
| | | | | |
Propagate const_fold through generate blocks and branches
|