
Reclaiming functions: fci_validate_cmd_params/33 fci_qos_scheduler_cmd_query_get_sch/29 fci_qos_scheduler_cmd_update_cfg_scheduler/28 fci_qos_scheduler_cmd_update_set_mode/27
Reclaiming variables:
Clearing address taken flags:
Symbol table:

fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (fci_qos_scheduler_cmd_query_get_sch.isra.0) @06e4e0e0
  Type: function definition analyzed
  Visibility: artificial
  References: 
  Referring: 
  Availability: local
  Function flags: count:184654389 (estimated locally) body local optimize_size
  Called by: fci_qos_scheduler_cmd/30 (30165779 (estimated locally),0.03 per call) 
  Calls: pfe_tmu_sch_get_input_weight/68 (630715948 (estimated locally),3.42 per call) pfe_phy_if_get_id/44 (630715948 (estimated locally),3.42 per call) pfe_tmu_sch_get_input_weight/68 (158818098 (estimated locally),0.86 per call) pfe_phy_if_get_id/44 (158818098 (estimated locally),0.86 per call) pfe_tmu_sch_get_bound_sch_output/67 (324914276 (estimated locally),1.76 per call) pfe_phy_if_get_id/44 (324914276 (estimated locally),1.76 per call) pfe_tmu_sch_get_bound_queue/66 (955630224 (estimated locally),5.18 per call) pfe_phy_if_get_id/44 (955630224 (estimated locally),5.18 per call) pfe_tmu_sch_get_input_cnt/60 (118111600 (estimated locally),0.64 per call) pfe_phy_if_get_id/44 (118111600 (estimated locally),0.64 per call) pfe_tmu_sch_get_algo/65 (184635923 (estimated locally),1.00 per call) pfe_phy_if_get_id/44 (184635923 (estimated locally),1.00 per call) pfe_tmu_sch_get_rate_mode/64 (184654389 (estimated locally),1.00 per call) pfe_phy_if_get_id/44 (184654389 (estimated locally),1.00 per call) 
fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0/109 (fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0) @06e25620
  Type: function definition analyzed
  Visibility: artificial
  References: 
  Referring: 
  Availability: local
  Function flags: count:75947690 (estimated locally) body local optimize_size
  Called by: fci_qos_scheduler_cmd/30 (3285053 (estimated locally),0.00 per call) 
  Calls: pfe_tmu_sch_set_input_weight/63 (79520420 (estimated locally),1.05 per call) pfe_phy_if_get_id/44 (79520420 (estimated locally),1.05 per call) pfe_tmu_sch_bind_sch_output/62 (207280202 (estimated locally),2.73 per call) pfe_phy_if_get_id/44 (207280202 (estimated locally),2.73 per call) pfe_tmu_sch_bind_queue/61 (152377961 (estimated locally),2.01 per call) pfe_phy_if_get_id/44 (152377961 (estimated locally),2.01 per call) pfe_tmu_sch_bind_queue/61 (582462527 (estimated locally),7.67 per call) pfe_phy_if_get_id/44 (582462527 (estimated locally),7.67 per call) pfe_tmu_sch_get_input_cnt/60 (75947690 (estimated locally),1.00 per call) pfe_phy_if_get_id/44 (75947690 (estimated locally),1.00 per call) 
fci_qos_scheduler_cmd_update_set_mode.isra.0/108 (fci_qos_scheduler_cmd_update_set_mode.isra.0) @06e25ee0
  Type: function definition analyzed
  Visibility: artificial
  References: sch_algos/24 (read)
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: fci_qos_scheduler_cmd/30 (9954707 (estimated locally),0.01 per call) 
  Calls: pfe_tmu_sch_set_algo/59 (209397184 (estimated locally),0.20 per call) pfe_phy_if_get_id/44 (209397184 (estimated locally),0.20 per call) pfe_tmu_sch_set_rate_mode/58 (86669348 (estimated locally),0.08 per call) pfe_phy_if_get_id/44 (86669348 (estimated locally),0.08 per call) pfe_tmu_sch_set_rate_mode/58 (108662673 (estimated locally),0.10 per call) pfe_phy_if_get_id/44 (108662673 (estimated locally),0.10 per call) 
pfe_gpi_shp_get_limits/106 (pfe_gpi_shp_get_limits) @0d810000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (2605637 (estimated locally),0.00 per call) 
  Calls: 
pfe_gpi_shp_get_idle_slope/105 (pfe_gpi_shp_get_idle_slope) @0d802540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (7895870 (estimated locally),0.01 per call) 
  Calls: 
pfe_gpi_shp_get_mode/104 (pfe_gpi_shp_get_mode) @0d802ee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (23926878 (estimated locally),0.02 per call) 
  Calls: 
pfe_gpi_shp_get_type/103 (pfe_gpi_shp_get_type) @0d802e00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (72505690 (estimated locally),0.07 per call) 
  Calls: 
pfe_gpi_shp_is_enabled/102 (pfe_gpi_shp_is_enabled) @0d802d20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (72505690 (estimated locally),0.07 per call) 
  Calls: 
pfe_gpi_shp_set_limits/101 (pfe_gpi_shp_set_limits) @0d802c40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (429930 (estimated locally),0.00 per call) 
  Calls: 
pfe_gpi_shp_set_idle_slope/100 (pfe_gpi_shp_set_idle_slope) @0d802b60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (1302818 (estimated locally),0.00 per call) 
  Calls: 
pfe_gpi_shp_set_mode/99 (pfe_gpi_shp_set_mode) @0d802a80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (3947935 (estimated locally),0.00 per call) 
  Calls: 
pfe_gpi_shp_set_type/98 (pfe_gpi_shp_set_type) @0d8029a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (11963439 (estimated locally),0.01 per call) 
  Calls: 
pfe_gpi_shp_disable/97 (pfe_gpi_shp_disable) @0d8028c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (36252845 (estimated locally),0.03 per call) 
  Calls: 
pfe_gpi_shp_enable/96 (pfe_gpi_shp_enable) @0d8027e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (36252845 (estimated locally),0.03 per call) 
  Calls: 
pfe_gpi_wred_get_prob/95 (pfe_gpi_wred_get_prob) @0d802460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_wred_cmd/40 (274263974 (estimated locally),0.26 per call) 
  Calls: 
pfe_gpi_wred_get_thr/94 (pfe_gpi_wred_get_thr) @0d802380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_wred_cmd/40 (215409043 (estimated locally),0.20 per call) 
  Calls: 
pfe_gpi_wred_is_enabled/93 (pfe_gpi_wred_is_enabled) @0d8022a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_wred_cmd/40 (83650512 (estimated locally),0.08 per call) 
  Calls: 
pfe_gpi_wred_set_prob/92 (pfe_gpi_wred_set_prob) @0d8021c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_wred_cmd/40 (18459161 (estimated locally),0.02 per call) 
  Calls: 
pfe_gpi_wred_set_thr/91 (pfe_gpi_wred_set_thr) @0d8020e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_wred_cmd/40 (28377570 (estimated locally),0.03 per call) 
  Calls: 
pfe_gpi_wred_disable/90 (pfe_gpi_wred_disable) @0d802000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_wred_cmd/40 (41825256 (estimated locally),0.04 per call) 
  Calls: 
pfe_gpi_wred_enable/89 (pfe_gpi_wred_enable) @0d7e2e00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_wred_cmd/40 (41825256 (estimated locally),0.04 per call) 
  Calls: 
pfe_gpi_qos_get_next_flow/88 (pfe_gpi_qos_get_next_flow) @0d7e2700
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_flow_cmd/39 (77223579 (estimated locally),0.07 per call) 
  Calls: 
pfe_gpi_qos_get_first_flow/87 (pfe_gpi_qos_get_first_flow) @0d7e2620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_flow_cmd/39 (77223579 (estimated locally),0.07 per call) 
  Calls: 
pfe_gpi_qos_rem_flow/86 (pfe_gpi_qos_rem_flow) @0d7e2540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_flow_cmd/39 (25483781 (estimated locally),0.02 per call) 
  Calls: 
pfe_gpi_qos_add_flow/85 (pfe_gpi_qos_add_flow) @0d7e2460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_flow_cmd/39 (12741891 (estimated locally),0.01 per call) 
  Calls: 
pfe_emac_get_gpi/84 (pfe_emac_get_gpi) @0d7e20e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_get_gpi/32 (792206719 (estimated locally),0.74 per call) 
  Calls: 
pfe_phy_if_get_emac/83 (pfe_phy_if_get_emac) @0d7e2000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_get_gpi/32 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
pfe_gpi_qos_is_enabled/82 (pfe_gpi_qos_is_enabled) @0d7cbee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_cmd/34 (128693095 (estimated locally),0.12 per call) 
  Calls: 
pfe_gpi_qos_disable/81 (pfe_gpi_qos_disable) @0d7cbe00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_cmd/34 (64346547 (estimated locally),0.06 per call) 
  Calls: 
pfe_gpi_qos_enable/80 (pfe_gpi_qos_enable) @0d7cbd20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_cmd/34 (64346547 (estimated locally),0.06 per call) 
  Calls: 
pfe_tmu_shp_get_position/79 (pfe_tmu_shp_get_position) @0d7cbb60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_shaper_cmd/31 (30162763 (estimated locally),0.03 per call) 
  Calls: 
pfe_tmu_shp_get_idle_slope/78 (pfe_tmu_shp_get_idle_slope) @0d7cba80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_shaper_cmd/31 (30162763 (estimated locally),0.03 per call) 
  Calls: 
pfe_tmu_shp_get_limits/77 (pfe_tmu_shp_get_limits) @0d7cb9a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_shaper_cmd/31 (30162763 (estimated locally),0.03 per call) 
  Calls: 
pfe_tmu_shp_get_rate_mode/76 (pfe_tmu_shp_get_rate_mode) @0d7cb8c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_shaper_cmd/31 (30165779 (estimated locally),0.03 per call) 
  Calls: 
pfe_tmu_shp_set_idle_slope/75 (pfe_tmu_shp_set_idle_slope) @0d7cb7e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_shaper_cmd/31 (63098 (estimated locally),0.00 per call) 
  Calls: 
pfe_tmu_shp_set_limits/74 (pfe_tmu_shp_set_limits) @0d7cb700
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_shaper_cmd/31 (579417 (estimated locally),0.00 per call) 
  Calls: 
pfe_tmu_shp_set_rate_mode/73 (pfe_tmu_shp_set_rate_mode) @0d7cb620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_shaper_cmd/31 (779057 (estimated locally),0.00 per call) fci_qos_shaper_cmd/31 (976752 (estimated locally),0.00 per call) 
  Calls: 
pfe_tmu_shp_enable/72 (pfe_tmu_shp_enable) @0d7cb540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_shaper_cmd/31 (9651695 (estimated locally),0.01 per call) 
  Calls: 
pfe_tmu_shp_disable/71 (pfe_tmu_shp_disable) @0d7cb460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_shaper_cmd/31 (16264569 (estimated locally),0.02 per call) 
  Calls: 
pfe_tmu_shp_set_position/70 (pfe_tmu_shp_set_position) @0d7cb380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_shaper_cmd/31 (191208 (estimated locally),0.00 per call) fci_qos_shaper_cmd/31 (6662595 (estimated locally),0.01 per call) 
  Calls: 
pfe_tmu_check_shaper/69 (pfe_tmu_check_shaper) @0d7cb2a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_shaper_cmd/31 (91411452 (estimated locally),0.09 per call) fci_qos_shaper_cmd/31 (58495123 (estimated locally),0.05 per call) 
  Calls: 
pfe_tmu_sch_get_input_weight/68 (pfe_tmu_sch_get_input_weight) @0d78fc40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (630715948 (estimated locally),3.42 per call) fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (158818098 (estimated locally),0.86 per call) 
  Calls: 
pfe_tmu_sch_get_bound_sch_output/67 (pfe_tmu_sch_get_bound_sch_output) @0d78f700
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (324914276 (estimated locally),1.76 per call) 
  Calls: 
pfe_tmu_sch_get_bound_queue/66 (pfe_tmu_sch_get_bound_queue) @0d78fee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (955630224 (estimated locally),5.18 per call) 
  Calls: 
pfe_tmu_sch_get_algo/65 (pfe_tmu_sch_get_algo) @0d78fe00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (184635923 (estimated locally),1.00 per call) 
  Calls: 
pfe_tmu_sch_get_rate_mode/64 (pfe_tmu_sch_get_rate_mode) @0d78fd20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (184654389 (estimated locally),1.00 per call) 
  Calls: 
pfe_tmu_sch_set_input_weight/63 (pfe_tmu_sch_set_input_weight) @0d78fb60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0/109 (79520420 (estimated locally),1.05 per call) 
  Calls: 
pfe_tmu_sch_bind_sch_output/62 (pfe_tmu_sch_bind_sch_output) @0d78fa80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0/109 (207280202 (estimated locally),2.73 per call) 
  Calls: 
pfe_tmu_sch_bind_queue/61 (pfe_tmu_sch_bind_queue) @0d78f9a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0/109 (152377961 (estimated locally),2.01 per call) fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0/109 (582462527 (estimated locally),7.67 per call) 
  Calls: 
pfe_tmu_sch_get_input_cnt/60 (pfe_tmu_sch_get_input_cnt) @0d78f8c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (118111600 (estimated locally),0.64 per call) fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0/109 (75947690 (estimated locally),1.00 per call) 
  Calls: 
pfe_tmu_sch_set_algo/59 (pfe_tmu_sch_set_algo) @0d78f620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_scheduler_cmd_update_set_mode.isra.0/108 (209397184 (estimated locally),0.20 per call) 
  Calls: 
pfe_tmu_sch_set_rate_mode/58 (pfe_tmu_sch_set_rate_mode) @0d78f540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_scheduler_cmd_update_set_mode.isra.0/108 (86669348 (estimated locally),0.08 per call) fci_qos_scheduler_cmd_update_set_mode.isra.0/108 (108662673 (estimated locally),0.10 per call) 
  Calls: 
pfe_tmu_check_scheduler/57 (pfe_tmu_check_scheduler) @0d78f380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_scheduler_cmd/30 (91411452 (estimated locally),0.09 per call) fci_qos_scheduler_cmd/30 (91411452 (estimated locally),0.09 per call) 
  Calls: 
pfe_if_db_unlock/56 (pfe_if_db_unlock) @0d78f0e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_get_phy_if_by_name/25 (587014656 (estimated locally),0.55 per call) 
  Calls: 
pfe_if_db_entry_get_phy_if/55 (pfe_if_db_entry_get_phy_if) @0d78f000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_get_phy_if_by_name/25 (410910259 (estimated locally),0.38 per call) 
  Calls: 
pfe_if_db_get_first/54 (pfe_if_db_get_first) @0d75f700
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_get_phy_if_by_name/25 (587014656 (estimated locally),0.55 per call) 
  Calls: 
pfe_if_db_lock/53 (pfe_if_db_lock) @0d75f620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_get_phy_if_by_name/25 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
pfe_tmu_queue_get_wred_prob/52 (pfe_tmu_queue_get_wred_prob) @0d75f000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_queue_cmd/26 (50381360 (estimated locally),0.05 per call) 
  Calls: 
pfe_tmu_queue_get_wred_zones/51 (pfe_tmu_queue_get_wred_zones) @0d75fee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_queue_cmd/26 (7541445 (estimated locally),0.01 per call) 
  Calls: 
pfe_tmu_queue_get_mode/50 (pfe_tmu_queue_get_mode) @0d75fe00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_queue_cmd/26 (30165779 (estimated locally),0.03 per call) 
  Calls: 
strncpy/49 (strncpy) @0d75fd20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (72505690 (estimated locally),0.07 per call) fci_qos_policer_wred_cmd/40 (83650512 (estimated locally),0.08 per call) fci_qos_policer_flow_cmd/39 (77223579 (estimated locally),0.07 per call) fci_qos_policer_flow_cmd/39 (77223579 (estimated locally),0.07 per call) fci_qos_policer_cmd/34 (128693095 (estimated locally),0.12 per call) fci_qos_shaper_cmd/31 (30165779 (estimated locally),0.03 per call) fci_qos_scheduler_cmd/30 (30165779 (estimated locally),0.03 per call) fci_qos_queue_cmd/26 (30165779 (estimated locally),0.03 per call) 
  Calls: 
pfe_tmu_check_queue/48 (pfe_tmu_check_queue) @0d75fc40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_queue_cmd/26 (91411452 (estimated locally),0.09 per call) 
  Calls: 
pfe_tmu_queue_set_wred_prob/47 (pfe_tmu_queue_set_wred_prob) @0d75fb60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_queue_cmd/26 (8497732 (estimated locally),0.01 per call) 
  Calls: 
pfe_tmu_queue_set_mode/46 (pfe_tmu_queue_set_mode) @0d75fa80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_queue_cmd/26 (7311890 (estimated locally),0.01 per call) fci_qos_queue_cmd/26 (7311890 (estimated locally),0.01 per call) 
  Calls: 
pfe_tmu_queue_get_cnt/45 (pfe_tmu_queue_get_cnt) @0d75f9a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_queue_cmd/26 (1479927 (estimated locally),0.00 per call) fci_qos_queue_cmd/26 (58495123 (estimated locally),0.05 per call) 
  Calls: 
pfe_phy_if_get_id/44 (pfe_phy_if_get_id) @0d75f8c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_shaper_cmd/31 (30162763 (estimated locally),0.03 per call) fci_qos_shaper_cmd/31 (30162763 (estimated locally),0.03 per call) fci_qos_shaper_cmd/31 (30162763 (estimated locally),0.03 per call) fci_qos_shaper_cmd/31 (30165779 (estimated locally),0.03 per call) fci_qos_shaper_cmd/31 (91411452 (estimated locally),0.09 per call) fci_qos_shaper_cmd/31 (63098 (estimated locally),0.00 per call) fci_qos_shaper_cmd/31 (191208 (estimated locally),0.00 per call) fci_qos_shaper_cmd/31 (579417 (estimated locally),0.00 per call) fci_qos_shaper_cmd/31 (779057 (estimated locally),0.00 per call) fci_qos_shaper_cmd/31 (976752 (estimated locally),0.00 per call) fci_qos_shaper_cmd/31 (9651695 (estimated locally),0.01 per call) fci_qos_shaper_cmd/31 (16264569 (estimated locally),0.02 per call) fci_qos_shaper_cmd/31 (6662595 (estimated locally),0.01 per call) fci_qos_shaper_cmd/31 (119670874 (estimated locally),0.11 per call) fci_qos_scheduler_cmd/30 (91411452 (estimated locally),0.09 per call) fci_qos_scheduler_cmd/30 (45705726 (estimated locally),0.04 per call) fci_qos_scheduler_cmd/30 (91411452 (estimated locally),0.09 per call) fci_qos_queue_cmd/26 (50381360 (estimated locally),0.05 per call) fci_qos_queue_cmd/26 (7541445 (estimated locally),0.01 per call) fci_qos_queue_cmd/26 (30165779 (estimated locally),0.03 per call) fci_qos_queue_cmd/26 (91411452 (estimated locally),0.09 per call) fci_qos_queue_cmd/26 (8497732 (estimated locally),0.01 per call) fci_qos_queue_cmd/26 (1479927 (estimated locally),0.00 per call) fci_qos_queue_cmd/26 (7311890 (estimated locally),0.01 per call) fci_qos_queue_cmd/26 (7311890 (estimated locally),0.01 per call) fci_qos_queue_cmd/26 (119670874 (estimated locally),0.11 per call) fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (630715948 (estimated locally),3.42 per call) fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (158818098 (estimated locally),0.86 per call) fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (324914276 (estimated locally),1.76 per call) fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (955630224 (estimated locally),5.18 per call) fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (118111600 (estimated locally),0.64 per call) fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (184635923 (estimated locally),1.00 per call) fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (184654389 (estimated locally),1.00 per call) fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0/109 (79520420 (estimated locally),1.05 per call) fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0/109 (207280202 (estimated locally),2.73 per call) fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0/109 (152377961 (estimated locally),2.01 per call) fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0/109 (582462527 (estimated locally),7.67 per call) fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0/109 (75947690 (estimated locally),1.00 per call) fci_qos_scheduler_cmd_update_set_mode.isra.0/108 (209397184 (estimated locally),0.20 per call) fci_qos_scheduler_cmd_update_set_mode.isra.0/108 (86669348 (estimated locally),0.08 per call) fci_qos_scheduler_cmd_update_set_mode.isra.0/108 (108662673 (estimated locally),0.10 per call) 
  Calls: 
memset/43 (memset) @0d75f7e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (697932186 (estimated locally),0.65 per call) fci_qos_policer_wred_cmd/40 (697932186 (estimated locally),0.65 per call) fci_qos_policer_flow_cmd/39 (697932185 (estimated locally),0.65 per call) fci_qos_policer_flow_cmd/39 (1073741823 (estimated locally),1.00 per call) fci_qos_policer_cmd/34 (697932186 (estimated locally),0.65 per call) fci_qos_shaper_cmd/31 (512926469 (estimated locally),0.48 per call) fci_qos_scheduler_cmd/30 (512926469 (estimated locally),0.48 per call) fci_qos_queue_cmd/26 (512926469 (estimated locally),0.48 per call) 
  Calls: 
__context/42 (__context) @0d78c0d8
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: fci_qos_scheduler_cmd/30 (addr)fci_qos_queue_cmd/26 (read)fci_get_phy_if_by_name/25 (read)fci_qos_queue_cmd/26 (read)fci_qos_queue_cmd/26 (read)fci_qos_queue_cmd/26 (read)fci_qos_queue_cmd/26 (read)fci_qos_queue_cmd/26 (read)fci_qos_queue_cmd/26 (read)fci_qos_queue_cmd/26 (read)fci_qos_queue_cmd/26 (read)fci_qos_scheduler_cmd/30 (read)fci_qos_scheduler_cmd/30 (addr)fci_qos_scheduler_cmd/30 (addr)fci_qos_scheduler_cmd/30 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)fci_qos_shaper_cmd/31 (read)
  Availability: not_available
  Varpool flags:
fci_qos_policer_shp_cmd/41 (fci_qos_policer_shp_cmd) @0d75f1c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: pfe_gpi_shp_get_limits/106 (2605637 (estimated locally),0.00 per call) pfe_gpi_shp_get_idle_slope/105 (7895870 (estimated locally),0.01 per call) pfe_gpi_shp_get_mode/104 (23926878 (estimated locally),0.02 per call) pfe_gpi_shp_get_type/103 (72505690 (estimated locally),0.07 per call) pfe_gpi_shp_is_enabled/102 (72505690 (estimated locally),0.07 per call) strncpy/49 (72505690 (estimated locally),0.07 per call) pfe_gpi_shp_set_limits/101 (429930 (estimated locally),0.00 per call) pfe_gpi_shp_set_idle_slope/100 (1302818 (estimated locally),0.00 per call) pfe_gpi_shp_set_mode/99 (3947935 (estimated locally),0.00 per call) pfe_gpi_shp_set_type/98 (11963439 (estimated locally),0.01 per call) pfe_gpi_shp_disable/97 (36252845 (estimated locally),0.03 per call) pfe_gpi_shp_enable/96 (36252845 (estimated locally),0.03 per call) fci_qos_get_gpi/32 (475222025 (estimated locally),0.44 per call) fci_get_phy_if_by_name/25 (697932186 (estimated locally),0.65 per call) memset/43 (697932186 (estimated locally),0.65 per call) 
fci_qos_policer_wred_cmd/40 (fci_qos_policer_wred_cmd) @0d739d20
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: pfe_gpi_wred_get_prob/95 (274263974 (estimated locally),0.26 per call) pfe_gpi_wred_get_thr/94 (215409043 (estimated locally),0.20 per call) pfe_gpi_wred_is_enabled/93 (83650512 (estimated locally),0.08 per call) strncpy/49 (83650512 (estimated locally),0.08 per call) pfe_gpi_wred_set_prob/92 (18459161 (estimated locally),0.02 per call) pfe_gpi_wred_set_thr/91 (28377570 (estimated locally),0.03 per call) pfe_gpi_wred_disable/90 (41825256 (estimated locally),0.04 per call) pfe_gpi_wred_enable/89 (41825256 (estimated locally),0.04 per call) fci_qos_get_gpi/32 (475222025 (estimated locally),0.44 per call) fci_get_phy_if_by_name/25 (697932186 (estimated locally),0.65 per call) memset/43 (697932186 (estimated locally),0.65 per call) 
fci_qos_policer_flow_cmd/39 (fci_qos_policer_flow_cmd) @0d7392a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741823 (estimated locally) body optimize_size
  Called by: 
  Calls: fci_qos_flow_entry_convert_from_gpi/38 (25483781 (estimated locally),0.02 per call) pfe_gpi_qos_get_next_flow/88 (77223579 (estimated locally),0.07 per call) strncpy/49 (77223579 (estimated locally),0.07 per call) fci_qos_flow_entry_convert_from_gpi/38 (25483781 (estimated locally),0.02 per call) pfe_gpi_qos_get_first_flow/87 (77223579 (estimated locally),0.07 per call) strncpy/49 (77223579 (estimated locally),0.07 per call) pfe_gpi_qos_rem_flow/86 (25483781 (estimated locally),0.02 per call) pfe_gpi_qos_add_flow/85 (12741891 (estimated locally),0.01 per call) fci_qos_flow_entry_validate_and_fixup_masks/36 (77223579 (estimated locally),0.07 per call) fci_qos_flow_entry_convert_to_gpi/37 (77223579 (estimated locally),0.07 per call) fci_qos_get_gpi/32 (475222024 (estimated locally),0.44 per call) fci_get_phy_if_by_name/25 (697932185 (estimated locally),0.65 per call) memset/43 (697932185 (estimated locally),0.65 per call) memset/43 (1073741823 (estimated locally),1.00 per call) 
fci_qos_flow_entry_convert_from_gpi/38 (fci_qos_flow_entry_convert_from_gpi) @0d739ee0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: fci_qos_policer_flow_cmd/39 (25483781 (estimated locally),0.02 per call) fci_qos_policer_flow_cmd/39 (25483781 (estimated locally),0.02 per call) 
  Calls: 
fci_qos_flow_entry_convert_to_gpi/37 (fci_qos_flow_entry_convert_to_gpi) @0d739c40
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: fci_qos_policer_flow_cmd/39 (77223579 (estimated locally),0.07 per call) 
  Calls: 
fci_qos_flow_entry_validate_and_fixup_masks/36 (fci_qos_flow_entry_validate_and_fixup_masks) @0d7399a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741823 (estimated locally) body local optimize_size
  Called by: fci_qos_policer_flow_cmd/39 (77223579 (estimated locally),0.07 per call) 
  Calls: fci_qos_flow_entry_validate_dip_sport_dport/35 (131312124 (estimated locally),0.12 per call) 
fci_qos_flow_entry_validate_dip_sport_dport/35 (fci_qos_flow_entry_validate_dip_sport_dport) @0d739700
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: fci_qos_flow_entry_validate_and_fixup_masks/36 (131312124 (estimated locally),0.12 per call) 
  Calls: 
fci_qos_policer_cmd/34 (fci_qos_policer_cmd) @0d739460
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: pfe_gpi_qos_is_enabled/82 (128693095 (estimated locally),0.12 per call) strncpy/49 (128693095 (estimated locally),0.12 per call) pfe_gpi_qos_disable/81 (64346547 (estimated locally),0.06 per call) pfe_gpi_qos_enable/80 (64346547 (estimated locally),0.06 per call) fci_qos_get_gpi/32 (475222025 (estimated locally),0.44 per call) fci_get_phy_if_by_name/25 (697932186 (estimated locally),0.65 per call) memset/43 (697932186 (estimated locally),0.65 per call) 
fci_qos_get_gpi/32 (fci_qos_get_gpi) @0777cee0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (475222025 (estimated locally),0.44 per call) fci_qos_policer_wred_cmd/40 (475222025 (estimated locally),0.44 per call) fci_qos_policer_flow_cmd/39 (475222024 (estimated locally),0.44 per call) fci_qos_policer_cmd/34 (475222025 (estimated locally),0.44 per call) 
  Calls: pfe_emac_get_gpi/84 (792206719 (estimated locally),0.74 per call) pfe_phy_if_get_emac/83 (1073741824 (estimated locally),1.00 per call) 
fci_qos_shaper_cmd/31 (fci_qos_shaper_cmd) @0777c9a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: __context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: pfe_tmu_shp_get_position/79 (30162763 (estimated locally),0.03 per call) pfe_phy_if_get_id/44 (30162763 (estimated locally),0.03 per call) pfe_tmu_shp_get_idle_slope/78 (30162763 (estimated locally),0.03 per call) pfe_phy_if_get_id/44 (30162763 (estimated locally),0.03 per call) pfe_tmu_shp_get_limits/77 (30162763 (estimated locally),0.03 per call) pfe_phy_if_get_id/44 (30162763 (estimated locally),0.03 per call) pfe_tmu_shp_get_rate_mode/76 (30165779 (estimated locally),0.03 per call) pfe_phy_if_get_id/44 (30165779 (estimated locally),0.03 per call) strncpy/49 (30165779 (estimated locally),0.03 per call) pfe_tmu_check_shaper/69 (91411452 (estimated locally),0.09 per call) pfe_phy_if_get_id/44 (91411452 (estimated locally),0.09 per call) fci_get_phy_if_by_name/25 (170958392 (estimated locally),0.16 per call) pfe_tmu_shp_set_idle_slope/75 (63098 (estimated locally),0.00 per call) pfe_phy_if_get_id/44 (63098 (estimated locally),0.00 per call) pfe_tmu_shp_set_position/70 (191208 (estimated locally),0.00 per call) pfe_phy_if_get_id/44 (191208 (estimated locally),0.00 per call) pfe_tmu_shp_set_limits/74 (579417 (estimated locally),0.00 per call) pfe_phy_if_get_id/44 (579417 (estimated locally),0.00 per call) pfe_tmu_shp_set_rate_mode/73 (779057 (estimated locally),0.00 per call) pfe_phy_if_get_id/44 (779057 (estimated locally),0.00 per call) pfe_tmu_shp_set_rate_mode/73 (976752 (estimated locally),0.00 per call) pfe_phy_if_get_id/44 (976752 (estimated locally),0.00 per call) pfe_tmu_shp_enable/72 (9651695 (estimated locally),0.01 per call) pfe_phy_if_get_id/44 (9651695 (estimated locally),0.01 per call) pfe_tmu_shp_disable/71 (16264569 (estimated locally),0.02 per call) pfe_phy_if_get_id/44 (16264569 (estimated locally),0.02 per call) pfe_tmu_shp_set_position/70 (6662595 (estimated locally),0.01 per call) pfe_phy_if_get_id/44 (6662595 (estimated locally),0.01 per call) pfe_tmu_check_shaper/69 (58495123 (estimated locally),0.05 per call) pfe_phy_if_get_id/44 (119670874 (estimated locally),0.11 per call) fci_get_phy_if_by_name/25 (170958392 (estimated locally),0.16 per call) memset/43 (512926469 (estimated locally),0.48 per call) 
fci_qos_scheduler_cmd/30 (fci_qos_scheduler_cmd) @0777c460
  Type: function definition analyzed
  Visibility: externally_visible public
  References: __context/42 (read)__context/42 (addr)__context/42 (addr)__context/42 (read)__context/42 (addr)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: fci_qos_scheduler_cmd_query_get_sch.isra.0/110 (30165779 (estimated locally),0.03 per call) strncpy/49 (30165779 (estimated locally),0.03 per call) pfe_tmu_check_scheduler/57 (91411452 (estimated locally),0.09 per call) pfe_phy_if_get_id/44 (91411452 (estimated locally),0.09 per call) fci_get_phy_if_by_name/25 (170958392 (estimated locally),0.16 per call) fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0/109 (3285053 (estimated locally),0.00 per call) fci_qos_scheduler_cmd_update_set_mode.isra.0/108 (9954707 (estimated locally),0.01 per call) pfe_phy_if_get_id/44 (45705726 (estimated locally),0.04 per call) pfe_tmu_check_scheduler/57 (91411452 (estimated locally),0.09 per call) pfe_phy_if_get_id/44 (91411452 (estimated locally),0.09 per call) fci_get_phy_if_by_name/25 (170958392 (estimated locally),0.16 per call) memset/43 (512926469 (estimated locally),0.48 per call) 
fci_qos_queue_cmd/26 (fci_qos_queue_cmd) @0777c620
  Type: function definition analyzed
  Visibility: externally_visible public
  References: __context/42 (read)__context/42 (read)__context/42 (read)fci_qmode_to_qmode/23 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)__context/42 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: pfe_tmu_queue_get_wred_prob/52 (50381360 (estimated locally),0.05 per call) pfe_phy_if_get_id/44 (50381360 (estimated locally),0.05 per call) pfe_tmu_queue_get_wred_zones/51 (7541445 (estimated locally),0.01 per call) pfe_phy_if_get_id/44 (7541445 (estimated locally),0.01 per call) pfe_tmu_queue_get_mode/50 (30165779 (estimated locally),0.03 per call) pfe_phy_if_get_id/44 (30165779 (estimated locally),0.03 per call) strncpy/49 (30165779 (estimated locally),0.03 per call) pfe_tmu_check_queue/48 (91411452 (estimated locally),0.09 per call) pfe_phy_if_get_id/44 (91411452 (estimated locally),0.09 per call) fci_get_phy_if_by_name/25 (170958392 (estimated locally),0.16 per call) pfe_tmu_queue_set_wred_prob/47 (8497732 (estimated locally),0.01 per call) pfe_phy_if_get_id/44 (8497732 (estimated locally),0.01 per call) pfe_tmu_queue_get_cnt/45 (1479927 (estimated locally),0.00 per call) pfe_phy_if_get_id/44 (1479927 (estimated locally),0.00 per call) pfe_tmu_queue_set_mode/46 (7311890 (estimated locally),0.01 per call) pfe_phy_if_get_id/44 (7311890 (estimated locally),0.01 per call) pfe_tmu_queue_set_mode/46 (7311890 (estimated locally),0.01 per call) pfe_phy_if_get_id/44 (7311890 (estimated locally),0.01 per call) pfe_tmu_queue_get_cnt/45 (58495123 (estimated locally),0.05 per call) pfe_phy_if_get_id/44 (119670874 (estimated locally),0.11 per call) fci_get_phy_if_by_name/25 (170958392 (estimated locally),0.16 per call) memset/43 (512926469 (estimated locally),0.48 per call) 
fci_get_phy_if_by_name/25 (fci_get_phy_if_by_name) @0777c380
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: __context/42 (read)
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: fci_qos_policer_shp_cmd/41 (697932186 (estimated locally),0.65 per call) fci_qos_policer_wred_cmd/40 (697932186 (estimated locally),0.65 per call) fci_qos_policer_flow_cmd/39 (697932185 (estimated locally),0.65 per call) fci_qos_policer_cmd/34 (697932186 (estimated locally),0.65 per call) fci_qos_shaper_cmd/31 (170958392 (estimated locally),0.16 per call) fci_qos_shaper_cmd/31 (170958392 (estimated locally),0.16 per call) fci_qos_scheduler_cmd/30 (170958392 (estimated locally),0.16 per call) fci_qos_scheduler_cmd/30 (170958392 (estimated locally),0.16 per call) fci_qos_queue_cmd/26 (170958392 (estimated locally),0.16 per call) fci_qos_queue_cmd/26 (170958392 (estimated locally),0.16 per call) 
  Calls: pfe_if_db_unlock/56 (587014656 (estimated locally),0.55 per call) pfe_if_db_entry_get_phy_if/55 (410910259 (estimated locally),0.38 per call) pfe_if_db_get_first/54 (587014656 (estimated locally),0.55 per call) pfe_if_db_lock/53 (1073741824 (estimated locally),1.00 per call) 
sch_algos/24 (sch_algos) @077743f0
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: fci_qos_scheduler_cmd_update_set_mode.isra.0/108 (read)
  Availability: available
  Varpool flags: initialized read-only const-value-known
fci_qmode_to_qmode/23 (fci_qmode_to_qmode) @07774360
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: fci_qos_queue_cmd/26 (read)
  Availability: available
  Varpool flags: initialized read-only const-value-known
fci_qos_scheduler_cmd_query_get_sch.isra.0 (struct pfe_tmu_t * const * ISRA.74, uint8_t * ISRA.75, uint16_t * * fci_ret, struct fpp_qos_scheduler_cmd_t * * reply_buf, struct pfe_phy_if_t * phy_if)
{
  errno_t ret;
  uint32_t weight;
  uint8_t ii;
  uint8_t cnt;
  uint8_t queue;
  struct pfe_tmu_t * _2;
  <unnamed type> _4;
  unsigned char _6;
  <unnamed type> _7;
  struct fpp_qos_scheduler_cmd_t * _9;
  struct fpp_qos_scheduler_cmd_t * _10;
  uint16_t * _12;
  struct pfe_tmu_t * _13;
  <unnamed type> _14;
  unsigned char _15;
  struct fpp_qos_scheduler_cmd_t * _16;
  <unnamed type> _17;
  struct fpp_qos_scheduler_cmd_t * _18;
  unsigned char _19;
  uint16_t * _20;
  struct pfe_tmu_t * _21;
  <unnamed type> _22;
  unsigned char _23;
  struct fpp_qos_scheduler_cmd_t * _25;
  struct pfe_tmu_t * _26;
  <unnamed type> _27;
  unsigned char _28;
  struct pfe_tmu_t * _31;
  <unnamed type> _32;
  unsigned char _33;
  unsigned char _34;
  struct fpp_qos_scheduler_cmd_t * _35;
  int _36;
  struct pfe_tmu_t * _37;
  <unnamed type> _38;
  unsigned char _39;
  long unsigned int _41;
  long unsigned int _42;
  long unsigned int _43;
  long unsigned int _44;
  long unsigned int _45;
  long unsigned int _46;
  long unsigned int _47;
  long unsigned int _48;
  struct fpp_qos_scheduler_cmd_t * _49;
  int _50;
  long unsigned int _51;
  long unsigned int _52;
  long unsigned int _53;
  long unsigned int _54;
  struct pfe_tmu_t * _55;
  <unnamed type> _56;
  unsigned char _57;
  long unsigned int _59;
  long unsigned int _60;
  long unsigned int _61;
  long unsigned int _62;
  long unsigned int _63;
  long unsigned int _64;
  long unsigned int _65;
  long unsigned int _66;
  struct fpp_qos_scheduler_cmd_t * _67;
  int _68;
  long unsigned int _69;
  long unsigned int _70;
  long unsigned int _71;
  long unsigned int _72;
  struct fpp_qos_scheduler_cmd_t * _74;
  long unsigned int _75;
  long unsigned int _76;
  long unsigned int _77;
  long unsigned int _78;
  long unsigned int _79;
  long unsigned int _80;
  long unsigned int _81;
  long unsigned int _82;
  long unsigned int _83;
  long unsigned int _84;

  <bb 18> [local count: 184654389]:
  # DEBUG fci s=> fci
  # DEBUG sch s=> sch

  <bb 2> [local count: 184654389]:
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _2 = *ISRA.74_112(D);
  _4 = pfe_phy_if_get_id (phy_if_3(D));
  _6 = *ISRA.75_113(D);
  _7 = pfe_tmu_sch_get_rate_mode (_2, _4, _6);
  switch (_7) <default: <L2> [33.33%], case 0: <L0> [33.33%], case 1: <L1> [33.33%]>

  <bb 3> [local count: 61545308]:
<L0>:
  # DEBUG BEGIN_STMT
  _9 = *reply_buf_8(D);
  _9->mode = 1;
  # DEBUG BEGIN_STMT
  goto <bb 6>; [100.00%]

  <bb 4> [local count: 61545308]:
<L1>:
  # DEBUG BEGIN_STMT
  _10 = *reply_buf_8(D);
  _10->mode = 2;
  # DEBUG BEGIN_STMT
  goto <bb 6>; [100.00%]

  <bb 5> [local count: 61545308]:
<L2>:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _12 = *fci_ret_11(D);
  *_12 = 65535;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 22
  # DEBUG BEGIN_STMT

  <bb 6> [local count: 184635923]:
  # DEBUG BEGIN_STMT
  _13 = *ISRA.74_112(D);
  _14 = pfe_phy_if_get_id (phy_if_3(D));
  _15 = *ISRA.75_113(D);
  _16 = *reply_buf_8(D);
  _17 = pfe_tmu_sch_get_algo (_13, _14, _15);
  _16->algo = _17;
  # DEBUG BEGIN_STMT
  _18 = *reply_buf_8(D);
  _19 = _18->algo;
  if (_19 == 4)
    goto <bb 7>; [36.03%]
  else
    goto <bb 8>; [63.97%]

  <bb 7> [local count: 66524323]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _20 = *fci_ret_11(D);
  *_20 = 65535;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 22
  goto <bb 17>; [100.00%]

  <bb 8> [local count: 118111600]:
  # DEBUG BEGIN_STMT
  _21 = *ISRA.74_112(D);
  _22 = pfe_phy_if_get_id (phy_if_3(D));
  _23 = *ISRA.75_113(D);
  cnt_24 = pfe_tmu_sch_get_input_cnt (_21, _22, _23);
  # DEBUG cnt => cnt_24
  # DEBUG BEGIN_STMT
  _25 = *reply_buf_8(D);
  _25->input_en = 0;
  # DEBUG BEGIN_STMT
  # DEBUG ii => 0
  goto <bb 15>; [100.00%]

  <bb 9> [local count: 955630224]:
  # DEBUG BEGIN_STMT
  _26 = *ISRA.74_112(D);
  _27 = pfe_phy_if_get_id (phy_if_3(D));
  _28 = *ISRA.75_113(D);
  queue_30 = pfe_tmu_sch_get_bound_queue (_26, _27, _28, ii_29);
  # DEBUG queue => queue_30
  # DEBUG BEGIN_STMT
  if (queue_30 == 255)
    goto <bb 10>; [34.00%]
  else
    goto <bb 13>; [66.00%]

  <bb 10> [local count: 324914276]:
  # DEBUG BEGIN_STMT
  _31 = *ISRA.74_112(D);
  _32 = pfe_phy_if_get_id (phy_if_3(D));
  _33 = *ISRA.75_113(D);
  _34 = pfe_tmu_sch_get_bound_sch_output (_31, _32, _33, ii_29);
  if (_34 == 255)
    goto <bb 11>; [51.12%]
  else
    goto <bb 12>; [48.88%]

  <bb 11> [local count: 166096178]:
  # DEBUG BEGIN_STMT
  _35 = *reply_buf_8(D);
  _36 = (int) ii_29;
  _35->input_src[_36] = 255;
  goto <bb 14>; [100.00%]

  <bb 12> [local count: 158818098]:
  # DEBUG BEGIN_STMT
  _37 = *ISRA.74_112(D);
  _38 = pfe_phy_if_get_id (phy_if_3(D));
  _39 = *ISRA.75_113(D);
  weight_40 = pfe_tmu_sch_get_input_weight (_37, _38, _39, ii_29);
  # DEBUG weight => weight_40
  # DEBUG BEGIN_STMT
  _41 = weight_40 >> 24;
  _42 = weight_40 >> 8;
  _43 = _42 & 65280;
  _44 = _41 | _43;
  _45 = weight_40 << 8;
  _46 = _45 & 16711680;
  _47 = _44 | _46;
  _48 = weight_40 << 24;
  _49 = *reply_buf_8(D);
  _50 = (int) ii_29;
  _51 = _47 | _48;
  _49->input_w[_50] = _51;
  # DEBUG BEGIN_STMT
  _49->input_src[_50] = 8;
  # DEBUG BEGIN_STMT
  _52 = _49->input_en;
  _53 = 1 << _50;
  _54 = _52 | _53;
  _49->input_en = _54;
  goto <bb 14>; [100.00%]

  <bb 13> [local count: 630715948]:
  # DEBUG BEGIN_STMT
  _55 = *ISRA.74_112(D);
  _56 = pfe_phy_if_get_id (phy_if_3(D));
  _57 = *ISRA.75_113(D);
  weight_58 = pfe_tmu_sch_get_input_weight (_55, _56, _57, ii_29);
  # DEBUG weight => weight_58
  # DEBUG BEGIN_STMT
  _59 = weight_58 >> 24;
  _60 = weight_58 >> 8;
  _61 = _60 & 65280;
  _62 = _59 | _61;
  _63 = weight_58 << 8;
  _64 = _63 & 16711680;
  _65 = _62 | _64;
  _66 = weight_58 << 24;
  _67 = *reply_buf_8(D);
  _68 = (int) ii_29;
  _69 = _65 | _66;
  _67->input_w[_68] = _69;
  # DEBUG BEGIN_STMT
  _67->input_src[_68] = queue_30;
  # DEBUG BEGIN_STMT
  _70 = _67->input_en;
  _71 = 1 << _68;
  _72 = _70 | _71;
  _67->input_en = _72;

  <bb 14> [local count: 955630224]:
  # DEBUG BEGIN_STMT
  ii_73 = ii_29 + 1;
  # DEBUG ii => ii_73

  <bb 15> [local count: 1073741824]:
  # ii_29 = PHI <0(8), ii_73(14)>
  # DEBUG ii => ii_29
  # DEBUG BEGIN_STMT
  if (cnt_24 > ii_29)
    goto <bb 9>; [89.00%]
  else
    goto <bb 16>; [11.00%]

  <bb 16> [local count: 118111601]:
  # DEBUG BEGIN_STMT
  _74 = *reply_buf_8(D);
  _75 = _74->input_en;
  _76 = _75 >> 24;
  _77 = _75 >> 8;
  _78 = _77 & 65280;
  _79 = _76 | _78;
  _80 = _75 << 8;
  _81 = _80 & 16711680;
  _82 = _79 | _81;
  _83 = _75 << 24;
  _84 = _82 | _83;
  _74->input_en = _84;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0

  <bb 17> [local count: 184635924]:
  # ret_85 = PHI <22(7), 0(16)>
  # DEBUG ret => ret_85
  # DEBUG BEGIN_STMT
  return ret_85;

}


fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0 (struct pfe_tmu_t * const * ISRA.72, struct fpp_qos_scheduler_cmd_t * * sch, uint16_t * * fci_ret, struct pfe_phy_if_t * phy_if)
{
  errno_t ret;
  uint8_t cnt;
  uint8_t ii;
  bool_t is_break;
  struct pfe_tmu_t * _2;
  <unnamed type> _4;
  struct fpp_qos_scheduler_cmd_t * _6;
  unsigned char _7;
  struct fpp_qos_scheduler_cmd_t * _9;
  long unsigned int _10;
  long unsigned int _11;
  long unsigned int _12;
  long unsigned int _13;
  long unsigned int _14;
  long unsigned int _15;
  long unsigned int _16;
  long unsigned int _17;
  long unsigned int _18;
  long unsigned int _19;
  struct fpp_qos_scheduler_cmd_t * _20;
  long unsigned int _21;
  int _23;
  long unsigned int _24;
  long unsigned int _25;
  unsigned char _26;
  struct pfe_tmu_t * _27;
  <unnamed type> _28;
  unsigned char _29;
  uint16_t * _32;
  struct pfe_tmu_t * _33;
  <unnamed type> _34;
  unsigned char _35;
  uint16_t * _37;
  struct pfe_tmu_t * _38;
  <unnamed type> _39;
  unsigned char _40;
  unsigned char _41;
  uint16_t * _43;
  uint16_t * _44;
  struct pfe_tmu_t * _46;
  <unnamed type> _47;
  struct fpp_qos_scheduler_cmd_t * _48;
  unsigned char _49;
  long unsigned int _50;
  long unsigned int _51;
  long unsigned int _52;
  long unsigned int _53;
  long unsigned int _54;
  long unsigned int _55;
  long unsigned int _56;
  long unsigned int _57;
  long unsigned int _58;
  long unsigned int _59;
  uint16_t * _61;

  <bb 21> [local count: 75947690]:
  # DEBUG fci s=> fci

  <bb 2> [local count: 75947690]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG cnt => 0
  # DEBUG BEGIN_STMT
  # DEBUG ii => 0
  # DEBUG BEGIN_STMT
  # DEBUG is_break => 0
  # DEBUG BEGIN_STMT
  _2 = *ISRA.72_86(D);
  _4 = pfe_phy_if_get_id (phy_if_3(D));
  _6 = *sch_5(D);
  _7 = _6->id;
  cnt_8 = pfe_tmu_sch_get_input_cnt (_2, _4, _7);
  # DEBUG cnt => cnt_8
  # DEBUG BEGIN_STMT
  _9 = *sch_5(D);
  _10 = _9->input_en;
  _11 = _10 >> 24;
  _12 = _10 >> 8;
  _13 = _12 & 65280;
  _14 = _11 | _13;
  _15 = _10 << 8;
  _16 = _15 & 16711680;
  _17 = _14 | _16;
  _18 = _10 << 24;
  _19 = _17 | _18;
  _9->input_en = _19;
  # DEBUG BEGIN_STMT
  # DEBUG ii => 0
  goto <bb 19>; [100.00%]

  <bb 3> [local count: 1044213925]:
  # DEBUG BEGIN_STMT
  _20 = *sch_5(D);
  _21 = _20->input_en;
  _23 = (int) ii_22;
  _24 = _21 >> _23;
  _25 = _24 & 1;
  if (_25 == 0)
    goto <bb 5>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 4> [local count: 699623330]:
  _26 = _20->input_src[_23];
  if (_26 == 255)
    goto <bb 5>; [34.00%]
  else
    goto <bb 7>; [66.00%]

  <bb 5> [local count: 582462527]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _27 = *ISRA.72_86(D);
  _28 = pfe_phy_if_get_id (phy_if_3(D));
  _29 = _20->id;
  ret_30 = pfe_tmu_sch_bind_queue (_27, _28, _29, ii_22, 255);
  # DEBUG ret => ret_30
  # DEBUG BEGIN_STMT
  if (ret_30 != 0)
    goto <bb 6>; [2.75%]
  else
    goto <bb 17>; [97.25%]

  <bb 6> [local count: 16017719]:
  # ret_65 = PHI <ret_30(5)>
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _32 = *fci_ret_31(D);
  *_32 = 65535;
  # DEBUG BEGIN_STMT
  # DEBUG is_break => 1
  # DEBUG ret => ret_65
  # DEBUG BEGIN_STMT
  goto <bb 20>; [100.00%]

  <bb 7> [local count: 461751397]:
  # DEBUG BEGIN_STMT
  if (_26 <= 7)
    goto <bb 8>; [33.00%]
  else
    goto <bb 10>; [67.00%]

  <bb 8> [local count: 152377961]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _33 = *ISRA.72_86(D);
  _34 = pfe_phy_if_get_id (phy_if_3(D));
  _35 = _20->id;
  ret_36 = pfe_tmu_sch_bind_queue (_33, _34, _35, ii_22, _26);
  # DEBUG ret => ret_36
  # DEBUG BEGIN_STMT
  if (ret_36 != 0)
    goto <bb 9>; [33.00%]
  else
    goto <bb 14>; [67.00%]

  <bb 9> [local count: 50284727]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _37 = *fci_ret_31(D);
  *_37 = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG is_break => 1
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 17>; [100.00%]

  <bb 10> [local count: 309373436]:
  # DEBUG BEGIN_STMT
  if (_26 == 8)
    goto <bb 11>; [67.00%]
  else
    goto <bb 13>; [33.00%]

  <bb 11> [local count: 207280202]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _38 = *ISRA.72_86(D);
  _39 = pfe_phy_if_get_id (phy_if_3(D));
  _40 = _20->id;
  _41 = _40 + 255;
  ret_42 = pfe_tmu_sch_bind_sch_output (_38, _39, _41, _40, ii_22);
  # DEBUG ret => ret_42
  # DEBUG BEGIN_STMT
  if (ret_42 != 0)
    goto <bb 12>; [33.00%]
  else
    goto <bb 14>; [67.00%]

  <bb 12> [local count: 68402467]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _43 = *fci_ret_31(D);
  *_43 = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG is_break => 1
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 17>; [100.00%]

  <bb 13> [local count: 102093234]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _44 = *fci_ret_31(D);
  *_44 = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG is_break => 1
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 17>; [100.00%]

  <bb 14> [local count: 240970969]:
  # ret_66 = PHI <ret_36(8), ret_42(11)>
  # DEBUG is_break => is_break_45
  # DEBUG ret => ret_66
  # DEBUG BEGIN_STMT
  if (is_break_45 == 0)
    goto <bb 15>; [33.00%]
  else
    goto <bb 17>; [67.00%]

  <bb 15> [local count: 79520420]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _46 = *ISRA.72_86(D);
  _47 = pfe_phy_if_get_id (phy_if_3(D));
  _48 = *sch_5(D);
  _49 = _48->id;
  _50 = _48->input_w[_23];
  _51 = _50 >> 24;
  _52 = _50 >> 8;
  _53 = _52 & 65280;
  _54 = _51 | _53;
  _55 = _50 << 8;
  _56 = _55 & 16711680;
  _57 = _54 | _56;
  _58 = _50 << 24;
  _59 = _57 | _58;
  ret_60 = pfe_tmu_sch_set_input_weight (_46, _47, _49, ii_22, _59);
  # DEBUG ret => ret_60
  # DEBUG BEGIN_STMT
  if (ret_60 != 0)
    goto <bb 16>; [2.75%]
  else
    goto <bb 17>; [97.25%]

  <bb 16> [local count: 2186812]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _61 = *fci_ret_31(D);
  *_61 = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG is_break => 1
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 20>; [100.00%]

  <bb 17> [local count: 1026009393]:
  # ret_67 = PHI <ret_30(5), 0(9), 0(12), 0(13), ret_66(14), ret_60(15)>
  # is_break_62 = PHI <is_break_45(5), 1(9), 1(12), 1(13), is_break_45(14), 0(15)>
  # DEBUG is_break => is_break_62
  # DEBUG ret => ret_67
  # DEBUG BEGIN_STMT
  if (is_break_62 == 1)
    goto <bb 20>; [2.75%]
  else
    goto <bb 18>; [97.25%]

  <bb 18> [local count: 997794135]:
  # DEBUG BEGIN_STMT
  ii_63 = ii_22 + 1;
  # DEBUG ii => ii_63

  <bb 19> [local count: 1073741824]:
  # ret_68 = PHI <ret_69(D)(2), ret_67(18)>
  # ii_22 = PHI <0(2), ii_63(18)>
  # is_break_45 = PHI <0(2), is_break_62(18)>
  # DEBUG is_break => is_break_45
  # DEBUG ii => ii_22
  # DEBUG ret => ret_68
  # DEBUG BEGIN_STMT
  if (cnt_8 > ii_22)
    goto <bb 3>; [97.25%]
  else
    goto <bb 20>; [2.75%]

  <bb 20> [local count: 75947690]:
  # ret_64 = PHI <ret_65(6), 0(16), ret_67(17), ret_68(19)>
  # DEBUG ret => ret_64
  # DEBUG BEGIN_STMT
  return ret_64;

}


fci_qos_scheduler_cmd_update_set_mode.isra.0 (struct pfe_tmu_t * const * ISRA.70, struct fpp_qos_scheduler_cmd_t * * sch, uint16_t * * fci_ret, struct pfe_phy_if_t * phy_if)
{
  errno_t ret;
  struct fpp_qos_scheduler_cmd_t * _2;
  unsigned char _3;
  struct pfe_tmu_t * _5;
  <unnamed type> _7;
  unsigned char _8;
  struct pfe_tmu_t * _10;
  <unnamed type> _11;
  unsigned char _12;
  uint16_t * _16;
  struct fpp_qos_scheduler_cmd_t * _17;
  unsigned char _18;
  uint16_t * _19;
  struct pfe_tmu_t * _20;
  <unnamed type> _21;
  unsigned char _22;
  int _23;
  <unnamed type> _24;
  uint16_t * _26;

  <bb 15> [local count: 1073741824]:
  # DEBUG fci s=> fci

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _2 = *sch_1(D);
  _3 = _2->mode;
  if (_3 == 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _2->input_en = 0;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 10>; [100.00%]

  <bb 4> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  if (_3 == 1)
    goto <bb 5>; [20.24%]
  else
    goto <bb 6>; [79.76%]

  <bb 5> [local count: 108662673]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _5 = *ISRA.70_40(D);
  _7 = pfe_phy_if_get_id (phy_if_6(D));
  _8 = _2->id;
  ret_9 = pfe_tmu_sch_set_rate_mode (_5, _7, _8, 0);
  # DEBUG ret => ret_9
  goto <bb 8>; [100.00%]

  <bb 6> [local count: 428208240]:
  # DEBUG BEGIN_STMT
  if (_3 == 2)
    goto <bb 7>; [20.24%]
  else
    goto <bb 9>; [79.76%]

  <bb 7> [local count: 86669348]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _10 = *ISRA.70_40(D);
  _11 = pfe_phy_if_get_id (phy_if_6(D));
  _12 = _2->id;
  ret_13 = pfe_tmu_sch_set_rate_mode (_10, _11, _12, 1);
  # DEBUG ret => ret_13

  <bb 8> [local count: 195332020]:
  # ret_14 = PHI <ret_9(5), ret_13(7)>
  # DEBUG ret => ret_14
  # DEBUG BEGIN_STMT
  if (ret_14 != 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 439204902]:
  # DEBUG ret => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _16 = *fci_ret_15(D);
  *_16 = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  goto <bb 14>; [100.00%]

  <bb 10> [local count: 634536923]:
  # DEBUG BEGIN_STMT
  _17 = *sch_1(D);
  _18 = _17->algo;
  if (_18 > 3)
    goto <bb 11>; [67.00%]
  else
    goto <bb 12>; [33.00%]

  <bb 11> [local count: 425139738]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _19 = *fci_ret_15(D);
  *_19 = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  goto <bb 14>; [100.00%]

  <bb 12> [local count: 209397184]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _20 = *ISRA.70_40(D);
  _21 = pfe_phy_if_get_id (phy_if_6(D));
  _22 = _17->id;
  _23 = (int) _18;
  _24 = sch_algos[_23];
  ret_25 = pfe_tmu_sch_set_algo (_20, _21, _22, _24);
  # DEBUG ret => ret_25
  # DEBUG BEGIN_STMT
  if (ret_25 != 0)
    goto <bb 13>; [50.00%]
  else
    goto <bb 14>; [50.00%]

  <bb 13> [local count: 104698592]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _26 = *fci_ret_15(D);
  *_26 = 65535;

  <bb 14> [local count: 1073741824]:
  # ret_27 = PHI <0(9), 0(11), ret_25(12), ret_25(13)>
  # DEBUG ret => ret_27
  # DEBUG BEGIN_STMT
  return ret_27;

}


fci_qos_policer_shp_cmd (struct fci_msg_t * msg, uint16_t * fci_ret, struct fpp_qos_policer_shp_cmd_t * reply_buf, uint32_t * reply_len)
{
  errno_t ret;
  struct pfe_gpi_t * gpi;
  struct pfe_phy_if_t * phy_if;
  uint32_t shp_isl;
  int32_t shp_min_credit;
  int32_t shp_max_credit;
  fpp_iqos_shp_rate_mode_t shp_mode;
  fpp_iqos_shp_type_t shp_type;
  uint8_t shp_id;
  char[16] * _1;
  short unsigned int _2;
  unsigned char _3;
  <unnamed type> _4;
  <unnamed type> _5;
  long unsigned int _6;
  long unsigned int _7;
  long unsigned int _8;
  long unsigned int _9;
  long unsigned int _10;
  long unsigned int _11;
  long unsigned int _12;
  long unsigned int _13;
  long unsigned int _14;
  long unsigned int _15;
  long int _16;
  long unsigned int _17;
  long unsigned int _18;
  long unsigned int _19;
  long unsigned int _20;
  long unsigned int _21;
  long unsigned int _22;
  long unsigned int _23;
  long unsigned int _24;
  long unsigned int _25;
  long unsigned int _26;
  long int _27;
  long int _28;
  long unsigned int _29;
  long unsigned int _30;
  long unsigned int _31;
  long unsigned int _32;
  long unsigned int _33;
  long unsigned int _34;
  long unsigned int _35;
  long unsigned int _36;
  long unsigned int _37;
  long unsigned int _38;
  long int _39;
  <unnamed type> shp_mode.36_40;
  long unsigned int shp_isl.37_41;
  long int shp_max_credit.38_42;
  long int shp_min_credit.39_43;
  char[16] * _44;
  unsigned char _45;
  <unnamed type> shp_type.40_46;
  <unnamed type> shp_mode.41_47;
  long unsigned int shp_isl.42_48;
  long unsigned int _49;
  long unsigned int _50;
  long unsigned int _51;
  long unsigned int _52;
  long unsigned int _53;
  long unsigned int _54;
  long unsigned int _55;
  long unsigned int _56;
  long unsigned int _57;
  long int shp_max_credit.46_58;
  long unsigned int shp_max_credit.47_59;
  long unsigned int _60;
  long unsigned int _61;
  long unsigned int _62;
  long unsigned int _63;
  long unsigned int _64;
  long unsigned int _65;
  long unsigned int _66;
  long unsigned int _67;
  long unsigned int _68;
  long int _69;
  long int shp_min_credit.54_70;
  long unsigned int shp_min_credit.55_71;
  long unsigned int _72;
  long unsigned int _73;
  long unsigned int _74;
  long unsigned int _75;
  long unsigned int _76;
  long unsigned int _77;
  long unsigned int _78;
  long unsigned int _79;
  long unsigned int _80;
  long int _81;
  long unsigned int _157;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  shp_max_credit = 0;
  # DEBUG BEGIN_STMT
  shp_min_credit = 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(void *)&shp_type] = 0;
  # DEBUG BEGIN_STMT
  MEM[(void *)&shp_mode] = 0;
  # DEBUG BEGIN_STMT
  # DEBUG D#1 => msg_89(D)
  # DEBUG D#2 => fci_ret_90(D)
  # DEBUG D#3 => reply_buf_91(D)
  _157 = *reply_len_92(D);
  # DEBUG D#4 => reply_len_92(D)
  # DEBUG cmd_len => 36
  # DEBUG INLINE_ENTRY fci_validate_cmd_params
  # DEBUG msg => D#1
  # DEBUG fci_ret => D#2
  # DEBUG reply_buf => D#3
  # DEBUG reply_len => D#4
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (_157 <= 35)
    goto <bb 33>; [35.00%]
  else
    goto <bb 3>; [65.00%]

  <bb 3> [local count: 697932186]:
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG cmd_len => NULL
  # DEBUG ret => NULL
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *reply_len_92(D) = 0;
  # DEBUG BEGIN_STMT
  memset (reply_buf_91(D), 0, 36);
  # DEBUG BEGIN_STMT
  # DEBUG D#16 => &msg_89(D)->msg_cmd.payload
  # DEBUG shp_cmd => D#16
  # DEBUG BEGIN_STMT
  _1 = &MEM[(struct fpp_qos_policer_shp_cmd_t *)msg_89(D) + 16B].if_name;
  phy_if_96 = fci_get_phy_if_by_name (_1);
  # DEBUG phy_if => phy_if_96
  # DEBUG BEGIN_STMT
  if (phy_if_96 == 0B)
    goto <bb 4>; [31.91%]
  else
    goto <bb 5>; [68.09%]

  <bb 4> [local count: 222710160]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 2
  goto <bb 33>; [100.00%]

  <bb 5> [local count: 475222025]:
  # DEBUG BEGIN_STMT
  gpi_98 = fci_qos_get_gpi (phy_if_96);
  # DEBUG gpi => gpi_98
  # DEBUG BEGIN_STMT
  if (gpi_98 == 0B)
    goto <bb 6>; [18.75%]
  else
    goto <bb 7>; [81.25%]

  <bb 6> [local count: 89104130]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 2
  goto <bb 33>; [100.00%]

  <bb 7> [local count: 386117896]:
  # DEBUG BEGIN_STMT
  shp_id_99 = MEM[(struct fpp_qos_policer_shp_cmd_t *)msg_89(D) + 16B].id;
  # DEBUG shp_id => shp_id_99
  # DEBUG BEGIN_STMT
  if (shp_id_99 > 1)
    goto <bb 8>; [43.66%]
  else
    goto <bb 9>; [56.34%]

  <bb 8> [local count: 168579073]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 22
  goto <bb 33>; [100.00%]

  <bb 9> [local count: 217538822]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 0;
  # DEBUG BEGIN_STMT
  _2 = MEM[(struct fpp_qos_policer_shp_cmd_t *)msg_89(D) + 16B].action;
  switch (_2) <default: <L32> [33.33%], case 4: <L7> [33.33%], case 6: <L23> [33.33%]>

  <bb 10> [local count: 72505690]:
<L7>:
  # DEBUG BEGIN_STMT
  _3 = MEM[(struct fpp_qos_policer_shp_cmd_t *)msg_89(D) + 16B].enable;
  if (_3 != 0)
    goto <bb 11>; [50.00%]
  else
    goto <bb 12>; [50.00%]

  <bb 11> [local count: 36252845]:
  # DEBUG BEGIN_STMT
  ret_129 = pfe_gpi_shp_enable (gpi_98, shp_id_99);
  # DEBUG ret => ret_129
  # DEBUG BEGIN_STMT
  if (ret_129 != 0)
    goto <bb 14>; [67.00%]
  else
    goto <bb 15>; [33.00%]

  <bb 12> [local count: 36252845]:
  # DEBUG BEGIN_STMT
  ret_126 = pfe_gpi_shp_disable (gpi_98, shp_id_99);
  # DEBUG ret => ret_126
  # DEBUG BEGIN_STMT
  if (ret_126 != 0)
    goto <bb 13>; [50.00%]
  else
    goto <bb 33>; [50.00%]

  <bb 13> [local count: 18126422]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 65535;
  goto <bb 33>; [100.00%]

  <bb 14> [local count: 24289406]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 33>; [100.00%]

  <bb 15> [local count: 11963439]:
  # DEBUG BEGIN_STMT
  _4 = MEM[(struct fpp_qos_policer_shp_cmd_t *)msg_89(D) + 16B].type;
  shp_type = _4;
  # DEBUG BEGIN_STMT
  _5 = MEM[(struct fpp_qos_policer_shp_cmd_t *)msg_89(D) + 16B].mode;
  shp_mode = _5;
  # DEBUG BEGIN_STMT
  _6 = MEM[(struct fpp_qos_policer_shp_cmd_t *)msg_89(D) + 16B].isl;
  _7 = _6 >> 24;
  _8 = _6 >> 8;
  _9 = _8 & 65280;
  _10 = _7 | _9;
  _11 = _6 << 8;
  _12 = _11 & 16711680;
  _13 = _10 | _12;
  _14 = _6 << 24;
  _15 = _13 | _14;
  shp_isl = _15;
  # DEBUG BEGIN_STMT
  _16 = MEM[(struct fpp_qos_policer_shp_cmd_t *)msg_89(D) + 16B].max_credit;
  _17 = (long unsigned int) _16;
  _18 = _17 >> 24;
  _19 = _17 >> 8;
  _20 = _19 & 65280;
  _21 = _18 | _20;
  _22 = _17 << 8;
  _23 = _22 & 16711680;
  _24 = _21 | _23;
  _25 = _17 << 24;
  _26 = _24 | _25;
  _27 = (long int) _26;
  shp_max_credit = _27;
  # DEBUG BEGIN_STMT
  _28 = MEM[(struct fpp_qos_policer_shp_cmd_t *)msg_89(D) + 16B].min_credit;
  _29 = (long unsigned int) _28;
  _30 = _29 >> 24;
  _31 = _29 >> 8;
  _32 = _31 & 65280;
  _33 = _30 | _32;
  _34 = _29 << 8;
  _35 = _34 & 16711680;
  _36 = _33 | _35;
  _37 = _29 << 24;
  _38 = _36 | _37;
  _39 = (long int) _38;
  shp_min_credit = _39;
  # DEBUG BEGIN_STMT
  ret_136 = pfe_gpi_shp_set_type (gpi_98, shp_id_99, _4);
  # DEBUG ret => ret_136
  # DEBUG BEGIN_STMT
  if (ret_136 != 0)
    goto <bb 16>; [67.00%]
  else
    goto <bb 17>; [33.00%]

  <bb 16> [local count: 8015504]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 33>; [100.00%]

  <bb 17> [local count: 3947935]:
  # DEBUG BEGIN_STMT
  shp_mode.36_40 = shp_mode;
  ret_138 = pfe_gpi_shp_set_mode (gpi_98, shp_id_99, shp_mode.36_40);
  # DEBUG ret => ret_138
  # DEBUG BEGIN_STMT
  if (ret_138 != 0)
    goto <bb 18>; [67.00%]
  else
    goto <bb 19>; [33.00%]

  <bb 18> [local count: 2645116]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 33>; [100.00%]

  <bb 19> [local count: 1302818]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  shp_isl.37_41 = shp_isl;
  ret_140 = pfe_gpi_shp_set_idle_slope (gpi_98, shp_id_99, shp_isl.37_41);
  # DEBUG ret => ret_140
  # DEBUG BEGIN_STMT
  if (ret_140 != 0)
    goto <bb 20>; [67.00%]
  else
    goto <bb 21>; [33.00%]

  <bb 20> [local count: 872888]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 33>; [100.00%]

  <bb 21> [local count: 429930]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  shp_max_credit.38_42 = shp_max_credit;
  shp_min_credit.39_43 = shp_min_credit;
  ret_142 = pfe_gpi_shp_set_limits (gpi_98, shp_id_99, shp_max_credit.38_42, shp_min_credit.39_43);
  # DEBUG ret => ret_142
  # DEBUG BEGIN_STMT
  if (ret_142 != 0)
    goto <bb 22>; [50.00%]
  else
    goto <bb 33>; [50.00%]

  <bb 22> [local count: 214965]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 33>; [100.00%]

  <bb 23> [local count: 72505690]:
<L23>:
  # DEBUG BEGIN_STMT
  reply_buf_91(D)->action = _2;
  # DEBUG BEGIN_STMT
  _44 = &reply_buf_91(D)->if_name;
  strncpy (_44, _1, 16);
  # DEBUG BEGIN_STMT
  reply_buf_91(D)->if_name[15] = 0;
  # DEBUG BEGIN_STMT
  reply_buf_91(D)->id = shp_id_99;
  # DEBUG BEGIN_STMT
  _45 = pfe_gpi_shp_is_enabled (gpi_98, shp_id_99);
  reply_buf_91(D)->enable = _45;
  # DEBUG BEGIN_STMT
  ret_108 = pfe_gpi_shp_get_type (gpi_98, shp_id_99, &shp_type);
  # DEBUG ret => ret_108
  # DEBUG BEGIN_STMT
  if (ret_108 != 0)
    goto <bb 24>; [67.00%]
  else
    goto <bb 25>; [33.00%]

  <bb 24> [local count: 48578812]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 33>; [100.00%]

  <bb 25> [local count: 23926878]:
  # DEBUG BEGIN_STMT
  ret_110 = pfe_gpi_shp_get_mode (gpi_98, shp_id_99, &shp_mode);
  # DEBUG ret => ret_110
  # DEBUG BEGIN_STMT
  if (ret_110 != 0)
    goto <bb 26>; [67.00%]
  else
    goto <bb 27>; [33.00%]

  <bb 26> [local count: 16031008]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 33>; [100.00%]

  <bb 27> [local count: 7895870]:
  # DEBUG BEGIN_STMT
  ret_112 = pfe_gpi_shp_get_idle_slope (gpi_98, shp_id_99, &shp_isl);
  # DEBUG ret => ret_112
  # DEBUG BEGIN_STMT
  if (ret_112 != 0)
    goto <bb 28>; [67.00%]
  else
    goto <bb 29>; [33.00%]

  <bb 28> [local count: 5290233]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 33>; [100.00%]

  <bb 29> [local count: 2605637]:
  # DEBUG BEGIN_STMT
  ret_114 = pfe_gpi_shp_get_limits (gpi_98, shp_id_99, &shp_max_credit, &shp_min_credit);
  # DEBUG ret => ret_114
  # DEBUG BEGIN_STMT
  if (ret_114 != 0)
    goto <bb 30>; [50.00%]
  else
    goto <bb 31>; [50.00%]

  <bb 30> [local count: 1302818]:
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 33>; [100.00%]

  <bb 31> [local count: 1302818]:
  # DEBUG BEGIN_STMT
  shp_type.40_46 = shp_type;
  reply_buf_91(D)->type = shp_type.40_46;
  # DEBUG BEGIN_STMT
  shp_mode.41_47 = shp_mode;
  reply_buf_91(D)->mode = shp_mode.41_47;
  # DEBUG BEGIN_STMT
  shp_isl.42_48 = shp_isl;
  _49 = shp_isl.42_48 >> 24;
  _50 = shp_isl.42_48 >> 8;
  _51 = _50 & 65280;
  _52 = _49 | _51;
  _53 = shp_isl.42_48 << 8;
  _54 = _53 & 16711680;
  _55 = _52 | _54;
  _56 = shp_isl.42_48 << 24;
  _57 = _55 | _56;
  reply_buf_91(D)->isl = _57;
  # DEBUG BEGIN_STMT
  shp_max_credit.46_58 = shp_max_credit;
  shp_max_credit.47_59 = (long unsigned int) shp_max_credit.46_58;
  _60 = shp_max_credit.47_59 >> 24;
  _61 = shp_max_credit.47_59 >> 8;
  _62 = _61 & 65280;
  _63 = _60 | _62;
  _64 = shp_max_credit.47_59 << 8;
  _65 = _64 & 16711680;
  _66 = _63 | _65;
  _67 = shp_max_credit.47_59 << 24;
  _68 = _66 | _67;
  _69 = (long int) _68;
  reply_buf_91(D)->max_credit = _69;
  # DEBUG BEGIN_STMT
  shp_min_credit.54_70 = shp_min_credit;
  shp_min_credit.55_71 = (long unsigned int) shp_min_credit.54_70;
  _72 = shp_min_credit.55_71 >> 24;
  _73 = shp_min_credit.55_71 >> 8;
  _74 = _73 & 65280;
  _75 = _72 | _74;
  _76 = shp_min_credit.55_71 << 8;
  _77 = _76 & 16711680;
  _78 = _75 | _77;
  _79 = shp_min_credit.55_71 << 24;
  _80 = _78 | _79;
  _81 = (long int) _80;
  reply_buf_91(D)->min_credit = _81;
  # DEBUG BEGIN_STMT
  *reply_len_92(D) = 36;
  # DEBUG BEGIN_STMT
  goto <bb 33>; [100.00%]

  <bb 32> [local count: 72505690]:
<L32>:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_90(D) = 4;
  # DEBUG BEGIN_STMT

  <bb 33> [local count: 1073720070]:
  # ret_82 = PHI <22(2), 2(4), 2(6), 22(8), ret_126(13), ret_129(14), ret_136(16), ret_138(18), ret_140(20), ret_142(22), ret_142(21), ret_108(24), ret_110(26), ret_112(28), ret_114(30), 0(31), 0(32), ret_126(12)>
  # DEBUG cmd_len => NULL
  # DEBUG ret => NULL
  # DEBUG ret => ret_82
  # DEBUG BEGIN_STMT
  shp_type ={v} {CLOBBER};
  shp_mode ={v} {CLOBBER};
  shp_max_credit ={v} {CLOBBER};
  shp_min_credit ={v} {CLOBBER};
  shp_isl ={v} {CLOBBER};
  return ret_82;

}


fci_qos_policer_wred_cmd (struct fci_msg_t * msg, uint16_t * fci_ret, struct fpp_qos_policer_wred_cmd_t * reply_buf, uint32_t * reply_len)
{
  uint32_t i;
  errno_t ret;
  struct pfe_gpi_t * gpi;
  struct pfe_phy_if_t * phy_if;
  uint16_t wred_thr;
  fpp_iqos_queue_t queue;
  char[16] * _1;
  short unsigned int _2;
  unsigned char _3;
  short unsigned int _4;
  short unsigned int _5;
  <unnamed type> _6;
  unsigned char _7;
  <unnamed type> _8;
  char[16] * _9;
  unsigned char _10;
  <unnamed type> _11;
  short unsigned int wred_thr.34_12;
  short unsigned int _13;
  <unnamed type> _14;
  uint8_t * _15;
  long unsigned int _94;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG D#1 => msg_43(D)
  # DEBUG D#2 => fci_ret_44(D)
  # DEBUG D#3 => reply_buf_45(D)
  _94 = *reply_len_46(D);
  # DEBUG D#4 => reply_len_46(D)
  # DEBUG cmd_len => 32
  # DEBUG INLINE_ENTRY fci_validate_cmd_params
  # DEBUG msg => D#1
  # DEBUG fci_ret => D#2
  # DEBUG reply_buf => D#3
  # DEBUG reply_len => D#4
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (_94 <= 31)
    goto <bb 39>; [35.00%]
  else
    goto <bb 3>; [65.00%]

  <bb 3> [local count: 697932186]:
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG cmd_len => NULL
  # DEBUG ret => NULL
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *reply_len_46(D) = 0;
  # DEBUG BEGIN_STMT
  memset (reply_buf_45(D), 0, 32);
  # DEBUG BEGIN_STMT
  # DEBUG D#15 => &msg_43(D)->msg_cmd.payload
  # DEBUG wred_cmd => D#15
  # DEBUG BEGIN_STMT
  _1 = &MEM[(struct fpp_qos_policer_wred_cmd_t *)msg_43(D) + 16B].if_name;
  phy_if_52 = fci_get_phy_if_by_name (_1);
  # DEBUG phy_if => phy_if_52
  # DEBUG BEGIN_STMT
  if (phy_if_52 == 0B)
    goto <bb 4>; [31.91%]
  else
    goto <bb 5>; [68.09%]

  <bb 4> [local count: 222710160]:
  # DEBUG BEGIN_STMT
  *fci_ret_44(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 2
  goto <bb 39>; [100.00%]

  <bb 5> [local count: 475222025]:
  # DEBUG BEGIN_STMT
  gpi_54 = fci_qos_get_gpi (phy_if_52);
  # DEBUG gpi => gpi_54
  # DEBUG BEGIN_STMT
  if (gpi_54 == 0B)
    goto <bb 6>; [18.75%]
  else
    goto <bb 7>; [81.25%]

  <bb 6> [local count: 89104130]:
  # DEBUG BEGIN_STMT
  *fci_ret_44(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 2
  goto <bb 39>; [100.00%]

  <bb 7> [local count: 386117896]:
  # DEBUG BEGIN_STMT
  queue_55 = MEM[(struct fpp_qos_policer_wred_cmd_t *)msg_43(D) + 16B].queue;
  # DEBUG queue => queue_55
  # DEBUG BEGIN_STMT
  if (queue_55 > 2)
    goto <bb 8>; [35.00%]
  else
    goto <bb 9>; [65.00%]

  <bb 8> [local count: 135141263]:
  # DEBUG BEGIN_STMT
  *fci_ret_44(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 22
  goto <bb 39>; [100.00%]

  <bb 9> [local count: 250976632]:
  # DEBUG BEGIN_STMT
  *fci_ret_44(D) = 0;
  # DEBUG BEGIN_STMT
  _2 = MEM[(struct fpp_qos_policer_wred_cmd_t *)msg_43(D) + 16B].action;
  switch (_2) <default: <L44> [33.33%], case 4: <L7> [33.33%], case 6: <L33> [33.33%]>

  <bb 10> [local count: 83650512]:
<L7>:
  # DEBUG BEGIN_STMT
  _3 = MEM[(struct fpp_qos_policer_wred_cmd_t *)msg_43(D) + 16B].enable;
  if (_3 != 0)
    goto <bb 11>; [50.00%]
  else
    goto <bb 12>; [50.00%]

  <bb 11> [local count: 41825256]:
  # DEBUG BEGIN_STMT
  ret_78 = pfe_gpi_wred_enable (gpi_54, queue_55);
  # DEBUG ret => ret_78
  # DEBUG BEGIN_STMT
  if (ret_78 != 0)
    goto <bb 14>; [50.00%]
  else
    goto <bb 41>; [50.00%]

  <bb 41> [local count: 20912628]:
  goto <bb 18>; [100.00%]

  <bb 12> [local count: 41825256]:
  # DEBUG BEGIN_STMT
  ret_75 = pfe_gpi_wred_disable (gpi_54, queue_55);
  # DEBUG ret => ret_75
  # DEBUG BEGIN_STMT
  if (ret_75 != 0)
    goto <bb 13>; [50.00%]
  else
    goto <bb 39>; [50.00%]

  <bb 13> [local count: 20912628]:
  # DEBUG BEGIN_STMT
  *fci_ret_44(D) = 65535;
  goto <bb 39>; [100.00%]

  <bb 14> [local count: 20912628]:
  # DEBUG BEGIN_STMT
  *fci_ret_44(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 39>; [100.00%]

  <bb 15> [local count: 58055585]:
  # DEBUG BEGIN_STMT
  _4 = MEM[(struct fpp_qos_policer_wred_cmd_t *)msg_43(D) + 16B].thr[i_27];
  _5 = _4 r>> 8;
  wred_thr = _5;
  # DEBUG BEGIN_STMT
  if (_5 == 65535)
    goto <bb 17>; [51.12%]
  else
    goto <bb 16>; [48.88%]

  <bb 16> [local count: 28377570]:
  # DEBUG BEGIN_STMT
  _6 = (<unnamed type>) i_27;
  ret_81 = pfe_gpi_wred_set_thr (gpi_54, queue_55, _6, _5);
  # DEBUG ret => ret_81
  # DEBUG BEGIN_STMT
  if (ret_81 != 0)
    goto <bb 19>; [5.50%]
  else
    goto <bb 17>; [94.50%]

  <bb 17> [local count: 56494818]:
  # ret_16 = PHI <ret_17(15), ret_81(16)>
  # DEBUG ret => ret_16
  # DEBUG BEGIN_STMT
  i_82 = i_27 + 1;
  # DEBUG i => i_82

  <bb 18> [local count: 77407446]:
  # ret_17 = PHI <ret_16(17), 0(41)>
  # i_27 = PHI <i_82(17), 0(41)>
  # DEBUG i => i_27
  # DEBUG ret => ret_17
  # DEBUG BEGIN_STMT
  if (i_27 != 3)
    goto <bb 15>; [75.00%]
  else
    goto <bb 19>; [25.00%]

  <bb 19> [local count: 20912628]:
  # ret_18 = PHI <ret_81(16), ret_17(18)>
  # DEBUG ret => ret_18
  # DEBUG BEGIN_STMT
  if (ret_18 != 0)
    goto <bb 20>; [50.00%]
  else
    goto <bb 40>; [50.00%]

  <bb 40> [local count: 10456314]:
  goto <bb 24>; [100.00%]

  <bb 20> [local count: 10456314]:
  # DEBUG BEGIN_STMT
  *fci_ret_44(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 39>; [100.00%]

  <bb 21> [local count: 37764240]:
  # DEBUG BEGIN_STMT
  _7 = MEM[(struct fpp_qos_policer_wred_cmd_t *)msg_43(D) + 16B].zprob[i_28];
  if (_7 == 255)
    goto <bb 23>; [51.12%]
  else
    goto <bb 22>; [48.88%]

  <bb 22> [local count: 18459161]:
  # DEBUG BEGIN_STMT
  _8 = (<unnamed type>) i_28;
  ret_84 = pfe_gpi_wred_set_prob (gpi_54, queue_55, _8, _7);
  # DEBUG ret => ret_84
  # DEBUG BEGIN_STMT
  if (ret_84 != 0)
    goto <bb 25>; [5.50%]
  else
    goto <bb 23>; [94.50%]

  <bb 23> [local count: 36748986]:
  # ret_19 = PHI <ret_20(21), ret_84(22)>
  # DEBUG ret => ret_19
  # DEBUG BEGIN_STMT
  i_85 = i_28 + 1;
  # DEBUG i => i_85

  <bb 24> [local count: 47205300]:
  # ret_20 = PHI <ret_19(23), 0(40)>
  # i_28 = PHI <i_85(23), 0(40)>
  # DEBUG i => i_28
  # DEBUG ret => ret_20
  # DEBUG BEGIN_STMT
  if (i_28 != 4)
    goto <bb 21>; [80.00%]
  else
    goto <bb 25>; [20.00%]

  <bb 25> [local count: 10456314]:
  # ret_21 = PHI <ret_84(22), ret_20(24)>
  # DEBUG ret => ret_21
  # DEBUG BEGIN_STMT
  if (ret_21 != 0)
    goto <bb 26>; [50.00%]
  else
    goto <bb 39>; [50.00%]

  <bb 26> [local count: 5228157]:
  # DEBUG BEGIN_STMT
  *fci_ret_44(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 39>; [100.00%]

  <bb 27> [local count: 83650512]:
<L33>:
  # DEBUG BEGIN_STMT
  reply_buf_45(D)->action = _2;
  # DEBUG BEGIN_STMT
  _9 = &reply_buf_45(D)->if_name;
  strncpy (_9, _1, 16);
  # DEBUG BEGIN_STMT
  reply_buf_45(D)->if_name[15] = 0;
  # DEBUG BEGIN_STMT
  reply_buf_45(D)->queue = queue_55;
  # DEBUG BEGIN_STMT
  _10 = pfe_gpi_wred_is_enabled (gpi_54, queue_55);
  reply_buf_45(D)->enable = _10;
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 32>; [100.00%]

  <bb 28> [local count: 215409043]:
  # DEBUG BEGIN_STMT
  _11 = (<unnamed type>) i_29;
  ret_65 = pfe_gpi_wred_get_thr (gpi_54, queue_55, _11, &wred_thr);
  # DEBUG ret => ret_65
  # DEBUG BEGIN_STMT
  if (ret_65 != 0)
    goto <bb 29>; [5.50%]
  else
    goto <bb 31>; [94.50%]

  <bb 29> [local count: 11847497]:
  # ret_50 = PHI <ret_65(28)>
  # DEBUG BEGIN_STMT
  *fci_ret_44(D) = 65535;
  # DEBUG BEGIN_STMT

  <bb 30> [local count: 83650512]:
  # ret_38 = PHI <ret_22(32), ret_50(29)>
  # i_23 = PHI <0(32), 0(29)>
  goto <bb 36>; [100.00%]

  <bb 31> [local count: 203561545]:
  # DEBUG BEGIN_STMT
  wred_thr.34_12 = wred_thr;
  _13 = wred_thr.34_12 r>> 8;
  reply_buf_45(D)->thr[i_29] = _13;
  # DEBUG BEGIN_STMT
  i_67 = i_29 + 1;
  # DEBUG i => i_67

  <bb 32> [local count: 287212057]:
  # ret_22 = PHI <0(27), 0(31)>
  # i_29 = PHI <0(27), i_67(31)>
  # DEBUG i => i_29
  # DEBUG ret => ret_22
  # DEBUG BEGIN_STMT
  if (i_29 != 3)
    goto <bb 28>; [75.00%]
  else
    goto <bb 30>; [25.00%]

  <bb 33> [local count: 274263974]:
  # DEBUG BEGIN_STMT
  _14 = (<unnamed type>) i_30;
  _15 = &reply_buf_45(D)->zprob[i_30];
  ret_70 = pfe_gpi_wred_get_prob (gpi_54, queue_55, _14, _15);
  # DEBUG ret => ret_70
  # DEBUG BEGIN_STMT
  if (ret_70 != 0)
    goto <bb 34>; [5.50%]
  else
    goto <bb 35>; [94.50%]

  <bb 34> [local count: 15084519]:
  # ret_47 = PHI <ret_70(33)>
  # DEBUG BEGIN_STMT
  *fci_ret_44(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 37>; [100.00%]

  <bb 35> [local count: 259179455]:
  # DEBUG BEGIN_STMT
  i_71 = i_30 + 1;
  # DEBUG i => i_71

  <bb 36> [local count: 342829967]:
  # ret_24 = PHI <ret_38(30), 0(35)>
  # i_30 = PHI <i_23(30), i_71(35)>
  # DEBUG i => i_30
  # DEBUG ret => ret_24
  # DEBUG BEGIN_STMT
  if (i_30 != 4)
    goto <bb 33>; [80.00%]
  else
    goto <bb 37>; [20.00%]

  <bb 37> [local count: 83650512]:
  # ret_25 = PHI <ret_47(34), ret_24(36)>
  # DEBUG ret => ret_25
  # DEBUG BEGIN_STMT
  *reply_len_46(D) = 32;
  # DEBUG BEGIN_STMT
  goto <bb 39>; [100.00%]

  <bb 38> [local count: 83650512]:
<L44>:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_44(D) = 4;
  # DEBUG BEGIN_STMT

  <bb 39> [local count: 1073716729]:
  # ret_26 = PHI <22(2), 2(4), 2(6), 22(8), ret_75(13), ret_78(14), ret_18(20), ret_21(26), ret_21(25), ret_25(37), 0(38), ret_75(12)>
  # DEBUG cmd_len => NULL
  # DEBUG ret => NULL
  # DEBUG ret => ret_26
  # DEBUG BEGIN_STMT
  wred_thr ={v} {CLOBBER};
  return ret_26;

}


fci_qos_policer_flow_cmd (struct fci_msg_t * msg, uint16_t * fci_ret, struct fpp_qos_policer_flow_cmd_t * reply_buf, uint32_t * reply_len)
{
  errno_t ret;
  struct pfe_gpi_t * gpi;
  struct pfe_phy_if_t * phy_if;
  struct pfe_iqos_flow_spec_t gpi_flow;
  char[16] * _1;
  short unsigned int _2;
  struct fpp_iqos_flow_spec_t * _3;
  unsigned char _4;
  unsigned char _5;
  unsigned char _6;
  char[16] * _7;
  uint8_t * _8;
  struct fpp_iqos_flow_spec_t * _9;
  char[16] * _10;
  uint8_t * _11;
  struct fpp_iqos_flow_spec_t * _12;
  long unsigned int _61;

  <bb 2> [local count: 1073741823]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG phy_if => 0B
  # DEBUG BEGIN_STMT
  # DEBUG gpi => 0B
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  memset (&gpi_flow, 0, 36);
  # DEBUG BEGIN_STMT
  # DEBUG D#1 => msg_17(D)
  # DEBUG D#2 => fci_ret_18(D)
  # DEBUG D#3 => reply_buf_19(D)
  _61 = *reply_len_20(D);
  # DEBUG D#4 => reply_len_20(D)
  # DEBUG cmd_len => 56
  # DEBUG INLINE_ENTRY fci_validate_cmd_params
  # DEBUG msg => D#1
  # DEBUG fci_ret => D#2
  # DEBUG reply_buf => D#3
  # DEBUG reply_len => D#4
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (_61 <= 55)
    goto <bb 27>; [35.00%]
  else
    goto <bb 3>; [65.00%]

  <bb 3> [local count: 697932185]:
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG cmd_len => NULL
  # DEBUG ret => NULL
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *reply_len_20(D) = 0;
  # DEBUG BEGIN_STMT
  memset (reply_buf_19(D), 0, 56);
  # DEBUG BEGIN_STMT
  # DEBUG D#14 => &msg_17(D)->msg_cmd.payload
  # DEBUG flow_cmd => D#14
  # DEBUG BEGIN_STMT
  _1 = &MEM[(struct fpp_qos_policer_flow_cmd_t *)msg_17(D) + 16B].if_name;
  phy_if_24 = fci_get_phy_if_by_name (_1);
  # DEBUG phy_if => phy_if_24
  # DEBUG BEGIN_STMT
  if (phy_if_24 == 0B)
    goto <bb 4>; [31.91%]
  else
    goto <bb 5>; [68.09%]

  <bb 4> [local count: 222710160]:
  # DEBUG BEGIN_STMT
  *fci_ret_18(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 2
  goto <bb 27>; [100.00%]

  <bb 5> [local count: 475222024]:
  # DEBUG BEGIN_STMT
  gpi_26 = fci_qos_get_gpi (phy_if_24);
  # DEBUG gpi => gpi_26
  # DEBUG BEGIN_STMT
  if (gpi_26 == 0B)
    goto <bb 6>; [18.75%]
  else
    goto <bb 7>; [81.25%]

  <bb 6> [local count: 89104130]:
  # DEBUG BEGIN_STMT
  *fci_ret_18(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 2
  goto <bb 27>; [100.00%]

  <bb 7> [local count: 386117895]:
  # DEBUG BEGIN_STMT
  *fci_ret_18(D) = 0;
  # DEBUG BEGIN_STMT
  _2 = MEM[(struct fpp_qos_policer_flow_cmd_t *)msg_17(D) + 16B].action;
  switch (_2) <default: <L25> [20.00%], case 0: <L5> [20.00%], case 1: <L14> [20.00%], case 6: <L19> [20.00%], case 7: <L22> [20.00%]>

  <bb 8> [local count: 77223579]:
<L5>:
  # DEBUG BEGIN_STMT
  _3 = &MEM[(struct fpp_qos_policer_flow_cmd_t *)msg_17(D) + 16B].flow;
  fci_qos_flow_entry_convert_to_gpi (_3, &gpi_flow);
  # DEBUG BEGIN_STMT
  ret_50 = fci_qos_flow_entry_validate_and_fixup_masks (&gpi_flow);
  # DEBUG ret => ret_50
  # DEBUG BEGIN_STMT
  if (ret_50 != 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 38611790]:
  # DEBUG BEGIN_STMT
  *fci_ret_18(D) = 3;
  # DEBUG BEGIN_STMT
  goto <bb 27>; [100.00%]

  <bb 10> [local count: 38611790]:
  # DEBUG BEGIN_STMT
  _4 = MEM[(struct fpp_qos_policer_flow_cmd_t *)msg_17(D) + 16B].id;
  _5 = _4 + 192;
  if (_5 <= 190)
    goto <bb 11>; [67.00%]
  else
    goto <bb 12>; [33.00%]

  <bb 11> [local count: 25869899]:
  # DEBUG BEGIN_STMT
  *fci_ret_18(D) = 3;
  # DEBUG BEGIN_STMT
  goto <bb 27>; [100.00%]

  <bb 12> [local count: 12741891]:
  # DEBUG BEGIN_STMT
  ret_52 = pfe_gpi_qos_add_flow (gpi_26, _4, &gpi_flow);
  # DEBUG ret => ret_52
  # DEBUG BEGIN_STMT
  if (ret_52 == 75)
    goto <bb 13>; [21.72%]
  else
    goto <bb 14>; [78.28%]

  <bb 13> [local count: 2767539]:
  # DEBUG BEGIN_STMT
  *fci_ret_18(D) = 62529;
  # DEBUG BEGIN_STMT
  goto <bb 27>; [100.00%]

  <bb 14> [local count: 9974352]:
  # DEBUG BEGIN_STMT
  if (ret_52 != 0)
    goto <bb 15>; [50.00%]
  else
    goto <bb 27>; [50.00%]

  <bb 15> [local count: 4987176]:
  # DEBUG BEGIN_STMT
  *fci_ret_18(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 27>; [100.00%]

  <bb 16> [local count: 77223579]:
<L14>:
  # DEBUG BEGIN_STMT
  _6 = MEM[(struct fpp_qos_policer_flow_cmd_t *)msg_17(D) + 16B].id;
  if (_6 > 63)
    goto <bb 17>; [67.00%]
  else
    goto <bb 18>; [33.00%]

  <bb 17> [local count: 51739798]:
  # DEBUG BEGIN_STMT
  *fci_ret_18(D) = 3;
  # DEBUG BEGIN_STMT
  goto <bb 27>; [100.00%]

  <bb 18> [local count: 25483781]:
  # DEBUG BEGIN_STMT
  ret_45 = pfe_gpi_qos_rem_flow (gpi_26, _6);
  # DEBUG ret => ret_45
  # DEBUG BEGIN_STMT
  if (ret_45 != 0)
    goto <bb 19>; [50.00%]
  else
    goto <bb 27>; [50.00%]

  <bb 19> [local count: 12741891]:
  # DEBUG BEGIN_STMT
  *fci_ret_18(D) = 65535;
  goto <bb 27>; [100.00%]

  <bb 20> [local count: 77223579]:
<L19>:
  # DEBUG BEGIN_STMT
  reply_buf_19(D)->action = _2;
  # DEBUG BEGIN_STMT
  _7 = &reply_buf_19(D)->if_name;
  strncpy (_7, _1, 16);
  # DEBUG BEGIN_STMT
  reply_buf_19(D)->if_name[15] = 0;
  # DEBUG BEGIN_STMT
  _8 = &reply_buf_19(D)->id;
  ret_40 = pfe_gpi_qos_get_first_flow (gpi_26, _8, &gpi_flow);
  # DEBUG ret => ret_40
  # DEBUG BEGIN_STMT
  if (ret_40 != 0)
    goto <bb 21>; [67.00%]
  else
    goto <bb 22>; [33.00%]

  <bb 21> [local count: 51739798]:
  # DEBUG BEGIN_STMT
  *fci_ret_18(D) = 62530;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 27>; [100.00%]

  <bb 22> [local count: 25483781]:
  # DEBUG BEGIN_STMT
  _9 = &reply_buf_19(D)->flow;
  fci_qos_flow_entry_convert_from_gpi (&gpi_flow, _9);
  # DEBUG BEGIN_STMT
  *reply_len_20(D) = 56;
  # DEBUG BEGIN_STMT
  goto <bb 27>; [100.00%]

  <bb 23> [local count: 77223579]:
<L22>:
  # DEBUG BEGIN_STMT
  reply_buf_19(D)->action = _2;
  # DEBUG BEGIN_STMT
  _10 = &reply_buf_19(D)->if_name;
  strncpy (_10, _1, 16);
  # DEBUG BEGIN_STMT
  reply_buf_19(D)->if_name[15] = 0;
  # DEBUG BEGIN_STMT
  _11 = &reply_buf_19(D)->id;
  ret_32 = pfe_gpi_qos_get_next_flow (gpi_26, _11, &gpi_flow);
  # DEBUG ret => ret_32
  # DEBUG BEGIN_STMT
  if (ret_32 != 0)
    goto <bb 24>; [67.00%]
  else
    goto <bb 25>; [33.00%]

  <bb 24> [local count: 51739798]:
  # DEBUG BEGIN_STMT
  *fci_ret_18(D) = 62530;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 27>; [100.00%]

  <bb 25> [local count: 25483781]:
  # DEBUG BEGIN_STMT
  _12 = &reply_buf_19(D)->flow;
  fci_qos_flow_entry_convert_from_gpi (&gpi_flow, _12);
  # DEBUG BEGIN_STMT
  *reply_len_20(D) = 56;
  # DEBUG BEGIN_STMT
  goto <bb 27>; [100.00%]

  <bb 26> [local count: 77223579]:
<L25>:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_18(D) = 4;
  # DEBUG BEGIN_STMT

  <bb 27> [local count: 1073741824]:
  # ret_13 = PHI <22(2), 2(4), 2(6), ret_50(9), 0(11), 75(13), ret_52(15), ret_52(14), 0(17), ret_45(19), 0(21), 0(22), 0(24), 0(25), 0(26), ret_45(18)>
  # DEBUG cmd_len => NULL
  # DEBUG ret => NULL
  # DEBUG ret => ret_13
  # DEBUG BEGIN_STMT
  gpi_flow ={v} {CLOBBER};
  return ret_13;

}


fci_qos_flow_entry_convert_from_gpi (const struct pfe_iqos_flow_spec_t * gpi_flow, struct fpp_iqos_flow_spec_t * flow)
{
  <unnamed type> _1;
  <unnamed type> _2;
  <unnamed type> _3;
  <unnamed type> _4;
  <unnamed type> _5;
  short unsigned int _6;
  short unsigned int _7;
  short unsigned int _8;
  short unsigned int _9;
  short unsigned int _10;
  short unsigned int _11;
  short unsigned int _12;
  short unsigned int _13;
  short unsigned int _14;
  short unsigned int _15;
  short unsigned int _16;
  short unsigned int _17;
  long unsigned int _18;
  long unsigned int _19;
  long unsigned int _20;
  long unsigned int _21;
  long unsigned int _22;
  long unsigned int _23;
  long unsigned int _24;
  long unsigned int _25;
  long unsigned int _26;
  long unsigned int _27;
  long unsigned int _28;
  long unsigned int _29;
  long unsigned int _30;
  long unsigned int _31;
  long unsigned int _32;
  long unsigned int _33;
  long unsigned int _34;
  long unsigned int _35;
  long unsigned int _36;
  long unsigned int _37;
  unsigned char _38;
  unsigned char _39;
  unsigned char _40;
  unsigned char _41;
  unsigned char _42;
  unsigned char _43;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _1 = gpi_flow_45(D)->type_mask;
  _2 = _1 r>> 8;
  flow_46(D)->type_mask = _2;
  # DEBUG BEGIN_STMT
  _3 = gpi_flow_45(D)->arg_type_mask;
  _4 = _3 r>> 8;
  flow_46(D)->arg_type_mask = _4;
  # DEBUG BEGIN_STMT
  _5 = gpi_flow_45(D)->action;
  flow_46(D)->action = _5;
  # DEBUG BEGIN_STMT
  _6 = gpi_flow_45(D)->args.vlan;
  _7 = _6 r>> 8;
  flow_46(D)->args.vlan = _7;
  # DEBUG BEGIN_STMT
  _8 = gpi_flow_45(D)->args.vlan_m;
  _9 = _8 r>> 8;
  flow_46(D)->args.vlan_m = _9;
  # DEBUG BEGIN_STMT
  _10 = gpi_flow_45(D)->args.sport_max;
  _11 = _10 r>> 8;
  flow_46(D)->args.sport_max = _11;
  # DEBUG BEGIN_STMT
  _12 = gpi_flow_45(D)->args.sport_min;
  _13 = _12 r>> 8;
  flow_46(D)->args.sport_min = _13;
  # DEBUG BEGIN_STMT
  _14 = gpi_flow_45(D)->args.dport_max;
  _15 = _14 r>> 8;
  flow_46(D)->args.dport_max = _15;
  # DEBUG BEGIN_STMT
  _16 = gpi_flow_45(D)->args.dport_min;
  _17 = _16 r>> 8;
  flow_46(D)->args.dport_min = _17;
  # DEBUG BEGIN_STMT
  _18 = gpi_flow_45(D)->args.sip;
  _19 = _18 >> 24;
  _20 = _18 >> 8;
  _21 = _20 & 65280;
  _22 = _19 | _21;
  _23 = _18 << 8;
  _24 = _23 & 16711680;
  _25 = _22 | _24;
  _26 = _18 << 24;
  _27 = _25 | _26;
  flow_46(D)->args.sip = _27;
  # DEBUG BEGIN_STMT
  _28 = gpi_flow_45(D)->args.dip;
  _29 = _28 >> 24;
  _30 = _28 >> 8;
  _31 = _30 & 65280;
  _32 = _29 | _31;
  _33 = _28 << 8;
  _34 = _33 & 16711680;
  _35 = _32 | _34;
  _36 = _28 << 24;
  _37 = _35 | _36;
  flow_46(D)->args.dip = _37;
  # DEBUG BEGIN_STMT
  _38 = gpi_flow_45(D)->args.tos;
  flow_46(D)->args.tos = _38;
  # DEBUG BEGIN_STMT
  _39 = gpi_flow_45(D)->args.tos_m;
  flow_46(D)->args.tos_m = _39;
  # DEBUG BEGIN_STMT
  _40 = gpi_flow_45(D)->args.l4proto;
  flow_46(D)->args.l4proto = _40;
  # DEBUG BEGIN_STMT
  _41 = gpi_flow_45(D)->args.l4proto_m;
  flow_46(D)->args.l4proto_m = _41;
  # DEBUG BEGIN_STMT
  _42 = gpi_flow_45(D)->args.sip_m;
  flow_46(D)->args.sip_m = _42;
  # DEBUG BEGIN_STMT
  _43 = gpi_flow_45(D)->args.dip_m;
  flow_46(D)->args.dip_m = _43;
  return;

}


fci_qos_flow_entry_convert_to_gpi (const struct fpp_iqos_flow_spec_t * flow, struct pfe_iqos_flow_spec_t * gpi_flow)
{
  <unnamed type> _1;
  <unnamed type> _2;
  <unnamed type> _3;
  <unnamed type> _4;
  <unnamed type> _5;
  short unsigned int _6;
  short unsigned int _7;
  short unsigned int _8;
  short unsigned int _9;
  short unsigned int _10;
  short unsigned int _11;
  short unsigned int _12;
  short unsigned int _13;
  short unsigned int _14;
  short unsigned int _15;
  short unsigned int _16;
  short unsigned int _17;
  long unsigned int _18;
  long unsigned int _19;
  long unsigned int _20;
  long unsigned int _21;
  long unsigned int _22;
  long unsigned int _23;
  long unsigned int _24;
  long unsigned int _25;
  long unsigned int _26;
  long unsigned int _27;
  long unsigned int _28;
  long unsigned int _29;
  long unsigned int _30;
  long unsigned int _31;
  long unsigned int _32;
  long unsigned int _33;
  long unsigned int _34;
  long unsigned int _35;
  long unsigned int _36;
  long unsigned int _37;
  unsigned char _38;
  unsigned char _39;
  unsigned char _40;
  unsigned char _41;
  unsigned char _42;
  unsigned char _43;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _1 = flow_45(D)->type_mask;
  _2 = _1 r>> 8;
  gpi_flow_46(D)->type_mask = _2;
  # DEBUG BEGIN_STMT
  _3 = flow_45(D)->arg_type_mask;
  _4 = _3 r>> 8;
  gpi_flow_46(D)->arg_type_mask = _4;
  # DEBUG BEGIN_STMT
  _5 = flow_45(D)->action;
  gpi_flow_46(D)->action = _5;
  # DEBUG BEGIN_STMT
  _6 = flow_45(D)->args.vlan;
  _7 = _6 r>> 8;
  gpi_flow_46(D)->args.vlan = _7;
  # DEBUG BEGIN_STMT
  _8 = flow_45(D)->args.vlan_m;
  _9 = _8 r>> 8;
  gpi_flow_46(D)->args.vlan_m = _9;
  # DEBUG BEGIN_STMT
  _10 = flow_45(D)->args.sport_max;
  _11 = _10 r>> 8;
  gpi_flow_46(D)->args.sport_max = _11;
  # DEBUG BEGIN_STMT
  _12 = flow_45(D)->args.sport_min;
  _13 = _12 r>> 8;
  gpi_flow_46(D)->args.sport_min = _13;
  # DEBUG BEGIN_STMT
  _14 = flow_45(D)->args.dport_max;
  _15 = _14 r>> 8;
  gpi_flow_46(D)->args.dport_max = _15;
  # DEBUG BEGIN_STMT
  _16 = flow_45(D)->args.dport_min;
  _17 = _16 r>> 8;
  gpi_flow_46(D)->args.dport_min = _17;
  # DEBUG BEGIN_STMT
  _18 = flow_45(D)->args.sip;
  _19 = _18 >> 24;
  _20 = _18 >> 8;
  _21 = _20 & 65280;
  _22 = _19 | _21;
  _23 = _18 << 8;
  _24 = _23 & 16711680;
  _25 = _22 | _24;
  _26 = _18 << 24;
  _27 = _25 | _26;
  gpi_flow_46(D)->args.sip = _27;
  # DEBUG BEGIN_STMT
  _28 = flow_45(D)->args.dip;
  _29 = _28 >> 24;
  _30 = _28 >> 8;
  _31 = _30 & 65280;
  _32 = _29 | _31;
  _33 = _28 << 8;
  _34 = _33 & 16711680;
  _35 = _32 | _34;
  _36 = _28 << 24;
  _37 = _35 | _36;
  gpi_flow_46(D)->args.dip = _37;
  # DEBUG BEGIN_STMT
  _38 = flow_45(D)->args.tos;
  gpi_flow_46(D)->args.tos = _38;
  # DEBUG BEGIN_STMT
  _39 = flow_45(D)->args.tos_m;
  gpi_flow_46(D)->args.tos_m = _39;
  # DEBUG BEGIN_STMT
  _40 = flow_45(D)->args.l4proto;
  gpi_flow_46(D)->args.l4proto = _40;
  # DEBUG BEGIN_STMT
  _41 = flow_45(D)->args.l4proto_m;
  gpi_flow_46(D)->args.l4proto_m = _41;
  # DEBUG BEGIN_STMT
  _42 = flow_45(D)->args.sip_m;
  gpi_flow_46(D)->args.sip_m = _42;
  # DEBUG BEGIN_STMT
  _43 = flow_45(D)->args.dip_m;
  gpi_flow_46(D)->args.dip_m = _43;
  return;

}


fci_qos_flow_entry_validate_and_fixup_masks (struct pfe_iqos_flow_spec_t * flow)
{
  errno_t ret;
  <unnamed type> _1;
  <unnamed type> _2;
  <unnamed type> _3;
  short unsigned int _4;
  short unsigned int _5;
  unsigned char _6;
  unsigned char _7;
  unsigned char _8;
  <unnamed type> _16;
  <unnamed type> _19;
  <unnamed type> _22;
  <unnamed type> _24;

  <bb 2> [local count: 1073741823]:
  # DEBUG BEGIN_STMT
  # DEBUG D#6 => &flow_15(D)->args
  # DEBUG args => D#6
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  _1 = flow_15(D)->type_mask;
  if (_1 > 511)
    goto <bb 20>; [35.00%]
  else
    goto <bb 3>; [65.00%]

  <bb 3> [local count: 697932185]:
  _2 = flow_15(D)->arg_type_mask;
  if (_2 > 127)
    goto <bb 20>; [35.00%]
  else
    goto <bb 4>; [65.00%]

  <bb 4> [local count: 453655920]:
  _3 = flow_15(D)->action;
  if (_3 > 2)
    goto <bb 20>; [35.00%]
  else
    goto <bb 5>; [65.00%]

  <bb 5> [local count: 294876348]:
  # DEBUG BEGIN_STMT
  _16 = _2 & 1;
  if (_16 != 0)
    goto <bb 6>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 6> [local count: 147438174]:
  # DEBUG BEGIN_STMT
  _4 = MEM[(struct pfe_iqos_flow_args_t *)flow_15(D) + 4B].vlan;
  if (_4 > 4095)
    goto <bb 18>; [50.00%]
  else
    goto <bb 7>; [50.00%]

  <bb 7> [local count: 73719087]:
  _5 = MEM[(struct pfe_iqos_flow_args_t *)flow_15(D) + 4B].vlan_m;
  if (_5 > 4095)
    goto <bb 18>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 8> [local count: 36859544]:
  # DEBUG BEGIN_STMT
  if (_5 == 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 18429772]:
  # DEBUG BEGIN_STMT
  MEM[(struct pfe_iqos_flow_args_t *)flow_15(D) + 4B].vlan_m = 4095;
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT

  <bb 10> [local count: 184297718]:
  # DEBUG ret => NULL
  # DEBUG BEGIN_STMT
  _19 = _2 & 2;
  if (_19 != 0)
    goto <bb 11>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 11> [local count: 92148859]:
  # DEBUG BEGIN_STMT
  _6 = MEM[(struct pfe_iqos_flow_args_t *)flow_15(D) + 4B].tos_m;
  if (_6 == 0)
    goto <bb 12>; [50.00%]
  else
    goto <bb 13>; [50.00%]

  <bb 12> [local count: 46074429]:
  # DEBUG BEGIN_STMT
  MEM[(struct pfe_iqos_flow_args_t *)flow_15(D) + 4B].tos_m = 255;

  <bb 13> [local count: 184297718]:
  # DEBUG BEGIN_STMT
  _22 = _2 & 4;
  if (_22 != 0)
    goto <bb 14>; [50.00%]
  else
    goto <bb 16>; [50.00%]

  <bb 14> [local count: 92148859]:
  # DEBUG BEGIN_STMT
  _7 = MEM[(struct pfe_iqos_flow_args_t *)flow_15(D) + 4B].l4proto_m;
  if (_7 == 0)
    goto <bb 15>; [50.00%]
  else
    goto <bb 16>; [50.00%]

  <bb 15> [local count: 46074429]:
  # DEBUG BEGIN_STMT
  MEM[(struct pfe_iqos_flow_args_t *)flow_15(D) + 4B].l4proto_m = 255;

  <bb 16> [local count: 184297718]:
  # DEBUG BEGIN_STMT
  _24 = _2 & 8;
  if (_24 != 0)
    goto <bb 17>; [50.00%]
  else
    goto <bb 18>; [50.00%]

  <bb 17> [local count: 92148859]:
  # DEBUG BEGIN_STMT
  _8 = MEM[(struct pfe_iqos_flow_args_t *)flow_15(D) + 4B].sip_m;
  if (_8 > 63)
    goto <bb 20>; [35.00%]
  else
    goto <bb 18>; [65.00%]

  <bb 18> [local count: 262624248]:
  # ret_9 = PHI <22(7), 0(16), 0(17), 22(6)>
  # DEBUG ret => ret_9
  # DEBUG BEGIN_STMT
  if (ret_9 == 0)
    goto <bb 19>; [50.00%]
  else
    goto <bb 20>; [50.00%]

  <bb 19> [local count: 131312124]:
  # DEBUG BEGIN_STMT
  ret_23 = fci_qos_flow_entry_validate_dip_sport_dport (flow_15(D));
  # DEBUG ret => ret_23

  <bb 20> [local count: 1073741824]:
  # ret_10 = PHI <22(3), ret_9(18), ret_23(19), 22(2), 22(4), 22(17)>
  # DEBUG ret => ret_10
  # DEBUG BEGIN_STMT
  return ret_10;

}


fci_qos_flow_entry_validate_dip_sport_dport (struct pfe_iqos_flow_spec_t * flow)
{
  errno_t ret;
  <unnamed type> _1;
  unsigned char _2;
  short unsigned int _3;
  short unsigned int _4;
  short unsigned int _5;
  short unsigned int _6;
  <unnamed type> _10;
  <unnamed type> _12;
  <unnamed type> _13;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG D#5 => &flow_9(D)->args
  # DEBUG args => D#5
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  _1 = flow_9(D)->arg_type_mask;
  _10 = _1 & 16;
  if (_10 != 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  _2 = MEM[(struct pfe_iqos_flow_args_t *)flow_9(D) + 4B].dip_m;
  if (_2 > 63)
    goto <bb 6>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 4> [local count: 805306369]:
  # DEBUG ret => NULL
  # DEBUG BEGIN_STMT
  _12 = _1 & 32;
  if (_12 != 0)
    goto <bb 5>; [50.00%]
  else
    goto <bb 6>; [50.00%]

  <bb 5> [local count: 402653184]:
  # DEBUG BEGIN_STMT
  _3 = MEM[(struct pfe_iqos_flow_args_t *)flow_9(D) + 4B].sport_min;
  _4 = MEM[(struct pfe_iqos_flow_args_t *)flow_9(D) + 4B].sport_max;
  if (_3 > _4)
    goto <bb 10>; [35.00%]
  else
    goto <bb 6>; [65.00%]

  <bb 6> [local count: 932813211]:
  # ret_7 = PHI <22(3), 0(4), 0(5)>
  # DEBUG ret => ret_7
  # DEBUG BEGIN_STMT
  if (ret_7 == 0)
    goto <bb 7>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 7> [local count: 466406605]:
  # DEBUG BEGIN_STMT
  _13 = _1 & 64;
  if (_13 != 0)
    goto <bb 8>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 8> [local count: 233203302]:
  # DEBUG BEGIN_STMT
  _5 = MEM[(struct pfe_iqos_flow_args_t *)flow_9(D) + 4B].dport_min;
  _6 = MEM[(struct pfe_iqos_flow_args_t *)flow_9(D) + 4B].dport_max;
  if (_5 > _6)
    goto <bb 9>; [35.00%]
  else
    goto <bb 10>; [65.00%]

  <bb 9> [local count: 81621156]:
  # DEBUG BEGIN_STMT
  # DEBUG ret => 22

  <bb 10> [local count: 1073741824]:
  # ret_8 = PHI <ret_7(6), 0(7), 0(8), 22(9), 22(5)>
  # DEBUG ret => ret_8
  # DEBUG BEGIN_STMT
  return ret_8;

}


fci_qos_policer_cmd (struct fci_msg_t * msg, uint16_t * fci_ret, struct fpp_qos_policer_cmd_t * reply_buf, uint32_t * reply_len)
{
  errno_t ret;
  struct pfe_gpi_t * gpi;
  struct pfe_phy_if_t * phy_if;
  char[16] * _1;
  short unsigned int _2;
  unsigned char _3;
  char[16] * _4;
  unsigned char _5;
  long unsigned int _36;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG phy_if => 0B
  # DEBUG BEGIN_STMT
  # DEBUG gpi => 0B
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG D#1 => msg_11(D)
  # DEBUG D#2 => fci_ret_12(D)
  # DEBUG D#3 => reply_buf_13(D)
  _36 = *reply_len_14(D);
  # DEBUG D#4 => reply_len_14(D)
  # DEBUG cmd_len => 20
  # DEBUG INLINE_ENTRY fci_validate_cmd_params
  # DEBUG msg => D#1
  # DEBUG fci_ret => D#2
  # DEBUG reply_buf => D#3
  # DEBUG reply_len => D#4
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (_36 <= 19)
    goto <bb 15>; [35.00%]
  else
    goto <bb 3>; [65.00%]

  <bb 3> [local count: 697932186]:
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG cmd_len => NULL
  # DEBUG ret => NULL
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *reply_len_14(D) = 0;
  # DEBUG BEGIN_STMT
  memset (reply_buf_13(D), 0, 20);
  # DEBUG BEGIN_STMT
  # DEBUG D#13 => &msg_11(D)->msg_cmd.payload
  # DEBUG pol_cmd => D#13
  # DEBUG BEGIN_STMT
  _1 = &MEM[(struct fpp_qos_policer_cmd_t *)msg_11(D) + 16B].if_name;
  phy_if_18 = fci_get_phy_if_by_name (_1);
  # DEBUG phy_if => phy_if_18
  # DEBUG BEGIN_STMT
  if (phy_if_18 == 0B)
    goto <bb 4>; [31.91%]
  else
    goto <bb 5>; [68.09%]

  <bb 4> [local count: 222710160]:
  # DEBUG BEGIN_STMT
  *fci_ret_12(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 2
  goto <bb 15>; [100.00%]

  <bb 5> [local count: 475222025]:
  # DEBUG BEGIN_STMT
  gpi_20 = fci_qos_get_gpi (phy_if_18);
  # DEBUG gpi => gpi_20
  # DEBUG BEGIN_STMT
  if (gpi_20 == 0B)
    goto <bb 6>; [18.75%]
  else
    goto <bb 7>; [81.25%]

  <bb 6> [local count: 89104130]:
  # DEBUG BEGIN_STMT
  *fci_ret_12(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 2
  goto <bb 15>; [100.00%]

  <bb 7> [local count: 386117896]:
  # DEBUG BEGIN_STMT
  *fci_ret_12(D) = 0;
  # DEBUG BEGIN_STMT
  _2 = MEM[(struct fpp_qos_policer_cmd_t *)msg_11(D) + 16B].action;
  switch (_2) <default: <L12> [33.33%], case 4: <L5> [33.33%], case 6: <L11> [33.33%]>

  <bb 8> [local count: 128693095]:
<L5>:
  # DEBUG BEGIN_STMT
  _3 = MEM[(struct fpp_qos_policer_cmd_t *)msg_11(D) + 16B].enable;
  if (_3 != 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 64346547]:
  # DEBUG BEGIN_STMT
  ret_31 = pfe_gpi_qos_enable (gpi_20);
  # DEBUG ret => ret_31
  goto <bb 11>; [100.00%]

  <bb 10> [local count: 64346547]:
  # DEBUG BEGIN_STMT
  ret_29 = pfe_gpi_qos_disable (gpi_20);
  # DEBUG ret => ret_29

  <bb 11> [local count: 128693095]:
  # ret_6 = PHI <ret_31(9), ret_29(10)>
  # DEBUG ret => ret_6
  # DEBUG BEGIN_STMT
  if (ret_6 != 0)
    goto <bb 12>; [50.00%]
  else
    goto <bb 15>; [50.00%]

  <bb 12> [local count: 64346547]:
  # DEBUG BEGIN_STMT
  *fci_ret_12(D) = 65535;
  goto <bb 15>; [100.00%]

  <bb 13> [local count: 128693095]:
<L11>:
  # DEBUG BEGIN_STMT
  reply_buf_13(D)->action = _2;
  # DEBUG BEGIN_STMT
  _4 = &reply_buf_13(D)->if_name;
  strncpy (_4, _1, 16);
  # DEBUG BEGIN_STMT
  reply_buf_13(D)->if_name[15] = 0;
  # DEBUG BEGIN_STMT
  _5 = pfe_gpi_qos_is_enabled (gpi_20);
  reply_buf_13(D)->enable = _5;
  # DEBUG BEGIN_STMT
  *reply_len_14(D) = 20;
  # DEBUG BEGIN_STMT
  goto <bb 15>; [100.00%]

  <bb 14> [local count: 128693095]:
<L12>:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_12(D) = 4;
  # DEBUG BEGIN_STMT

  <bb 15> [local count: 1073703214]:
  # ret_7 = PHI <22(2), 2(4), 2(6), ret_6(12), 0(13), 0(14), ret_6(11)>
  # DEBUG cmd_len => NULL
  # DEBUG ret => NULL
  # DEBUG ret => ret_7
  # DEBUG BEGIN_STMT
  return ret_7;

}


fci_qos_get_gpi (const struct pfe_phy_if_t * phy_if)
{
  struct pfe_gpi_t * gpi;
  const struct pfe_emac_t * emac;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  emac_6 = pfe_phy_if_get_emac (phy_if_4(D));
  # DEBUG emac => emac_6
  # DEBUG BEGIN_STMT
  # DEBUG gpi => 0B
  # DEBUG BEGIN_STMT
  if (emac_6 != 0B)
    goto <bb 3>; [73.78%]
  else
    goto <bb 4>; [26.22%]

  <bb 3> [local count: 792206719]:
  # DEBUG BEGIN_STMT
  gpi_8 = pfe_emac_get_gpi (emac_6);
  # DEBUG gpi => gpi_8

  <bb 4> [local count: 1073741824]:
  # gpi_1 = PHI <0B(2), gpi_8(3)>
  # DEBUG gpi => gpi_1
  # DEBUG BEGIN_STMT
  return gpi_1;

}


fci_qos_shaper_cmd (struct fci_msg_t * msg, uint16_t * fci_ret, struct fpp_qos_shaper_cmd_t * reply_buf, uint32_t * reply_len)
{
  uint32_t isl;
  struct pfe_phy_if_t * phy_if;
  errno_t ret;
  long unsigned int _1;
  short unsigned int _2;
  char[16] * _3;
  <unnamed type> _4;
  struct pfe_tmu_t * _5;
  unsigned char _6;
  unsigned char _7;
  unsigned char _8;
  struct pfe_tmu_t * _9;
  <unnamed type> _10;
  unsigned char _11;
  struct pfe_tmu_t * _12;
  <unnamed type> _13;
  unsigned char _14;
  struct pfe_tmu_t * _15;
  <unnamed type> _16;
  unsigned char _17;
  unsigned char _18;
  struct pfe_tmu_t * _19;
  <unnamed type> _20;
  unsigned char _21;
  struct pfe_tmu_t * _22;
  <unnamed type> _23;
  unsigned char _24;
  struct pfe_tmu_t * _25;
  <unnamed type> _26;
  unsigned char _27;
  long int _28;
  long unsigned int _29;
  long unsigned int _30;
  long unsigned int _31;
  long unsigned int _32;
  long unsigned int _33;
  long unsigned int _34;
  long unsigned int _35;
  long unsigned int _36;
  long unsigned int _37;
  long unsigned int _38;
  long int _39;
  long int _40;
  long unsigned int _41;
  long unsigned int _42;
  long unsigned int _43;
  long unsigned int _44;
  long unsigned int _45;
  long unsigned int _46;
  long unsigned int _47;
  long unsigned int _48;
  long unsigned int _49;
  long unsigned int _50;
  long int _51;
  struct pfe_tmu_t * _52;
  <unnamed type> _53;
  unsigned char _54;
  unsigned char _55;
  struct pfe_tmu_t * _56;
  <unnamed type> _57;
  unsigned char _58;
  long unsigned int _59;
  long unsigned int _60;
  long unsigned int _61;
  long unsigned int _62;
  long unsigned int _63;
  long unsigned int _64;
  long unsigned int _65;
  long unsigned int _66;
  long unsigned int _67;
  long unsigned int _68;
  char[16] * _69;
  struct pfe_tmu_t * _70;
  <unnamed type> _71;
  unsigned char _72;
  short unsigned int _73;
  unsigned char _74;
  char[16] * _75;
  struct pfe_tmu_t * _76;
  <unnamed type> _77;
  unsigned char _78;
  <unnamed type> _79;
  struct pfe_tmu_t * _80;
  <unnamed type> _81;
  unsigned char _82;
  int32_t * _83;
  int32_t * _84;
  long int _85;
  long unsigned int _86;
  long unsigned int _87;
  long unsigned int _88;
  long unsigned int _89;
  long unsigned int _90;
  long unsigned int _91;
  long unsigned int _92;
  long unsigned int _93;
  long unsigned int _94;
  long unsigned int _95;
  long int _96;
  long int _97;
  long unsigned int _98;
  long unsigned int _99;
  long unsigned int _100;
  long unsigned int _101;
  long unsigned int _102;
  long unsigned int _103;
  long unsigned int _104;
  long unsigned int _105;
  long unsigned int _106;
  long unsigned int _107;
  long int _108;
  struct pfe_tmu_t * _109;
  <unnamed type> _110;
  unsigned char _111;
  long unsigned int _112;
  long unsigned int _113;
  long unsigned int _114;
  long unsigned int _115;
  long unsigned int _116;
  long unsigned int _117;
  long unsigned int _118;
  long unsigned int _119;
  long unsigned int _120;
  struct pfe_tmu_t * _121;
  <unnamed type> _122;
  unsigned char _123;
  unsigned char _124;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG phy_if => 0B
  # DEBUG BEGIN_STMT
  # DEBUG fci => &__context
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = *reply_len_133(D);
  if (_1 <= 35)
    goto <bb 43>; [52.23%]
  else
    goto <bb 3>; [47.77%]

  <bb 3> [local count: 512926469]:
  # DEBUG BEGIN_STMT
  *reply_len_133(D) = 0;
  # DEBUG BEGIN_STMT
  memset (reply_buf_135(D), 0, 36);
  # DEBUG BEGIN_STMT
  # DEBUG D#12 => &msg_137(D)->msg_cmd.payload
  # DEBUG shp => D#12
  # DEBUG BEGIN_STMT
  _2 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].action;
  switch (_2) <default: <L46> [33.33%], case 4: <L2> [33.33%], case 6: <L34> [33.33%]>

  <bb 4> [local count: 170958392]:
<L2>:
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 0;
  # DEBUG BEGIN_STMT
  _3 = &MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].if_name;
  phy_if_166 = fci_get_phy_if_by_name (_3);
  # DEBUG phy_if => phy_if_166
  # DEBUG BEGIN_STMT
  if (phy_if_166 == 0B)
    goto <bb 5>; [30.00%]
  else
    goto <bb 6>; [70.00%]

  <bb 5> [local count: 51287518]:
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 61700;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 6> [local count: 119670874]:
  # DEBUG BEGIN_STMT
  _4 = pfe_phy_if_get_id (phy_if_166);
  if (_4 == 5)
    goto <bb 7>; [51.12%]
  else
    goto <bb 8>; [48.88%]

  <bb 7> [local count: 61175751]:
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 61719;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 8> [local count: 58495123]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _5 = __context.tmu;
  _6 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  ret_168 = pfe_tmu_check_shaper (_5, _4, _6);
  # DEBUG ret => ret_168
  # DEBUG BEGIN_STMT
  if (ret_168 != 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 29247562]:
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 62497;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 10> [local count: 29247562]:
  # DEBUG BEGIN_STMT
  _7 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].mode;
  if (_7 == 0)
    goto <bb 11>; [67.00%]
  else
    goto <bb 16>; [33.00%]

  <bb 11> [local count: 19595866]:
  # DEBUG BEGIN_STMT
  _8 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].position;
  if (_8 == 255)
    goto <bb 12>; [34.00%]
  else
    goto <bb 14>; [66.00%]

  <bb 12> [local count: 6662595]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _9 = __context.tmu;
  _10 = pfe_phy_if_get_id (phy_if_166);
  _11 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  ret_188 = pfe_tmu_shp_set_position (_9, _10, _11, 255);
  # DEBUG ret => ret_188
  # DEBUG BEGIN_STMT
  if (ret_188 != 0)
    goto <bb 13>; [50.00%]
  else
    goto <bb 14>; [50.00%]

  <bb 13> [local count: 3331297]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 14> [local count: 16264569]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _12 = __context.tmu;
  _13 = pfe_phy_if_get_id (phy_if_166);
  _14 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  ret_191 = pfe_tmu_shp_disable (_12, _13, _14);
  # DEBUG ret => ret_191
  # DEBUG BEGIN_STMT
  if (ret_191 != 0)
    goto <bb 15>; [50.00%]
  else
    goto <bb 43>; [50.00%]

  <bb 15> [local count: 8132285]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 16> [local count: 9651695]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _15 = __context.tmu;
  _16 = pfe_phy_if_get_id (phy_if_166);
  _17 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  ret_170 = pfe_tmu_shp_enable (_15, _16, _17);
  # DEBUG ret => ret_170
  # DEBUG BEGIN_STMT
  if (ret_170 != 0)
    goto <bb 17>; [50.00%]
  else
    goto <bb 18>; [50.00%]

  <bb 17> [local count: 4825848]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 18> [local count: 4825848]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _18 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].mode;
  if (_18 == 1)
    goto <bb 19>; [20.24%]
  else
    goto <bb 20>; [79.76%]

  <bb 19> [local count: 976752]:
  # DEBUG BEGIN_STMT
  _19 = __context.tmu;
  _20 = pfe_phy_if_get_id (phy_if_166);
  _21 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  ret_175 = pfe_tmu_shp_set_rate_mode (_19, _20, _21, 0);
  # DEBUG ret => ret_175
  goto <bb 23>; [100.00%]

  <bb 20> [local count: 3849096]:
  # DEBUG BEGIN_STMT
  if (_18 == 2)
    goto <bb 21>; [20.24%]
  else
    goto <bb 22>; [79.76%]

  <bb 21> [local count: 779057]:
  # DEBUG BEGIN_STMT
  _22 = __context.tmu;
  _23 = pfe_phy_if_get_id (phy_if_166);
  _24 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  ret_173 = pfe_tmu_shp_set_rate_mode (_22, _23, _24, 1);
  # DEBUG ret => ret_173
  goto <bb 23>; [100.00%]

  <bb 22> [local count: 3070039]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 23> [local count: 1755809]:
  # ret_125 = PHI <ret_175(19), ret_173(21)>
  # DEBUG ret => ret_125
  # DEBUG BEGIN_STMT
  if (ret_125 != 0)
    goto <bb 24>; [67.00%]
  else
    goto <bb 25>; [33.00%]

  <bb 24> [local count: 1176392]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 25> [local count: 579417]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _25 = __context.tmu;
  _26 = pfe_phy_if_get_id (phy_if_166);
  _27 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  _28 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].max_credit;
  _29 = (long unsigned int) _28;
  _30 = _29 >> 24;
  _31 = _29 >> 8;
  _32 = _31 & 65280;
  _33 = _30 | _32;
  _34 = _29 << 8;
  _35 = _34 & 16711680;
  _36 = _33 | _35;
  _37 = _29 << 24;
  _38 = _36 | _37;
  _39 = (long int) _38;
  _40 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].min_credit;
  _41 = (long unsigned int) _40;
  _42 = _41 >> 24;
  _43 = _41 >> 8;
  _44 = _43 & 65280;
  _45 = _42 | _44;
  _46 = _41 << 8;
  _47 = _46 & 16711680;
  _48 = _45 | _47;
  _49 = _41 << 24;
  _50 = _48 | _49;
  _51 = (long int) _50;
  ret_177 = pfe_tmu_shp_set_limits (_25, _26, _27, _39, _51);
  # DEBUG ret => ret_177
  # DEBUG BEGIN_STMT
  if (ret_177 != 0)
    goto <bb 26>; [67.00%]
  else
    goto <bb 27>; [33.00%]

  <bb 26> [local count: 388209]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 27> [local count: 191208]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _52 = __context.tmu;
  _53 = pfe_phy_if_get_id (phy_if_166);
  _54 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  _55 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].position;
  ret_179 = pfe_tmu_shp_set_position (_52, _53, _54, _55);
  # DEBUG ret => ret_179
  # DEBUG BEGIN_STMT
  if (ret_179 != 0)
    goto <bb 28>; [67.00%]
  else
    goto <bb 29>; [33.00%]

  <bb 28> [local count: 128109]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 29> [local count: 63098]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _56 = __context.tmu;
  _57 = pfe_phy_if_get_id (phy_if_166);
  _58 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  _59 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].isl;
  _60 = _59 >> 24;
  _61 = _59 >> 8;
  _62 = _61 & 65280;
  _63 = _60 | _62;
  _64 = _59 << 8;
  _65 = _64 & 16711680;
  _66 = _63 | _65;
  _67 = _59 << 24;
  _68 = _66 | _67;
  ret_181 = pfe_tmu_shp_set_idle_slope (_56, _57, _58, _68);
  # DEBUG ret => ret_181
  # DEBUG BEGIN_STMT
  if (ret_181 != 0)
    goto <bb 30>; [50.00%]
  else
    goto <bb 43>; [50.00%]

  <bb 30> [local count: 31549]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 31> [local count: 170958392]:
<L34>:
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 0;
  # DEBUG BEGIN_STMT
  _69 = &MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].if_name;
  phy_if_141 = fci_get_phy_if_by_name (_69);
  # DEBUG phy_if => phy_if_141
  # DEBUG BEGIN_STMT
  if (phy_if_141 == 0B)
    goto <bb 32>; [46.53%]
  else
    goto <bb 33>; [53.47%]

  <bb 32> [local count: 79546940]:
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 61700;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 33> [local count: 91411452]:
  # DEBUG BEGIN_STMT
  _70 = __context.tmu;
  _71 = pfe_phy_if_get_id (phy_if_141);
  _72 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  ret_143 = pfe_tmu_check_shaper (_70, _71, _72);
  # DEBUG ret => ret_143
  # DEBUG BEGIN_STMT
  if (ret_143 != 0)
    goto <bb 34>; [67.00%]
  else
    goto <bb 35>; [33.00%]

  <bb 34> [local count: 61245673]:
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 62497;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 35> [local count: 30165779]:
  # DEBUG BEGIN_STMT
  _73 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].action;
  reply_buf_135(D)->action = _73;
  # DEBUG BEGIN_STMT
  _74 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  reply_buf_135(D)->id = _74;
  # DEBUG BEGIN_STMT
  _75 = &reply_buf_135(D)->if_name;
  strncpy (_75, _69, 16);
  # DEBUG BEGIN_STMT
  reply_buf_135(D)->if_name[15] = 0;
  # DEBUG BEGIN_STMT
  _76 = __context.tmu;
  _77 = pfe_phy_if_get_id (phy_if_141);
  _78 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  _79 = pfe_tmu_shp_get_rate_mode (_76, _77, _78);
  switch (_79) <default: <L41> [33.33%], case 0: <L39> [33.33%], case 1: <L40> [33.33%]>

  <bb 36> [local count: 10054254]:
<L39>:
  # DEBUG BEGIN_STMT
  reply_buf_135(D)->mode = 1;
  # DEBUG BEGIN_STMT
  goto <bb 39>; [100.00%]

  <bb 37> [local count: 10054254]:
<L40>:
  # DEBUG BEGIN_STMT
  reply_buf_135(D)->mode = 2;
  # DEBUG BEGIN_STMT
  goto <bb 39>; [100.00%]

  <bb 38> [local count: 10054254]:
<L41>:
  # DEBUG BEGIN_STMT
  reply_buf_135(D)->mode = 0;
  # DEBUG BEGIN_STMT

  <bb 39> [local count: 30162763]:
  # DEBUG BEGIN_STMT
  _80 = __context.tmu;
  _81 = pfe_phy_if_get_id (phy_if_141);
  _82 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  _83 = &reply_buf_135(D)->max_credit;
  _84 = &reply_buf_135(D)->min_credit;
  ret_153 = pfe_tmu_shp_get_limits (_80, _81, _82, _83, _84);
  # DEBUG ret => ret_153
  # DEBUG BEGIN_STMT
  if (ret_153 != 0)
    goto <bb 41>; [50.00%]
  else
    goto <bb 40>; [50.00%]

  <bb 40> [local count: 15081381]:
  # DEBUG BEGIN_STMT
  _85 = reply_buf_135(D)->max_credit;
  _86 = (long unsigned int) _85;
  _87 = _86 >> 24;
  _88 = _86 >> 8;
  _89 = _88 & 65280;
  _90 = _87 | _89;
  _91 = _86 << 8;
  _92 = _91 & 16711680;
  _93 = _90 | _92;
  _94 = _86 << 24;
  _95 = _93 | _94;
  _96 = (long int) _95;
  reply_buf_135(D)->max_credit = _96;
  # DEBUG BEGIN_STMT
  _97 = reply_buf_135(D)->min_credit;
  _98 = (long unsigned int) _97;
  _99 = _98 >> 24;
  _100 = _98 >> 8;
  _101 = _100 & 65280;
  _102 = _99 | _101;
  _103 = _98 << 8;
  _104 = _103 & 16711680;
  _105 = _102 | _104;
  _106 = _98 << 24;
  _107 = _105 | _106;
  _108 = (long int) _107;
  reply_buf_135(D)->min_credit = _108;

  <bb 41> [local count: 30162763]:
  # DEBUG BEGIN_STMT
  _109 = __context.tmu;
  _110 = pfe_phy_if_get_id (phy_if_141);
  _111 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  isl_157 = pfe_tmu_shp_get_idle_slope (_109, _110, _111);
  # DEBUG isl => isl_157
  # DEBUG BEGIN_STMT
  _112 = isl_157 >> 24;
  _113 = isl_157 >> 8;
  _114 = _113 & 65280;
  _115 = _112 | _114;
  _116 = isl_157 << 8;
  _117 = _116 & 16711680;
  _118 = _115 | _117;
  _119 = isl_157 << 24;
  _120 = _118 | _119;
  reply_buf_135(D)->isl = _120;
  # DEBUG BEGIN_STMT
  _121 = __context.tmu;
  _122 = pfe_phy_if_get_id (phy_if_141);
  _123 = MEM[(struct fpp_qos_shaper_cmd_t *)msg_137(D) + 16B].id;
  _124 = pfe_tmu_shp_get_position (_121, _122, _123);
  reply_buf_135(D)->position = _124;
  # DEBUG BEGIN_STMT
  *reply_len_133(D) = 36;
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 42> [local count: 170958392]:
<L46>:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_138(D) = 4;
  # DEBUG BEGIN_STMT

  <bb 43> [local count: 1073687517]:
  # ret_126 = PHI <22(2), 0(5), 0(7), 0(9), ret_188(13), ret_191(15), ret_170(17), 0(22), ret_125(24), 0(26), 0(28), 0(30), ret_181(29), 0(32), 0(34), ret_153(41), 0(42), ret_191(14)>
  # DEBUG ret => ret_126
  # DEBUG BEGIN_STMT
  return ret_126;

}


fci_qos_scheduler_cmd (struct fci_msg_t * msg, uint16_t * fci_ret, struct fpp_qos_scheduler_cmd_t * reply_buf, uint32_t * reply_len)
{
  struct pfe_phy_if_t * phy_if;
  errno_t ret;
  struct fpp_qos_scheduler_cmd_t * sch;
  long unsigned int _1;
  struct fpp_qos_scheduler_cmd_t * reply_buf.6_2;
  uint8_t[256] * _3;
  short unsigned int _4;
  uint16_t * fci_ret.8_5;
  char[16] * _6;
  uint16_t * fci_ret.10_7;
  struct pfe_tmu_t * _8;
  <unnamed type> _9;
  struct fpp_qos_scheduler_cmd_t * sch.11_10;
  unsigned char _11;
  uint16_t * fci_ret.12_12;
  <unnamed type> _13;
  uint16_t * fci_ret.13_14;
  uint16_t * fci_ret.14_15;
  short unsigned int _16;
  uint16_t * fci_ret.15_17;
  short unsigned int _18;
  uint16_t * fci_ret.16_19;
  char[16] * _20;
  uint16_t * fci_ret.18_21;
  struct pfe_tmu_t * _22;
  <unnamed type> _23;
  struct fpp_qos_scheduler_cmd_t * sch.19_24;
  unsigned char _25;
  uint16_t * fci_ret.20_26;
  struct fpp_qos_scheduler_cmd_t * sch.21_27;
  struct fpp_qos_scheduler_cmd_t * reply_buf.22_28;
  short unsigned int _29;
  unsigned char _30;
  char[16] * _31;
  char[16] * _32;
  struct fpp_qos_scheduler_cmd_t * reply_buf.27_33;
  struct fpp_qos_scheduler_cmd_t * sch.28_34;
  uint16_t * fci_ret.29_35;
  uint8_t * _72;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG phy_if => 0B
  # DEBUG BEGIN_STMT
  # DEBUG fci => &__context
  # DEBUG BEGIN_STMT
  _1 = *reply_len_39(D);
  if (_1 <= 187)
    goto <bb 19>; [52.23%]
  else
    goto <bb 3>; [47.77%]

  <bb 3> [local count: 512926469]:
  # DEBUG BEGIN_STMT
  *reply_len_39(D) = 0;
  # DEBUG BEGIN_STMT
  reply_buf.6_2 = reply_buf;
  memset (reply_buf.6_2, 0, 188);
  # DEBUG BEGIN_STMT
  _3 = &msg_42(D)->msg_cmd.payload;
  sch = _3;
  # DEBUG BEGIN_STMT
  _4 = MEM[(struct fpp_qos_scheduler_cmd_t *)_3].action;
  switch (_4) <default: <L18> [33.33%], case 4: <L2> [33.33%], case 6: <L13> [33.33%]>

  <bb 4> [local count: 170958392]:
<L2>:
  # DEBUG BEGIN_STMT
  fci_ret.8_5 = fci_ret;
  *fci_ret.8_5 = 0;
  # DEBUG BEGIN_STMT
  _6 = &MEM[(struct fpp_qos_scheduler_cmd_t *)_3].if_name;
  phy_if_60 = fci_get_phy_if_by_name (_6);
  # DEBUG phy_if => phy_if_60
  # DEBUG BEGIN_STMT
  if (phy_if_60 == 0B)
    goto <bb 5>; [46.53%]
  else
    goto <bb 6>; [53.47%]

  <bb 5> [local count: 79546940]:
  # DEBUG BEGIN_STMT
  fci_ret.10_7 = fci_ret;
  *fci_ret.10_7 = 61700;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 6> [local count: 91411452]:
  # DEBUG BEGIN_STMT
  _8 = __context.tmu;
  _9 = pfe_phy_if_get_id (phy_if_60);
  sch.11_10 = sch;
  _11 = sch.11_10->id;
  ret_62 = pfe_tmu_check_scheduler (_8, _9, _11);
  # DEBUG ret => ret_62
  # DEBUG BEGIN_STMT
  if (ret_62 != 0)
    goto <bb 7>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 7> [local count: 45705726]:
  # DEBUG BEGIN_STMT
  fci_ret.12_12 = fci_ret;
  *fci_ret.12_12 = 62481;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 8> [local count: 45705726]:
  # DEBUG BEGIN_STMT
  _13 = pfe_phy_if_get_id (phy_if_60);
  if (_13 == 5)
    goto <bb 9>; [34.00%]
  else
    goto <bb 10>; [66.00%]

  <bb 9> [local count: 15539947]:
  # DEBUG BEGIN_STMT
  fci_ret.13_14 = fci_ret;
  *fci_ret.13_14 = 61719;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 10> [local count: 30165779]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  fci_ret.14_15 = fci_ret;
  _16 = *fci_ret.14_15;
  if (_16 == 0)
    goto <bb 11>; [33.00%]
  else
    goto <bb 19>; [67.00%]

  <bb 11> [local count: 9954707]:
  # DEBUG BEGIN_STMT
  # DEBUG D#7 => &__context
  ret_64 = fci_qos_scheduler_cmd_update_set_mode.isra.0 (&MEM[(void *)&__context + 88B], &sch, &fci_ret, phy_if_60);
  # DEBUG ret => ret_64
  # DEBUG BEGIN_STMT
  fci_ret.15_17 = fci_ret;
  _18 = *fci_ret.15_17;
  if (_18 == 0)
    goto <bb 12>; [33.00%]
  else
    goto <bb 19>; [67.00%]

  <bb 12> [local count: 3285053]:
  # DEBUG BEGIN_STMT
  # DEBUG D#8 => &__context
  ret_66 = fci_qos_scheduler_cmd_update_cfg_scheduler.isra.0 (&MEM[(void *)&__context + 88B], &sch, &fci_ret, phy_if_60);
  # DEBUG ret => ret_66
  goto <bb 19>; [100.00%]

  <bb 13> [local count: 170958392]:
<L13>:
  # DEBUG BEGIN_STMT
  fci_ret.16_19 = fci_ret;
  *fci_ret.16_19 = 0;
  # DEBUG BEGIN_STMT
  _20 = &MEM[(struct fpp_qos_scheduler_cmd_t *)_3].if_name;
  phy_if_46 = fci_get_phy_if_by_name (_20);
  # DEBUG phy_if => phy_if_46
  # DEBUG BEGIN_STMT
  if (phy_if_46 == 0B)
    goto <bb 14>; [46.53%]
  else
    goto <bb 15>; [53.47%]

  <bb 14> [local count: 79546940]:
  # DEBUG BEGIN_STMT
  fci_ret.18_21 = fci_ret;
  *fci_ret.18_21 = 61700;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 15> [local count: 91411452]:
  # DEBUG BEGIN_STMT
  _22 = __context.tmu;
  _23 = pfe_phy_if_get_id (phy_if_46);
  sch.19_24 = sch;
  _25 = sch.19_24->id;
  ret_48 = pfe_tmu_check_scheduler (_22, _23, _25);
  # DEBUG ret => ret_48
  # DEBUG BEGIN_STMT
  if (ret_48 != 0)
    goto <bb 16>; [67.00%]
  else
    goto <bb 17>; [33.00%]

  <bb 16> [local count: 61245673]:
  # DEBUG BEGIN_STMT
  fci_ret.20_26 = fci_ret;
  *fci_ret.20_26 = 62481;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 17> [local count: 30165779]:
  # DEBUG BEGIN_STMT
  sch.21_27 = sch;
  reply_buf.22_28 = reply_buf;
  _29 = sch.21_27->action;
  reply_buf.22_28->action = _29;
  # DEBUG BEGIN_STMT
  _30 = sch.21_27->id;
  reply_buf.22_28->id = _30;
  # DEBUG BEGIN_STMT
  _31 = &reply_buf.22_28->if_name;
  _32 = &sch.21_27->if_name;
  strncpy (_31, _32, 16);
  # DEBUG BEGIN_STMT
  reply_buf.27_33 = reply_buf;
  reply_buf.27_33->if_name[15] = 0;
  # DEBUG BEGIN_STMT
  sch.28_34 = sch;
  # DEBUG D#9 => &__context
  _72 = &MEM[(unsigned char *)sch.28_34 + 18B];
  # DEBUG D#10 => sch.28_34
  ret_54 = fci_qos_scheduler_cmd_query_get_sch.isra.0 (&MEM[(void *)&__context + 88B], _72, &fci_ret, &reply_buf, phy_if_46);
  # DEBUG ret => ret_54
  # DEBUG BEGIN_STMT
  *reply_len_39(D) = 188;
  # DEBUG BEGIN_STMT
  goto <bb 19>; [100.00%]

  <bb 18> [local count: 170958392]:
<L18>:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  fci_ret.29_35 = fci_ret;
  *fci_ret.29_35 = 4;
  # DEBUG BEGIN_STMT

  <bb 19> [local count: 1073690532]:
  # ret_36 = PHI <22(2), 0(5), 0(7), 0(9), ret_64(11), 0(14), 0(16), ret_54(17), 0(18), 0(10), ret_66(12)>
  # DEBUG ret => ret_36
  # DEBUG BEGIN_STMT
  sch ={v} {CLOBBER};
  return ret_36;

}


fci_qos_queue_cmd (struct fci_msg_t * msg, uint16_t * fci_ret, struct fpp_qos_queue_cmd_t * reply_buf, uint32_t * reply_len)
{
  uint8_t ii;
  uint8_t cnt;
  struct pfe_phy_if_t * phy_if;
  errno_t ret;
  long unsigned int _1;
  short unsigned int _2;
  char[16] * _3;
  <unnamed type> _4;
  struct pfe_tmu_t * _5;
  unsigned char _6;
  unsigned char _7;
  struct pfe_tmu_t * _8;
  <unnamed type> _9;
  struct pfe_tmu_t * _10;
  <unnamed type> _11;
  int _12;
  <unnamed type> _13;
  long unsigned int _14;
  long unsigned int _15;
  long unsigned int _16;
  long unsigned int _17;
  long unsigned int _18;
  long unsigned int _19;
  long unsigned int _20;
  long unsigned int _21;
  long unsigned int _22;
  long unsigned int _23;
  long unsigned int _24;
  long unsigned int _25;
  long unsigned int _26;
  long unsigned int _27;
  long unsigned int _28;
  long unsigned int _29;
  long unsigned int _30;
  long unsigned int _31;
  long unsigned int _32;
  long unsigned int _33;
  unsigned char _34;
  struct pfe_tmu_t * _35;
  <unnamed type> _36;
  struct pfe_tmu_t * _37;
  <unnamed type> _38;
  unsigned char _39;
  int _40;
  unsigned char _41;
  char[16] * _42;
  struct pfe_tmu_t * _43;
  <unnamed type> _44;
  unsigned char _45;
  short unsigned int _46;
  unsigned char _47;
  char[16] * _48;
  struct pfe_tmu_t * _50;
  <unnamed type> _51;
  unsigned char _52;
  uint32_t * _53;
  uint32_t * _54;
  <unnamed type> _55;
  long unsigned int _56;
  long unsigned int _57;
  long unsigned int _58;
  long unsigned int _59;
  long unsigned int _60;
  long unsigned int _61;
  long unsigned int _62;
  long unsigned int _63;
  long unsigned int _64;
  long unsigned int _65;
  long unsigned int _66;
  long unsigned int _67;
  long unsigned int _68;
  long unsigned int _69;
  long unsigned int _70;
  long unsigned int _71;
  long unsigned int _72;
  long unsigned int _73;
  long unsigned int _74;
  long unsigned int _75;
  long unsigned int _76;
  long unsigned int _77;
  long unsigned int _78;
  long unsigned int _79;
  long unsigned int _80;
  long unsigned int _81;
  long unsigned int _82;
  long unsigned int _83;
  long unsigned int _84;
  long unsigned int _85;
  long unsigned int _86;
  long unsigned int _87;
  long unsigned int _88;
  long unsigned int _89;
  long unsigned int _90;
  long unsigned int _91;
  long unsigned int _92;
  long unsigned int _93;
  long unsigned int _94;
  long unsigned int _95;
  struct pfe_tmu_t * _96;
  <unnamed type> _97;
  unsigned char _98;
  struct pfe_tmu_t * _99;
  <unnamed type> _100;
  unsigned char _101;
  int _102;
  uint8_t * _103;
  int _104;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  # DEBUG phy_if => 0B
  # DEBUG BEGIN_STMT
  # DEBUG fci => &__context
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = *reply_len_120(D);
  if (_1 <= 59)
    goto <bb 45>; [52.23%]
  else
    goto <bb 3>; [47.77%]

  <bb 3> [local count: 512926469]:
  # DEBUG BEGIN_STMT
  *reply_len_120(D) = 0;
  # DEBUG BEGIN_STMT
  memset (reply_buf_122(D), 0, 60);
  # DEBUG BEGIN_STMT
  # DEBUG D#11 => &msg_124(D)->msg_cmd.payload
  # DEBUG q => D#11
  # DEBUG BEGIN_STMT
  _2 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].action;
  switch (_2) <default: <L49> [33.33%], case 4: <L2> [33.33%], case 6: <L28> [33.33%]>

  <bb 4> [local count: 170958392]:
<L2>:
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 0;
  # DEBUG BEGIN_STMT
  _3 = &MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].if_name;
  phy_if_160 = fci_get_phy_if_by_name (_3);
  # DEBUG phy_if => phy_if_160
  # DEBUG BEGIN_STMT
  if (phy_if_160 == 0B)
    goto <bb 5>; [30.00%]
  else
    goto <bb 6>; [70.00%]

  <bb 5> [local count: 51287518]:
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 61700;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 45>; [100.00%]

  <bb 6> [local count: 119670874]:
  # DEBUG BEGIN_STMT
  _4 = pfe_phy_if_get_id (phy_if_160);
  if (_4 == 5)
    goto <bb 7>; [51.12%]
  else
    goto <bb 8>; [48.88%]

  <bb 7> [local count: 61175751]:
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 61719;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 45>; [100.00%]

  <bb 8> [local count: 58495123]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _5 = __context.tmu;
  cnt_162 = pfe_tmu_queue_get_cnt (_5, _4);
  # DEBUG cnt => cnt_162
  # DEBUG BEGIN_STMT
  _6 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].id;
  if (_6 > cnt_162)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 29247562]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 62465;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 45>; [100.00%]

  <bb 10> [local count: 29247562]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _7 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].mode;
  if (_7 > 3)
    goto <bb 11>; [50.00%]
  else
    goto <bb 12>; [50.00%]

  <bb 11> [local count: 14623781]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 45>; [100.00%]

  <bb 12> [local count: 14623781]:
  # DEBUG BEGIN_STMT
  if (_7 == 0)
    goto <bb 13>; [50.00%]
  else
    goto <bb 14>; [50.00%]

  <bb 13> [local count: 7311890]:
  # DEBUG BEGIN_STMT
  _8 = __context.tmu;
  _9 = pfe_phy_if_get_id (phy_if_160);
  ret_166 = pfe_tmu_queue_set_mode (_8, _9, _6, 0, 0, 0);
  # DEBUG ret => ret_166
  goto <bb 15>; [100.00%]

  <bb 14> [local count: 7311890]:
  # DEBUG BEGIN_STMT
  _10 = __context.tmu;
  _11 = pfe_phy_if_get_id (phy_if_160);
  _12 = (int) _7;
  _13 = fci_qmode_to_qmode[_12];
  _14 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].min;
  _15 = _14 >> 24;
  _16 = _14 >> 8;
  _17 = _16 & 65280;
  _18 = _15 | _17;
  _19 = _14 << 8;
  _20 = _19 & 16711680;
  _21 = _18 | _20;
  _22 = _14 << 24;
  _23 = _21 | _22;
  _24 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].max;
  _25 = _24 >> 24;
  _26 = _24 >> 8;
  _27 = _26 & 65280;
  _28 = _25 | _27;
  _29 = _24 << 8;
  _30 = _29 & 16711680;
  _31 = _28 | _30;
  _32 = _24 << 24;
  _33 = _31 | _32;
  ret_164 = pfe_tmu_queue_set_mode (_10, _11, _6, _13, _23, _33);
  # DEBUG ret => ret_164

  <bb 15> [local count: 14623781]:
  # ret_105 = PHI <ret_166(13), ret_164(14)>
  # DEBUG ret => ret_105
  # DEBUG BEGIN_STMT
  if (ret_105 != 0)
    goto <bb 16>; [50.00%]
  else
    goto <bb 19>; [50.00%]

  <bb 16> [local count: 7311890]:
  # DEBUG BEGIN_STMT
  if (ret_105 == 113)
    goto <bb 17>; [34.00%]
  else
    goto <bb 18>; [66.00%]

  <bb 17> [local count: 2486043]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 62466;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  goto <bb 45>; [100.00%]

  <bb 18> [local count: 4825848]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  goto <bb 45>; [100.00%]

  <bb 19> [local count: 7311890]:
  # DEBUG BEGIN_STMT
  _34 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].mode;
  if (_34 == 3)
    goto <bb 20>; [20.24%]
  else
    goto <bb 45>; [79.76%]

  <bb 20> [local count: 1479927]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _35 = __context.tmu;
  _36 = pfe_phy_if_get_id (phy_if_160);
  cnt_168 = pfe_tmu_queue_get_cnt (_35, _36);
  # DEBUG cnt => cnt_168
  # DEBUG BEGIN_STMT
  if (cnt_168 > 32)
    goto <bb 21>; [35.00%]
  else
    goto <bb 46>; [65.00%]

  <bb 46> [local count: 961952]:
  goto <bb 25>; [100.00%]

  <bb 21> [local count: 517974]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 65535;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 22
  # DEBUG BEGIN_STMT
  goto <bb 45>; [100.00%]

  <bb 22> [local count: 8497732]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _37 = __context.tmu;
  _38 = pfe_phy_if_get_id (phy_if_160);
  _39 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].id;
  _40 = (int) ii_111;
  _41 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].zprob[_40];
  ret_170 = pfe_tmu_queue_set_wred_prob (_37, _38, _39, ii_111, _41);
  # DEBUG ret => ret_170
  # DEBUG BEGIN_STMT
  if (ret_170 != 0)
    goto <bb 23>; [5.50%]
  else
    goto <bb 24>; [94.50%]

  <bb 23> [local count: 467375]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 3;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 45>; [100.00%]

  <bb 24> [local count: 8030357]:
  # DEBUG BEGIN_STMT
  ii_171 = ii_111 + 1;
  # DEBUG ii => ii_171

  <bb 25> [local count: 8992309]:
  # ret_106 = PHI <0(24), 0(46)>
  # ii_111 = PHI <ii_171(24), 0(46)>
  # DEBUG ii => ii_111
  # DEBUG ret => ret_106
  # DEBUG BEGIN_STMT
  if (ii_111 < cnt_168)
    goto <bb 22>; [94.50%]
  else
    goto <bb 45>; [5.50%]

  <bb 26> [local count: 170958392]:
<L28>:
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 0;
  # DEBUG BEGIN_STMT
  _42 = &MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].if_name;
  phy_if_128 = fci_get_phy_if_by_name (_42);
  # DEBUG phy_if => phy_if_128
  # DEBUG BEGIN_STMT
  if (phy_if_128 == 0B)
    goto <bb 27>; [46.53%]
  else
    goto <bb 28>; [53.47%]

  <bb 27> [local count: 79546940]:
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 61700;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 45>; [100.00%]

  <bb 28> [local count: 91411452]:
  # DEBUG BEGIN_STMT
  _43 = __context.tmu;
  _44 = pfe_phy_if_get_id (phy_if_128);
  _45 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].id;
  ret_130 = pfe_tmu_check_queue (_43, _44, _45);
  # DEBUG ret => ret_130
  # DEBUG BEGIN_STMT
  if (ret_130 != 0)
    goto <bb 29>; [67.00%]
  else
    goto <bb 30>; [33.00%]

  <bb 29> [local count: 61245673]:
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 62465;
  # DEBUG BEGIN_STMT
  # DEBUG ret => 0
  # DEBUG BEGIN_STMT
  goto <bb 45>; [100.00%]

  <bb 30> [local count: 30165779]:
  # DEBUG BEGIN_STMT
  _46 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].action;
  reply_buf_122(D)->action = _46;
  # DEBUG BEGIN_STMT
  _47 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].id;
  reply_buf_122(D)->id = _47;
  # DEBUG BEGIN_STMT
  _48 = &reply_buf_122(D)->if_name;
  strncpy (_48, _42, 16);
  # DEBUG BEGIN_STMT
  reply_buf_122(D)->if_name[15] = 0;
  # DEBUG BEGIN_STMT
  _50 = __context.tmu;
  _51 = pfe_phy_if_get_id (phy_if_128);
  _52 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].id;
  _53 = &reply_buf_122(D)->min;
  _54 = &reply_buf_122(D)->max;
  _55 = pfe_tmu_queue_get_mode (_50, _51, _52, _53, _54);
  switch (_55) <default: <L47> [25.00%], case 0: <L33> [25.00%], case 1: <L38> [25.00%], case 2: <L37> [25.00%]>

  <bb 31> [local count: 7541445]:
