Skip to content

[Comb] Fold comb.truth_table when truth table depends on a single operand #8925

@uenoku

Description

@uenoku
  hw.module @Foo(in %c : i3, out out : i1) {
    %0 = comb.extract %c from 2 : (i3) -> i1
    %1 = comb.extract %c from 1 : (i3) -> i1
    %2 = comb.extract %c from 0 : (i3) -> i1
    %3 = comb.truth_table %2, %0, %1 -> [false, false, false, false, true, true, true, true]
    hw.output %3 : i1
  }

%3 should be canonicalized to %2 as the truth table depends on a single variable:

00001111
00110011
01010101

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions