<stg><name>nfa_get_finals</name>


<trans_list>

<trans id="17" from="1" to="2">
<condition id="2">
<or_exp><and_exp></and_exp></or_exp>
</condition>
</trans>

<trans id="18" from="2" to="3">
<condition id="3">
<or_exp><and_exp></and_exp></or_exp>
</condition>
</trans>
</trans_list>



<state_list>

<state id="1" st_id="1">

<operation id="4" st_id="1" stage="1" lat="1">
<core>NPI64M</core>
<MemPortIdVec></MemPortIdVec>
<condition id="-1">
<or_exp><and_exp></and_exp></or_exp>
</condition>

<node id="4" bw="1" op_0_bw="1" op_1_bw="32" op_2_bw="32">
<![CDATA[
:2  %nfa_finals_buckets_load_req = call i1 @_ssdm_op_ReadReq.ap_bus.i32P(i32* %nfa_finals_buckets, i32 1)

]]></node>
<StgValue><ssdm name="nfa_finals_buckets_load_req"/></StgValue>
</operation>
</state>

<state id="2" st_id="2">

<operation id="5" st_id="2" stage="1" lat="1">
<core>NPI64M</core>
<MemPortIdVec></MemPortIdVec>
<condition id="-1">
<or_exp><and_exp></and_exp></or_exp>
</condition>

<node id="5" bw="32" op_0_bw="32" op_1_bw="32">
<![CDATA[
:3  %nfa_finals_buckets_read = call i32 @_ssdm_op_Read.ap_bus.i32P(i32* %nfa_finals_buckets)

]]></node>
<StgValue><ssdm name="nfa_finals_buckets_read"/></StgValue>
</operation>

<operation id="6" st_id="2" stage="1" lat="1">
<core>NULL</core>
<MemPortIdVec></MemPortIdVec>
<condition id="-1">
<or_exp><and_exp></and_exp></or_exp>
</condition>

<node id="6" bw="32" op_0_bw="32" op_1_bw="32">
<![CDATA[
:4  %nfa_finals_buckets_addr = getelementptr i32* %nfa_finals_buckets, i32 1

]]></node>
<StgValue><ssdm name="nfa_finals_buckets_addr"/></StgValue>
</operation>

<operation id="7" st_id="2" stage="1" lat="1">
<core>NPI64M</core>
<MemPortIdVec></MemPortIdVec>
<condition id="-1">
<or_exp><and_exp></and_exp></or_exp>
</condition>

<node id="7" bw="1" op_0_bw="1" op_1_bw="32" op_2_bw="32">
<![CDATA[
:5  %nfa_finals_buckets_load_1_req = call i1 @_ssdm_op_ReadReq.ap_bus.i32P(i32* %nfa_finals_buckets_addr, i32 1)

]]></node>
<StgValue><ssdm name="nfa_finals_buckets_load_1_req"/></StgValue>
</operation>
</state>

<state id="3" st_id="3">

<operation id="8" st_id="3" stage="1" lat="1">
<core>NULL</core>
<MemPortIdVec></MemPortIdVec>
<condition id="-1">
<or_exp><and_exp></and_exp></or_exp>
</condition>

<node id="2" bw="0" op_0_bw="0" op_1_bw="32" op_2_bw="8" op_3_bw="8" op_4_bw="8" op_5_bw="8" op_6_bw="8" op_7_bw="8">
<![CDATA[
:0  call void (...)* @_ssdm_op_SpecIFCore(i32* %nfa_finals_buckets, [1 x i8]* @p_str1132, [7 x i8]* @p_str38, [1 x i8]* @p_str1132, [1 x i8]* @p_str1132, [1 x i8]* @p_str1132, [1 x i8]* @p_str1132)

]]></node>
<StgValue><ssdm name=""/></StgValue>
</operation>

<operation id="9" st_id="3" stage="1" lat="1">
<core>NULL</core>
<MemPortIdVec></MemPortIdVec>
<condition id="-1">
<or_exp><and_exp></and_exp></or_exp>
</condition>

<node id="3" bw="0" op_0_bw="0" op_1_bw="32" op_2_bw="8" op_3_bw="32" op_4_bw="32" op_5_bw="32" op_6_bw="8">
<![CDATA[
:1  call void (...)* @_ssdm_op_SpecBus(i32* %nfa_finals_buckets, [7 x i8]* @p_str35, i32 0, i32 0, i32 0, [1 x i8]* @p_str1132)

]]></node>
<StgValue><ssdm name=""/></StgValue>
</operation>

<operation id="10" st_id="3" stage="1" lat="1">
<core>NPI64M</core>
<MemPortIdVec></MemPortIdVec>
<condition id="-1">
<or_exp><and_exp></and_exp></or_exp>
</condition>

<node id="8" bw="32" op_0_bw="32" op_1_bw="32">
<![CDATA[
:6  %nfa_finals_buckets_addr_read = call i32 @_ssdm_op_Read.ap_bus.i32P(i32* %nfa_finals_buckets_addr)

]]></node>
<StgValue><ssdm name="nfa_finals_buckets_addr_read"/></StgValue>
</operation>

<operation id="11" st_id="3" stage="1" lat="1">
<core>NULL</core>
<MemPortIdVec></MemPortIdVec>
<condition id="-1">
<or_exp><and_exp></and_exp></or_exp>
</condition>

<node id="9" bw="64" op_0_bw="64" op_1_bw="32">
<![CDATA[
:7  %mrv = insertvalue { i32, i32 } undef, i32 %nfa_finals_buckets_read, 0

]]></node>
<StgValue><ssdm name="mrv"/></StgValue>
</operation>

