hakan-demirli
039634d973
feat: mkdir with tree
2024-01-31 01:03:01 +03:00
hakan-demirli
e093f57c10
fix: fail if neither HOME nor XDG_STATE_HOME are set
2024-01-08 08:49:04 +03:00
hakan-demirli
54c3b63d24
fix: third time is the charm
2024-01-07 14:34:27 +03:00
hakan-demirli
31b45c9555
fix: xdg spec for hist
2024-01-07 14:17:48 +03:00
hakan-demirli
bcf1c7b879
Merge branch 'YosysHQ:master' into master
2024-01-07 14:08:35 +03:00
Claire Xenia Wolf
fb72dc1a40
Add constexpr hashlib default constructors
...
Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
2023-12-29 19:20:44 +01:00
hakan-demirli
f50e8a3c1b
Follow the XDG Base Directory Specification
2023-12-21 21:44:02 +03:00
Martin Povišer
80b8cd19c4
rtlil: Fix value type for iterator over SigSpec
...
When we are iterating over a `SigSpec`, the visited values will be of
type `SigBit` (as is the return type of `operator*()`). Account for that
in the publicly declared types.
2023-12-09 19:01:39 +01:00
Martin Povišer
189064b8da
rtlil, hashlib: Remove deprecated std::iterator
usage
...
`std::iterator` has been deprecated in C++17. Yosys is being compiled
against the C++11 standard but plugins can opt to compile against a
newer one. To silence some deprecation warnings when those plugins are
being compiled, replace the `std::iterator` inheritance with the
equivalent type declarations.
2023-12-09 19:01:39 +01:00
N. Engelhardt
beaae79e73
Merge pull request #4021 from povik/booth-wallace
...
Change `booth` architecture for improved delay, similar signed/unsigned results
2023-11-27 16:26:03 +01:00
Martin Povišer
84568453f8
rtlil: Add lsb()
msb()
SigSpec helpers
2023-11-22 12:46:15 +01:00
Martin Povišer
282ce24eec
fmt: Handle free-standing time arguments
2023-11-20 17:25:42 +01:00
Jannis Harder
6cf50d16a8
Merge pull request #3973 from anonkey/master
...
cli(tcl): add ability to pass argument to tcl script from cli
2023-11-13 16:29:05 +01:00
Jannis Harder
d415b4d98a
cli: Cleanups for tcl argument handling
...
* Keep the previous behavior when no tcl script is used
* Do not treat "-" as a flag but as a positional argument
* Keep including <unistd.h> as it's also used for other functions (at
least for the emscripten build)
* Move the custom getopt implementation into the Yosys namespace to
avoid potential collisions
2023-11-06 16:40:13 +01:00
N. Engelhardt
93a426cbbf
Merge pull request #4008 from nakengelhardt/mem_libmap_data_attr
...
memory_libmap: look for ram_style attributes on surrounding signals
2023-11-06 16:25:38 +01:00
anonkey
ea91f189a3
cli(tcl): add ability to pass argument to tcl script from cli
2023-11-03 12:21:35 +01:00
Miodrag Milanovic
4eb18e1f07
change verific log callback api
2023-11-01 08:13:27 +01:00
N. Engelhardt
f9ab6e147a
mem: only import attributes from ports if the memory doesn't have them yet
2023-10-30 16:31:53 +01:00
N. Engelhardt
1b6d1e9419
memory_libmap: look for ram_style attributes on surrounding signals
2023-10-19 19:23:35 +02:00
Lofty
d21c464ae4
Merge pull request #3946 from rmlarsen/toposort
...
Speed up TopoSort by 2.7-3.3x.
2023-10-17 13:00:18 +01:00
N. Engelhardt
3e22791810
Merge pull request #3975 from rmlarsen/optmerge
2023-10-09 17:05:19 +02:00
Rasmus Munk Larsen
bc0df04e06
Get rid of double lookup in TopoSort::node(). This speeds up typical TopoSort time overall by ~10%.
2023-10-06 12:53:05 -07:00
Miodrag Milanovic
2ab7d1d0c8
Fix readline/editline memory leak
2023-10-06 16:05:44 +02:00
Rasmus Munk Larsen
6a5799cc2e
Add missing initialization of node_cmp_ member.
2023-10-05 17:27:26 -07:00
Rasmus Munk Larsen
0a37c2a301
Fix translation bug: The old code really checks for the presense of a node, not an edge in glift and flatten.
...
Add back statement that inserts nodes in order in opt_expr.cc.
2023-10-05 17:01:42 -07:00
Rasmus Munk Larsen
fd7bd420b3
Add back newline.
2023-10-05 15:26:29 -07:00
Rasmus Munk Larsen
e38c9e01c9
Undo formatting changes in kernel/utils.h.
2023-10-05 15:24:26 -07:00
Rasmus Munk Larsen
8e0308b5e7
Revert changes to celltypes.h. Use dict instead of std::unordered_map and most hash function for uint64_t to hashlib.h to support this.
2023-10-03 14:25:59 -07:00
Rasmus Munk Larsen
7b454d4633
Revert changes to celltypes.h.
2023-10-03 14:06:41 -07:00
Rasmus Munk Larsen
a6247cba42
Fix compiler warnings from GCC.
2023-10-03 09:29:06 +01:00
Rasmus Munk Larsen
cb9f318d37
Remove local modifications.
2023-10-03 09:29:06 +01:00
Rasmus Munk Larsen
ff915d21b6
Update comment.
2023-10-03 09:29:06 +01:00
Rasmus Munk Larsen
4968229efc
Speed up stringf / vstringf by 1.8x.
...
The main speedup is accomplished by avoiding a heap allocation in the common case where the final string length is less than 128. Inlining stringf & vstringf adds an additional improvement.
2023-10-03 09:29:06 +01:00
Rasmus Munk Larsen
058973faee
Undo formatting change.
2023-10-02 16:15:47 -07:00
Rasmus Munk Larsen
bce984fa60
Speed up OptMergePass by 1.7x.
...
The main speedup comes from swithing from using a SHA1 hash to std::hash<std::string>. There is no need to use an expensive cryptographic hash for fingerprinting in this context.
2023-10-02 15:57:18 -07:00
Martin Povišer
b894abf8b1
Merge pull request #3959 from rmlarsen/decode_string
...
Speed up RTLIL::Const::decode_string by 1.7x.
2023-10-02 16:38:43 +02:00
N. Engelhardt
dcb600ab81
Merge pull request #3938 from povik/booth-cleanup
2023-10-02 16:10:17 +02:00
Rasmus Munk Larsen
12218a4c74
Unflip i and j.
2023-09-28 19:39:09 -07:00
Rasmus Munk Larsen
01a015747e
Speed up RTLIL::Const::decode_string by 1.7x.
2023-09-27 17:16:13 -07:00
Wanda
c172fef01a
hashlib: Use a better hash for pool.
2023-09-26 18:55:06 +01:00
Martin Povišer
d641dfaec2
rtlil: Add helper to emit full-adder cells
2023-09-25 14:50:41 +02:00
Ethan Mahintorabi
aa06809d64
rtlil: Speeds up Yosys by 17%
...
This PR speeds up by roughly 17% across a wide spectrum of designs
tested at Google. Particularly for the mux generation pass.
Co-authored-by: Rasmus Larsen <rmlarsen@google.com>
Signed-off-by: Ethan Mahintorabi <ethanmoon@google.com>
2023-09-21 10:46:11 +01:00
Rasmus Munk Larsen
b9745f638b
Remove extraneous "public:".
2023-09-20 16:20:08 -07:00
Rasmus Munk Larsen
e0042bdff7
Speed up TopoSort. The main sorting algorithm implementation in TopoSort::sort_worker is 11-12x faster. Overall, the complete sequence of building the graph and sorting is about 2.5-3x faster. The overall impact in e.g. the replace_const_cells optimization pass is a ~25% speedup. End-to-end impact on our synthesis flow is about 3%.
2023-09-20 15:49:05 -07:00
Jannis Harder
62b4df4989
dft_tag: Implement $overwrite_tag
and $original_tag
...
This does not correctly handle an `$overwrite_tag` on a module output,
but since we currently require the user to flatten the design for
cross-module dft, this cannot be observed from within the design, only
by manually inspecting the signals in the design.
2023-09-13 11:32:36 +02:00
Miodrag Milanovic
27ac912709
Support import of $future_ff
2023-09-13 11:32:36 +02:00
Miodrag Milanovic
54050a8c16
Basic support for tag primitives
2023-09-13 11:32:36 +02:00
Martin Povišer
05f0262d77
Merge pull request #3929 from YosysHQ/gatecat/fmt-fix
...
fmt: Fix C++ string assertion when buf is empty
2023-09-12 19:44:17 +02:00
gatecat
98b9459535
fmt: Fix C++ string assertion when buf is empty
...
Signed-off-by: gatecat <gatecat@ds0.me>
2023-09-12 18:12:07 +02:00
Martin Povišer
cbc4ec8178
mem: Fix index confusion in write port merging
...
Fix mistaking the read-port and write-port indices for each other when
we are adding the partial transparency emulation to be able to merge two
write ports.
2023-09-12 16:43:59 +02:00