Akash Levy
2aeada6980
Bump Yosys to latest
2025-12-05 20:05:16 -08:00
Robert O'Callahan
638e904f91
Remove cover() coverage tracking
2025-12-04 16:27:13 +01:00
Akash Levy
4a25f63699
Merge from upstream
2025-11-29 11:53:48 -05:00
Robert O'Callahan
7f9de6e48f
Make coverage data thread-safe
2025-11-25 21:46:48 +00:00
Akash Levy
d16ca47549
Merge branch 'YosysHQ:main' into main
2025-09-22 17:47:23 -07:00
Jannis Harder
e546f3b8f0
Merge pull request #5355 from rocallahan/deprecate-logv_file_error
...
Deprecate `logv_file_error()`
2025-09-22 14:23:55 +02:00
Akash Levy
60d969530b
Bump to latest
2025-09-21 01:10:04 -07:00
Mohamed Gaber
1fa5ceee8c
pyosys: restore remaining log functions
...
Co-authored-by: George Rennie <19538554+georgerennie@users.noreply.github.com>
2025-09-20 16:14:07 +01:00
Robert O'Callahan
64ffcbc394
Deprecate logv_file_error()
2025-09-16 23:26:38 +00:00
Robert O'Callahan
8492c49f6c
Remove `string_buf` by making `log_signal()` and `log_const()` return `std::string`
...
We only have to fix one caller in-tree so this probably has very low impact on out-of-tree plugins.
Resolves #5215
2025-09-16 03:06:17 +00:00
Akash Levy
f5cb0c328f
Bump Yosys to latest
2025-09-13 04:35:52 -07:00
Jannis Harder
b87a33d64e
Merge pull request #5211 from rocallahan/remove-log_str
...
Remove `log_str()` functions and convert their `log_signal()` users t…
2025-09-12 14:10:47 +02:00
Robert O'Callahan
e0ae7b7af4
Remove .c_str() calls from log()/log_error()
...
There are some leftovers, but this is an easy regex-based approach that removes most of them.
2025-09-11 20:59:37 +00:00
Akash Levy
a43de44f9d
Merge upstream changes
2025-09-10 23:02:15 -07:00
Robert O'Callahan
c7017f7f79
Remove `log_str()` functions and convert their `log_signal()` users to return `std::string`
...
This is a small but easy step towards removing the `log_id_cache`.
See issue #5210 .
2025-09-11 04:00:49 +00:00
Robert O'Callahan
a137d03c32
Make log_cmd_error() use variadic templates.
2025-09-09 15:41:03 +02:00
Robert O'Callahan
243f5f5201
Make log_file_error() use variadic templates.
2025-09-09 15:41:03 +02:00
Robert O'Callahan
974455378b
Make log_error() use variadic templates.
2025-09-09 15:41:03 +02:00
Robert O'Callahan
c3924d0616
Move log_abort()'s call to log_error() into an out-of-line non-varargs function
2025-09-09 15:41:03 +02:00
Robert O'Callahan
1b5373de0d
Move log_assert_worker()'s call to log_error() into an out-of-line non-varags function
2025-09-09 15:41:03 +02:00
Robert O'Callahan
ea2bb5b79a
Make log_file_info() use variadic templates.
2025-09-09 15:41:03 +02:00
Robert O'Callahan
ec5f62e6d4
Make log_file_warning() use variadic templates.
2025-09-09 15:41:03 +02:00
Robert O'Callahan
2a2c586e2c
Make log_experimental() just take an std::string, since it doesn't need to be varargs.
2025-09-09 15:41:03 +02:00
Robert O'Callahan
25cba6181e
Make log_warning()/log_warning_noprefix() use variadic templates.
2025-09-09 15:41:03 +02:00
Robert O'Callahan
66d2c2af08
Make `log_header()` use variadic templates.
2025-09-09 15:41:03 +02:00
Robert O'Callahan
d34ac0c87d
Make `log()` use the `FmtString` infrastructure.
...
Now `log()` supports `std::string`.
We have to fix a few places where the format parameter was not a compile time constant.
This is mostly trivial.
2025-09-09 15:41:03 +02:00
Robert O'Callahan
3f69a768f4
Hide public `logv_` variant declarations that don't need to be public
2025-09-09 15:41:03 +02:00
Akash Levy
613dfcc6b4
Merge branch 'YosysHQ:main' into main
2025-08-08 10:37:08 -07:00
Emil J. Tywoniak
41107e5473
log: add -expect types prefix-log, prefix-warning, prefix-error
2025-06-16 21:26:08 +02:00
Akash Levy
5e6d68ca91
Merge branch 'YosysHQ:main' into main
2025-06-06 12:12:02 -07:00
Emil J. Tywoniak
a16227b209
Revert "Change the implementation of log_debug in kernel/log.h from a macro function to a normal function."
...
This reverts commit 15cfce061a .
2025-06-06 15:14:40 +02:00
Akash Levy
ec080cbd53
Merge branch 'YosysHQ:main' into main
2025-05-07 22:03:08 -07:00
RonxBulld
15cfce061a
Change the implementation of log_debug in kernel/log.h from a macro function to a normal function.
2025-04-29 22:43:10 +08:00
Akash Levy
2e89aa572b
Fix logger
2025-01-23 14:59:24 -08:00
Akash Levy
33653c8a80
Don't SIGABRT on failure
2025-01-23 14:51:40 -08:00
Akash Levy
1dcf75d175
Sync
2024-12-19 21:40:30 -08:00
Emil J. Tywoniak
d071489ab1
hashlib: redo interface for flexibility
2024-12-18 14:49:25 +01:00
Akash Levy
0757e27683
Raise SIGABRT when assert fails
2024-12-17 09:58:54 -08:00
Akash Levy
20c5ed2ebb
Merge latest
2024-09-06 07:43:14 -07:00
Jannis Harder
c73c8a39cf
kernel/log: Add log_str helper for custom log_* functions/overloads
...
When implementing custom log_... functions or custom overloads for the
core log functions like log_signal it is necessary to return `char *`
that are valid long enough.
The log_... functions implemented in log.cc use either `log_id_cache` or
`string_buf` which both are cleared on log_pop.
This commit adds a public `log_str` function which stores its argument
in the `log_id_cache` and returns the stored copy, such that custom
log functions outside of log.cc can also create strings that remain
valid until the next `log_pop`.
2024-08-21 10:58:39 +01:00
Akash Levy
00f5b122a1
Log smallfix for compatibility with pyosys
2024-07-23 15:51:56 -07:00
Jannis Harder
d8687e87b1
kernel: Avoid including files outside include guards
...
This adjusts the way the headers kernel/{yosys,rtlil,register,log}.h
include each other to avoid the need of including headers outside of
include guards as well as avoiding the inclusion of rtlil.h in the
middle of yosys.h with rtlil.h depending on the prefix of yosys.h, and
the suffix of yosys.h depending on rtlil.h.
To do this I moved some of the declaration in yosys.h into a new header
yosys_common.h. I'm not sure if that is strictly necessary.
Including any of these files still results in the declarations of all
these headers being included, so this shouldn't be a breaking change for
any passes or external plugins.
My main motivation for this is that ccls's (clang based language server)
include guard handling gets confused by the previous way the includes
were done. It often ends up treating the include guard as a generic
disabled preprocessor conditional, breaking navigation and highlighting
for the core RTLIL data structures.
Additionally I think avoiding cyclic includes in the middle of header
files that depend on includes being outside of include guards will also
be less confusing for developers reading the code, not only for tools
like ccls.
2024-04-02 16:53:56 +02:00
Miodrag Milanovic
4eb18e1f07
change verific log callback api
2023-11-01 08:13:27 +01:00
Martin Povišer
77d4b5230e
ast: Move to a new helper method to print input errors
...
It's a repeating pattern to print an error message tied to an AST
node. Start using an 'input_error' helper for that. Among other
things this is beneficial in shortening the print lines, which tend
to be long.
2023-07-20 23:40:19 -04:00
Miodrag Milanovic
75cf79588e
Add ability for user plugin to add new verific log callback
2023-06-12 10:01:01 +02:00
Miodrag Milanovic
5801152779
Deprecate gcc-4.8
2023-01-11 09:54:19 +01:00
Jannis Harder
ed02d52f30
tee: Allow logging command output to a given scratchpad value
2022-12-02 14:36:19 +01:00
Claire Xenia Wolf
fe438ca1ab
Add missing log_dump_val_worker forward declarations
...
Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
2022-10-30 18:57:50 +01:00
Claire Xenia Wolf
be1a12595a
Add missing log_dump handler for std::vector<>
...
Signed-off-by: Claire Xenia Wolf <claire@clairexen.net>
2022-10-20 13:50:25 +02:00
Marcelina Kościelnicka
a681904237
Assorted microoptimization speedups in core data structures.
2022-07-27 17:05:30 +02:00