<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sfcX/src/test/scala/firrtl/testutils, branch master</title>
<subtitle>Scala FIRRTL Compiler for chiselX</subtitle>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/'/>
<entry>
<title>0-bit literals (#2544)</title>
<updated>2022-12-15T22:09:14+00:00</updated>
<author>
<name>Kevin Laeufer</name>
</author>
<published>2022-12-15T22:09:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=135739f0c7ef3f6404ba7115f77c7d7b913f6748'/>
<id>135739f0c7ef3f6404ba7115f77c7d7b913f6748</id>
<content type='text'>
* allow for zero-width integer literals
* CheckWidths: ensure that width is non-negative</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* allow for zero-width integer literals
* CheckWidths: ensure that width is non-negative</pre>
</div>
</content>
</entry>
<entry>
<title>Deprecate all mutable methods on RenameMap (#2444)</title>
<updated>2021-12-17T18:07:25+00:00</updated>
<author>
<name>Jack Koenig</name>
</author>
<published>2021-12-17T18:07:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=37c8528cfed4395924820b54498ef761ded17393'/>
<id>37c8528cfed4395924820b54498ef761ded17393</id>
<content type='text'>
* Add renamemap.MutableRenameMap which includes these methods without
  deprecation
* Deprecate Stringly typed RenameMap APIs which were accidentally
  undeprecated a while ago

Co-authored-by: mergify[bot] &lt;37929162+mergify[bot]@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add renamemap.MutableRenameMap which includes these methods without
  deprecation
* Deprecate Stringly typed RenameMap APIs which were accidentally
  undeprecated a while ago

Co-authored-by: mergify[bot] &lt;37929162+mergify[bot]@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[deprecation clean up] remove trait firrtl.util.BackendCompilationUtilities (#2423)</title>
<updated>2021-11-30T03:16:02+00:00</updated>
<author>
<name>Jiuyang Liu</name>
</author>
<published>2021-11-30T03:16:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=a4d13a5024f7488e1d2b9fdd27d3917157a67268'/>
<id>a4d13a5024f7488e1d2b9fdd27d3917157a67268</id>
<content type='text'>
Co-authored-by: Jack Koenig &lt;koenig@sifive.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-authored-by: Jack Koenig &lt;koenig@sifive.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Legalize neg: -x becomes 0 - x (#2128)</title>
<updated>2021-03-19T20:59:52+00:00</updated>
<author>
<name>Jack Koenig</name>
</author>
<published>2021-03-19T20:59:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=49b823244732e8d3a4b0fe91d0f10625fea34eec'/>
<id>49b823244732e8d3a4b0fe91d0f10625fea34eec</id>
<content type='text'>
This fixes an error with negating a negative SInt literal and a
[debatable] lint warning in Verilator when negating any value.

This behavior matches that of Chisel (which directly emits the 0 - x
already).</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes an error with negating a negative SInt literal and a
[debatable] lint warning in Verilator when negating any value.

This behavior matches that of Chisel (which directly emits the 0 - x
already).</pre>
</div>
</content>
</entry>
<entry>
<title>Ensure InlineCasts does not inline complex Expressions (#2130)</title>
<updated>2021-03-19T06:31:51+00:00</updated>
<author>
<name>Jack Koenig</name>
</author>
<published>2021-03-19T06:31:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=b274b319d4a4014c154f06bfc174beba461d6fce'/>
<id>b274b319d4a4014c154f06bfc174beba461d6fce</id>
<content type='text'>
Previously, InlineCasts could inline complex (ie. non-cast) Expressions
into other complex Expressions. Now it will only inline so long as there
no more than 1 complex Expression in the current nested Expression.

Co-authored-by: Albert Magyar &lt;albert.magyar@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, InlineCasts could inline complex (ie. non-cast) Expressions
into other complex Expressions. Now it will only inline so long as there
no more than 1 complex Expression in the current nested Expression.

Co-authored-by: Albert Magyar &lt;albert.magyar@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Allow Side Effecting Statement to have Names (#2057)</title>
<updated>2021-02-17T20:16:52+00:00</updated>
<author>
<name>Kevin Laeufer</name>
</author>
<published>2021-02-17T20:16:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=5a89fca6090948d0a99c217a09c692e58a20d1df'/>
<id>5a89fca6090948d0a99c217a09c692e58a20d1df</id>
<content type='text'>
* firrtl: add optional statement labels for stop, printf, assert, assume and cover

* test: parsing of statement labels

* ir: ensure that name is properly retained

* SymbolTable: add support for labled statements

* test: parsing statement labels

* test: lower types name collisions with named statements

* ignore empty names

* Inline: deal with named and unnamed statements

* RemoveWires: treat stop, printf and verification statements as "others"

* test: fix InlineInstance tests

* DeadCodeEliminations: statements are now als declarations

* CheckHighForm: ensure that statement names are not used as references

* CheckSpec: throw error if statement name collides

* add pass to automatically add missing statement names

* check: make sure that two statements cannot have the same name

* stmtLabel -&gt; stmtName

* scalafmt

* add statement names to spec

* spec: meta data -&gt; metadata

* EnsureStatementNames: explain naming algorithm

* remove returns

* better namespace use

* ir: add CanBeReferenced trait

* ir: add newline as jack requested</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* firrtl: add optional statement labels for stop, printf, assert, assume and cover

* test: parsing of statement labels

* ir: ensure that name is properly retained

* SymbolTable: add support for labled statements

* test: parsing statement labels

* test: lower types name collisions with named statements

* ignore empty names

* Inline: deal with named and unnamed statements

* RemoveWires: treat stop, printf and verification statements as "others"

* test: fix InlineInstance tests

* DeadCodeEliminations: statements are now als declarations

* CheckHighForm: ensure that statement names are not used as references

* CheckSpec: throw error if statement name collides

* add pass to automatically add missing statement names

* check: make sure that two statements cannot have the same name

* stmtLabel -&gt; stmtName

* scalafmt

* add statement names to spec

* spec: meta data -&gt; metadata

* EnsureStatementNames: explain naming algorithm

* remove returns

* better namespace use

* ir: add CanBeReferenced trait

* ir: add newline as jack requested</pre>
</div>
</content>
</entry>
<entry>
<title>Stop padding multiply and divide ops (#2058)</title>
<updated>2021-01-29T02:39:57+00:00</updated>
<author>
<name>Jack Koenig</name>
</author>
<published>2021-01-29T02:39:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=651fbe9339aca5fcb562715d00b1f87cf66296ee'/>
<id>651fbe9339aca5fcb562715d00b1f87cf66296ee</id>
<content type='text'>
Fixes bug with mul or div followed by cat.
Also fixes some Verilog lint issues.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes bug with mul or div followed by cat.
Also fixes some Verilog lint issues.</pre>
</div>
</content>
</entry>
<entry>
<title>Change to Apache 2.0 License (#1901)</title>
<updated>2020-09-17T01:52:16+00:00</updated>
<author>
<name>Chick Markley</name>
</author>
<published>2020-09-17T01:52:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=ecb96e83324ea17cf38b7b90753d745d3c7f51bd'/>
<id>ecb96e83324ea17cf38b7b90753d745d3c7f51bd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add custom transforms 'upstream' of emitter annotation in equiv tests</title>
<updated>2020-08-28T23:32:12+00:00</updated>
<author>
<name>Albert Magyar</name>
</author>
<published>2020-08-28T23:32:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=5b3e09a614787bd80dc29d51a69ae7476fbb6bf2'/>
<id>5b3e09a614787bd80dc29d51a69ae7476fbb6bf2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Deprecate CompilerAnnotation (#1870)</title>
<updated>2020-08-28T16:09:43+00:00</updated>
<author>
<name>Schuyler Eldridge</name>
</author>
<published>2020-08-28T16:09:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=a8d7b9a2a118ac3763935664309c031b91d48ca0'/>
<id>a8d7b9a2a118ac3763935664309c031b91d48ca0</id>
<content type='text'>
* CompilerAnnotation$ emits RunFirrtlTransform

Change the CompilerAnnotation object to emit
RunFirrtlTransformAnnotations containing the associated emitter.

This requires a fix in the Driver compatibility layer to know how to
enable one-file-per module emission if either a CompilerAnnotation or
a RunFirrtlTransformAnnotation(_: Emitter) is present.

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;

* Add ConvertCompilerAnnotation phase

Add a phase, ConvertCompilerAnnotation, that converts a
CompilerAnnotation to a RunFirrtlTransformAnnotation. This provides a
warning to the user if this path is taken.

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;

* Add test of ConvertCompilerAnnotation

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;

* Deprecate CompilerAnnotation$, move helper methods

Deprecate the CompilerAnnotation companion object and move it's
private utility inside the RunFirrtlTransformAnnotation companion
object.

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;

* Make ConvertCompilerAnnotations private[firrtl]

Make this phase private to avoid adding a deprecation warning. Also,
remove an unused string value.

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;

* Fix incorrect string in test

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;

* Add test that '-X verilog', no emitter yields file

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* CompilerAnnotation$ emits RunFirrtlTransform

Change the CompilerAnnotation object to emit
RunFirrtlTransformAnnotations containing the associated emitter.

This requires a fix in the Driver compatibility layer to know how to
enable one-file-per module emission if either a CompilerAnnotation or
a RunFirrtlTransformAnnotation(_: Emitter) is present.

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;

* Add ConvertCompilerAnnotation phase

Add a phase, ConvertCompilerAnnotation, that converts a
CompilerAnnotation to a RunFirrtlTransformAnnotation. This provides a
warning to the user if this path is taken.

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;

* Add test of ConvertCompilerAnnotation

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;

* Deprecate CompilerAnnotation$, move helper methods

Deprecate the CompilerAnnotation companion object and move it's
private utility inside the RunFirrtlTransformAnnotation companion
object.

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;

* Make ConvertCompilerAnnotations private[firrtl]

Make this phase private to avoid adding a deprecation warning. Also,
remove an unused string value.

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;

* Fix incorrect string in test

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;

* Add test that '-X verilog', no emitter yields file

Signed-off-by: Schuyler Eldridge &lt;schuyler.eldridge@ibm.com&gt;</pre>
</div>
</content>
</entry>
</feed>
