librelane 3.0.0.dev23__py3-none-any.whl → 3.0.0.dev25__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of librelane might be problematic. Click here for more details.

librelane/steps/pyosys.py CHANGED
@@ -122,16 +122,11 @@ verilog_rtl_cfg_vars = [
122
122
  "Key-value pairs to be `chparam`ed in Yosys, in the format `key1=value1`.",
123
123
  ),
124
124
  Variable(
125
- "USE_SYNLIG",
125
+ "USE_SLANG",
126
126
  bool,
127
- "Use the Synlig plugin to process files, which has better SystemVerilog parsing capabilities but may not be compatible with all Yosys commands and attributes.",
128
- default=False,
129
- ),
130
- Variable(
131
- "SYNLIG_DEFER",
132
- bool,
133
- "Uses -defer flag when reading files the Synlig plugin, which may improve performance by reading each file separately, but is experimental.",
127
+ "Use the Slang frontend to process files, which has better SystemVerilog parsing capabilities but is not as battle-tested as the default Yosys friend.",
134
128
  default=False,
129
+ deprecated_names=["USE_SYNLIG"],
135
130
  ),
136
131
  ]
137
132
 
@@ -216,6 +211,10 @@ class PyosysStep(Step):
216
211
  ),
217
212
  ]
218
213
 
214
+ @classmethod
215
+ def get_yosys_path(Self) -> str:
216
+ return os.getenv("_LLN_OVERRIDE_YOSYS", "yosys")
217
+
219
218
  @abstractmethod
220
219
  def get_script_path(self) -> str:
221
220
  pass
@@ -223,7 +222,7 @@ class PyosysStep(Step):
223
222
  def get_command(self, state_in: State) -> List[str]:
224
223
  script_path = self.get_script_path()
225
224
  # HACK: Get Colab working
226
- yosys_bin = "yosys"
225
+ yosys_bin = self.get_yosys_path()
227
226
  if "google.colab" in sys.modules:
228
227
  yosys_bin = shutil.which("yosys") or "yosys"
229
228
  cmd = [yosys_bin, "-y", script_path]
@@ -497,6 +496,12 @@ class SynthesisCommon(VerilogStep):
497
496
  "If true, Verilog-2001 attributes are omitted from output netlists. Some utilities do not support attributes.",
498
497
  default=True,
499
498
  ),
499
+ Variable(
500
+ "SYNTH_NORMALIZE_SINGLE_BIT_VECTORS",
501
+ bool,
502
+ "If true, vectors with the shape [0:0] are converted to normal wires in the netlist. If disabled, even one-width pins will be suffixed [0] in the layout when imported by most PnR tools.",
503
+ default=True,
504
+ ),
500
505
  # Variable(
501
506
  # "SYNTH_SDC_FILE",
502
507
  # Optional[Path],
librelane/steps/yosys.py CHANGED
@@ -19,7 +19,13 @@ from typing import List, Literal, Optional, Set, Tuple
19
19
 
20
20
  from .tclstep import TclStep
21
21
  from .step import ViewsUpdate, MetricsUpdate, Step
22
- from .pyosys import JsonHeader, verilog_rtl_cfg_vars, Synthesis, VHDLSynthesis
22
+ from .pyosys import (
23
+ PyosysStep,
24
+ JsonHeader,
25
+ verilog_rtl_cfg_vars,
26
+ Synthesis,
27
+ VHDLSynthesis,
28
+ )
23
29
 
24
30
  from ..config import Variable, Config
25
31
  from ..state import State, DesignFormat
@@ -210,9 +216,17 @@ class YosysStep(TclStep):
210
216
  ),
211
217
  ]
212
218
 
219
+ @classmethod
220
+ def get_yosys_path(Self) -> str:
221
+ return PyosysStep.get_yosys_path()
222
+
223
+ @abstractmethod
224
+ def get_script_path(self) -> str:
225
+ pass
226
+
213
227
  def get_command(self) -> List[str]:
214
228
  script_path = self.get_script_path()
215
- cmd = ["yosys", "-c", script_path]
229
+ cmd = [self.get_yosys_path(), "-c", script_path]
216
230
  if self.config["YOSYS_LOG_LEVEL"] != "ALL":
217
231
  cmd += ["-Q"]
218
232
  if self.config["YOSYS_LOG_LEVEL"] == "WARNING":
@@ -221,10 +235,6 @@ class YosysStep(TclStep):
221
235
  cmd += ["-qq"]
222
236
  return cmd
223
237
 
224
- @abstractmethod
225
- def get_script_path(self) -> str:
226
- pass
227
-
228
238
  def run(self, state_in: State, **kwargs) -> Tuple[ViewsUpdate, MetricsUpdate]:
229
239
  power_defines = False
230
240
  if "power_defines" in kwargs:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: librelane
3
- Version: 3.0.0.dev23
3
+ Version: 3.0.0.dev25
4
4
  Summary: An infrastructure for implementing chip design flows
5
5
  Home-page: https://github.com/librelane/librelane
6
6
  License: Apache-2.0
@@ -17,16 +17,16 @@ librelane/common/toolbox.py,sha256=ijR__rVqQ_nJtfm34H-VdSCIeArKns7lVAc1TcTUSsQ,2
17
17
  librelane/common/tpe.py,sha256=Txj0fVscXSDJTYmEKZ2ESFHOeqrhHnaPPiwWBgyx4g8,1285
18
18
  librelane/common/types.py,sha256=oclAQkeluz_iopI_28clHzxvac7gN5moT8Rzipy5mgM,3468
19
19
  librelane/config/__init__.py,sha256=lbJmD5CbrrrnaNdIUWqFIK488ea0uyej3iExh-9mkgE,1107
20
- librelane/config/__main__.py,sha256=6KSXxM4qNE2yJhizUsF1kdMsY1kY7hLHoPoz50POsS8,4532
20
+ librelane/config/__main__.py,sha256=Uhma2IQdvDTJiZs9ZIQA7r9zWSq7fZR-19P9UJWQclA,4476
21
21
  librelane/config/config.py,sha256=bAxB0qpw95YoLGmMjvxAwrX1hcpHRvNhH7wjQdyW-DE,35031
22
22
  librelane/config/flow.py,sha256=RS8uspcrepl8GT5SsWrBQ-kmssO4c15_lrc2nBPVK5M,16482
23
23
  librelane/config/pdk_compat.py,sha256=ofqYuD-MgTcfvPVXpGJo8H1GKzCvN6sxHsK_OqCVXa8,12870
24
24
  librelane/config/preprocessor.py,sha256=ATi29SHz0_OBq1IqUkGxvhHUDKB5z5jO0KqvoQXg8R8,14913
25
- librelane/config/removals.py,sha256=lJ0xpkCqnZAdA_ug4yq0NDjRBFuw4XsdORwymbEVGyQ,2907
26
- librelane/config/variable.py,sha256=5TLqeyLlGciuxzce5_vTUMy1MxZsI2XG2B0o2spGV30,26242
25
+ librelane/config/removals.py,sha256=vxqTuRTJ0jt2TX4KmFZCZPTwghDFkCVjIhF2iReHwJA,2958
26
+ librelane/config/variable.py,sha256=v92bVwy11LgS53gYhU9DBwOUABc2XMGqEglqTORpPfc,26269
27
27
  librelane/container.py,sha256=3KHxs3dUSVUZVYsS6fsA7dD3Q4QEQEzRxgXZZh9dzi0,7554
28
28
  librelane/env_info.py,sha256=vAE9AZ_vDFLt7Srtg4ZywPzE6vgVhCrIvg8PP25-BJ8,10460
