Skip to content

Releases: google/xls

v0.0.0-6034-g87567ce57

04 Oct 07:53
Compare
Choose a tag to compare
[xls] Ensure sitofp and friends work on tensors too

Accidental omission from previous patch.

PiperOrigin-RevId: 682190931

v0.0.0-6014-geeabb4445

03 Oct 07:54
Compare
Choose a tag to compare
Added minor additions to DSLX types, funcs, and ast nodes.

  - Additional casts for Types.
  - GetParamByName for Functions.
  - Overrideable default for AstNodeVisitorWithDefault.

PiperOrigin-RevId: 681662121

v0.0.0-6005-gebd1582c2

02 Oct 07:56
Compare
Choose a tag to compare
[xlscc] Don't const-prop so much during short circuiting.

PiperOrigin-RevId: 681159199

v0.0.0-5984-g5eed6363a

27 Sep 07:54
Compare
Choose a tag to compare
Make FifoConfig constexpr-constructible.

PiperOrigin-RevId: 679331734

v0.0.0-5969-ga29cae6f3

26 Sep 07:55
Compare
Choose a tag to compare
Make the default dslx stdlib path an `inline constexpr std::string_vi…

v0.0.0-5955-ge5bcb56fb

25 Sep 07:48
Compare
Choose a tag to compare
Tell clang-tidy explicitly to consider code c++20.

Even though the -std=c++20 makes it into the
compilation DB, clang-tidy does not pick it up.

So be explicit and add it to the --extra-args on
invocation.

Thie fixes all reported [clang-diagnostic-error] that
were due to clang-tidy not recognizing c++20 constructs
and also some misc-include-cleaner warnings in which it
previously flagged some includes because it was tripping
over some other problem in the file in question.

<    21 [misc-include-cleaner]
<    20 [clang-diagnostic-error]
---
>    15 [misc-include-cleaner]

PiperOrigin-RevId: 678427605

v0.0.0-5947-gc4c12c46e

24 Sep 07:50
Compare
Choose a tag to compare
Simplify clang-tidy and explicitly list all relevant rules.

Without using wild-card options, it is easier to switch between
clang-tidy versions without getting new, unexpected findings.

This selective approach also reports less than the previous
configuration which was mostly enabling everything, then only
disabling the rules that were not helpful. Now, we're just
enabling vetted helpful rules.

Output of `xls/dev_tools/run-clang-tidy-cached.sh` is
now a more manageable

```
--- Summary --- (details in xls_clang-tidy.out)
   35 [clang-diagnostic-unused-const-variable]
   22 [bugprone-argument-comment]
   21 [misc-include-cleaner]
   20 [clang-diagnostic-error]
   15 [modernize-make-unique]
   13 [performance-unnecessary-copy-initialization]
    9 [clang-diagnostic-unused-function]
    7 [google-default-arguments]
    6 [abseil-string-find-str-contains]
    5 [readability-inconsistent-declaration-parameter-name]
    4 [google-readability-function-size]
    4 [modernize-use-bool-literals]
    3 [bugprone-use-after-move]
    3 [modernize-use-equals-default]
    3 [readability-container-size-empty]
    2 [bugprone-dangling-handle]
    2 [clang-diagnostic-thread-safety-analysis]
    2 [performance-inefficient-vector-operation]
    1 [google-explicit-constructor]
```

PiperOrigin-RevId: 678029545

v0.0.0-5937-g17d0d09be

21 Sep 07:49
Compare
Choose a tag to compare
Update apfloat to_int/to_uint to take advantage of xN type.

xN was fixed in https://github.com/google/xls/pull/1606.

PiperOrigin-RevId: 677087829

v0.0.0-5924-gb118c15f3

20 Sep 07:49
Compare
Choose a tag to compare
SimulationTarget: don't allocate global std::string objects.

... they have a non-trivial constructor. Use std::string_view
instead as they are wrapping constant strings from the .rodata
segment anyway. That also allows to make them constexpr.

Also use designated initializers for readability.

PiperOrigin-RevId: 676651162

v0.0.0-5918-g8c48bd3f9

19 Sep 07:47
Compare
Choose a tag to compare
Optimize query engines for stateless-query-engine use

Many times the only query-engine in use is the stateless query engine. This can lead to quite inefficient operation as the default query engine assumes that accessing the leaf-type-trees is pretty cheap but for stateless a new one must be constructed each time.

To avoid this all functions that unconditionally create a LeafTypeTree are made virtual so the stateless can override them. A few functions which previously unconditionally created a LTT were rewritten to not do so.

This also updates the UnionQueryEngine to use the unioned implementations of these functions.

PiperOrigin-RevId: 676170979