ADM/GW/Debug_RAM/src/board.c.022i.opt_local_passes
2024-08-08 10:00:15 +09:00

841 lines
14 KiB
Plaintext

debug_printf (char * msg)
{
u8 len;
u8 i;
struct va_list argptr;
char str[256];
unsigned int _1;
int _2;
char _3;
unsigned char i.9_4;
<bb 2> :
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
__builtin_va_start (&argptr, 0);
# DEBUG BEGIN_STMT
vsprintf (&str, msg_9(D), argptr);
# DEBUG BEGIN_STMT
__builtin_va_end (&argptr);
# DEBUG BEGIN_STMT
_1 = strlen (&str);
len_12 = (u8) _1;
# DEBUG len => len_12
# DEBUG BEGIN_STMT
i_13 = 0;
# DEBUG i => i_13
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_2 = (int) i_5;
_3 = str[_2];
put_char (_3);
# DEBUG BEGIN_STMT
i.9_4 = i_5;
i_17 = i.9_4 + 1;
# DEBUG i => i_17
<bb 4> :
# i_5 = PHI <i_13(2), i_17(3)>
# DEBUG i => i_5
# DEBUG BEGIN_STMT
if (i_5 < len_12)
goto <bb 3>; [INV]
else
goto <bb 5>; [INV]
<bb 5> :
str ={v} {CLOBBER};
argptr ={v} {CLOBBER};
return;
}
get_line (u32 max_len)
{
unsigned int _1;
char * _2;
int _3;
unsigned int _4;
char _5;
int _6;
unsigned int _7;
unsigned int _8;
unsigned int _9;
unsigned int _10;
unsigned int _11;
char _12;
char _13;
unsigned int _14;
char _15;
unsigned int _16;
unsigned int _17;
unsigned int _18;
char _19;
char _20;
unsigned int _21;
unsigned int _22;
unsigned int _23;
char * _24;
int _25;
unsigned int _26;
unsigned int _27;
char _28;
unsigned int _29;
char _30;
unsigned int _31;
unsigned int _32;
unsigned int _33;
unsigned int _34;
char _35;
unsigned int _36;
unsigned int _37;
int _38;
int _46;
int _50;
int _60;
int _63;
int _64;
<bb 2> :
# DEBUG BEGIN_STMT
_1 = gb.cmd_idx;
_2 = &gb.cmd_buf[_1];
_3 = get_char (_2);
if (_3 == 1)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_64 = 1;
// predicted unlikely by early return (on trees) predictor.
goto <bb 18>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
_4 = gb.cmd_idx;
_5 = gb.cmd_buf[_4];
_6 = (int) _5;
switch (_6) <default: <L8> [INV], case 0: <L2> [INV], case 8: <L5> [INV], case 10: <L3> [INV], case 13: <L3> [INV]>
<bb 5> :
<L2>:
# DEBUG BEGIN_STMT
gb.cmd_idx = 0;
# DEBUG BEGIN_STMT
_50 = 0;
goto <bb 18>; [INV]
<bb 6> :
<L3>:
# DEBUG BEGIN_STMT
debug_printf ("\r\n");
# DEBUG BEGIN_STMT
_7 = gb.cmd_idx;
gb.cmd_buf[_7] = 0;
# DEBUG BEGIN_STMT
gb.cmd_idx = 0;
# DEBUG BEGIN_STMT
_46 = 0;
goto <bb 18>; [INV]
<bb 7> :
<L5>:
# DEBUG BEGIN_STMT
_8 = gb.cmd_idx;
if (_8 != 0)
goto <bb 8>; [INV]
else
goto <bb 15>; [INV]
<bb 8> :
# DEBUG BEGIN_STMT
_9 = gb.cmd_idx;
_10 = _9 + 4294967295;
gb.cmd_idx = _10;
# DEBUG BEGIN_STMT
debug_printf ("\b \b");
goto <bb 15>; [INV]
<bb 9> :
<L8>:
# DEBUG BEGIN_STMT
_11 = gb.cmd_idx;
_12 = gb.cmd_buf[_11];
_13 = _12 + 224;
if (_13 <= 94)
goto <bb 10>; [INV]
else
goto <bb 11>; [INV]
<bb 10> :
# DEBUG BEGIN_STMT
_14 = gb.cmd_idx;
_15 = gb.cmd_buf[_14];
put_char (_15);
# DEBUG BEGIN_STMT
_16 = gb.cmd_idx;
_17 = _16 + 1;
gb.cmd_idx = _17;
goto <bb 15>; [INV]
<bb 11> :
# DEBUG BEGIN_STMT
_18 = gb.cmd_idx;
_19 = gb.cmd_buf[_18];
_20 = _19 + 80;
if (_20 <= 24)
goto <bb 12>; [INV]
else
goto <bb 15>; [INV]
<bb 12> :
# DEBUG BEGIN_STMT
_21 = gb.cmd_idx;
_22 = _21 + 1;
gb.cmd_idx = _22;
# DEBUG BEGIN_STMT
_23 = gb.cmd_idx;
_24 = &gb.cmd_buf[_23];
_25 = get_char (_24);
if (_25 == 0)
goto <bb 13>; [INV]
else
goto <bb 14>; [INV]
<bb 13> :
# DEBUG BEGIN_STMT
_26 = gb.cmd_idx;
_27 = _26 + 4294967295;
_28 = gb.cmd_buf[_27];
put_char (_28);
# DEBUG BEGIN_STMT
_29 = gb.cmd_idx;
_30 = gb.cmd_buf[_29];
put_char (_30);
# DEBUG BEGIN_STMT
_31 = gb.cmd_idx;
_32 = _31 + 1;
gb.cmd_idx = _32;
goto <bb 15>; [INV]
<bb 14> :
# DEBUG BEGIN_STMT
_33 = gb.cmd_idx;
_34 = _33 + 4294967295;
_35 = gb.cmd_buf[_34];
put_char (_35);
<bb 15> :
# DEBUG BEGIN_STMT
_36 = gb.cmd_idx;
if (max_len_59(D) <= _36)
goto <bb 16>; [INV]
else
goto <bb 17>; [INV]
<bb 16> :
# DEBUG BEGIN_STMT
_37 = max_len_59(D) + 4294967295;
gb.cmd_buf[_37] = 0;
# DEBUG BEGIN_STMT
gb.cmd_idx = 0;
# DEBUG BEGIN_STMT
_63 = 0;
// predicted unlikely by early return (on trees) predictor.
goto <bb 18>; [INV]
<bb 17> :
# DEBUG BEGIN_STMT
_60 = 1;
<bb 18> :
# _38 = PHI <_64(3), _50(5), _46(6), _63(16), _60(17)>
return _38;
}
put_char (char ch)
{
<bb 2> :
# DEBUG BEGIN_STMT
Lpuart_Uart_Ip_SyncSend (0, &ch, 1);
return;
}
get_char (char * ch)
{
unsigned int _1;
unsigned int _2;
unsigned int _3;
char _4;
unsigned int _5;
unsigned int _6;
unsigned int _7;
int _8;
int _14;
int _15;
<bb 2> :
# DEBUG BEGIN_STMT
_1 = gb.ubuf_head;
_2 = gb.ubuf_tail;
if (_1 == _2)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_15 = 1;
// predicted unlikely by early return (on trees) predictor.
goto <bb 5>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
_3 = gb.ubuf_head;
_4 = gb.ubuf[_3];
*ch_11(D) = _4;
# DEBUG BEGIN_STMT
_5 = gb.ubuf_head;
_6 = _5 + 1;
_7 = _6 & 255;
gb.ubuf_head = _7;
# DEBUG BEGIN_STMT
_14 = 0;
<bb 5> :
# _8 = PHI <_15(3), _14(4)>
return _8;
}
Gvar_init ()
{
<bb 2> :
# DEBUG BEGIN_STMT
gb.ubuf_head = 0;
# DEBUG BEGIN_STMT
gb.ubuf_tail = 0;
return;
}
PrintLogo ()
{
<bb 2> :
# DEBUG BEGIN_STMT
debug_printf ("\n\r\n");
# DEBUG BEGIN_STMT
debug_printf ("================================================\r\n");
# DEBUG BEGIN_STMT
debug_printf (" MR S32K344 APPLICATION\n");
# DEBUG BEGIN_STMT
debug_printf (" Version %04X\n", 1);
# DEBUG BEGIN_STMT
debug_printf (" Author : sihong89@gmail.com\n");
# DEBUG BEGIN_STMT
debug_printf (" Last compiled : %s %s\n", "Oct 27 2021", "13:34:26");
# DEBUG BEGIN_STMT
debug_printf ("================================================\r\n");
return;
}
UART0_RX_Callback (uint32 instance, void * driverState, Lpuart_Uart_Ip_EventType event, void * userData)
{
unsigned int _1;
char _2;
unsigned int _3;
unsigned int _4;
unsigned int _5;
<bb 2> :
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
if (event_7(D) == 0)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_1 = gb.ubuf_tail;
_2 = gb.utemp[0];
gb.ubuf[_1] = _2;
# DEBUG BEGIN_STMT
_3 = gb.ubuf_tail;
_4 = _3 + 1;
_5 = _4 & 255;
gb.ubuf_tail = _5;
# DEBUG BEGIN_STMT
Lpuart_Uart_Ip_SetRxBuffer (instance_11(D), &gb.utemp, 1);
<bb 4> :
return;
}
board_init ()
{
<bb 2> :
# DEBUG BEGIN_STMT
Lpuart_Uart_Ip_AsyncReceive (0, &gb.utemp, 1);
# DEBUG BEGIN_STMT
led_onoff (0);
return;
}
system_reset ()
{
u32 * addr;
<bb 2> :
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
addr_1 = 1076297728B;
# DEBUG addr => addr_1
# DEBUG BEGIN_STMT
*addr_1 = 1;
return;
}
Pit_Callback ()
{
long unsigned int _1;
long unsigned int _2;
unsigned int _3;
unsigned int _4;
unsigned int _5;
int _6;
<bb 2> :
# DEBUG BEGIN_STMT
_1 = gb.tmr_cnt;
_2 = _1 + 1;
gb.tmr_cnt = _2;
# DEBUG BEGIN_STMT
_3 = gb.led_cnt;
_4 = _3 + 1;
gb.led_cnt = _4;
# DEBUG BEGIN_STMT
_5 = gb.led_cnt;
if (_5 > 1000)
goto <bb 3>; [INV]
else
goto <bb 6>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
gb.led_cnt = 0;
# DEBUG BEGIN_STMT
_6 = gb.led_flag;
if (_6 == 1)
goto <bb 4>; [INV]
else
goto <bb 5>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
led_onoff (0);
goto <bb 6>; [INV]
<bb 5> :
# DEBUG BEGIN_STMT
led_onoff (1);
<bb 6> :
return;
}
Adc1EndOfChainNoti ()
{
volatile u16 data;
short unsigned int _1;
short unsigned int _2;
int _3;
short unsigned int data.7_4;
short unsigned int _5;
int _6;
int _7;
int _8;
short unsigned int _9;
unsigned int _10;
short unsigned int _11;
short unsigned int _12;
short unsigned int _13;
int _14;
short unsigned int data.8_15;
short unsigned int _16;
int _17;
int _18;
int _19;
short unsigned int _20;
unsigned int _21;
short unsigned int _22;
<bb 2> :
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_1 = Adc_Sar_Ip_GetConvData (1, 35);
data ={v} _1;
# DEBUG BEGIN_STMT
_2 = gb.adc[1].idx;
_3 = (int) _2;
data.7_4 ={v} data;
gb.adc[1].raw[_3] = data.7_4;
# DEBUG BEGIN_STMT
_5 = gb.adc[1].idx;
_6 = (int) _5;
_7 = _6 + 1;
_8 = _7 % 10;
_9 = (short unsigned int) _8;
gb.adc[1].idx = _9;
# DEBUG BEGIN_STMT
_10 = get_average (&gb.adc[1].raw, 10);
_11 = (short unsigned int) _10;
gb.adc[1].avr = _11;
# DEBUG BEGIN_STMT
_12 = Adc_Sar_Ip_GetConvData (1, 36);
data ={v} _12;
# DEBUG BEGIN_STMT
_13 = gb.adc[0].idx;
_14 = (int) _13;
data.8_15 ={v} data;
gb.adc[0].raw[_14] = data.8_15;
# DEBUG BEGIN_STMT
_16 = gb.adc[0].idx;
_17 = (int) _16;
_18 = _17 + 1;
_19 = _18 % 10;
_20 = (short unsigned int) _19;
gb.adc[0].idx = _20;
# DEBUG BEGIN_STMT
_21 = get_average (&gb.adc[0].raw, 10);
_22 = (short unsigned int) _21;
gb.adc[0].avr = _22;
# DEBUG BEGIN_STMT
Adc_Sar_Ip_StartConversion (1, 0);
return;
}
Adc0EndOfChainNoti ()
{
volatile u16 data;
short unsigned int _1;
short unsigned int _2;
int _3;
short unsigned int data.5_4;
short unsigned int _5;
int _6;
int _7;
int _8;
short unsigned int _9;
unsigned int _10;
short unsigned int _11;
short unsigned int _12;
short unsigned int _13;
int _14;
short unsigned int data.6_15;
short unsigned int _16;
int _17;
int _18;
int _19;
short unsigned int _20;
unsigned int _21;
short unsigned int _22;
<bb 2> :
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_1 = Adc_Sar_Ip_GetConvData (0, 33);
data ={v} _1;
# DEBUG BEGIN_STMT
_2 = gb.adc[2].idx;
_3 = (int) _2;
data.5_4 ={v} data;
gb.adc[2].raw[_3] = data.5_4;
# DEBUG BEGIN_STMT
_5 = gb.adc[2].idx;
_6 = (int) _5;
_7 = _6 + 1;
_8 = _7 % 10;
_9 = (short unsigned int) _8;
gb.adc[2].idx = _9;
# DEBUG BEGIN_STMT
_10 = get_average (&gb.adc[2].raw, 10);
_11 = (short unsigned int) _10;
gb.adc[2].avr = _11;
# DEBUG BEGIN_STMT
_12 = Adc_Sar_Ip_GetConvData (0, 47);
data ={v} _12;
# DEBUG BEGIN_STMT
_13 = gb.adc[3].idx;
_14 = (int) _13;
data.6_15 ={v} data;
gb.adc[3].raw[_14] = data.6_15;
# DEBUG BEGIN_STMT
_16 = gb.adc[3].idx;
_17 = (int) _16;
_18 = _17 + 1;
_19 = _18 % 10;
_20 = (short unsigned int) _19;
gb.adc[3].idx = _20;
# DEBUG BEGIN_STMT
_21 = get_average (&gb.adc[3].raw, 10);
_22 = (short unsigned int) _21;
gb.adc[3].avr = _22;
# DEBUG BEGIN_STMT
Adc_Sar_Ip_StartConversion (0, 0);
return;
}
get_average (u16 * val, int len)
{
int i;
int sum;
int max;
int min;
u16 ret;
unsigned int i.0_1;
unsigned int _2;
u16 * _3;
short unsigned int _4;
int _5;
unsigned int i.1_6;
unsigned int _7;
u16 * _8;
short unsigned int _9;
int _10;
unsigned int i.2_11;
unsigned int _12;
u16 * _13;
short unsigned int _14;
unsigned int i.3_15;
unsigned int _16;
u16 * _17;
short unsigned int _18;
int _19;
unsigned int i.4_20;
unsigned int _21;
u16 * _22;
short unsigned int _23;
int _24;
int _25;
int _26;
int _27;
u32 _40;
<bb 2> :
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
min_34 = 65536;
# DEBUG min => min_34
# DEBUG BEGIN_STMT
max_35 = -65537;
# DEBUG max => max_35
# DEBUG BEGIN_STMT
sum_36 = 0;
# DEBUG sum => sum_36
# DEBUG BEGIN_STMT
i_37 = 0;
# DEBUG i => i_37
goto <bb 8>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
i.0_1 = (unsigned int) i_33;
_2 = i.0_1 * 2;
_3 = val_42(D) + _2;
_4 = *_3;
_5 = (int) _4;
sum_43 = sum_32 + _5;
# DEBUG sum => sum_43
# DEBUG BEGIN_STMT
i.1_6 = (unsigned int) i_33;
_7 = i.1_6 * 2;
_8 = val_42(D) + _7;
_9 = *_8;
_10 = (int) _9;
if (max_31 < _10)
goto <bb 4>; [INV]
else
goto <bb 5>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
i.2_11 = (unsigned int) i_33;
_12 = i.2_11 * 2;
_13 = val_42(D) + _12;
_14 = *_13;
max_44 = (int) _14;
# DEBUG max => max_44
<bb 5> :
# max_30 = PHI <max_31(3), max_44(4)>
# DEBUG max => max_30
# DEBUG BEGIN_STMT
i.3_15 = (unsigned int) i_33;
_16 = i.3_15 * 2;
_17 = val_42(D) + _16;
_18 = *_17;
_19 = (int) _18;
if (min_29 > _19)
goto <bb 6>; [INV]
else
goto <bb 7>; [INV]
<bb 6> :
# DEBUG BEGIN_STMT
i.4_20 = (unsigned int) i_33;
_21 = i.4_20 * 2;
_22 = val_42(D) + _21;
_23 = *_22;
min_45 = (int) _23;
# DEBUG min => min_45
<bb 7> :
# min_28 = PHI <min_29(5), min_45(6)>
# DEBUG min => min_28
# DEBUG BEGIN_STMT
i_46 = i_33 + 1;
# DEBUG i => i_46
<bb 8> :
# min_29 = PHI <min_34(2), min_28(7)>
# max_31 = PHI <max_35(2), max_30(7)>
# sum_32 = PHI <sum_36(2), sum_43(7)>
# i_33 = PHI <i_37(2), i_46(7)>
# DEBUG i => i_33
# DEBUG sum => sum_32
# DEBUG max => max_31
# DEBUG min => min_29
# DEBUG BEGIN_STMT
if (i_33 < len_38(D))
goto <bb 3>; [INV]
else
goto <bb 9>; [INV]
<bb 9> :
# DEBUG BEGIN_STMT
_24 = sum_32 - max_31;
_25 = _24 - min_29;
_26 = len_38(D) + -2;
_27 = _25 / _26;
ret_39 = (u16) _27;
# DEBUG ret => ret_39
# DEBUG BEGIN_STMT
_40 = (u32) ret_39;
return _40;
}
set_pwm (u32 ch, u32 ratio)
{
u32 val;
u32 channel;
unsigned int _1;
unsigned char _2;
short unsigned int _3;
<bb 2> :
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
channel_7 = pwm_idx[ch_6(D)];
# DEBUG channel => channel_7
# DEBUG BEGIN_STMT
if (ratio_8(D) > 99)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
val_11 = 240;
# DEBUG val => val_11
goto <bb 7>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
if (ratio_8(D) == 0)
goto <bb 5>; [INV]
else
goto <bb 6>; [INV]
<bb 5> :
# DEBUG BEGIN_STMT
val_10 = 0;
# DEBUG val => val_10
goto <bb 7>; [INV]
<bb 6> :
# DEBUG BEGIN_STMT
_1 = ratio_8(D) * 240;
val_9 = _1 / 100;
# DEBUG val => val_9
<bb 7> :
# val_4 = PHI <val_11(3), val_10(5), val_9(6)>
# DEBUG val => val_4
# DEBUG BEGIN_STMT
_2 = (unsigned char) channel_7;
_3 = (short unsigned int) val_4;
Flexio_Pwm_Ip_UpdatePeriodDuty (0, _2, 240, _3);
return;
}
led_onoff (int flag)
{
<bb 2> :
# DEBUG BEGIN_STMT
if (flag_2(D) == 1)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
Siul2_Dio_Ip_WritePin (1076434692B, 13, 0);
goto <bb 5>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
Siul2_Dio_Ip_WritePin (1076434692B, 13, 1);
<bb 5> :
# DEBUG BEGIN_STMT
gb.led_flag = flag_2(D);
return;
}