29
- librelane/examples/spm/config.yaml,sha256=YKBm0lsY3AJZNcxAh1sQ1QMmJeVCpOpil6dw_RgQh4c,633
29
+ librelane/examples/spm/config.yaml,sha256=H2ERY4xoIeXN7kM3N9yGWiFBbtByyaN2Ni1kFqYPtO4,612
30
30
  librelane/examples/spm/pin_order.cfg,sha256=-8mTGFKnES0vhQATfaE2TXN_mdCZ3SZIN90Src1l6fY,52
31
31
  librelane/examples/spm/src/impl.sdc,sha256=wP18UoVlOJ9q4lmUoa3XpgcpPdyzEqHBNxCgOOU7QH0,2961
32
32
  librelane/examples/spm/src/signoff.sdc,sha256=uiW143QNFig2vw3tXdC0LEtd59_pzsuaBDdgtMGB48Q,2694
@@ -35,7 +35,7 @@ librelane/examples/spm/verify/spm_tb.v,sha256=FJfUnnI7u4SDcrnKXK0QWd9KSpM-fjH2ni
35
35
  librelane/examples/spm-user_project_wrapper/SPM_example.v,sha256=pSpVqH0LSzWHDcNCqehPik1GRQbw57fXqWZctITnWmY,8430
36
36
  librelane/examples/spm-user_project_wrapper/base_sdc_file.sdc,sha256=O6dbdMWNR1AKi3bdHcYRqMs89angq2eWSBxzSR3R_Pg,7247
37
37
  librelane/examples/spm-user_project_wrapper/config-tut.json,sha256=g6NBPVNZifToYeT5yU9Em8yv6TsUUD8JMsIvsGGN0bI,254
38
- librelane/examples/spm-user_project_wrapper/config.json,sha256=Whifv8K2ydE6UGbVfaHyZXbMtfuGX88mhGhsTheXMVU,363
38
+ librelane/examples/spm-user_project_wrapper/config.json,sha256=BBfnaAQ1VFabzurQDGcHGTgLkFudKL2-RdB3pIZrZ5Q,448
39
39
  librelane/examples/spm-user_project_wrapper/defines.v,sha256=TUfuwmRFiUCjY6MdWJLGr0LWiuyoPpH1UeBbacDqFDI,2236
40
40
  librelane/examples/spm-user_project_wrapper/template.def,sha256=7kl9l-oh4BDKuFHhp2yzk-ObUcrvvUVwPkqsMG0ZTds,438993
41
41
  librelane/examples/spm-user_project_wrapper/user_project_wrapper.v,sha256=zc6GC583muuWtzw3p6v_B1k8j-Oo9WypuQf_8doA4uo,3364
@@ -96,7 +96,7 @@ librelane/scripts/odbpy/lefutil.py,sha256=XhfWSGHdn96yZWYQAPisgJM0iuY3xw4SW7jmMT
96
96
  librelane/scripts/odbpy/placers.py,sha256=mgy_-GYeLDPMG41YAopMTtJyCHP6ucJRk7cJzI9PLRQ,4572
97
97
  librelane/scripts/odbpy/power_utils.py,sha256=al12uMiv8G0yQZOPKXNHYQ1dm2KGlu9xigSuYLEAo_A,14627
98
98
  librelane/scripts/odbpy/random_place.py,sha256=TEsV4LtXQTP8OJvnBh09Siu9fKkwG9UpIkCkQpdXAgU,1649
99
- librelane/scripts/odbpy/reader.py,sha256=5-hpG3TgmKwJtnbEDQoAPejeDx1QyRBRbIMULMkBesM,8539
99
+ librelane/scripts/odbpy/reader.py,sha256=XHHZr3e9Esz4T5j35vYXHsURyRepUEb3CmNG46Uec8I,8541
100
100
  librelane/scripts/odbpy/remove_buffers.py,sha256=f-kGZIPnMtu4gnl2r2CDkng8U8vUMJKJWNV_akOpc38,5460
101
101
  librelane/scripts/odbpy/snap_to_grid.py,sha256=lULRWlcYXvrTBUpemUPlpO2dBnbFeriuG-DlI4KnViE,1743
