google / google/xls

Pipeline generator crashes with non-dead empty tuples

Open
#346 0 comments 0 reactions 0 assignees View on GitHub
codegen
Dominant language
C++
Stars
1.9k
Forks
283
Avg merge
2d 10h
Merged PRs (30d)
135

Description

Error:

Check failed: ::absl::OkStatus() == (xls::RealMain(ir_path, absl::GetFlag(FLAGS_output_verilog_path), absl::GetFlag(FLAGS_output_signature_path), absl::GetFlag(FLAGS_output_schedule_path))) (OK vs. INTERNAL: XLS_RET_CHECK failure (third_party/xls/codegen/pipeline_generator.cc:194) param->users().size() == 0 (1 vs. 0) )

Crasher is crasher_2021-03-19_2649.x (to be checked in shortly).

Repro example:

package sample

fn __sample__main(x0: bits[29], x1: (), x2: bits[53], x3: bits[43], x4: bits[51]) -> ((), bits[18]) {
literal.34: () = literal(value=(), id=34)
x7: bits[18] = bit_slice(x3, start=0, width=18, id=55, pos=0,18,20)
ret tuple.50: ((), bits[18]) = tuple(literal.34, x7, id=50, pos=0,33,2)
}

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.