diff options
| author | Kevin Laeufer | 2020-07-08 16:18:06 -0700 |
|---|---|---|
| committer | GitHub | 2020-07-08 23:18:06 +0000 |
| commit | 3fee5f87ec598e5ac870c9d2cd606047106421bb (patch) | |
| tree | 35b03663d080d4e341bc12c0d2cd1e957c084652 /benchmark | |
| parent | 05ba1c9d52c056e33b4121ea55812ae596016ea3 (diff) | |
dedup: use structural sha256 hash instead of agnostify and serialize (#1731)
* benchmark: add hot.DedupBenchmark
* dedup: use structural md5 hash instead of agnostify and serialize
* StructuralHash: generate PrimOp LUT
* StructuralHash: change MessageDigestHasher to not be a case class
* StructuralHash: we want Blocks and EmptyStmt to be ignored
* StructuralHash: use SHA-256 instead of MD5
* StructuralHash: clarify extmodule port name agnistification
* StructuralHash: hash the name of width vars instead of trying to agnostify
This should be in line with the old Dedup behavior.
The prior use of n(..) was incorrect since the namespace
of these vars is different from the normal module scope namespace.
* StructuralHash: address Schuyler's review comments
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Diffstat (limited to 'benchmark')
| -rw-r--r-- | benchmark/src/main/scala/firrtl/benchmark/hot/TransformBenchmark.scala | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/benchmark/src/main/scala/firrtl/benchmark/hot/TransformBenchmark.scala b/benchmark/src/main/scala/firrtl/benchmark/hot/TransformBenchmark.scala index 05b759c6..abbee5a9 100644 --- a/benchmark/src/main/scala/firrtl/benchmark/hot/TransformBenchmark.scala +++ b/benchmark/src/main/scala/firrtl/benchmark/hot/TransformBenchmark.scala @@ -7,8 +7,8 @@ package hot import firrtl._ import firrtl.passes.LowerTypes import firrtl.stage.TransformManager - import firrtl.benchmark.util._ +import firrtl.transforms.DedupModules abstract class TransformBenchmark(factory: () => Transform) extends App { val inputFile = args(0) @@ -25,3 +25,5 @@ abstract class TransformBenchmark(factory: () => Transform) extends App { } object LowerTypesBenchmark extends TransformBenchmark(() => LowerTypes) + +object DedupBenchmark extends TransformBenchmark(() => new DedupModules())
\ No newline at end of file |