102
102
  librelane/scripts/odbpy/wire_lengths.py,sha256=pSPhVnLlvcvmgEh89G8nu8DRaZVP66r-4ieVoV3zrm4,2737
@@ -107,10 +107,10 @@ librelane/scripts/openroad/buffer_list.tcl,sha256=sXygy1KRSUS4dZi1UOpBkGGOuXRVLM
107
107
  librelane/scripts/openroad/common/dpl.tcl,sha256=T_rzoZy8i7S9C92TOmiN79w0MCfudafEhkXcHmB1BAM,920
108
108
  librelane/scripts/openroad/common/dpl_cell_pad.tcl,sha256=KWVuj8u1-y3ZUiQr48TAsFv1GSzOCVnAjdqfBjtoQxQ,1066
109
109
  librelane/scripts/openroad/common/grt.tcl,sha256=2qDLSj8lKKEJHH9V9npiSMXQdsIsIHE0DVmbVRStbk4,1132
110
- librelane/scripts/openroad/common/io.tcl,sha256=Osl_8qvBxfXcHlWBsYE9IC0Oisu_SjG1puiyY4ULmyw,22207
111
- librelane/scripts/openroad/common/pdn_cfg.tcl,sha256=KnQAxzlL_261Kp4M02cQ6usZHIRNBj56SAZNn1CqrZc,4552
110
+ librelane/scripts/openroad/common/io.tcl,sha256=fAoRoz6E9iwanFsWvaO50T1xGF6CSuxw38O6MtgrZ1w,22756
111
+ librelane/scripts/openroad/common/pdn_cfg.tcl,sha256=8xTK4_her0hcaxySKpXKlQIIe0goetTcJlSEBl88qL0,4417
112
112
  librelane/scripts/openroad/common/resizer.tcl,sha256=OhjpVxw_8IOx5Bmh2_gh_EIHxKaX84NS37Of9Rlchpw,2255
113
- librelane/scripts/openroad/common/set_global_connections.tcl,sha256=M-3OdAbGQXx7BrTyRIuh9c8m0ajnaWgiqrcmuZg68nk,2920
113
+ librelane/scripts/openroad/common/set_global_connections.tcl,sha256=jxafLD-2SLciJYeueobrlJYetnfAfK0P5uMLwhaTQco,2927
114
114
  librelane/scripts/openroad/common/set_layer_adjustments.tcl,sha256=xqAIDXsTa1_JsGmKXf6eG2Rni2EZSilSsHfJAhCl1xY,1037
115
115
  librelane/scripts/openroad/common/set_power_nets.tcl,sha256=_2n2AKl8UTh9-KeUOOwKaeyRw_4zi1Ifgh8oa9HIWc4,1253
116
116
  librelane/scripts/openroad/common/set_rc.tcl,sha256=oJJCQG9RvAltgB5KTFsJcCzVvwUIkXeI7KJehCEWex0,7224
@@ -118,54 +118,54 @@ librelane/scripts/openroad/common/set_routing_layers.tcl,sha256=fCQsIjcFRsHJPFQv
118
118
  librelane/scripts/openroad/cts.tcl,sha256=703n6gGekpOXbRhr390DSBIo4h7qNlHUd-Amai4pGgk,3888
119
119
  librelane/scripts/openroad/cut_rows.tcl,sha256=8RN4_muN1FXkXCU1VGVI_nox3BQNVGVNlQn_21HRCKM,1403
120
120
  librelane/scripts/openroad/dpl.tcl,sha256=U5iTPBf7H4w3cmCM8-yTjLTVr8npwc5G7hVuszljCVc,777
121
- librelane/scripts/openroad/drt.tcl,sha256=CtPVi51t3EEDUB3-UBBrE6faP6bf56TVvJHSsjcwWFw,3108
121
+ librelane/scripts/openroad/drt.tcl,sha256=xIBTKJ1HwcvsVCLZW5nMkK6JV7wIskSw9CTHNEqOXcE,3138
122
122
  librelane/scripts/openroad/dump_rc.tcl,sha256=R0EaQqpu23TABO9b5LwwpuafdcCOvaN7jpH6PiLG2Wg,4365
