<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sfcX/src/test/scala/firrtlTests/annotationTests, branch master</title>
<subtitle>Scala FIRRTL Compiler for chiselX</subtitle>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/'/>
<entry>
<title>fix tests that depend on Driver (#2429)</title>
<updated>2021-11-23T18:56:03+00:00</updated>
<author>
<name>Jiuyang Liu</name>
</author>
<published>2021-11-23T18:56:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=16714d6abeab5140e97d8370e8b901b4eb816fde'/>
<id>16714d6abeab5140e97d8370e8b901b4eb816fde</id>
<content type='text'>
Co-authored-by: sinofp &lt;sinofp@tuta.io&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-authored-by: sinofp &lt;sinofp@tuta.io&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Let firrtl based applications run despite loading unknown annotations (#2387)</title>
<updated>2021-11-12T20:29:48+00:00</updated>
<author>
<name>Chick Markley</name>
</author>
<published>2021-11-12T20:29:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=c6093cbcd4f2eb8acd44f3b9d4e7146448de172f'/>
<id>c6093cbcd4f2eb8acd44f3b9d4e7146448de172f</id>
<content type='text'>
An application like barstools may contain a main that loads an annotations file containing
annotation classes that are not on it's classpath. This change allows unknown annotations
to be preserved by wrapping them in a UnrecognizedAnnotation. If annotations are then output
to a file, they will be unwrapped during serialization
This feature can be enabled via an AllowUnrecognizedAnnotations annotation

Co-authored-by: chick &lt;chick.markley@sifive.com&gt;
Co-authored-by: Jack Koenig &lt;koenig@sifive.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
An application like barstools may contain a main that loads an annotations file containing
annotation classes that are not on it's classpath. This change allows unknown annotations
to be preserved by wrapping them in a UnrecognizedAnnotation. If annotations are then output
to a file, they will be unwrapped during serialization
This feature can be enabled via an AllowUnrecognizedAnnotations annotation

Co-authored-by: chick &lt;chick.markley@sifive.com&gt;
Co-authored-by: Jack Koenig &lt;koenig@sifive.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Optimize Annotation.getTargets (#2244)</title>
<updated>2021-05-21T22:42:53+00:00</updated>
<author>
<name>Jack Koenig</name>
</author>
<published>2021-05-21T22:42:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=117b84a15a352451c1217155f96b09d098681baf'/>
<id>117b84a15a352451c1217155f96b09d098681baf</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add JsonProtocol.serializeRecover (#2227)</title>
<updated>2021-05-14T18:12:19+00:00</updated>
<author>
<name>Jack Koenig</name>
</author>
<published>2021-05-14T18:12:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=c2d72fd8a4f3558094094eed2f4a12f85d080c41'/>
<id>c2d72fd8a4f3558094094eed2f4a12f85d080c41</id>
<content type='text'>
This function will safely wrap any unserializeable annotations in
UnserializeableAnnotations so that they can be safely serialized to JSON
for logging.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This function will safely wrap any unserializeable annotations in
UnserializeableAnnotations so that they can be safely serialized to JSON
for logging.</pre>
</div>
</content>
</entry>
<entry>
<title>Improve performance of LowerTypes renaming (#2024)</title>
<updated>2020-12-16T00:41:53+00:00</updated>
<author>
<name>Jack Koenig</name>
</author>
<published>2020-12-16T00:41:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=15013df6f6ac2dafeb35d7ed15cf95c7ac8a5bef'/>
<id>15013df6f6ac2dafeb35d7ed15cf95c7ac8a5bef</id>
<content type='text'>
This is done by having LowerTypes uses two RenameMaps instead of one for
each module. There is one for renaming instance paths, and one for
renaming everything within modules.

Also add some utilities:
* TargetUtils for dealing with InstanceTargets
* RenameMap.fromInstanceRenames</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is done by having LowerTypes uses two RenameMaps instead of one for
each module. There is one for renaming instance paths, and one for
renaming everything within modules.

Also add some utilities:
* TargetUtils for dealing with InstanceTargets
* RenameMap.fromInstanceRenames</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>Don't use ResolvedAnnotationPaths in ConstProp nor DCE (#1896)</title>
<updated>2020-09-15T02:43:01+00:00</updated>
<author>
<name>Jack Koenig</name>
</author>
<published>2020-09-15T02:43:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=0c646459b52394e8a388143cee324b8af3dc7c09'/>
<id>0c646459b52394e8a388143cee324b8af3dc7c09</id>
<content type='text'>
Both use EliminateTargetPaths to duplicate modules based on annotations.
Currently, EliminateTargetPaths API is a little too limited so it
duplicates more than it should which effectively breaks Dedup whenever
DontTouchAnnotations are present.

Also, make ConstProp and DCE treat all HasDontTouches as local
annotations even if they are instance annotations. This is more
conservative but it is generally better to preserve deduplication than
to maximally optimize every instance.

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>
Both use EliminateTargetPaths to duplicate modules based on annotations.
Currently, EliminateTargetPaths API is a little too limited so it
duplicates more than it should which effectively breaks Dedup whenever
DontTouchAnnotations are present.

Also, make ConstProp and DCE treat all HasDontTouches as local
annotations even if they are instance annotations. This is more
conservative but it is generally better to preserve deduplication than
to maximally optimize every instance.

Co-authored-by: mergify[bot] &lt;37929162+mergify[bot]@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Better error messages for unserializable annotations (#1885)</title>
<updated>2020-09-05T00:20:01+00:00</updated>
<author>
<name>Jack Koenig</name>
</author>
<published>2020-09-05T00:20:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=47c81ee3e68c96e94dafa389cb53b162e996a4df'/>
<id>47c81ee3e68c96e94dafa389cb53b162e996a4df</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>All of src/ formatted with scalafmt</title>
<updated>2020-08-15T02:47:53+00:00</updated>
<author>
<name>chick</name>
</author>
<published>2020-08-15T02:47:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=6fc742bfaf5ee508a34189400a1a7dbffe3f1cac'/>
<id>6fc742bfaf5ee508a34189400a1a7dbffe3f1cac</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Cleanup Named Targets (#1311)</title>
<updated>2020-08-13T03:02:04+00:00</updated>
<author>
<name>Schuyler Eldridge</name>
</author>
<published>2020-08-13T03:02:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/sfcX/commit/?id=e1d3a0c64a48b4c9999ad59f15922db7c155c361'/>
<id>e1d3a0c64a48b4c9999ad59f15922db7c155c361</id>
<content type='text'>
* Add CleanupNamedTargets Transform

Adds a new transform, CleanupNamedTargets, that will convert
ReferenceTargets to InstanceTargets if any ReferenceTargets are found
to be actually pointing at instances.

This fixes an issue where a ComponentName pointing at an instance will
be converted to a ReferenceTarget. Later on, this ReferenceTarget will
not be properly renamed by other transforms, e.g.,
EliminateTargetPaths.

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

* Update ScalaTests

Co-authored-by: Jack Koenig &lt;koenig@sifive.com&gt;
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 CleanupNamedTargets Transform

Adds a new transform, CleanupNamedTargets, that will convert
ReferenceTargets to InstanceTargets if any ReferenceTargets are found
to be actually pointing at instances.

This fixes an issue where a ComponentName pointing at an instance will
be converted to a ReferenceTarget. Later on, this ReferenceTarget will
not be properly renamed by other transforms, e.g.,
EliminateTargetPaths.

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

* Update ScalaTests

Co-authored-by: Jack Koenig &lt;koenig@sifive.com&gt;
Co-authored-by: mergify[bot] &lt;37929162+mergify[bot]@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
</feed>
