Commit Graph

1973 Commits

Author SHA1 Message Date
Emil J. Tywoniak b340537796 celltypes: fix absurd eval declarations 2025-11-27 03:32:31 +01:00
Emil J. Tywoniak 105c591bbe newcelltypes: use unordered_map 2025-11-27 02:53:29 +01:00
Emil J. Tywoniak 0d13de9595 fixup! register: use newcelltypes 2025-11-27 01:20:52 +01:00
Emil J. Tywoniak ce6cd32065 newcelltypes: fix MSVC build 2025-11-26 13:17:24 +01:00
Emil J. Tywoniak e8f7845c5b register: use newcelltypes 2025-11-26 00:53:01 +01:00
Emil J. Tywoniak 4dddd6fe4b yosys: use newcelltypes for yosys_celltypes users 2025-11-26 00:50:41 +01:00
Emil J. Tywoniak 46f9e70dce yosys: use newcelltypes for yosys_celltypes 2025-11-26 00:47:30 +01:00
Emil J. Tywoniak ab4fd8c623 drivertools: use newcelltypes 2025-11-26 00:16:07 +01:00
Emil J. Tywoniak 299d64ad9f newcelltypes: comment 2025-11-25 23:52:30 +01:00
Emil J. Tywoniak a8509aee48 fixup! consteval: use newcelltypes 2025-11-25 23:51:09 +01:00
Emil J. Tywoniak ce3c23f969 consteval: use newcelltypes 2025-11-25 23:47:56 +01:00
Emil J. Tywoniak 9877d189ce modtools: use newcelltypes 2025-11-25 23:36:40 +01:00
Emil J. Tywoniak 4b55e5ff5f newcelltypes: fix non-cells 2025-11-25 22:48:59 +01:00
Emil J. Tywoniak 746e9f6bcd newcelltypes: refactor 2025-11-25 22:48:58 +01:00
Emil J. Tywoniak e2e7e5ef6a share: use newcelltypes 2025-11-25 22:48:42 +01:00
Emil J. Tywoniak f4975f27ee newcelltypes: fix unit test 2025-11-25 22:48:11 +01:00
Emil J. Tywoniak f6e5ea3027 newcelltypes: bounds check 2025-11-25 22:48:11 +01:00
Emil J. Tywoniak 29453aa053 newcelltypes: wrap design celltypes support 2025-11-25 22:48:11 +01:00
Emil J. Tywoniak bea80c06b9 newcelltypes: TurboCellTypes -> StaticCellTypes 2025-11-25 22:48:11 +01:00
Emil J. Tywoniak d1ade01286 opt_expr: use newcelltypes 2025-11-25 22:48:11 +01:00
Emil J. Tywoniak b474ce0c67 newcelltypes: init 2025-11-25 15:06:36 +01:00
Emil J 2eff366e8c
Merge branch 'main' into emil/sdc_expand 2025-11-19 16:29:37 +01:00
Emil J. Tywoniak 5a798b64ef sdc: separate out 2025-11-19 15:25:22 +01:00
Emil Jiří Tywoniak c281bac461 sdc: add initial stubbed demo 2025-11-19 15:25:03 +01:00
Emil J. Tywoniak 9f07e21e35 rtlil: undeprecate builtin_ff_cell_types 2025-11-19 15:20:50 +01:00
Emil J. Tywoniak 9e81db4373 ff: split out type-only information 2025-11-19 15:20:50 +01:00
Robert O'Callahan 261a0ae9e1 Implement at() methods on SigSpec so that SigSpec::bits().at() continues to work as it did
Fixes a regression caused by commit 745222fa3b, which caused some
third-party code to fail to build, e.g.:
5d7aa035c6/lib/Transforms/YosysOptimizer/RTLILImporter.cpp (L229)
2025-11-17 09:15:55 +00:00
Emil J 84adc82fad
Merge pull request #5484 from YosysHQ/emil/idstring-simpler-final-gc
driver: move IdString collection to yosys_shutdown
2025-11-15 00:10:12 +01:00
Emil J. Tywoniak c497b3b24c Revert "rtlil: make tracing optional in IdString garbage collection"
This reverts commit 8c76f93fce.
2025-11-14 15:32:10 +01:00
Emil J. Tywoniak 65d7d70507 driver: move IdString collection to yosys_shutdown 2025-11-14 15:31:45 +01:00
Miodrag Milanović ba99c05902
Merge pull request #5482 from rocallahan/newid-namespace
Add missing `YOSYS_NAMESPACE_PREFIX` to fix callers of `NEW_ID` that aren't in the Yosys namespace
2025-11-14 14:06:15 +01:00
Emil J. Tywoniak c48bc56f4a driver: fix timing data divison by zero when no passes run 2025-11-13 14:10:52 +01:00
Emil J. Tywoniak 1dd5b150e5 driver: garbage collect IdStrings without tracing at exit 2025-11-13 14:10:52 +01:00
Robert O'Callahan ead0f922e1 Add missing YOSYS_NAMESPACE_PREFIX to fix callers of NEW_ID that aren't in the Yosys namespace 2025-11-12 22:29:54 +00:00
Emil J. Tywoniak 8c76f93fce rtlil: make tracing optional in IdString garbage collection 2025-11-12 20:22:30 +01:00
Emil J. Tywoniak 1ee4fc9d27 fix YOSYS_XTRACE_GET_PUT 2025-11-12 20:20:51 +01:00
Emil J. Tywoniak 50bfb5c5c9 constids: add $input_port and $connect 2025-11-12 20:19:42 +01:00
Robert O'Callahan 578d658871 Add timing stats for IdString garbage collection 2025-11-12 11:52:04 +01:00
Robert O'Callahan df8444c5e7 Optimize IdString operations to avoid calling c_str() 2025-11-12 11:52:04 +01:00
Robert O'Callahan e95ed7bbab Make NEW_ID create IDs whose string allocation is delayed 2025-11-12 11:52:04 +01:00
Robert O'Callahan 8895757364 Ensure that `new_id(_suffix)()` cannot create collisions with existing `IdString`s. 2025-11-12 11:52:04 +01:00
Robert O'Callahan 9577a028c8 Make new_id/new_id_suffix taking string_view to avoid allocating strings 2025-11-12 11:52:04 +01:00
Robert O'Callahan b3f3f42577 Remove StaticIdString and just use IdString now that we can make it constexpr 2025-11-12 11:52:04 +01:00
Robert O'Callahan b0e2d75dbe Make IdString refcounts a hashtable containing only the nonzero refcounts
This saves space and doesn't cost very much since we hardly ever have nonzero refcounts any more.

It also allows for IdStrings with negative indexes, which we're going to add.
2025-11-12 11:52:04 +01:00
Robert O'Callahan 54bde15329 Implement IdString garbage collection instead of refcounting. 2025-11-12 11:52:04 +01:00
Robert O'Callahan 5133b4bdea Create RTLIL::OwningIdString and use it in a few places 2025-11-12 11:52:04 +01:00
Robert O'Callahan d28f97e9da Remove YOSYS_USE_STICKY_IDS 2025-11-12 11:52:04 +01:00
Robert O'Callahan 0fe79ce01b Make RTLIL::Design::get_all_designs() unconditionally defined 2025-11-12 11:52:04 +01:00
Robert O'Callahan e84bc3c6c5 Remove explicit empty-string check when looking up IdStrings 2025-11-12 11:52:04 +01:00
Robert O'Callahan 20639906e3 Store IdString lengths and use them 2025-11-12 11:52:04 +01:00