siliconcompiler 0.35.2__py3-none-any.whl → 0.35.3__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.
- siliconcompiler/_metadata.py +1 -1
- siliconcompiler/apps/smake.py +106 -100
- siliconcompiler/flowgraph.py +418 -129
- siliconcompiler/library.py +5 -4
- siliconcompiler/package/https.py +10 -5
- siliconcompiler/project.py +83 -32
- siliconcompiler/remote/client.py +17 -6
- siliconcompiler/scheduler/scheduler.py +204 -55
- siliconcompiler/scheduler/schedulernode.py +63 -70
- siliconcompiler/schema/__init__.py +3 -2
- siliconcompiler/schema/_metadata.py +1 -1
- siliconcompiler/schema/baseschema.py +205 -93
- siliconcompiler/schema/namedschema.py +21 -13
- siliconcompiler/schema/safeschema.py +18 -7
- siliconcompiler/schema_support/dependencyschema.py +4 -3
- siliconcompiler/schema_support/pathschema.py +7 -2
- siliconcompiler/schema_support/record.py +5 -4
- siliconcompiler/targets/asap7_demo.py +4 -1
- siliconcompiler/tool.py +9 -4
- siliconcompiler/tools/builtin/__init__.py +2 -0
- siliconcompiler/tools/builtin/filter.py +8 -1
- siliconcompiler/tools/builtin/importfiles.py +2 -0
- siliconcompiler/tools/klayout/scripts/klayout_show.py +1 -1
- siliconcompiler/tools/klayout/show.py +17 -5
- siliconcompiler/tools/yosys/prepareLib.py +7 -2
- siliconcompiler/tools/yosys/syn_asic.py +20 -2
- siliconcompiler/toolscripts/_tools.json +4 -4
- {siliconcompiler-0.35.2.dist-info → siliconcompiler-0.35.3.dist-info}/METADATA +2 -2
- {siliconcompiler-0.35.2.dist-info → siliconcompiler-0.35.3.dist-info}/RECORD +33 -33
- {siliconcompiler-0.35.2.dist-info → siliconcompiler-0.35.3.dist-info}/WHEEL +0 -0
- {siliconcompiler-0.35.2.dist-info → siliconcompiler-0.35.3.dist-info}/entry_points.txt +0 -0
- {siliconcompiler-0.35.2.dist-info → siliconcompiler-0.35.3.dist-info}/licenses/LICENSE +0 -0
- {siliconcompiler-0.35.2.dist-info → siliconcompiler-0.35.3.dist-info}/top_level.txt +0 -0
|
@@ -2,7 +2,7 @@ import os.path
|
|
|
2
2
|
|
|
3
3
|
from typing import Dict, Union, Tuple, List, Optional, Set
|
|
4
4
|
|
|
5
|
-
from siliconcompiler.schema.baseschema import BaseSchema
|
|
5
|
+
from siliconcompiler.schema.baseschema import BaseSchema, LazyLoad
|
|
6
6
|
from siliconcompiler.schema.editableschema import EditableSchema
|
|
7
7
|
from siliconcompiler.schema.parameter import Parameter, Scope
|
|
8
8
|
from siliconcompiler.schema.namedschema import NamedSchema
|
|
@@ -33,7 +33,8 @@ class DependencySchema(BaseSchema):
|
|
|
33
33
|
|
|
34
34
|
def _from_dict(self, manifest: Dict,
|
|
35
35
|
keypath: Union[List[str], Tuple[str, ...]],
|
|
36
|
-
version: Optional[Tuple[int, ...]] = None
|
|
36
|
+
version: Optional[Tuple[int, ...]] = None,
|
|
37
|
+
lazyload: LazyLoad = LazyLoad.ON) \
|
|
37
38
|
-> Tuple[Set[Tuple[str, ...]], Set[Tuple[str, ...]]]:
|
|
38
39
|
'''
|
|
39
40
|
Internal helper to load schema from a dictionary manifest.
|
|
@@ -50,7 +51,7 @@ class DependencySchema(BaseSchema):
|
|
|
50
51
|
The result of the parent class's _from_dict method.
|
|
51
52
|
'''
|
|
52
53
|
self.set("deps", False, field="lock")
|
|
53
|
-
ret = super()._from_dict(manifest, keypath, version)
|
|
54
|
+
ret = super()._from_dict(manifest, keypath, version=version, lazyload=lazyload)
|
|
54
55
|
self.set("deps", True, field="lock")
|
|
55
56
|
return ret
|
|
56
57
|
|
|
@@ -392,7 +392,8 @@ class PathSchema(PathSchemaBase):
|
|
|
392
392
|
resolver = Resolver.find_resolver(path)
|
|
393
393
|
return resolver(name, schema._parent(root=True), path, tag).get_path()
|
|
394
394
|
|
|
395
|
-
def _find_files_dataroot_resolvers(self
|
|
395
|
+
def _find_files_dataroot_resolvers(self, resolvers: bool = False) \
|
|
396
|
+
-> Dict[str, Union[str, Callable]]:
|
|
396
397
|
"""
|
|
397
398
|
Returns a dictionary of path resolvers data directory handling for find_files
|
|
398
399
|
|
|
@@ -410,7 +411,11 @@ class PathSchema(PathSchemaBase):
|
|
|
410
411
|
path = BaseSchema.get(schema, "dataroot", dataroot, "path")
|
|
411
412
|
tag = BaseSchema.get(schema, "dataroot", dataroot, "tag")
|
|
412
413
|
resolver = Resolver.find_resolver(path)
|
|
413
|
-
|
|
414
|
+
resolver_obj = resolver(dataroot, schema_root, path, tag)
|
|
415
|
+
if resolvers:
|
|
416
|
+
resolver_map[dataroot] = resolver_obj
|
|
417
|
+
else:
|
|
418
|
+
resolver_map[dataroot] = resolver_obj.get_path
|
|
414
419
|
return resolver_map
|
|
415
420
|
|
|
416
421
|
@contextlib.contextmanager
|
|
@@ -12,7 +12,7 @@ from typing import Dict, Union, List, Optional, Set, Tuple
|
|
|
12
12
|
from datetime import datetime, timezone
|
|
13
13
|
from enum import Enum
|
|
14
14
|
|
|
15
|
-
from siliconcompiler.schema import BaseSchema
|
|
15
|
+
from siliconcompiler.schema import BaseSchema, LazyLoad
|
|
16
16
|
from siliconcompiler.schema import EditableSchema, Parameter, PerNode, Scope
|
|
17
17
|
from siliconcompiler.schema.utils import trim
|
|
18
18
|
|
|
@@ -53,7 +53,8 @@ class RecordSchema(BaseSchema):
|
|
|
53
53
|
|
|
54
54
|
def _from_dict(self, manifest: Dict,
|
|
55
55
|
keypath: Union[List[str], Tuple[str, ...]],
|
|
56
|
-
version: Optional[Tuple[int, ...]] = None
|
|
56
|
+
version: Optional[Tuple[int, ...]] = None,
|
|
57
|
+
lazyload: LazyLoad = LazyLoad.ON) \
|
|
57
58
|
-> Tuple[Set[Tuple[str, ...]], Set[Tuple[str, ...]]]:
|
|
58
59
|
"""
|
|
59
60
|
Constructs a schema from a dictionary.
|
|
@@ -66,10 +67,10 @@ class RecordSchema(BaseSchema):
|
|
|
66
67
|
Returns:
|
|
67
68
|
dict: The constructed dictionary.
|
|
68
69
|
"""
|
|
69
|
-
ret = super()._from_dict(manifest, keypath, version)
|
|
70
|
+
ret = super()._from_dict(manifest, keypath, version=version, lazyload=lazyload)
|
|
70
71
|
|
|
71
72
|
# Correct for change specification
|
|
72
|
-
if version and version < (0, 50, 4):
|
|
73
|
+
if not lazyload.is_enforced and version and version < (0, 50, 4):
|
|
73
74
|
for timekey in RecordTime:
|
|
74
75
|
start_param = self.get(timekey.value, field=None)
|
|
75
76
|
for value, step, index in start_param.getvalues():
|
|
@@ -3,7 +3,9 @@ from siliconcompiler import ASIC
|
|
|
3
3
|
from siliconcompiler.flows import asicflow, synflow
|
|
4
4
|
|
|
5
5
|
from lambdapdk.asap7.libs.asap7sc7p5t import ASAP7SC7p5RVT, ASAP7SC7p5SLVT, ASAP7SC7p5LVT
|
|
6
|
-
from lambdapdk.asap7.libs.fakeram7 import FakeRAM7Lambdalib_SinglePort,
|
|
6
|
+
from lambdapdk.asap7.libs.fakeram7 import FakeRAM7Lambdalib_SinglePort, \
|
|
7
|
+
FakeRAM7Lambdalib_DoublePort, \
|
|
8
|
+
FakeRAM7Lambdalib_TrueDoublePort
|
|
7
9
|
from lambdapdk.asap7.libs.fakeio7 import FakeIO7Lambdalib_IO
|
|
8
10
|
|
|
9
11
|
|
|
@@ -101,4 +103,5 @@ def asap7_demo(
|
|
|
101
103
|
# for demonstration and academic purposes.
|
|
102
104
|
FakeRAM7Lambdalib_SinglePort.alias(project)
|
|
103
105
|
FakeRAM7Lambdalib_DoublePort.alias(project)
|
|
106
|
+
FakeRAM7Lambdalib_TrueDoublePort.alias(project)
|
|
104
107
|
FakeIO7Lambdalib_IO.alias(project)
|
siliconcompiler/tool.py
CHANGED
|
@@ -35,7 +35,7 @@ from packaging.specifiers import SpecifierSet, InvalidSpecifier
|
|
|
35
35
|
from typing import List, Dict, Tuple, Union, Optional, Set, TextIO, Type, TypeVar, TYPE_CHECKING
|
|
36
36
|
from pathlib import Path
|
|
37
37
|
|
|
38
|
-
from siliconcompiler.schema import BaseSchema, NamedSchema, Journal, DocsSchema
|
|
38
|
+
from siliconcompiler.schema import BaseSchema, NamedSchema, Journal, DocsSchema, LazyLoad
|
|
39
39
|
from siliconcompiler.schema import EditableSchema, Parameter, PerNode, Scope
|
|
40
40
|
from siliconcompiler.schema.parametertype import NodeType
|
|
41
41
|
from siliconcompiler.schema.utils import trim
|
|
@@ -147,13 +147,14 @@ class Task(NamedSchema, PathSchema, DocsSchema):
|
|
|
147
147
|
|
|
148
148
|
def _from_dict(self, manifest: Dict,
|
|
149
149
|
keypath: Union[List[str], Tuple[str, ...]],
|
|
150
|
-
version: Optional[Tuple[int, ...]] = None
|
|
150
|
+
version: Optional[Tuple[int, ...]] = None,
|
|
151
|
+
lazyload: LazyLoad = LazyLoad.ON) \
|
|
151
152
|
-> Tuple[Set[Tuple[str, ...]], Set[Tuple[str, ...]]]:
|
|
152
153
|
"""
|
|
153
154
|
Populates the schema from a dictionary, dynamically adding 'var'
|
|
154
155
|
parameters found in the manifest that are not already defined.
|
|
155
156
|
"""
|
|
156
|
-
if "var" in manifest:
|
|
157
|
+
if not lazyload.is_enforced and "var" in manifest:
|
|
157
158
|
# Collect existing and manifest var keys
|
|
158
159
|
var_keys = [k[0] for k in self.allkeys("var")]
|
|
159
160
|
manifest_keys = set(manifest["var"].keys())
|
|
@@ -171,7 +172,7 @@ class Task(NamedSchema, PathSchema, DocsSchema):
|
|
|
171
172
|
if not manifest["var"]:
|
|
172
173
|
del manifest["var"]
|
|
173
174
|
|
|
174
|
-
return super()._from_dict(manifest, keypath, version)
|
|
175
|
+
return super()._from_dict(manifest, keypath, version=version, lazyload=lazyload)
|
|
175
176
|
|
|
176
177
|
@contextlib.contextmanager
|
|
177
178
|
def runtime(self, node: "SchedulerNode",
|
|
@@ -813,6 +814,10 @@ class Task(NamedSchema, PathSchema, DocsSchema):
|
|
|
813
814
|
schema = root.copy()
|
|
814
815
|
|
|
815
816
|
for keypath in root.allkeys():
|
|
817
|
+
if keypath[0] == "history":
|
|
818
|
+
# Ignore history as this is not relevant to the task
|
|
819
|
+
continue
|
|
820
|
+
|
|
816
821
|
paramtype: str = schema.get(*keypath, field='type')
|
|
817
822
|
if 'file' not in paramtype and 'dir' not in paramtype:
|
|
818
823
|
continue
|
|
@@ -50,14 +50,21 @@ class FilterTask(Task):
|
|
|
50
50
|
def setup(self):
|
|
51
51
|
super().setup()
|
|
52
52
|
|
|
53
|
+
self.set_threads(1)
|
|
54
|
+
|
|
55
|
+
flow = self.project.get("flowgraph", self.project.option.get_flow(), field="schema")
|
|
56
|
+
graph_node = flow.get_graph_node(self.step, self.index)
|
|
57
|
+
|
|
53
58
|
if self.get("var", "keep"):
|
|
54
59
|
self.add_required_key("var", "keep")
|
|
60
|
+
elif graph_node.get_args():
|
|
61
|
+
self.add_required_key(graph_node, "args")
|
|
55
62
|
|
|
56
63
|
files = sorted(list(self.get_files_from_input_nodes().keys()))
|
|
57
64
|
if not files:
|
|
58
65
|
raise ValueError("task receives no files")
|
|
59
66
|
|
|
60
|
-
filters: List[str] = self.get("var", "keep")
|
|
67
|
+
filters: List[str] = self.get("var", "keep") or graph_node.get_args()
|
|
61
68
|
if not filters:
|
|
62
69
|
filters = ["*"]
|
|
63
70
|
|
|
@@ -250,7 +250,7 @@ def main():
|
|
|
250
250
|
sc_filename = schema.get('tool', 'klayout', 'task', task, 'var', 'showfilepath',
|
|
251
251
|
step=step, index=index)
|
|
252
252
|
else:
|
|
253
|
-
for ext in (f'{sc_fileext}.gz', sc_fileext):
|
|
253
|
+
for ext in (f'{sc_fileext}.gz', sc_fileext, 'gds.gz', "gds", 'oas.gz', 'oas'):
|
|
254
254
|
sc_filename = f"inputs/{design}.{ext}"
|
|
255
255
|
if os.path.exists(sc_filename):
|
|
256
256
|
break
|
|
@@ -15,6 +15,17 @@ class ShowTask(ShowTask, KLayoutTask):
|
|
|
15
15
|
|
|
16
16
|
self.set_script("klayout_show.py")
|
|
17
17
|
|
|
18
|
+
if f"{self.design_topmodule}.gds.gz" in self.get_files_from_input_nodes():
|
|
19
|
+
self.add_input_file(ext="gds.gz")
|
|
20
|
+
elif f"{self.design_topmodule}.gds" in self.get_files_from_input_nodes():
|
|
21
|
+
self.add_input_file(ext="gds")
|
|
22
|
+
elif f"{self.design_topmodule}.oas.gz" in self.get_files_from_input_nodes():
|
|
23
|
+
self.add_input_file(ext="oas.gz")
|
|
24
|
+
elif f"{self.design_topmodule}.oas" in self.get_files_from_input_nodes():
|
|
25
|
+
self.add_input_file(ext="oas")
|
|
26
|
+
else:
|
|
27
|
+
self.add_required_key("var", "showfilepath")
|
|
28
|
+
|
|
18
29
|
self.add_commandline_option(["-nc", "-rm"], clobber=True)
|
|
19
30
|
|
|
20
31
|
def get_supported_show_extentions(self):
|
|
@@ -23,8 +34,9 @@ class ShowTask(ShowTask, KLayoutTask):
|
|
|
23
34
|
def pre_process(self):
|
|
24
35
|
super().pre_process()
|
|
25
36
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
37
|
+
if self.get("var", "showfilepath"):
|
|
38
|
+
rel_path = os.path.dirname(self.get("var", "showfilepath"))
|
|
39
|
+
for ext in ('lyt', 'lyp'):
|
|
40
|
+
ext_file = os.path.join(rel_path, f'{self.design_topmodule}.{ext}')
|
|
41
|
+
if ext_file and os.path.exists(ext_file):
|
|
42
|
+
shutil.copy2(ext_file, f"inputs/{self.design_topmodule}.{ext}")
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env python3
|
|
2
2
|
# Based on https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts/blob/84545863573a90bca3612298361adb35bf39e692/flow/util/markDontUse.py # noqa E501
|
|
3
3
|
|
|
4
|
+
import bz2
|
|
4
5
|
import re
|
|
5
6
|
import gzip
|
|
6
7
|
import argparse # argument parsing
|
|
@@ -12,10 +13,14 @@ def process_liberty_file(input_file, logger=None):
|
|
|
12
13
|
logger.info(f"Opening file for replace: {input_file}")
|
|
13
14
|
if input_file.endswith(".gz") or input_file.endswith(".GZ"):
|
|
14
15
|
f = gzip.open(input_file, 'rt', encoding="utf-8")
|
|
16
|
+
elif input_file.endswith(".bz2") or input_file.endswith(".BZ2"):
|
|
17
|
+
f = bz2.open(input_file, 'rt', encoding="utf-8")
|
|
15
18
|
else:
|
|
16
19
|
f = open(input_file, encoding="utf-8")
|
|
17
|
-
|
|
18
|
-
|
|
20
|
+
try:
|
|
21
|
+
content = f.read().encode("ascii", "ignore").decode("ascii")
|
|
22
|
+
finally:
|
|
23
|
+
f.close()
|
|
19
24
|
|
|
20
25
|
# Yosys-abc throws an error if original_pin is found within the liberty file.
|
|
21
26
|
# removing
|
|
@@ -32,6 +32,18 @@ class _ASICTask(ASICTask, YosysTask):
|
|
|
32
32
|
self.add_required_key("var", "synthesis_corner")
|
|
33
33
|
self._determine_synthesis_corner()
|
|
34
34
|
|
|
35
|
+
self.add_required_key("asic", "delaymodel")
|
|
36
|
+
self.add_required_key("asic", "asiclib")
|
|
37
|
+
|
|
38
|
+
delaymodel = self.project.get("asic", "delaymodel")
|
|
39
|
+
for lib in self.project.get("asic", "asiclib"):
|
|
40
|
+
lib_obj = self.project.get("library", lib, field="schema")
|
|
41
|
+
for corner in self.get("var", "synthesis_corner"):
|
|
42
|
+
if lib_obj.get("asic", "libcornerfileset", corner, delaymodel):
|
|
43
|
+
self.add_required_key(lib_obj, "asic", "libcornerfileset", corner, delaymodel)
|
|
44
|
+
for fileset in lib_obj.get("asic", "libcornerfileset", corner, delaymodel):
|
|
45
|
+
self.add_required_key(lib_obj, "fileset", fileset, "file", "liberty")
|
|
46
|
+
|
|
35
47
|
def _determine_synthesis_corner(self):
|
|
36
48
|
if self.get("var", "synthesis_corner"):
|
|
37
49
|
return
|
|
@@ -294,8 +306,6 @@ class ASICSynthesis(_ASICTask, YosysTask):
|
|
|
294
306
|
self.set_script("sc_synth_asic.tcl")
|
|
295
307
|
|
|
296
308
|
self.add_required_key("asic", "mainlib")
|
|
297
|
-
self.add_required_key("asic", "asiclib")
|
|
298
|
-
self.add_required_key("asic", "delaymodel")
|
|
299
309
|
|
|
300
310
|
design = self.project.design
|
|
301
311
|
fileset = self.project.get("option", "fileset")[0]
|
|
@@ -330,6 +340,14 @@ class ASICSynthesis(_ASICTask, YosysTask):
|
|
|
330
340
|
self.add_required_key(mainlib, "tool", "yosys", "driver_cell")
|
|
331
341
|
self.add_required_key("var", "abc_constraint_driver")
|
|
332
342
|
self.set("var", "abc_constraint_driver", lib_driver)
|
|
343
|
+
if self.get("var", "abc_clock_period"):
|
|
344
|
+
self.add_required_key("var", "abc_clock_period")
|
|
345
|
+
else:
|
|
346
|
+
self.add_required_key(mainlib, "tool", "yosys", "abc_clock_multiplier")
|
|
347
|
+
self.add_required_key("var", "abc_clock_derating")
|
|
348
|
+
for lib, fileset in self.project.get_filesets():
|
|
349
|
+
if lib.has_file(fileset=fileset, filetype="sdc"):
|
|
350
|
+
self.add_required_key(lib, "fileset", fileset, "file", "sdc")
|
|
333
351
|
|
|
334
352
|
if mainlib.get("tool", "yosys", "tristatebuffermap"):
|
|
335
353
|
self.add_required_key(mainlib, "tool", "yosys", "tristatebuffermap")
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"openroad": {
|
|
3
3
|
"git-url": "https://github.com/The-OpenROAD-Project/OpenROAD.git",
|
|
4
|
-
"git-commit": "
|
|
4
|
+
"git-commit": "f22f811d9d338b1dbc6fe854d35b53757596449d",
|
|
5
5
|
"docker-cmds": [
|
|
6
6
|
"# Remove OR-Tools files",
|
|
7
7
|
"RUN rm -f $SC_PREFIX/Makefile $SC_PREFIX/README.md",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
},
|
|
18
18
|
"opensta": {
|
|
19
19
|
"git-url": "https://github.com/parallaxsw/OpenSTA.git",
|
|
20
|
-
"git-commit": "
|
|
20
|
+
"git-commit": "cf903f4db688e6f89d732ef28cce7b8185587201",
|
|
21
21
|
"auto-update": true
|
|
22
22
|
},
|
|
23
23
|
"netgen": {
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
},
|
|
56
56
|
"sv2v": {
|
|
57
57
|
"git-url": "https://github.com/zachjs/sv2v.git",
|
|
58
|
-
"git-commit": "
|
|
58
|
+
"git-commit": "c1ce7d067b0a7edf8d1589dcb5731265c854c490",
|
|
59
59
|
"auto-update": true
|
|
60
60
|
},
|
|
61
61
|
"verilator": {
|
|
@@ -145,7 +145,7 @@
|
|
|
145
145
|
},
|
|
146
146
|
"yosys-slang": {
|
|
147
147
|
"git-url": "https://github.com/povik/yosys-slang.git",
|
|
148
|
-
"git-commit": "
|
|
148
|
+
"git-commit": "f44908907726e684965ba71959cc147df50c0357",
|
|
149
149
|
"docker-depends": "yosys",
|
|
150
150
|
"auto-update": true
|
|
151
151
|
},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: siliconcompiler
|
|
3
|
-
Version: 0.35.
|
|
3
|
+
Version: 0.35.3
|
|
4
4
|
Summary: A compiler framework that automates translation from source code to silicon.
|
|
5
5
|
Author: Zero ASIC
|
|
6
6
|
License: Apache License 2.0
|
|
@@ -37,7 +37,7 @@ Requires-Dist: PyYAML<7.0.0,>=6.0.0
|
|
|
37
37
|
Requires-Dist: GitPython<3.2,>=3.1.44
|
|
38
38
|
Requires-Dist: PyGithub<2.9.0,>=2.8.0
|
|
39
39
|
Requires-Dist: urllib3>=1.26.0
|
|
40
|
-
Requires-Dist: lambdapdk>=0.2.
|
|
40
|
+
Requires-Dist: lambdapdk>=0.2.4
|
|
41
41
|
Requires-Dist: fasteners>=0.20
|
|
42
42
|
Requires-Dist: pandas>=1.1.5
|
|
43
43
|
Requires-Dist: psutil>=5.8.0
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
siliconcompiler/__init__.py,sha256=I1RN8BMRpuAx9tdx5CLNlpIqT-xg2EwvOB8TcqHQSN0,1114
|
|
2
2
|
siliconcompiler/_common.py,sha256=1bY1qdFxnstAyhJrkJCBhSlZ614dlmcwL0Bf7NOneyY,1047
|
|
3
|
-
siliconcompiler/_metadata.py,sha256=
|
|
3
|
+
siliconcompiler/_metadata.py,sha256=me0mZsXtXvHJUlLtY9lFoe2_NdjSmCNju4hEeNZ5CzM,1286
|
|
4
4
|
siliconcompiler/asic.py,sha256=KXs-mjFHjiCRlyUClNIb-Zvdkxa8dGafStHm-rX3vu8,28912
|
|
5
5
|
siliconcompiler/checklist.py,sha256=KOBHvSnJQCwmhP5hERABk7tHIMHdWsFBhqzTJ687ewY,24887
|
|
6
6
|
siliconcompiler/design.py,sha256=vFcenCV1Q3IVsdpeh4h9wCm4lyAfJMH5e-Oqg4Ji4sQ,34555
|
|
7
|
-
siliconcompiler/flowgraph.py,sha256=
|
|
7
|
+
siliconcompiler/flowgraph.py,sha256=OGaXd88alyrSQizHyeRPK9UkNz1fqrLg0AkIkrc70y4,63295
|
|
8
8
|
siliconcompiler/fpga.py,sha256=8uvmIyvWOWx5X1JP3xaSpkA9hVyox4l-hK63aYzN8-w,9075
|
|
9
|
-
siliconcompiler/library.py,sha256=
|
|
9
|
+
siliconcompiler/library.py,sha256=5MnryNBF9Dsg9mcD-Nl0NWrsE6hBlUo3tE2fdWXqt5E,16033
|
|
10
10
|
siliconcompiler/pdk.py,sha256=rENDQve5edt7EkdgnNfW-mfgJVklShLbvYddaEA1-_k,31581
|
|
11
|
-
siliconcompiler/project.py,sha256=
|
|
11
|
+
siliconcompiler/project.py,sha256=WLP131DoQGa8rrafrCE7DZuPGqhWRyrK_f7DElHcc1E,51190
|
|
12
12
|
siliconcompiler/schematic.py,sha256=0PVFqZvJZW_e2NRGvv6DJPHGjwOlao1qHgZLhgCaEcQ,18385
|
|
13
|
-
siliconcompiler/tool.py,sha256=
|
|
13
|
+
siliconcompiler/tool.py,sha256=jzXR554oYqcUc23gGww9rv9HBPiXnMUoq6f9F771QFE,109809
|
|
14
14
|
siliconcompiler/apps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
15
|
siliconcompiler/apps/_common.py,sha256=uldDgTeAEfo1Y0X_hxpr0yjSW0W0c5UaiuSpgk7aUuk,8605
|
|
16
16
|
siliconcompiler/apps/sc_dashboard.py,sha256=BU3hPC7OzfUpkKEVsBD_46zd4OzHO86eJMB5CaWpVf0,3496
|
|
@@ -19,7 +19,7 @@ siliconcompiler/apps/sc_issue.py,sha256=_ClYgvpYC9z1KsM83AiTfcHG4tKp6NKIAiGfTq0b
|
|
|
19
19
|
siliconcompiler/apps/sc_remote.py,sha256=ve-4Z3c79noYe9PcYY-V7DfkLMa603J16SiIpmOCLQg,6887
|
|
20
20
|
siliconcompiler/apps/sc_server.py,sha256=Jup3QYs6R3LRbok4PO7h8l9-1Q1I82P9nJMjjojt4YA,814
|
|
21
21
|
siliconcompiler/apps/sc_show.py,sha256=w-AuHjDEOiyHoKu68fWf_ImsbGgyfnrv5afI9Vr6Ib4,3506
|
|
22
|
-
siliconcompiler/apps/smake.py,sha256=
|
|
22
|
+
siliconcompiler/apps/smake.py,sha256=y1_XOJWFtLgPMDYFuit-Qj5ppWFXZ-shl9Lyzn9-N-Q,10167
|
|
23
23
|
siliconcompiler/apps/utils/replay.py,sha256=jtWJCMeoLPLuV1hVZ-tqXzdXF8V_F-ShueFIVdfx8mM,5954
|
|
24
24
|
siliconcompiler/apps/utils/summarize.py,sha256=NbY04DDRSjEDhu0at46dRXX8-0iHxWIcPYppsZPHdy8,830
|
|
25
25
|
siliconcompiler/checklists/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -85,9 +85,9 @@ siliconcompiler/optimizer/vizier.py,sha256=JtoPktsa-qHN0i4PsfRnxvQAT0yVvQVRfdyYN
|
|
|
85
85
|
siliconcompiler/package/__init__.py,sha256=SKkoGECbYN6HEFmfx2ZZZ3DmKMpq8o0xtI8UQrAaiw0,25251
|
|
86
86
|
siliconcompiler/package/git.py,sha256=xq8_qi-2pmhswJ9ssUtRgSUNxpMGKZLDmnkdFYeq9iA,5950
|
|
87
87
|
siliconcompiler/package/github.py,sha256=bzV-XrcmFMloa7_yhdxFjfe4r9OH36xHGY6ZCgHv0mA,6785
|
|
88
|
-
siliconcompiler/package/https.py,sha256=
|
|
88
|
+
siliconcompiler/package/https.py,sha256=OJL1PxOf6FbuGUrEx3gWpLEocd7p9gf9uvKh6a-7OQc,5753
|
|
89
89
|
siliconcompiler/remote/__init__.py,sha256=FtA6sqSYDl3WFwGCrHkmWUEWmDCGm8oGa-oTaFWrtSw,1092
|
|
90
|
-
siliconcompiler/remote/client.py,sha256=
|
|
90
|
+
siliconcompiler/remote/client.py,sha256=UWTSOYqsIsM_cdI1-n1c51ygWntGUbd8gn23gZoclKs,37616
|
|
91
91
|
siliconcompiler/remote/schema.py,sha256=23aszXC2yRz5K_NEpRgc9hI9PK93hfbvUkRya_RdIBI,3300
|
|
92
92
|
siliconcompiler/remote/server.py,sha256=Dx6P2eQw2oUUVMLvr2M-7NuR4FYd40jdworeoLdGy-o,21214
|
|
93
93
|
siliconcompiler/remote/server_schema/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -129,39 +129,39 @@ siliconcompiler/scheduler/__init__.py,sha256=4ugpwR-X1BoSn38wEtR8nB1ZW77ktQW3eqA
|
|
|
129
129
|
siliconcompiler/scheduler/docker.py,sha256=jVKiu-1OkoxieBm3tMnx_RvBpOqcKeDlCVbgJ9UHwXw,12706
|
|
130
130
|
siliconcompiler/scheduler/error.py,sha256=B1DhBhzqK5f8OCodmQIXdrGzRwE2cnfL9zbHLLQZPzw,193
|
|
131
131
|
siliconcompiler/scheduler/run_node.py,sha256=MALxjvpM-pFkT9qzCQ9l_N12NMbFek3h8VYk5S2X5Tg,5739
|
|
132
|
-
siliconcompiler/scheduler/scheduler.py,sha256=
|
|
133
|
-
siliconcompiler/scheduler/schedulernode.py,sha256=
|
|
132
|
+
siliconcompiler/scheduler/scheduler.py,sha256=ePH5C6y7x20KQUpr_bwtXDgs1BEWSBbm3t4nQanqL7k,40752
|
|
133
|
+
siliconcompiler/scheduler/schedulernode.py,sha256=y-fCzPjIo-0xvl0p2feymomPPNrfdbzmpQ6YsfPmEhA,54580
|
|
134
134
|
siliconcompiler/scheduler/send_messages.py,sha256=zK5JVHu9qKlwFDiDboGJcy32zdnHBKxnafOTfFNzMl8,9411
|
|
135
135
|
siliconcompiler/scheduler/slurm.py,sha256=trbVdpHRDbJPbDr6qA0Dkvn-EjB-Q9sBFMPmaW7I9gE,8783
|
|
136
136
|
siliconcompiler/scheduler/taskscheduler.py,sha256=jC70KTQvSQxaM9b_kCcR5D-XTl28I7JCJMywYk38epQ,17839
|
|
137
137
|
siliconcompiler/scheduler/validation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
138
138
|
siliconcompiler/scheduler/validation/email_credentials.json,sha256=hkJs0U2h2Bgm1zxeXvanIJ-prPhpn_aU6e3qwIs7qA0,1997
|
|
139
|
-
siliconcompiler/schema/__init__.py,sha256=
|
|
140
|
-
siliconcompiler/schema/_metadata.py,sha256=
|
|
141
|
-
siliconcompiler/schema/baseschema.py,sha256=
|
|
139
|
+
siliconcompiler/schema/__init__.py,sha256=z5zc_4MG53d-Io5ZOFQT0suHkW8oN5CrdpJx28mwGUk,547
|
|
140
|
+
siliconcompiler/schema/_metadata.py,sha256=SFDemUQc9rU-_cnUpbqbcecVVB1ceLxzcuPZALPqzGI,63
|
|
141
|
+
siliconcompiler/schema/baseschema.py,sha256=ZSXwGaF7HiiSSxUFZwYczCOruxnnW1FnPz4_2MRKum8,51690
|
|
142
142
|
siliconcompiler/schema/docschema.py,sha256=Hzmq_YDxXDol2iWAwP1grhqYga43NvqVtysCCVMBn3E,924
|
|
143
143
|
siliconcompiler/schema/editableschema.py,sha256=2wZBSQ4SmUWEeMg7--klkBxZJHgIHEhDzRS3GSCjHgk,5116
|
|
144
144
|
siliconcompiler/schema/journal.py,sha256=i3TYcuqdwq-FCCit8M02W8YbIUsY61mlPHSS-7Y0axc,6538
|
|
145
|
-
siliconcompiler/schema/namedschema.py,sha256=
|
|
145
|
+
siliconcompiler/schema/namedschema.py,sha256=bu3x0D7UdnkeZs3RXksn_5llUFrWwO3QItOEEWKLCDw,3820
|
|
146
146
|
siliconcompiler/schema/parameter.py,sha256=Y-TfK__m6NsudJXG3iTZHr5XlUg8JbIUZsg-VG6jnPo,34721
|
|
147
147
|
siliconcompiler/schema/parametertype.py,sha256=oEkZN81sftAgnEEv84M9Vz8UPxwIRioxE6sJszV1A8o,11549
|
|
148
148
|
siliconcompiler/schema/parametervalue.py,sha256=h1DvtB-z-SnGQLHomaF236G6FrNJK5EDprrZzUqAQAs,29837
|
|
149
|
-
siliconcompiler/schema/safeschema.py,sha256=
|
|
149
|
+
siliconcompiler/schema/safeschema.py,sha256=otjZCv2jS4qsqhbIfdoR8IQ2oPo5ee87BSm-bt-gQTU,2655
|
|
150
150
|
siliconcompiler/schema/utils.py,sha256=-rNHCElu7z6Y5ig3lCZVxqIHq7VM6m7Wnyhll5VfxBM,1438
|
|
151
151
|
siliconcompiler/schema/docs/__init__.py,sha256=alRd_dr35ryJDKRaMx1dPpQ-NMBI-ldwHpZQBRyi-qY,993
|
|
152
152
|
siliconcompiler/schema/docs/schemagen.py,sha256=rLHnCabkvy0cTzkuzxXSCuI4qRaefdpTI_ijjZBrdfs,20859
|
|
153
153
|
siliconcompiler/schema/docs/utils.py,sha256=SCR9hYlQHUWbC6fT7LttKIfktzhMfrCL0BVxynYWtLc,10142
|
|
154
154
|
siliconcompiler/schema_support/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
155
155
|
siliconcompiler/schema_support/cmdlineschema.py,sha256=B4eQS7goBB4lq1tGb-qgssXrsP8hfPJhXH162yy6rG4,10815
|
|
156
|
-
siliconcompiler/schema_support/dependencyschema.py,sha256=
|
|
156
|
+
siliconcompiler/schema_support/dependencyschema.py,sha256=KTpDV_e4frVnbHQLNcQPbC7uPKODWAvEqXmEHgiI8vo,10238
|
|
157
157
|
siliconcompiler/schema_support/filesetschema.py,sha256=CE_JpDJYWqQzGgImgwPWOS7z_ymk4hY3H5I0qVU33Qo,11513
|
|
158
158
|
siliconcompiler/schema_support/metric.py,sha256=mLzdtpM76l2cPINGWONrAjBMU28ZnQR_yLOGMYBLBV4,16158
|
|
159
159
|
siliconcompiler/schema_support/option.py,sha256=lMB7Us3VPmxK56HK969YtmCcJ__nKfIT5Aa-qnYhNMY,53544
|
|
160
160
|
siliconcompiler/schema_support/packageschema.py,sha256=tB6wYEhZliaUVZDq40DlEfoo8ken6-Xh6zIafBRrxr4,10508
|
|
161
|
-
siliconcompiler/schema_support/pathschema.py,sha256=
|
|
162
|
-
siliconcompiler/schema_support/record.py,sha256=
|
|
161
|
+
siliconcompiler/schema_support/pathschema.py,sha256=6ovpEjC1oDAxi5OaNpIrXmDSY8MaIxt_1KeNVZxQXBA,21123
|
|
162
|
+
siliconcompiler/schema_support/record.py,sha256=pmo353Rw2_ptAPCfc5e-odYSgsVD5vF38udpwJ5HIZw,19646
|
|
163
163
|
siliconcompiler/targets/__init__.py,sha256=eWgvV4DeombChYqLxs5z_rOZ7Mt1q7N0WEetuBcNjZ4,1678
|
|
164
|
-
siliconcompiler/targets/asap7_demo.py,sha256=
|
|
164
|
+
siliconcompiler/targets/asap7_demo.py,sha256=sG3GdqkqGjhco43JHVV6-ys734fYTksx68VIJpZ4_IU,4760
|
|
165
165
|
siliconcompiler/targets/freepdk45_demo.py,sha256=U5Z-EMQ_FKzjYH3ofvlqECxelZKr0wZdAGVmVoSCnoE,3180
|
|
166
166
|
siliconcompiler/targets/gf180_demo.py,sha256=ul2cu1JNn6sX3-gCWwvucvWBJ00mLCN2JVtJ5m8pCGA,4082
|
|
167
167
|
siliconcompiler/targets/ihp130_demo.py,sha256=4k6XNk72eF13ifGn7a4cD6qlmItGp6ku18PgQctZkzg,4125
|
|
@@ -178,9 +178,9 @@ siliconcompiler/tools/bambu/__init__.py,sha256=BqeJXQ-y7C6uDszjsz-Y93tGhFGl6JTjo
|
|
|
178
178
|
siliconcompiler/tools/bambu/convert.py,sha256=_5eQ69ZPD3CgNHqR3fDoLBvY3AcgsCzC4AZm0AmVUcQ,6366
|
|
179
179
|
siliconcompiler/tools/bluespec/__init__.py,sha256=VQ_8j43wuZAWgDCOpK3JbamBQde-MAI_lZwbYFEoRkU,537
|
|
180
180
|
siliconcompiler/tools/bluespec/convert.py,sha256=wKHcPRdXAWRUbTqtMmPm7v2m_kcXZiH-sju1bKXp44Q,4911
|
|
181
|
-
siliconcompiler/tools/builtin/__init__.py,sha256=
|
|
182
|
-
siliconcompiler/tools/builtin/filter.py,sha256=
|
|
183
|
-
siliconcompiler/tools/builtin/importfiles.py,sha256=
|
|
181
|
+
siliconcompiler/tools/builtin/__init__.py,sha256=XvfR834zzV3AbX3UkeoKP2HqJNGU0ZqUvsuY1owIMYw,5476
|
|
182
|
+
siliconcompiler/tools/builtin/filter.py,sha256=hV3A9I-k8i3cNi9mADxjEbtE0inhVgayr6XedwX2XE0,3766
|
|
183
|
+
siliconcompiler/tools/builtin/importfiles.py,sha256=EmulgtToaSmM3PeeSuU2nbV7Y8Xi8x0WhluhI6Da018,6390
|
|
184
184
|
siliconcompiler/tools/builtin/join.py,sha256=qr0z3QqSJM6TcDwRI9xmhDxpKSO6rY0aYHGDwY4eygk,242
|
|
185
185
|
siliconcompiler/tools/builtin/maximum.py,sha256=8mUtrf_aurwmJZd8qhPz8NMVUF_voR9I2P3vNvtMc5s,733
|
|
186
186
|
siliconcompiler/tools/builtin/minimum.py,sha256=B5l6VD55S1a5GqIxBrXYspBBVwHevpmb_PtJUXbWDvA,733
|
|
@@ -213,11 +213,11 @@ siliconcompiler/tools/klayout/drc.py,sha256=SbCl9PxlJ0irGmUZE-Ls8asF0M8jMorcQEWh
|
|
|
213
213
|
siliconcompiler/tools/klayout/export.py,sha256=cdw-VcuBIybl2cAl923QpSnPHoRSfeok0003wkJXelg,3317
|
|
214
214
|
siliconcompiler/tools/klayout/operations.py,sha256=Mjolv916cGpKSOI6b5o9KMWA5SXr_odW3wMFH8UbXmA,6942
|
|
215
215
|
siliconcompiler/tools/klayout/screenshot.py,sha256=fZkvjvNuV93AlbE5WXZqDoTF2mRkJY0l-8OGF7ZOv-k,1910
|
|
216
|
-
siliconcompiler/tools/klayout/show.py,sha256=
|
|
216
|
+
siliconcompiler/tools/klayout/show.py,sha256=Lkmf90qOomLvrYELRhSSzH9F2i7cgsAfETHU2lVRxDs,1494
|
|
217
217
|
siliconcompiler/tools/klayout/scripts/klayout_convert_drc_db.py,sha256=YCWUyIoG8sUGRo3kCoCr4y9YixjVDgAdDia6aApD6OA,5748
|
|
218
218
|
siliconcompiler/tools/klayout/scripts/klayout_export.py,sha256=GQTkNQLfvLyAPCoJsIHucKKtws4CV9s6phkdq-IHgnk,7494
|
|
219
219
|
siliconcompiler/tools/klayout/scripts/klayout_operations.py,sha256=VpQb7e9M5qlNsNwu_TTHOJhhqe7sGoIoUGNF_okhkBA,13221
|
|
220
|
-
siliconcompiler/tools/klayout/scripts/klayout_show.py,sha256=
|
|
220
|
+
siliconcompiler/tools/klayout/scripts/klayout_show.py,sha256=gzkFTpJPyFN1_5b0j4XBF_cs1hXT0fOMjHCRbHQpAL0,10189
|
|
221
221
|
siliconcompiler/tools/klayout/scripts/klayout_utils.py,sha256=otiMTrdMkJ_kQRxhwqqKEqTXqBNnQfeLidlfMvXZDOg,7296
|
|
222
222
|
siliconcompiler/tools/magic/__init__.py,sha256=NtsbRts5QE17ffDw08rtASAw2ZVDH0nTj3jYSb23r5o,3052
|
|
223
223
|
siliconcompiler/tools/magic/drc.py,sha256=qqO7byf2OgrGXSjL-90Mx21CviEaP0dZZS9mJZjuBVY,626
|
|
@@ -341,8 +341,8 @@ siliconcompiler/tools/xyce/__init__.py,sha256=KSjHkueyWjTlH7ka7aBolRXwR3K5c0TgBZ
|
|
|
341
341
|
siliconcompiler/tools/xyce/simulate.py,sha256=XzFcbmn9-BSTE9sqyPyL3WVbY6zE_3kjFx6_sG4jUcE,2173
|
|
342
342
|
siliconcompiler/tools/yosys/__init__.py,sha256=prf36_x6A61lMnLXM3FRzlRZrJqEEMv-C7hyEi1b2Oo,18451
|
|
343
343
|
siliconcompiler/tools/yosys/lec_asic.py,sha256=tA2N_nU3hkgv6DpJv68nEg_IJgLXV-9Lm1GE3HjHyFE,1593
|
|
344
|
-
siliconcompiler/tools/yosys/prepareLib.py,sha256=
|
|
345
|
-
siliconcompiler/tools/yosys/syn_asic.py,sha256=
|
|
344
|
+
siliconcompiler/tools/yosys/prepareLib.py,sha256=8ppIR-o_EJiNZrpGg_sewJ4qyjtFXre9-iwo-a5Ev_g,2438
|
|
345
|
+
siliconcompiler/tools/yosys/syn_asic.py,sha256=os-xUull6pnIjZwrIWYMuu1ffVyCrfy6XjORSN2y57M,19034
|
|
346
346
|
siliconcompiler/tools/yosys/syn_fpga.py,sha256=_6z9NWciUAcagQXTa9dzRetjRr1Dkxvv8odw6ECSPYg,3577
|
|
347
347
|
siliconcompiler/tools/yosys/scripts/procs.tcl,sha256=oJZJrcMHUyBLEKlUEd3PwwNBIDSCUIZlpfjsAuM2WUQ,4607
|
|
348
348
|
siliconcompiler/tools/yosys/scripts/sc_lec.tcl,sha256=K2gsSg2cs1Dx3g4MP1EbkSv-ZkYDnU4iSHepj20TXSE,2996
|
|
@@ -354,7 +354,7 @@ siliconcompiler/tools/yosys/techmaps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeu
|
|
|
354
354
|
siliconcompiler/tools/yosys/techmaps/lcu_kogge_stone.v,sha256=M4T-ygiKmlsprl5eGGLaV5w6HVqlEepn0wlUDmOkapg,773
|
|
355
355
|
siliconcompiler/tools/yosys/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
356
356
|
siliconcompiler/tools/yosys/templates/abc.const,sha256=TAq9ThdLMYCJGrtToEU0gWcLuEtjE4Gk8huBbTm1v-I,116
|
|
357
|
-
siliconcompiler/toolscripts/_tools.json,sha256=
|
|
357
|
+
siliconcompiler/toolscripts/_tools.json,sha256=3ODm2JNw76BJfLN-XUZ1WMpLOW8gaEkFKCvqem5rW2s,5094
|
|
358
358
|
siliconcompiler/toolscripts/_tools.py,sha256=P30KY_xbbjl8eHGsPAxDcAzWvJJpiL07ZfGZZDQbdR8,7174
|
|
359
359
|
siliconcompiler/toolscripts/rhel8/install-chisel.sh,sha256=RJ7BiZhsXBLTgQhHUcRZmHqhKB6syVaC2nvVoGrIXOI,709
|
|
360
360
|
siliconcompiler/toolscripts/rhel8/install-icarus.sh,sha256=EW7308IUGYOx7A22s7s0tNq90nHhrpHHUMrx3cd9lMM,962
|
|
@@ -472,9 +472,9 @@ siliconcompiler/utils/multiprocessing.py,sha256=u8hf1EX-0dWheNoHJ0LNfnQc4dqLsccJ
|
|
|
472
472
|
siliconcompiler/utils/paths.py,sha256=_7UqxNzUnRFtdZAZSpI75lqs22YnKJBXJzkpoWbUIcU,4152
|
|
473
473
|
siliconcompiler/utils/showtools.py,sha256=ZWD2frgt0t2Eh8S9Hl3CwGEa1cnNiQx-06pWtyDTiic,1375
|
|
474
474
|
siliconcompiler/utils/units.py,sha256=mppo7T5xI2P2S7SweE_qsOuoTc7RezVX61G2whCzpV4,6261
|
|
475
|
-
siliconcompiler-0.35.
|
|
476
|
-
siliconcompiler-0.35.
|
|
477
|
-
siliconcompiler-0.35.
|
|
478
|
-
siliconcompiler-0.35.
|
|
479
|
-
siliconcompiler-0.35.
|
|
480
|
-
siliconcompiler-0.35.
|
|
475
|
+
siliconcompiler-0.35.3.dist-info/licenses/LICENSE,sha256=lbLR6sRo_CYJOf7SVgHi-U6CZdD8esESEZE5TZazOQE,10766
|
|
476
|
+
siliconcompiler-0.35.3.dist-info/METADATA,sha256=4zk1eBcCNpNe_D56ebakCkq_3pMji90p9kF2LEz_Ipw,11251
|
|
477
|
+
siliconcompiler-0.35.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
478
|
+
siliconcompiler-0.35.3.dist-info/entry_points.txt,sha256=5I-z7cmFNPRpD_x1dMQnm-oLwTPOMURxD5frvUM0GE8,832
|
|
479
|
+
siliconcompiler-0.35.3.dist-info/top_level.txt,sha256=H8TOYhnEUZAV1RJTa8JRtjLIebwHzkQUhA2wkNU2O6M,16
|
|
480
|
+
siliconcompiler-0.35.3.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|