<operation id="12" st_id="3" stage="1" lat="1">
<core>NULL</core>
<MemPortIdVec></MemPortIdVec>
<condition id="-1">
<or_exp><and_exp></and_exp></or_exp>
</condition>

<node id="10" bw="64" op_0_bw="64" op_1_bw="32">
<![CDATA[
:8  %mrv_1 = insertvalue { i32, i32 } %mrv, i32 %nfa_finals_buckets_addr_read, 1

]]></node>
<StgValue><ssdm name="mrv_1"/></StgValue>
</operation>

<operation id="13" st_id="3" stage="1" lat="1">
<core>NULL</core>
<MemPortIdVec></MemPortIdVec>
<condition id="-1">
<or_exp><and_exp></and_exp></or_exp>
</condition>

<node id="11" bw="0" op_0_bw="64">
<![CDATA[
:9  ret { i32, i32 } %mrv_1

]]></node>
<StgValue><ssdm name=""/></StgValue>
</operation>
</state>
</state_list>


<ports>
<port id="19" name="nfa_finals_buckets" dir="0" iftype="4">
<core>NPI64M</core><StgValue><ssdm name="nfa_finals_buckets"/></StgValue>
</port>
</ports>


<dataflows>
<dataflow id="21" from="_ssdm_op_ReadReq.ap_bus.i32P" to="nfa_finals_buckets_load_req" fromId="20" toId="4">
</dataflow>
<dataflow id="22" from="nfa_finals_buckets" to="nfa_finals_buckets_load_req" fromId="19" toId="4">
</dataflow>
<dataflow id="24" from="stg_23" to="nfa_finals_buckets_load_req" fromId="23" toId="4">
</dataflow>
<dataflow id="26" from="_ssdm_op_Read.ap_bus.i32P" to="nfa_finals_buckets_read" fromId="25" toId="5">
</dataflow>
<dataflow id="27" from="nfa_finals_buckets" to="nfa_finals_buckets_read" fromId="19" toId="5">
</dataflow>
<dataflow id="28" from="nfa_finals_buckets" to="nfa_finals_buckets_addr" fromId="19" toId="6">
</dataflow>
<dataflow id="29" from="stg_23" to="nfa_finals_buckets_addr" fromId="23" toId="6">
</dataflow>
<dataflow id="30" from="_ssdm_op_ReadReq.ap_bus.i32P" to="nfa_finals_buckets_load_1_req" fromId="20" toId="7">
</dataflow>
<dataflow id="31" from="nfa_finals_buckets_addr" to="nfa_finals_buckets_load_1_req" fromId="6" toId="7">
</dataflow>
<dataflow id="32" from="stg_23" to="nfa_finals_buckets_load_1_req" fromId="23" toId="7">
</dataflow>
<dataflow id="34" from="_ssdm_op_SpecIFCore" to="stg_8" fromId="33" toId="8">
</dataflow>
<dataflow id="35" from="nfa_finals_buckets" to="stg_8" fromId="19" toId="8">
</dataflow>
<dataflow id="37" from="p_str1132" to="stg_8" fromId="36" toId="8">
</dataflow>
<dataflow id="39" from="p_str38" to="stg_8" fromId="38" toId="8">
</dataflow>
<dataflow id="40" from="p_str1132" to="stg_8" fromId="36" toId="8">
</dataflow>
<dataflow id="41" from="p_str1132" to="stg_8" fromId="36" toId="8">
</dataflow>
<dataflow id="42" from="p_str1132" to="stg_8" fromId="36" toId="8">
</dataflow>
<dataflow id="43" from="p_str1132" to="stg_8" fromId="36" toId="8">
</dataflow>
<dataflow id="45" from="_ssdm_op_SpecBus" to="stg_9" fromId="44" toId="9">
</dataflow>
<dataflow id="46" from="nfa_finals_buckets" to="stg_9" fromId="19" toId="9">
</dataflow>
<dataflow id="48" from="p_str35" to="stg_9" fromId="47" toId="9">
</dataflow>
<dataflow id="50" from="stg_49" to="stg_9" fromId="49" toId="9">
</dataflow>
<dataflow id="51" from="stg_49" to="stg_9" fromId="49" toId="9">
</dataflow>
<dataflow id="52" from="stg_49" to="stg_9" fromId="49" toId="9">
</dataflow>
<dataflow id="53" from="p_str1132" to="stg_9" fromId="36" toId="9">
</dataflow>
<dataflow id="54" from="_ssdm_op_Read.ap_bus.i32P" to="nfa_finals_buckets_addr_read" fromId="25" toId="10">
</dataflow>
<dataflow id="55" from="nfa_finals_buckets_addr" to="nfa_finals_buckets_addr_read" fromId="6" toId="10">
</dataflow>
<dataflow id="57" from="stg_56" to="mrv" fromId="56" toId="11">
</dataflow>
<dataflow id="58" from="nfa_finals_buckets_read" to="mrv" fromId="5" toId="11">
</dataflow>
<dataflow id="59" from="mrv" to="mrv_1" fromId="11" toId="12">
</dataflow>
<dataflow id="60" from="nfa_finals_buckets_addr_read" to="mrv_1" fromId="10" toId="12">
</dataflow>
<dataflow id="61" from="mrv_1" to="stg_13" fromId="12" toId="13">
</dataflow>
</dataflows>


</stg>
