Skip to content

Commit bdac0c1

Browse files
Sean Purser-Haskellcopybara-github
authored andcommitted
Robust and rationalized pass-through removal.
Phi input ordering is preserved by explicitly recording the states in which an input is selected by the phi for a parameter in ContinuationInput::choose_in_states. This is filled in using an initial FSM layout on the unoptimized continuation graph. Then, after optimization, the choose_in_states field is used to fill back in NewFSMState::current_inputs_by_input_param. PiperOrigin-RevId: 889376624
1 parent d7bb8a3 commit bdac0c1

9 files changed

Lines changed: 963 additions & 383 deletions

File tree

xls/contrib/xlscc/BUILD

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,7 @@ cc_library(
195195
"//xls/ir:state_element",
196196
"//xls/ir:value",
197197
"//xls/ir:value_utils",
198+
"@com_google_absl//absl/algorithm:container",
198199
"@com_google_absl//absl/container:btree",
199200
"@com_google_absl//absl/container:flat_hash_map",
200201
"@com_google_absl//absl/container:flat_hash_set",
@@ -257,6 +258,7 @@ cc_library(
257258
"//xls/passes:inlining_pass",
258259
"//xls/passes:node_source_analysis",
259260
"//xls/passes:optimization_pass",
261+
"//xls/passes:optimization_pass_pipeline",
260262
"//xls/passes:partial_info_query_engine",
261263
"//xls/passes:pass_base",
262264
"//xls/solvers:z3_ir_translator",

xls/contrib/xlscc/continuations.cc

Lines changed: 458 additions & 152 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)