You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
IR conversion of the following dslx (with a parametric function called both in another function and in the proc next function):
fn count<IMPL: bool>(x:u32) -> u32 {
for(i, v): (u32, u32) in u32:0..u32:10 {
v
} (x)
}
fn main() -> u32 {
count<false>(u32:0)
}
proc Counter {
in_ch: chan<u32> in;
out_ch: chan<u32> out;
init {
u32:0
}
config(in_ch: chan<u32> in, out_ch: chan<u32> out) {
(in_ch, out_ch)
}
next(tok: token, state: u32) {
let (tok, in_data) = recv(tok, in_ch);
let x = count<false>(in_data);
let next_state = state + x;
let tok = send(tok, out_ch, next_state);
next_state
}
}
Results in an error message
INTERNAL: XLS_RET_CHECK failure (third_party/xls/ir/verifier.cc:1862) !name_set->contains(function_base->name()) Function/proc/block with name ____test__count__0_counted_for_0_body is not unique within package test
is not removing these duplicates due to them being partly parametric.
The text was updated successfully, but these errors were encountered:
hongted
added
bug
Something isn't working or is incorrect
dslx
DSLX (domain specific language) implementation / front-end
labels
Feb 15, 2024
hongted
changed the title
Use of a for in a parametric function in proc next function results in duplicate ConversionRecords
Use of a parametric function in both a proc next function and function results in duplicate ConversionRecords
Feb 15, 2024
IR conversion of the following dslx (with a parametric function called both in another function and in the proc next function):
Results in an error message
Suspect that
xls/xls/dslx/ir_convert/extract_conversion_order.cc
Line 656 in e2302fd
The text was updated successfully, but these errors were encountered: