2018-04-21 19:38:30 +00:00
|
|
|
@begin: scope:[] from
|
2018-11-11 20:51:36 +00:00
|
|
|
[0] phi()
|
2019-03-31 15:10:41 +00:00
|
|
|
to:@1
|
|
|
|
@1: scope:[] from @begin
|
2018-11-11 20:51:36 +00:00
|
|
|
[1] phi()
|
|
|
|
[2] call main
|
2018-04-21 19:38:30 +00:00
|
|
|
to:@end
|
2019-03-31 15:10:41 +00:00
|
|
|
@end: scope:[] from @1
|
2018-11-11 20:51:36 +00:00
|
|
|
[3] phi()
|
2019-09-18 21:00:30 +00:00
|
|
|
|
|
|
|
(void()) main()
|
2019-03-31 15:10:41 +00:00
|
|
|
main: scope:[main] from @1
|
2018-11-11 20:51:36 +00:00
|
|
|
[4] phi()
|
|
|
|
[5] call bool_and
|
2018-04-21 19:38:30 +00:00
|
|
|
to:main::@1
|
2018-04-21 21:00:05 +00:00
|
|
|
main::@1: scope:[main] from main
|
2018-11-11 20:51:36 +00:00
|
|
|
[6] phi()
|
|
|
|
[7] call bool_or
|
2018-04-21 21:00:05 +00:00
|
|
|
to:main::@2
|
|
|
|
main::@2: scope:[main] from main::@1
|
2018-11-11 20:51:36 +00:00
|
|
|
[8] phi()
|
|
|
|
[9] call bool_not
|
2018-04-21 19:38:30 +00:00
|
|
|
to:main::@3
|
2018-04-21 21:00:05 +00:00
|
|
|
main::@3: scope:[main] from main::@2
|
2018-11-11 20:51:36 +00:00
|
|
|
[10] phi()
|
|
|
|
[11] call bool_complex
|
2018-04-21 19:38:30 +00:00
|
|
|
to:main::@return
|
|
|
|
main::@return: scope:[main] from main::@3
|
2018-11-11 20:51:36 +00:00
|
|
|
[12] return
|
2018-04-21 19:38:30 +00:00
|
|
|
to:@return
|
2019-09-18 21:00:30 +00:00
|
|
|
|
|
|
|
(void()) bool_complex()
|
2018-04-21 21:00:05 +00:00
|
|
|
bool_complex: scope:[bool_complex] from main::@3
|
2018-11-11 20:51:36 +00:00
|
|
|
[13] phi()
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_complex::@1
|
|
|
|
bool_complex::@1: scope:[bool_complex] from bool_complex bool_complex::@3
|
2019-05-30 20:29:04 +00:00
|
|
|
[14] (byte) bool_complex::i#2 ← phi( bool_complex/(byte) 0 bool_complex::@3/(byte) bool_complex::i#1 )
|
|
|
|
[15] (bool) bool_complex::o1#0 ← (byte) bool_complex::i#2 < (byte) $a
|
|
|
|
[16] (byte~) bool_complex::$1 ← (byte) bool_complex::i#2 & (byte) 1
|
|
|
|
[17] (bool) bool_complex::o2#0 ← (byte~) bool_complex::$1 == (byte) 0
|
2019-03-31 15:10:41 +00:00
|
|
|
[18] if((bool) bool_complex::o1#0) goto bool_complex::@6
|
|
|
|
to:bool_complex::@5
|
2019-05-30 20:29:04 +00:00
|
|
|
bool_complex::@6: scope:[bool_complex] from bool_complex::@1
|
|
|
|
[19] if((bool) bool_complex::o2#0) goto bool_complex::@2
|
|
|
|
to:bool_complex::@5
|
2019-03-31 15:10:41 +00:00
|
|
|
bool_complex::@5: scope:[bool_complex] from bool_complex::@1 bool_complex::@6
|
2019-05-30 20:29:04 +00:00
|
|
|
[20] if((bool) bool_complex::o1#0) goto bool_complex::@4
|
2019-03-31 15:10:41 +00:00
|
|
|
to:bool_complex::@7
|
|
|
|
bool_complex::@7: scope:[bool_complex] from bool_complex::@5
|
2019-05-30 20:29:04 +00:00
|
|
|
[21] if((bool) bool_complex::o2#0) goto bool_complex::@4
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_complex::@2
|
2019-03-31 15:10:41 +00:00
|
|
|
bool_complex::@2: scope:[bool_complex] from bool_complex::@6 bool_complex::@7
|
2020-03-29 19:00:25 +00:00
|
|
|
[22] *((const nomodify byte*) bool_complex::screen + (byte) bool_complex::i#2) ← (byte) '*'
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_complex::@3
|
|
|
|
bool_complex::@3: scope:[bool_complex] from bool_complex::@2 bool_complex::@4
|
2019-05-30 20:29:04 +00:00
|
|
|
[23] (byte) bool_complex::i#1 ← ++ (byte) bool_complex::i#2
|
|
|
|
[24] if((byte) bool_complex::i#1!=(byte) $15) goto bool_complex::@1
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_complex::@return
|
|
|
|
bool_complex::@return: scope:[bool_complex] from bool_complex::@3
|
2019-05-30 20:29:04 +00:00
|
|
|
[25] return
|
2018-04-21 21:00:05 +00:00
|
|
|
to:@return
|
2019-03-31 15:10:41 +00:00
|
|
|
bool_complex::@4: scope:[bool_complex] from bool_complex::@5 bool_complex::@7
|
2020-03-29 19:00:25 +00:00
|
|
|
[26] *((const nomodify byte*) bool_complex::screen + (byte) bool_complex::i#2) ← (byte) ' '
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_complex::@3
|
2019-09-18 21:00:30 +00:00
|
|
|
|
|
|
|
(void()) bool_not()
|
2018-04-21 21:00:05 +00:00
|
|
|
bool_not: scope:[bool_not] from main::@2
|
2018-11-11 20:51:36 +00:00
|
|
|
[27] phi()
|
2019-08-25 20:21:56 +00:00
|
|
|
to:bool_not::@1
|
|
|
|
bool_not::@1: scope:[bool_not] from bool_not bool_not::@3
|
|
|
|
[28] (byte) bool_not::i#2 ← phi( bool_not/(byte) 0 bool_not::@3/(byte) bool_not::i#1 )
|
|
|
|
[29] (byte~) bool_not::$1 ← (byte) bool_not::i#2 & (byte) 1
|
|
|
|
[30] if((byte) bool_not::i#2<(byte) $a) goto bool_not::@4
|
|
|
|
to:bool_not::@5
|
|
|
|
bool_not::@5: scope:[bool_not] from bool_not::@1
|
|
|
|
[31] if((byte~) bool_not::$1==(byte) 0) goto bool_not::@4
|
|
|
|
to:bool_not::@2
|
|
|
|
bool_not::@2: scope:[bool_not] from bool_not::@5
|
2020-03-29 19:00:25 +00:00
|
|
|
[32] *((const nomodify byte*) bool_not::screen + (byte) bool_not::i#2) ← (byte) '*'
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_not::@3
|
|
|
|
bool_not::@3: scope:[bool_not] from bool_not::@2 bool_not::@4
|
2019-08-25 20:21:56 +00:00
|
|
|
[33] (byte) bool_not::i#1 ← ++ (byte) bool_not::i#2
|
|
|
|
[34] if((byte) bool_not::i#1!=(byte) $15) goto bool_not::@1
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_not::@return
|
|
|
|
bool_not::@return: scope:[bool_not] from bool_not::@3
|
2019-08-25 20:21:56 +00:00
|
|
|
[35] return
|
2018-04-21 21:00:05 +00:00
|
|
|
to:@return
|
2019-08-25 20:21:56 +00:00
|
|
|
bool_not::@4: scope:[bool_not] from bool_not::@1 bool_not::@5
|
2020-03-29 19:00:25 +00:00
|
|
|
[36] *((const nomodify byte*) bool_not::screen + (byte) bool_not::i#2) ← (byte) ' '
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_not::@3
|
2019-09-18 21:00:30 +00:00
|
|
|
|
|
|
|
(void()) bool_or()
|
2018-04-21 21:00:05 +00:00
|
|
|
bool_or: scope:[bool_or] from main::@1
|
2019-08-25 20:21:56 +00:00
|
|
|
[37] phi()
|
|
|
|
to:bool_or::@1
|
|
|
|
bool_or::@1: scope:[bool_or] from bool_or bool_or::@3
|
|
|
|
[38] (byte) bool_or::i#2 ← phi( bool_or/(byte) 0 bool_or::@3/(byte) bool_or::i#1 )
|
|
|
|
[39] (byte~) bool_or::$1 ← (byte) bool_or::i#2 & (byte) 1
|
|
|
|
[40] if((byte) bool_or::i#2<(byte) $a) goto bool_or::@2
|
|
|
|
to:bool_or::@5
|
|
|
|
bool_or::@5: scope:[bool_or] from bool_or::@1
|
|
|
|
[41] if((byte~) bool_or::$1==(byte) 0) goto bool_or::@2
|
|
|
|
to:bool_or::@4
|
|
|
|
bool_or::@4: scope:[bool_or] from bool_or::@5
|
2020-03-29 19:00:25 +00:00
|
|
|
[42] *((const nomodify byte*) bool_or::screen + (byte) bool_or::i#2) ← (byte) ' '
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_or::@3
|
|
|
|
bool_or::@3: scope:[bool_or] from bool_or::@2 bool_or::@4
|
2019-08-25 20:21:56 +00:00
|
|
|
[43] (byte) bool_or::i#1 ← ++ (byte) bool_or::i#2
|
|
|
|
[44] if((byte) bool_or::i#1!=(byte) $15) goto bool_or::@1
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_or::@return
|
|
|
|
bool_or::@return: scope:[bool_or] from bool_or::@3
|
2019-08-25 20:21:56 +00:00
|
|
|
[45] return
|
2018-04-21 21:00:05 +00:00
|
|
|
to:@return
|
2019-08-25 20:21:56 +00:00
|
|
|
bool_or::@2: scope:[bool_or] from bool_or::@1 bool_or::@5
|
2020-03-29 19:00:25 +00:00
|
|
|
[46] *((const nomodify byte*) bool_or::screen + (byte) bool_or::i#2) ← (byte) '*'
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_or::@3
|
2019-09-18 21:00:30 +00:00
|
|
|
|
|
|
|
(void()) bool_and()
|
2018-04-21 21:00:05 +00:00
|
|
|
bool_and: scope:[bool_and] from main
|
2019-08-25 20:21:56 +00:00
|
|
|
[47] phi()
|
|
|
|
to:bool_and::@1
|
|
|
|
bool_and::@1: scope:[bool_and] from bool_and bool_and::@3
|
|
|
|
[48] (byte) bool_and::i#2 ← phi( bool_and/(byte) 0 bool_and::@3/(byte) bool_and::i#1 )
|
|
|
|
[49] (byte~) bool_and::$1 ← (byte) bool_and::i#2 & (byte) 1
|
|
|
|
[50] if((byte) bool_and::i#2>=(byte) $a) goto bool_and::@4
|
|
|
|
to:bool_and::@5
|
|
|
|
bool_and::@5: scope:[bool_and] from bool_and::@1
|
|
|
|
[51] if((byte~) bool_and::$1==(byte) 0) goto bool_and::@2
|
|
|
|
to:bool_and::@4
|
|
|
|
bool_and::@4: scope:[bool_and] from bool_and::@1 bool_and::@5
|
2020-03-29 19:00:25 +00:00
|
|
|
[52] *((const nomodify byte*) bool_and::screen + (byte) bool_and::i#2) ← (byte) ' '
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_and::@3
|
|
|
|
bool_and::@3: scope:[bool_and] from bool_and::@2 bool_and::@4
|
2019-08-25 20:21:56 +00:00
|
|
|
[53] (byte) bool_and::i#1 ← ++ (byte) bool_and::i#2
|
2019-05-30 20:29:04 +00:00
|
|
|
[54] if((byte) bool_and::i#1!=(byte) $15) goto bool_and::@1
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_and::@return
|
|
|
|
bool_and::@return: scope:[bool_and] from bool_and::@3
|
2019-05-30 20:29:04 +00:00
|
|
|
[55] return
|
2018-04-21 21:00:05 +00:00
|
|
|
to:@return
|
2019-08-25 20:21:56 +00:00
|
|
|
bool_and::@2: scope:[bool_and] from bool_and::@5
|
2020-03-29 19:00:25 +00:00
|
|
|
[56] *((const nomodify byte*) bool_and::screen + (byte) bool_and::i#2) ← (byte) '*'
|
2018-04-21 21:00:05 +00:00
|
|
|
to:bool_and::@3
|