123
123
  librelane/scripts/openroad/fill.tcl,sha256=djxPglVtei5Wfi5cStdnowVNysXZ331R0rWT5tT1lVk,976
124
- librelane/scripts/openroad/floorplan.tcl,sha256=Jpv7GL7hP8g4VCHYx0pLl11hfGJBx26WoAvEKYMYGvI,5487
124
+ librelane/scripts/openroad/floorplan.tcl,sha256=1l8GMyJaUIbvI7dr6OIpZ3NM5xQEb-MFgRRfapwVvjE,5738
125
125
  librelane/scripts/openroad/gpl.tcl,sha256=WzxlyikUf70Q1FgaE6sIVvquYPZ8RU02_te1VBsAd5U,2614
126
126
  librelane/scripts/openroad/grt.tcl,sha256=r_73hbvc4wMi2EFoPbGTh29Lh5ATT4vVwKjxyPIOFcM,1022
127
127
  librelane/scripts/openroad/gui.tcl,sha256=BhKTcYEo-SajnYtdzXqpzjYbczy0qZ-OvEFlHMjPtlU,1255
128
128
  librelane/scripts/openroad/insert_buffer.tcl,sha256=ST0tbr1LoutjjaouqgngiQZudlzzHMd5APB6DTE2TGw,4412
129
- librelane/scripts/openroad/ioplacer.tcl,sha256=u7PQ8vaPKHAXeb2HNc5RZmOMc52j2LrccO0irnxDNLM,1861
129
+ librelane/scripts/openroad/ioplacer.tcl,sha256=tV-GF4ExJAKXqw-PQTf1Xlcc87xDJDLi1jksmnS1Smk,1970
130
130
  librelane/scripts/openroad/irdrop.tcl,sha256=bXhNY_87xPV-ocF9v8wOWqjlnFPaVO_6K_DWbBHAAPs,1974
131
- librelane/scripts/openroad/pdn.tcl,sha256=YlZp5T9A4ZEC5_05QXMyQuOfYtJhQ3uR2Gu3-xud9vM,1569
131
+ librelane/scripts/openroad/pdn.tcl,sha256=WiKVmLw3g_ZN1Hs4iiAzc6Qah7ZwCn6o-OA5iNmlTtY,1566
132
132
  librelane/scripts/openroad/rcx.tcl,sha256=kyEhli4sGFMEj-He9UXZDGb0Tmxlw7d6iZD7t6adUx8,1057
133
133
  librelane/scripts/openroad/repair_design.tcl,sha256=mSQKIT-uac2gJFia_xMNQtHJKD--aTI2T0gmM5mrWZA,2314
134
134
  librelane/scripts/openroad/repair_design_postgrt.tcl,sha256=sEXdFfH2le-q0ggcsWGgCR-GCFyzPdxk4P3RZyWCnpI,1902
135
135
  librelane/scripts/openroad/rsz_timing_postcts.tcl,sha256=ztDJ__R7f3eK7-xAg9SklGXqL5F1jydGPQDH7X5twNE,2553
136
136
  librelane/scripts/openroad/rsz_timing_postgrt.tcl,sha256=F6ex9Ke85YzS4z9rf8SpqCKjMyzuiQEhYYSJfkN93sM,2699
137
- librelane/scripts/openroad/sta/check_macro_instances.tcl,sha256=RYmQbLySaKekWGWLit1sCvTx6vhtwoqQZ_YhAagg_2g,1776
138
- librelane/scripts/openroad/sta/corner.tcl,sha256=Vt_Qg60GddXs6HUBcgMu5iPE_v93mbH0L-sqVqI7Z9A,15209
137
+ librelane/scripts/openroad/sta/check_macro_instances.tcl,sha256=j8DlW1wkVk5bLbG7R4LL_-YcjetxmJKijXDD_q2fpqs,1797
138
+ librelane/scripts/openroad/sta/corner.tcl,sha256=0YAzHFGbs4zRsB5E7e8zdzFyLuzrpV1w_S2BgrLfqak,15235
139
139
  librelane/scripts/openroad/tapcell.tcl,sha256=4Ouy5U-_ct5Cfy3vuLQudWL0c1xWF_auLsr9rYh6dP4,1177
140
140
  librelane/scripts/openroad/ungpl.tcl,sha256=vhHxou1W3VROwJePoQzmWn0h0d5lQrrt1vofyt-Woek,761
141
141
  librelane/scripts/openroad/write_views.tcl,sha256=-MxTJsB4EF7l5trDaZe-VBFjhfzqRt8F5_DZrADTs0U,892
142
142
  librelane/scripts/pyosys/construct_abc_script.py,sha256=3CCDz5ZTEPpWLco-OvikTmn361-BNitqjQE_-5zHm14,6733
143
- librelane/scripts/pyosys/json_header.py,sha256=2_oBI0HE6BgLYOJUVUPv-Lvz97csLndWLE6q5A8zgYw,2362
144
- librelane/scripts/pyosys/synthesize.py,sha256=4SztMSmcUFAoxahg_Z_oerGb3BMbwecmKRJ_WWGL9jw,16879
145
- librelane/scripts/pyosys/ys_common.py,sha256=mOni8WmKMNuLWsLRNcE15rcqCxGR1kf-9ckvIx-EzHY,4432
143
+ librelane/scripts/pyosys/json_header.py,sha256=C1BmKFRbwMknXV_RVp5QGbAxCwU6ElE6UIGRZceHQpI,2315
144
+ librelane/scripts/pyosys/synthesize.py,sha256=2NZWdtskSRGUGghYLkw-LGdEH_IL9Vfl3NUD2GR3Kdk,16910
145
+ librelane/scripts/pyosys/ys_common.py,sha256=t5LLEYoy4cfCIeEaAo8Nr51rXtlI8ZPe1h_kSbrky5M,3891
146
146
  librelane/scripts/tclsh/hello.tcl,sha256=kkR3akY7QnGHYXsQODYwLkMkUEOgWcNFtzaMTTEV2bY,34
147
147
  librelane/state/__init__.py,sha256=DZ_RyKMr2oj4p5d32u8MmDKfCxR7OEdDw-1HWKTpatA,949
148
148
  librelane/state/__main__.py,sha256=Ici4Ejg1ICUZNSYZRguC3BfEk_wFxsmE0ag0Vv8iY1I,1679
149
- librelane/state/design_format.py,sha256=kOLMn2pqTO8NtTypSvLPwuCSa8Zw5hGKN8UORvV2HHg,6328
149
+ librelane/state/design_format.py,sha256=75-XXzCfk5HUAJQAcdpwiHYkweeR9NwaXKtubCV0dqg,6461
150
150
  librelane/state/state.py,sha256=3CdihPR6lryQMt8ihSef0O2F8-qaqy1w7V0wiwie3nk,11710
151
151
  librelane/steps/__init__.py,sha256=j3JYrdnWM74dYuEvE931oSrQI7FUz-hKWr8Mts8C0wg,1668
152
152
  librelane/steps/__main__.py,sha256=GviXtDLISKJCufKxK3oFPOSMF1GyShZbG5RXpVCYFkk,13376
153
153
  librelane/steps/checker.py,sha256=HD5YFPAbHQKsFmBDrIAbo_0clZcCszNhIXb4lHaNIeQ,21629
154
- librelane/steps/common_variables.py,sha256=XPNEvrojD-6oIvxgo55mi2lKmARWyYq-PtY1_c_0ZUs,10318
154
+ librelane/steps/common_variables.py,sha256=eih2eA1m0FpL8ydF5WWattwh_SxtzI55eb8gggJtBuY,12494
155
155
  librelane/steps/cvc_rv.py,sha256=TNnEQDJI5tEUq8OQelVmBWmNbLzygrvKsZ36utKDvp4,5543