<L33>:
  # DEBUG BEGIN_STMT
  _56 = reply_buf_122(D)->max;
  if (_56 == 0)
    goto <bb 32>; [50.00%]
  else
    goto <bb 33>; [50.00%]

  <bb 32> [local count: 3770722]:
  # DEBUG BEGIN_STMT
  reply_buf_122(D)->mode = 0;
  # DEBUG BEGIN_STMT
  reply_buf_122(D)->max = 0;
  # DEBUG BEGIN_STMT
  reply_buf_122(D)->min = 0;
  goto <bb 43>; [100.00%]

  <bb 33> [local count: 3770722]:
  # DEBUG BEGIN_STMT
  reply_buf_122(D)->mode = 2;
  # DEBUG BEGIN_STMT
  _57 = _56 >> 24;
  _58 = _56 >> 8;
  _59 = _58 & 65280;
  _60 = _57 | _59;
  _61 = _56 << 8;
  _62 = _61 & 16711680;
  _63 = _60 | _62;
  _64 = _56 << 24;
  _65 = _63 | _64;
  reply_buf_122(D)->max = _65;
  # DEBUG BEGIN_STMT
  reply_buf_122(D)->min = 0;
  goto <bb 43>; [100.00%]

  <bb 34> [local count: 7541445]:
