Skip to content

Releases: google/xls

v0.0.0-9256-g91f903e9c

01 Jan 07:53

Choose a tag to compare

Integrate LLVM at llvm/llvm-project@14c00c05c13a

Updates LLVM usage to match
[14c00c05c13a](https://github.com/llvm/llvm-project/commit/14c00c05c13a)

PiperOrigin-RevId: 850765800

v0.0.0-9255-gef13f547b

31 Dec 07:50

Choose a tag to compare

[codegen 1.5] Implement ChannelToPortIoLoweringPass.

This pass transforms channel operations (Send/Receive) within a `ScheduledBlock` into either block ports or FIFO instantiations.

We also add support for zero-latency, skid, and single-flop buffering on streaming I/O channels. We port helper functions from codegen 1.0 to add registers and the necessary control logic for Ready/Valid/Data interfaces, though we make it simpler by constructing skid buffers as the combination of a zero-latency & register buffer.

Features not yet supported:
- Gating received data (for predicated or non-blocking receives)

PiperOrigin-RevId: 850524913

v0.0.0-9252-gdb239302e

30 Dec 07:51

Choose a tag to compare

Enable previously-failing crasher.

Fixes google/xls#2011.

PiperOrigin-RevId: 850211109

v0.0.0-9245-gdc4a90b64

28 Dec 07:51

Choose a tag to compare

Enable reproducer now that google/xls#2674 is closed.

PiperOrigin-RevId: 849458453

v0.0.0-9244-g7e3f3bba2

27 Dec 07:49

Choose a tag to compare

[util] Generalize literal dropping in `RemoveRedundantNodes`.

The `RemoveRedundantNodes` utility now accepts a function to specify which literals should be dropped, making it more flexible. The logic for handling empty operand sets after removal is moved to the call sites in `MakeNaryAnd`, `MakeNaryOr`, and `MakeNaryNand`. This also simplifies the flattening logic in `MakeNaryAnd` and `MakeNaryOr` by deferring literal removal to `RemoveRedundantNodes`.

PiperOrigin-RevId: 849276239

v0.0.0-9240-g72b4fbe6a

24 Dec 07:53

Choose a tag to compare

Merge pull request #3363 from xlsynth:siruilu-20251111-removing-membe…

v0.0.0-9236-gf5beb2e20

23 Dec 07:50

Choose a tag to compare

Migrates `builder.create<Op>()` => `Op::create()` in tablegen files

PiperOrigin-RevId: 847796796

v0.0.0-9235-gb179d691e

20 Dec 07:49

Choose a tag to compare

[xlscc] Use empty LeafTypeTree for type indexing instead of GetLeafTypes

This change updates the continuation analysis to use xls::LeafTypeTree for representing and checking the types of source nodes, replacing the previous method of using flat vectors of leaf types via an internal function not intended for public use.

PiperOrigin-RevId: 846881182

v0.0.0-9227-g71cff2261

19 Dec 07:52

Choose a tag to compare

Implement state to register I/O lowering pass in codegen v1.5.

PiperOrigin-RevId: 846495277

v0.0.0-9213-g3c95a75d2

18 Dec 07:51

Choose a tag to compare

Add support for non-synthesizable functions in XLS IR.

Introduces a `#[non_synth]` attribute for functions, which marks them as not being synthesized. Adds decorator estimators (`FilterNonSynth`) for area and delay models to ignore nodes within non-synth functions during optimization. Updates the IR parser, verifier, and non-synth separation pass to handle this new attribute.

This is needed to ensure that all passes are able to cope with the existence of non-synth function invokes during the optimization process.

PiperOrigin-RevId: 845962215