156
156
  librelane/steps/klayout.py,sha256=EFtzu53bWm-Bg_xEovdR7fc1GbWTwqkcivtr1rivHWU,16615
157
157
  librelane/steps/magic.py,sha256=Xtsy1KWu8dcNq3pRlqM9WRRxtwbCQJq24IyxC0W8D2o,20254
158
158
  librelane/steps/misc.py,sha256=8ubCvFeFEspXrgnzNWINY5-TXTyalNtlvcX8TSw0qdg,5685
159
159
  librelane/steps/netgen.py,sha256=R9sDWv-9wKMdi2rkuLQdOc4uLlbYhXcKKd6WsZsnLt0,8953
160
- librelane/steps/odb.py,sha256=rEvlmZmMxeAh5bg_xBCiyOpnaqjvZOOmQQeEWDU6j-0,39144
161
- librelane/steps/openroad.py,sha256=LDXVqp9jr9KxhD4oQxjXtijH9JIiaDC7nxdSJvoqKTw,99726
160
+ librelane/steps/odb.py,sha256=SD5m1ulI2f1LB0_0oKanY9Yql9YpKGolMqtfXun2xTY,38498
161
+ librelane/steps/openroad.py,sha256=quPV082y__la4YgRKfB4wFslcn9E9nEDUSgSIlE3yRo,99340
162
162
  librelane/steps/openroad_alerts.py,sha256=IJyB4piBDCKXhkJswHGMYCRDwbdQsR0GZlrGGDhmW6Q,3364
163
- librelane/steps/pyosys.py,sha256=ASNuA_V-cCEka4I5FX4-2nQ0r3KgDXbxbNrnXpzxll4,23099
163
+ librelane/steps/pyosys.py,sha256=LY7qqxkhjfoyBBR7vdkm7ylabbxMJDwIoYm7mAUbLVY,23348
164
164
  librelane/steps/step.py,sha256=T5z0Nm5z-fq_qj3BIwchnfUobmxX67cEmZ-5dUYT76s,55163
165
165
  librelane/steps/tclstep.py,sha256=YwyiSXAjRIflH2vzYvTzYfN4FyAI8Td9B_CKLkBj08o,10084
166
166
  librelane/steps/verilator.py,sha256=MWx2TpLqYyea9_jSeLG9c2S5ujvYERQZRFNaMhfHxZE,7916
167
- librelane/steps/yosys.py,sha256=LYXd5ntLbnMPEFfJiMcUumgmaqw9ZTr14Ss5Dw4fyyc,12545
168
- librelane-3.0.0.dev23.dist-info/METADATA,sha256=XDd5PZJA8kyc72hNxux8wFEJnqdqxluvVWv_hcZpCs0,6561
169
- librelane-3.0.0.dev23.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
170
- librelane-3.0.0.dev23.dist-info/entry_points.txt,sha256=GTBvXykNMMFsNKiJFgtEw7P1wb_VZIqVM35EFSpyZQE,263
171
- librelane-3.0.0.dev23.dist-info/RECORD,,
167
+ librelane/steps/yosys.py,sha256=uC72fb1yFXyIxrtcRu5DxxR3hadG19SlGh668yjhWHc,12694
168
+ librelane-3.0.0.dev25.dist-info/METADATA,sha256=jBuGDi3vE2DO6eXdV0UE5_PDXxN5SErWVZePiZEfmmA,6561
169
+ librelane-3.0.0.dev25.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
170
+ librelane-3.0.0.dev25.dist-info/entry_points.txt,sha256=GTBvXykNMMFsNKiJFgtEw7P1wb_VZIqVM35EFSpyZQE,263
171
+ librelane-3.0.0.dev25.dist-info/RECORD,,