<L37>:
  # DEBUG BEGIN_STMT
  reply_buf_122(D)->mode = 1;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _66 = reply_buf_122(D)->min;
  _67 = _66 >> 24;
  _68 = _66 >> 8;
  _69 = _68 & 65280;
  _70 = _67 | _69;
  _71 = _66 << 8;
  _72 = _71 & 16711680;
  _73 = _70 | _72;
  _74 = _66 << 24;
  _75 = _73 | _74;
  reply_buf_122(D)->max = _75;
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 35> [local count: 7541445]:
<L38>:
  # DEBUG BEGIN_STMT
  reply_buf_122(D)->mode = 3;
  # DEBUG BEGIN_STMT
  _76 = reply_buf_122(D)->max;
  _77 = _76 >> 24;
  _78 = _76 >> 8;
  _79 = _78 & 65280;
  _80 = _77 | _79;
  _81 = _76 << 8;
  _82 = _81 & 16711680;
  _83 = _80 | _82;
  _84 = _76 << 24;
  _85 = _83 | _84;
  reply_buf_122(D)->max = _85;
  # DEBUG BEGIN_STMT
  _86 = reply_buf_122(D)->min;
  _87 = _86 >> 24;
  _88 = _86 >> 8;
  _89 = _88 & 65280;
  _90 = _87 | _89;
  _91 = _86 << 8;
  _92 = _91 & 16711680;
  _93 = _90 | _92;
  _94 = _86 << 24;
  _95 = _93 | _94;
  reply_buf_122(D)->min = _95;
  # DEBUG BEGIN_STMT
  _96 = __context.tmu;
  _97 = pfe_phy_if_get_id (phy_if_128);
  _98 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].id;
  cnt_142 = pfe_tmu_queue_get_wred_zones (_96, _97, _98);
  # DEBUG cnt => cnt_142
  # DEBUG BEGIN_STMT
  # DEBUG ii => 0
  goto <bb 41>; [100.00%]

  <bb 36> [local count: 152670787]:
  # DEBUG BEGIN_STMT
  if (ii_112 < cnt_142)
    goto <bb 37>; [33.00%]
  else
    goto <bb 39>; [67.00%]

  <bb 37> [local count: 50381360]:
  # DEBUG BEGIN_STMT
  _99 = __context.tmu;
  _100 = pfe_phy_if_get_id (phy_if_128);
  _101 = MEM[(struct fpp_qos_queue_cmd_t *)msg_124(D) + 16B].id;
  _102 = (int) ii_112;
  _103 = &reply_buf_122(D)->zprob[_102];
  ret_145 = pfe_tmu_queue_get_wred_prob (_99, _100, _101, ii_112, _103);
  # DEBUG ret => ret_145
  # DEBUG BEGIN_STMT
  if (ret_145 != 0)
    goto <bb 38>; [5.50%]
  else
    goto <bb 40>; [94.50%]

  <bb 38> [local count: 2770975]:
  # ret_49 = PHI <ret_145(37)>
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 65535;
  # DEBUG BEGIN_STMT
  goto <bb 43>; [100.00%]

  <bb 39> [local count: 102289427]:
  # DEBUG BEGIN_STMT
  _104 = (int) ii_112;
  reply_buf_122(D)->zprob[_104] = 255;

  <bb 40> [local count: 149899812]:
  # ret_107 = PHI <ret_145(37), ret_108(39)>
  # DEBUG ret => ret_107
  # DEBUG BEGIN_STMT
  ii_147 = ii_112 + 1;
  # DEBUG ii => ii_147

  <bb 41> [local count: 157441257]:
  # ret_108 = PHI <0(35), ret_107(40)>
  # ii_112 = PHI <0(35), ii_147(40)>
  # DEBUG ii => ii_112
  # DEBUG ret => ret_108
  # DEBUG BEGIN_STMT
  if (ii_112 != 32)
    goto <bb 36>; [96.97%]
  else
    goto <bb 43>; [3.03%]

  <bb 42> [local count: 7541445]:
<L47>:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 65535;
  # DEBUG BEGIN_STMT

  <bb 43> [local count: 30165779]:
  # ret_109 = PHI <0(33), 0(34), ret_108(41), 0(42), 0(32), ret_49(38)>
  # DEBUG ret => ret_109
  # DEBUG BEGIN_STMT
  *reply_len_120(D) = 60;
  # DEBUG BEGIN_STMT
  goto <bb 45>; [100.00%]

  <bb 44> [local count: 170958392]:
<L49>:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *fci_ret_125(D) = 4;
  # DEBUG BEGIN_STMT

  <bb 45> [local count: 1073690533]:
  # ret_110 = PHI <22(2), 0(5), 0(7), 0(9), 0(11), 0(18), 22(21), 0(23), 0(27), 0(29), ret_109(43), 0(44), 0(17), 0(19), ret_106(25)>
  # DEBUG ret => ret_110
  # DEBUG BEGIN_STMT
  return ret_110;

}


fci_get_phy_if_by_name (char_t * name)
{
  uint32_t sid;
  errno_t ret;
  struct pfe_phy_if_t * phy_if;
  struct pfe_if_db_entry_t * entry;
  struct pfe_if_db_t * _1;
  long unsigned int sid.2_2;
  struct pfe_if_db_entry_t * entry.3_3;
  long unsigned int sid.5_4;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG fci => &__context
  # DEBUG BEGIN_STMT
  entry = 0B;
  # DEBUG BEGIN_STMT
  # DEBUG phy_if => 0B
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  ret_11 = pfe_if_db_lock (&sid);
  # DEBUG ret => ret_11
  # DEBUG BEGIN_STMT
  if (ret_11 != 0)
    goto <bb 6>; [45.33%]
  else
    goto <bb 3>; [54.67%]

  <bb 3> [local count: 587014656]:
  # DEBUG BEGIN_STMT
  _1 = __context.phy_if_db;
  sid.2_2 = sid;
  pfe_if_db_get_first (_1, sid.2_2, 3, name_12(D), &entry);
  # DEBUG ret => NULL
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  entry.3_3 = entry;
  if (entry.3_3 != 0B)
    goto <bb 4>; [70.00%]
  else
    goto <bb 5>; [30.00%]

  <bb 4> [local count: 410910259]:
  # DEBUG BEGIN_STMT
  phy_if_14 = pfe_if_db_entry_get_phy_if (entry.3_3);
  # DEBUG phy_if => phy_if_14

  <bb 5> [local count: 587014656]:
  # phy_if_5 = PHI <0B(3), phy_if_14(4)>
  # DEBUG phy_if => phy_if_5
  # DEBUG BEGIN_STMT
  sid.5_4 = sid;
  pfe_if_db_unlock (sid.5_4);
  # DEBUG ret => NULL
  # DEBUG BEGIN_STMT

  <bb 6> [local count: 1073741824]:
  # phy_if_6 = PHI <0B(2), phy_if_5(5)>
  # DEBUG phy_if => phy_if_6
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  entry ={v} {CLOBBER};
  sid ={v} {CLOBBER};
  return phy_if_6;

}


