mirror of
https://gitlab.com/camelot/kickc.git
synced 2025-01-09 05:33:11 +00:00
Removed main return value
This commit is contained in:
parent
98ee476b5b
commit
9db24ceb01
@ -42,7 +42,7 @@ unsigned int sum(void) {
|
||||
return s;
|
||||
}
|
||||
|
||||
int main(void) {
|
||||
void main(void) {
|
||||
unsigned int i;
|
||||
unsigned char c;
|
||||
start();
|
||||
@ -54,5 +54,4 @@ int main(void) {
|
||||
print_char((byte)sum());
|
||||
}
|
||||
end();
|
||||
return 0;
|
||||
}
|
@ -14,14 +14,14 @@
|
||||
@end: scope:[] from @3
|
||||
[5] phi()
|
||||
|
||||
(signed word()) main()
|
||||
(void()) main()
|
||||
main: scope:[main] from @3
|
||||
[6] phi()
|
||||
[7] call start
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main main::@7
|
||||
[8] (byte) main::c#8 ← phi( main::@7/(byte) main::c#2 main/(byte) 0 )
|
||||
[8] (byte*) print_char_cursor#49 ← phi( main::@7/(byte*) print_char_cursor#10 main/(byte*) 1024 )
|
||||
[8] (byte) main::c#8 ← phi( main/(byte) 0 main::@7/(byte) main::c#2 )
|
||||
[8] (byte*) print_char_cursor#49 ← phi( main/(byte*) 1024 main::@7/(byte*) print_char_cursor#10 )
|
||||
[9] call init
|
||||
to:main::@2
|
||||
main::@2: scope:[main] from main::@1 main::@5
|
||||
|
@ -73,7 +73,6 @@ Culled Empty Block (label) sum::@5
|
||||
Culled Empty Block (label) sum::@6
|
||||
Culled Empty Block (label) sum::@7
|
||||
Culled Empty Block (label) @50
|
||||
Culled Empty Block (label) main::@5
|
||||
|
||||
CONTROL FLOW GRAPH SSA
|
||||
@begin: scope:[] from
|
||||
@ -162,9 +161,9 @@ print_byte::@return: scope:[print_byte] from print_byte::@2
|
||||
to:@return
|
||||
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
print_char: scope:[print_char] from main::@9 print_byte print_byte::@1
|
||||
(byte*) print_char_cursor#26 ← phi( main::@9/(byte*) print_char_cursor#38 print_byte/(byte*) print_char_cursor#37 print_byte::@1/(byte*) print_char_cursor#6 )
|
||||
(byte) print_char::ch#3 ← phi( main::@9/(byte) print_char::ch#2 print_byte/(byte) print_char::ch#0 print_byte::@1/(byte) print_char::ch#1 )
|
||||
print_char: scope:[print_char] from main::@8 print_byte print_byte::@1
|
||||
(byte*) print_char_cursor#26 ← phi( main::@8/(byte*) print_char_cursor#38 print_byte/(byte*) print_char_cursor#37 print_byte::@1/(byte*) print_char_cursor#6 )
|
||||
(byte) print_char::ch#3 ← phi( main::@8/(byte) print_char::ch#2 print_byte/(byte) print_char::ch#0 print_byte::@1/(byte) print_char::ch#1 )
|
||||
*((byte*) print_char_cursor#26) ← (byte) print_char::ch#3
|
||||
(byte*) print_char_cursor#9 ← ++ (byte*) print_char_cursor#26
|
||||
to:print_char::@return
|
||||
@ -354,7 +353,7 @@ sum::@return: scope:[sum] from sum::@3
|
||||
return
|
||||
to:@return
|
||||
|
||||
(signed word()) main()
|
||||
(void()) main()
|
||||
main: scope:[main] from @51
|
||||
(byte*) print_line_cursor#33 ← phi( @51/(byte*) print_line_cursor#19 )
|
||||
(word) Ticks#26 ← phi( @51/(word) Ticks#14 )
|
||||
@ -366,30 +365,30 @@ main: scope:[main] from @51
|
||||
(word) main::i#0 ← (word) 0
|
||||
(byte) main::c#0 ← (byte) 0
|
||||
call start
|
||||
to:main::@6
|
||||
main::@6: scope:[main] from main
|
||||
to:main::@5
|
||||
main::@5: scope:[main] from main
|
||||
(byte*) print_line_cursor#32 ← phi( main/(byte*) print_line_cursor#33 )
|
||||
(word) Ticks#25 ← phi( main/(word) Ticks#26 )
|
||||
(word) last_time#25 ← phi( main/(word) last_time#26 )
|
||||
(byte*) print_char_cursor#51 ← phi( main/(byte*) print_char_cursor#52 )
|
||||
(struct node*) root#24 ← phi( main/(struct node*) root#26 )
|
||||
(word) free_#26 ← phi( main/(word) free_#28 )
|
||||
(struct node*) root#23 ← phi( main/(struct node*) root#26 )
|
||||
(word) free_#25 ← phi( main/(word) free_#28 )
|
||||
(word) rand_seed#12 ← phi( main/(word) rand_seed#1 )
|
||||
(word) rand_seed#5 ← (word) rand_seed#12
|
||||
(byte) main::c#1 ← (number) 0
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main::@10 main::@6
|
||||
(byte*) print_line_cursor#31 ← phi( main::@10/(byte*) print_line_cursor#21 main::@6/(byte*) print_line_cursor#32 )
|
||||
(word) rand_seed#29 ← phi( main::@10/(word) rand_seed#22 main::@6/(word) rand_seed#5 )
|
||||
(word) Ticks#24 ← phi( main::@10/(word) Ticks#16 main::@6/(word) Ticks#25 )
|
||||
(word) last_time#24 ← phi( main::@10/(word) last_time#16 main::@6/(word) last_time#25 )
|
||||
(byte) main::c#9 ← phi( main::@10/(byte) main::c#2 main::@6/(byte) main::c#1 )
|
||||
(byte*) print_char_cursor#50 ← phi( main::@10/(byte*) print_char_cursor#14 main::@6/(byte*) print_char_cursor#51 )
|
||||
(struct node*) root#19 ← phi( main::@10/(struct node*) root#23 main::@6/(struct node*) root#24 )
|
||||
(word) free_#21 ← phi( main::@10/(word) free_#25 main::@6/(word) free_#26 )
|
||||
main::@1: scope:[main] from main::@5 main::@9
|
||||
(byte*) print_line_cursor#31 ← phi( main::@5/(byte*) print_line_cursor#32 main::@9/(byte*) print_line_cursor#21 )
|
||||
(word) rand_seed#29 ← phi( main::@5/(word) rand_seed#5 main::@9/(word) rand_seed#22 )
|
||||
(word) Ticks#24 ← phi( main::@5/(word) Ticks#25 main::@9/(word) Ticks#16 )
|
||||
(word) last_time#24 ← phi( main::@5/(word) last_time#25 main::@9/(word) last_time#16 )
|
||||
(byte) main::c#9 ← phi( main::@5/(byte) main::c#1 main::@9/(byte) main::c#2 )
|
||||
(byte*) print_char_cursor#50 ← phi( main::@5/(byte*) print_char_cursor#51 main::@9/(byte*) print_char_cursor#14 )
|
||||
(struct node*) root#19 ← phi( main::@5/(struct node*) root#23 main::@9/(struct node*) root#24 )
|
||||
(word) free_#21 ← phi( main::@5/(word) free_#25 main::@9/(word) free_#26 )
|
||||
call init
|
||||
to:main::@7
|
||||
main::@7: scope:[main] from main::@1
|
||||
to:main::@6
|
||||
main::@6: scope:[main] from main::@1
|
||||
(byte*) print_line_cursor#30 ← phi( main::@1/(byte*) print_line_cursor#31 )
|
||||
(word) rand_seed#28 ← phi( main::@1/(word) rand_seed#29 )
|
||||
(word) Ticks#23 ← phi( main::@1/(word) Ticks#24 )
|
||||
@ -402,20 +401,20 @@ main::@7: scope:[main] from main::@1
|
||||
(struct node*) root#5 ← (struct node*) root#13
|
||||
(word) main::i#1 ← (number) 0
|
||||
to:main::@2
|
||||
main::@2: scope:[main] from main::@7 main::@8
|
||||
(byte*) print_line_cursor#29 ← phi( main::@7/(byte*) print_line_cursor#30 main::@8/(byte*) print_line_cursor#28 )
|
||||
(word) rand_seed#27 ← phi( main::@7/(word) rand_seed#28 main::@8/(word) rand_seed#26 )
|
||||
(word) Ticks#22 ← phi( main::@7/(word) Ticks#23 main::@8/(word) Ticks#21 )
|
||||
(word) last_time#22 ← phi( main::@7/(word) last_time#23 main::@8/(word) last_time#21 )
|
||||
(byte) main::c#7 ← phi( main::@7/(byte) main::c#8 main::@8/(byte) main::c#6 )
|
||||
(byte*) print_char_cursor#48 ← phi( main::@7/(byte*) print_char_cursor#49 main::@8/(byte*) print_char_cursor#46 )
|
||||
(struct node*) root#20 ← phi( main::@7/(struct node*) root#5 main::@8/(struct node*) root#6 )
|
||||
(word) free_#22 ← phi( main::@7/(word) free_#7 main::@8/(word) free_#8 )
|
||||
(word) main::i#3 ← phi( main::@7/(word) main::i#1 main::@8/(word) main::i#2 )
|
||||
main::@2: scope:[main] from main::@6 main::@7
|
||||
(byte*) print_line_cursor#29 ← phi( main::@6/(byte*) print_line_cursor#30 main::@7/(byte*) print_line_cursor#28 )
|
||||
(word) rand_seed#27 ← phi( main::@6/(word) rand_seed#28 main::@7/(word) rand_seed#26 )
|
||||
(word) Ticks#22 ← phi( main::@6/(word) Ticks#23 main::@7/(word) Ticks#21 )
|
||||
(word) last_time#22 ← phi( main::@6/(word) last_time#23 main::@7/(word) last_time#21 )
|
||||
(byte) main::c#7 ← phi( main::@6/(byte) main::c#8 main::@7/(byte) main::c#6 )
|
||||
(byte*) print_char_cursor#48 ← phi( main::@6/(byte*) print_char_cursor#49 main::@7/(byte*) print_char_cursor#46 )
|
||||
(struct node*) root#20 ← phi( main::@6/(struct node*) root#5 main::@7/(struct node*) root#6 )
|
||||
(word) free_#22 ← phi( main::@6/(word) free_#7 main::@7/(word) free_#8 )
|
||||
(word) main::i#3 ← phi( main::@6/(word) main::i#1 main::@7/(word) main::i#2 )
|
||||
(word) prepend::x#0 ← (word) main::i#3
|
||||
call prepend
|
||||
to:main::@8
|
||||
main::@8: scope:[main] from main::@2
|
||||
to:main::@7
|
||||
main::@7: scope:[main] from main::@2
|
||||
(byte*) print_line_cursor#28 ← phi( main::@2/(byte*) print_line_cursor#29 )
|
||||
(word) rand_seed#26 ← phi( main::@2/(word) rand_seed#27 )
|
||||
(word) Ticks#21 ← phi( main::@2/(word) Ticks#22 )
|
||||
@ -431,19 +430,19 @@ main::@8: scope:[main] from main::@2
|
||||
(bool~) main::$4 ← (word) main::i#2 != rangelast(0,$bb7)
|
||||
if((bool~) main::$4) goto main::@2
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main::@8
|
||||
(byte*) print_line_cursor#27 ← phi( main::@8/(byte*) print_line_cursor#28 )
|
||||
(word) rand_seed#25 ← phi( main::@8/(word) rand_seed#26 )
|
||||
(word) Ticks#20 ← phi( main::@8/(word) Ticks#21 )
|
||||
(word) last_time#20 ← phi( main::@8/(word) last_time#21 )
|
||||
(word) free_#30 ← phi( main::@8/(word) free_#8 )
|
||||
(byte) main::c#5 ← phi( main::@8/(byte) main::c#6 )
|
||||
(byte*) print_char_cursor#43 ← phi( main::@8/(byte*) print_char_cursor#46 )
|
||||
(struct node*) root#18 ← phi( main::@8/(struct node*) root#6 )
|
||||
main::@3: scope:[main] from main::@7
|
||||
(byte*) print_line_cursor#27 ← phi( main::@7/(byte*) print_line_cursor#28 )
|
||||
(word) rand_seed#25 ← phi( main::@7/(word) rand_seed#26 )
|
||||
(word) Ticks#20 ← phi( main::@7/(word) Ticks#21 )
|
||||
(word) last_time#20 ← phi( main::@7/(word) last_time#21 )
|
||||
(word) free_#30 ← phi( main::@7/(word) free_#8 )
|
||||
(byte) main::c#5 ← phi( main::@7/(byte) main::c#6 )
|
||||
(byte*) print_char_cursor#43 ← phi( main::@7/(byte*) print_char_cursor#46 )
|
||||
(struct node*) root#18 ← phi( main::@7/(struct node*) root#6 )
|
||||
call sum
|
||||
(word) sum::return#2 ← (word) sum::return#1
|
||||
to:main::@9
|
||||
main::@9: scope:[main] from main::@3
|
||||
to:main::@8
|
||||
main::@8: scope:[main] from main::@3
|
||||
(byte*) print_line_cursor#25 ← phi( main::@3/(byte*) print_line_cursor#27 )
|
||||
(word) rand_seed#24 ← phi( main::@3/(word) rand_seed#25 )
|
||||
(word) Ticks#19 ← phi( main::@3/(word) Ticks#20 )
|
||||
@ -457,32 +456,32 @@ main::@9: scope:[main] from main::@3
|
||||
(byte~) main::$6 ← ((byte)) (word~) main::$5
|
||||
(byte) print_char::ch#2 ← (byte~) main::$6
|
||||
call print_char
|
||||
to:main::@10
|
||||
main::@10: scope:[main] from main::@9
|
||||
(byte*) print_line_cursor#21 ← phi( main::@9/(byte*) print_line_cursor#25 )
|
||||
(word) rand_seed#22 ← phi( main::@9/(word) rand_seed#24 )
|
||||
(word) Ticks#16 ← phi( main::@9/(word) Ticks#19 )
|
||||
(word) last_time#16 ← phi( main::@9/(word) last_time#19 )
|
||||
(struct node*) root#23 ← phi( main::@9/(struct node*) root#27 )
|
||||
(word) free_#25 ← phi( main::@9/(word) free_#29 )
|
||||
(byte) main::c#3 ← phi( main::@9/(byte) main::c#4 )
|
||||
(byte*) print_char_cursor#31 ← phi( main::@9/(byte*) print_char_cursor#10 )
|
||||
to:main::@9
|
||||
main::@9: scope:[main] from main::@8
|
||||
(byte*) print_line_cursor#21 ← phi( main::@8/(byte*) print_line_cursor#25 )
|
||||
(word) rand_seed#22 ← phi( main::@8/(word) rand_seed#24 )
|
||||
(word) Ticks#16 ← phi( main::@8/(word) Ticks#19 )
|
||||
(word) last_time#16 ← phi( main::@8/(word) last_time#19 )
|
||||
(struct node*) root#24 ← phi( main::@8/(struct node*) root#27 )
|
||||
(word) free_#26 ← phi( main::@8/(word) free_#29 )
|
||||
(byte) main::c#3 ← phi( main::@8/(byte) main::c#4 )
|
||||
(byte*) print_char_cursor#31 ← phi( main::@8/(byte*) print_char_cursor#10 )
|
||||
(byte*) print_char_cursor#14 ← (byte*) print_char_cursor#31
|
||||
(byte) main::c#2 ← (byte) main::c#3 + rangenext(0,4)
|
||||
(bool~) main::$8 ← (byte) main::c#2 != rangelast(0,4)
|
||||
if((bool~) main::$8) goto main::@1
|
||||
to:main::@4
|
||||
main::@4: scope:[main] from main::@10
|
||||
(struct node*) root#25 ← phi( main::@10/(struct node*) root#23 )
|
||||
(word) free_#27 ← phi( main::@10/(word) free_#25 )
|
||||
(byte*) print_line_cursor#18 ← phi( main::@10/(byte*) print_line_cursor#21 )
|
||||
(byte*) print_char_cursor#40 ← phi( main::@10/(byte*) print_char_cursor#14 )
|
||||
(word) rand_seed#19 ← phi( main::@10/(word) rand_seed#22 )
|
||||
(word) Ticks#13 ← phi( main::@10/(word) Ticks#16 )
|
||||
(word) last_time#12 ← phi( main::@10/(word) last_time#16 )
|
||||
main::@4: scope:[main] from main::@9
|
||||
(struct node*) root#25 ← phi( main::@9/(struct node*) root#24 )
|
||||
(word) free_#27 ← phi( main::@9/(word) free_#26 )
|
||||
(byte*) print_line_cursor#18 ← phi( main::@9/(byte*) print_line_cursor#21 )
|
||||
(byte*) print_char_cursor#40 ← phi( main::@9/(byte*) print_char_cursor#14 )
|
||||
(word) rand_seed#19 ← phi( main::@9/(word) rand_seed#22 )
|
||||
(word) Ticks#13 ← phi( main::@9/(word) Ticks#16 )
|
||||
(word) last_time#12 ← phi( main::@9/(word) last_time#16 )
|
||||
call end
|
||||
to:main::@11
|
||||
main::@11: scope:[main] from main::@4
|
||||
to:main::@10
|
||||
main::@10: scope:[main] from main::@4
|
||||
(struct node*) root#21 ← phi( main::@4/(struct node*) root#25 )
|
||||
(word) free_#23 ← phi( main::@4/(word) free_#27 )
|
||||
(byte*) print_line_cursor#13 ← phi( main::@4/(byte*) print_line_cursor#4 )
|
||||
@ -495,18 +494,15 @@ main::@11: scope:[main] from main::@4
|
||||
(word) last_time#3 ← (word) last_time#9
|
||||
(byte*) print_char_cursor#15 ← (byte*) print_char_cursor#32
|
||||
(byte*) print_line_cursor#5 ← (byte*) print_line_cursor#13
|
||||
(signed word) main::return#0 ← (number) 0
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@11
|
||||
(byte*) print_line_cursor#14 ← phi( main::@11/(byte*) print_line_cursor#5 )
|
||||
(word) last_time#10 ← phi( main::@11/(word) last_time#3 )
|
||||
(word) Ticks#10 ← phi( main::@11/(word) Ticks#4 )
|
||||
(byte*) print_char_cursor#33 ← phi( main::@11/(byte*) print_char_cursor#15 )
|
||||
(struct node*) root#15 ← phi( main::@11/(struct node*) root#21 )
|
||||
(word) free_#18 ← phi( main::@11/(word) free_#23 )
|
||||
(word) rand_seed#14 ← phi( main::@11/(word) rand_seed#6 )
|
||||
(signed word) main::return#3 ← phi( main::@11/(signed word) main::return#0 )
|
||||
(signed word) main::return#1 ← (signed word) main::return#3
|
||||
main::@return: scope:[main] from main::@10
|
||||
(byte*) print_line_cursor#14 ← phi( main::@10/(byte*) print_line_cursor#5 )
|
||||
(word) last_time#10 ← phi( main::@10/(word) last_time#3 )
|
||||
(word) Ticks#10 ← phi( main::@10/(word) Ticks#4 )
|
||||
(byte*) print_char_cursor#33 ← phi( main::@10/(byte*) print_char_cursor#15 )
|
||||
(struct node*) root#15 ← phi( main::@10/(struct node*) root#21 )
|
||||
(word) free_#18 ← phi( main::@10/(word) free_#23 )
|
||||
(word) rand_seed#14 ← phi( main::@10/(word) rand_seed#6 )
|
||||
(word) rand_seed#7 ← (word) rand_seed#14
|
||||
(word) free_#9 ← (word) free_#18
|
||||
(struct node*) root#7 ← (struct node*) root#15
|
||||
@ -525,7 +521,6 @@ main::@return: scope:[main] from main::@11
|
||||
(word) free_#24 ← phi( @46/(word) free_#0 )
|
||||
(word) rand_seed#20 ← phi( @46/(word) rand_seed#23 )
|
||||
call main
|
||||
(signed word) main::return#2 ← (signed word) main::return#1
|
||||
to:@52
|
||||
@52: scope:[] from @51
|
||||
(byte*) print_line_cursor#15 ← phi( @51/(byte*) print_line_cursor#6 )
|
||||
@ -670,17 +665,17 @@ SYMBOL TABLE SSA
|
||||
(word) last_time#7
|
||||
(word) last_time#8
|
||||
(word) last_time#9
|
||||
(signed word()) main()
|
||||
(void()) main()
|
||||
(bool~) main::$4
|
||||
(word~) main::$5
|
||||
(byte~) main::$6
|
||||
(bool~) main::$8
|
||||
(label) main::@1
|
||||
(label) main::@10
|
||||
(label) main::@11
|
||||
(label) main::@2
|
||||
(label) main::@3
|
||||
(label) main::@4
|
||||
(label) main::@5
|
||||
(label) main::@6
|
||||
(label) main::@7
|
||||
(label) main::@8
|
||||
@ -703,11 +698,6 @@ SYMBOL TABLE SSA
|
||||
(word) main::i#2
|
||||
(word) main::i#3
|
||||
(word) main::i#4
|
||||
(signed word) main::return
|
||||
(signed word) main::return#0
|
||||
(signed word) main::return#1
|
||||
(signed word) main::return#2
|
||||
(signed word) main::return#3
|
||||
(struct node*) node::next
|
||||
(word) node::value
|
||||
(void()) prepend((word) prepend::x)
|
||||
@ -949,7 +939,6 @@ Adding number conversion cast (unumber) 0 in (word) free_#1 ← (number) 0
|
||||
Adding number conversion cast (unumber) 0 in (word) sum::s#1 ← (number) 0
|
||||
Adding number conversion cast (unumber) 0 in (byte) main::c#1 ← (number) 0
|
||||
Adding number conversion cast (unumber) 0 in (word) main::i#1 ← (number) 0
|
||||
Adding number conversion cast (snumber) 0 in (signed word) main::return#0 ← (number) 0
|
||||
Successful SSA optimization PassNAddNumberTypeConversions
|
||||
Inlining cast (word) rand_seed#0 ← (unumber)(number) $194a
|
||||
Inlining cast (word) free_#1 ← (unumber)(number) 0
|
||||
@ -958,7 +947,6 @@ Inlining cast (word) sum::s#1 ← (unumber)(number) 0
|
||||
Inlining cast (byte) main::c#1 ← (unumber)(number) 0
|
||||
Inlining cast (word) main::i#1 ← (unumber)(number) 0
|
||||
Inlining cast (byte~) main::$6 ← (byte)(word~) main::$5
|
||||
Inlining cast (signed word) main::return#0 ← (snumber)(number) 0
|
||||
Successful SSA optimization Pass2InlineCast
|
||||
Simplifying constant pointer cast (byte*) 1024
|
||||
Simplifying constant integer cast $28
|
||||
@ -970,7 +958,6 @@ Simplifying constant pointer cast (struct node*) 0
|
||||
Simplifying constant integer cast 0
|
||||
Simplifying constant integer cast 0
|
||||
Simplifying constant integer cast 0
|
||||
Simplifying constant integer cast 0
|
||||
Successful SSA optimization PassNCastSimplification
|
||||
Finalized unsigned number type (byte) $28
|
||||
Finalized unsigned number type (byte) 4
|
||||
@ -980,7 +967,6 @@ Finalized unsigned number type (byte) 0
|
||||
Finalized unsigned number type (byte) 0
|
||||
Finalized unsigned number type (byte) 0
|
||||
Finalized unsigned number type (byte) 0
|
||||
Finalized signed number type (signed byte) 0
|
||||
Successful SSA optimization PassNFinalizeNumberTypeConversions
|
||||
Inferred type updated to byte in (unumber~) print_byte::$2 ← (byte) print_byte::b#3 & (byte) $f
|
||||
Alias candidate removed (volatile)(word) last_time#6 = (word) Ticks#1 (word) last_time#7 (word) Ticks#7
|
||||
@ -1018,8 +1004,8 @@ Alias (struct node*) prepend::new#1 = (struct node*~) prepend::$0
|
||||
Alias (struct node*) root#11 = (struct node*) root#3 (struct node*) root#4
|
||||
Alias (struct node*) sum::current#3 = (struct node*) sum::current#4
|
||||
Alias (word) sum::s#3 = (word) sum::s#5 (word) sum::s#4 (word) sum::return#0 (word) sum::return#3 (word) sum::return#1
|
||||
Alias (word) free_#26 = (word) free_#28
|
||||
Alias (struct node*) root#24 = (struct node*) root#26
|
||||
Alias (word) free_#25 = (word) free_#28
|
||||
Alias (struct node*) root#23 = (struct node*) root#26
|
||||
Alias (byte*) print_char_cursor#51 = (byte*) print_char_cursor#52
|
||||
Alias (word) last_time#25 = (word) last_time#26
|
||||
Alias (word) Ticks#25 = (word) Ticks#26
|
||||
@ -1040,8 +1026,8 @@ Alias (word) last_time#12 = (word) last_time#21 (word) last_time#22 (word) last_
|
||||
Alias (word) Ticks#13 = (word) Ticks#21 (word) Ticks#22 (word) Ticks#20 (word) Ticks#19 (word) Ticks#16
|
||||
Alias (word) rand_seed#19 = (word) rand_seed#26 (word) rand_seed#27 (word) rand_seed#25 (word) rand_seed#24 (word) rand_seed#22
|
||||
Alias (byte*) print_line_cursor#18 = (byte*) print_line_cursor#28 (byte*) print_line_cursor#29 (byte*) print_line_cursor#27 (byte*) print_line_cursor#25 (byte*) print_line_cursor#21
|
||||
Alias (word) free_#17 = (word) free_#8 (word) free_#30 (word) free_#29 (word) free_#25 (word) free_#27 (word) free_#23 (word) free_#18 (word) free_#9
|
||||
Alias (struct node*) root#14 = (struct node*) root#6 (struct node*) root#18 (struct node*) root#27 (struct node*) root#23 (struct node*) root#25 (struct node*) root#21 (struct node*) root#15 (struct node*) root#7
|
||||
Alias (word) free_#17 = (word) free_#8 (word) free_#30 (word) free_#29 (word) free_#26 (word) free_#27 (word) free_#23 (word) free_#18 (word) free_#9
|
||||
Alias (struct node*) root#14 = (struct node*) root#6 (struct node*) root#18 (struct node*) root#27 (struct node*) root#24 (struct node*) root#25 (struct node*) root#21 (struct node*) root#15 (struct node*) root#7
|
||||
Alias (word) sum::return#2 = (word) sum::return#4
|
||||
Alias (byte) print_char::ch#2 = (byte~) main::$6
|
||||
Alias (byte*) print_char_cursor#14 = (byte*) print_char_cursor#31 (byte*) print_char_cursor#40
|
||||
@ -1050,7 +1036,6 @@ Alias (word) rand_seed#13 = (word) rand_seed#6 (word) rand_seed#14 (word) rand_s
|
||||
Alias (word) last_time#10 = (word) last_time#3 (word) last_time#9 (word) last_time#4
|
||||
Alias (byte*) print_char_cursor#15 = (byte*) print_char_cursor#32 (byte*) print_char_cursor#33 (byte*) print_char_cursor#16
|
||||
Alias (byte*) print_line_cursor#13 = (byte*) print_line_cursor#5 (byte*) print_line_cursor#14 (byte*) print_line_cursor#6
|
||||
Alias (signed word) main::return#0 = (signed word) main::return#3 (signed word) main::return#1
|
||||
Alias (word) free_#0 = (word) free_#24
|
||||
Alias (struct node*) root#0 = (struct node*) root#22
|
||||
Alias (word) rand_seed#15 = (word) rand_seed#8
|
||||
@ -1095,8 +1080,8 @@ Identical Phi Values (word) prepend::x#1 (word) prepend::x#0
|
||||
Identical Phi Values (word) free_#14 (word) free_#13
|
||||
Identical Phi Values (struct node*) root#12 (struct node*) root#14
|
||||
Identical Phi Values (word) rand_seed#18 (word) rand_seed#20
|
||||
Identical Phi Values (word) free_#26 (word) free_#0
|
||||
Identical Phi Values (struct node*) root#24 (struct node*) root#0
|
||||
Identical Phi Values (word) free_#25 (word) free_#0
|
||||
Identical Phi Values (struct node*) root#23 (struct node*) root#0
|
||||
Identical Phi Values (byte*) print_char_cursor#51 (byte*) print_char_cursor#0
|
||||
Identical Phi Values (word) last_time#25 (word) last_time#0
|
||||
Identical Phi Values (word) Ticks#25 (word) Ticks#0
|
||||
@ -1152,9 +1137,6 @@ Constant (const word) main::i#0 = 0
|
||||
Constant (const byte) main::c#0 = 0
|
||||
Constant (const byte) main::c#1 = 0
|
||||
Constant (const word) main::i#1 = 0
|
||||
Constant (const signed word) main::return#0 = 0
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Constant (const signed word) main::return#2 = main::return#0
|
||||
Successful SSA optimization Pass2ConstantIdentification
|
||||
Resolved ranged next value [155] main::i#2 ← ++ main::i#3 to ++
|
||||
Resolved ranged comparison value [157] if(main::i#2!=rangelast(0,$bb7)) goto main::@2 to (number) $bb8
|
||||
@ -1183,11 +1165,9 @@ Eliminating unused constant (const struct node*) sum::current#0
|
||||
Eliminating unused constant (const word) sum::s#0
|
||||
Eliminating unused constant (const word) main::i#0
|
||||
Eliminating unused constant (const byte) main::c#0
|
||||
Eliminating unused constant (const signed word) main::return#2
|
||||
Eliminating unused constant (const byte) OFFSET_STRUCT_NODE_NEXT
|
||||
Eliminating unused constant (const word) Ticks#0
|
||||
Successful SSA optimization PassNEliminateUnusedVars
|
||||
Eliminating unused constant (const signed word) main::return#0
|
||||
Eliminating unused constant (const word) free_#0
|
||||
Eliminating unused constant (const struct node*) root#0
|
||||
Successful SSA optimization PassNEliminateUnusedVars
|
||||
@ -1222,8 +1202,8 @@ Eliminating unused constant (const byte) SIZEOF_STRUCT_NODE
|
||||
Successful SSA optimization PassNEliminateUnusedVars
|
||||
Alias candidate removed (volatile)(word) last_time#1 = (word) Ticks#2 (word) last_time#2
|
||||
Added new block during phi lifting print_ln::@3(between print_ln::@1 and print_ln::@1)
|
||||
Added new block during phi lifting main::@12(between main::@10 and main::@1)
|
||||
Added new block during phi lifting main::@13(between main::@8 and main::@2)
|
||||
Added new block during phi lifting main::@11(between main::@9 and main::@1)
|
||||
Added new block during phi lifting main::@12(between main::@7 and main::@2)
|
||||
Adding NOP phi() at start of @begin
|
||||
Adding NOP phi() at start of @13
|
||||
Adding NOP phi() at start of @46
|
||||
@ -1231,11 +1211,11 @@ Adding NOP phi() at start of @51
|
||||
Adding NOP phi() at start of @52
|
||||
Adding NOP phi() at start of @end
|
||||
Adding NOP phi() at start of main
|
||||
Adding NOP phi() at start of main::@5
|
||||
Adding NOP phi() at start of main::@6
|
||||
Adding NOP phi() at start of main::@7
|
||||
Adding NOP phi() at start of main::@3
|
||||
Adding NOP phi() at start of main::@4
|
||||
Adding NOP phi() at start of main::@11
|
||||
Adding NOP phi() at start of main::@10
|
||||
Adding NOP phi() at start of end::@2
|
||||
Adding NOP phi() at start of end::@3
|
||||
Adding NOP phi() at start of print_ln
|
||||
@ -1276,11 +1256,11 @@ Coalesced down to 11 phi equivalence classes
|
||||
Culled Empty Block (label) @13
|
||||
Culled Empty Block (label) @46
|
||||
Culled Empty Block (label) @52
|
||||
Culled Empty Block (label) main::@5
|
||||
Culled Empty Block (label) main::@6
|
||||
Culled Empty Block (label) main::@7
|
||||
Culled Empty Block (label) main::@10
|
||||
Culled Empty Block (label) main::@11
|
||||
Culled Empty Block (label) main::@12
|
||||
Culled Empty Block (label) main::@13
|
||||
Culled Empty Block (label) end::@3
|
||||
Culled Empty Block (label) print_ln::@2
|
||||
Culled Empty Block (label) print_ln::@3
|
||||
@ -1290,9 +1270,9 @@ Culled Empty Block (label) sum::@3
|
||||
Renumbering block @43 to @1
|
||||
Renumbering block @45 to @2
|
||||
Renumbering block @51 to @3
|
||||
Renumbering block main::@8 to main::@5
|
||||
Renumbering block main::@9 to main::@6
|
||||
Renumbering block main::@10 to main::@7
|
||||
Renumbering block main::@7 to main::@5
|
||||
Renumbering block main::@8 to main::@6
|
||||
Renumbering block main::@9 to main::@7
|
||||
Adding NOP phi() at start of @begin
|
||||
Adding NOP phi() at start of @3
|
||||
Adding NOP phi() at start of @end
|
||||
@ -1321,14 +1301,14 @@ FINAL CONTROL FLOW GRAPH
|
||||
@end: scope:[] from @3
|
||||
[5] phi()
|
||||
|
||||
(signed word()) main()
|
||||
(void()) main()
|
||||
main: scope:[main] from @3
|
||||
[6] phi()
|
||||
[7] call start
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main main::@7
|
||||
[8] (byte) main::c#8 ← phi( main::@7/(byte) main::c#2 main/(byte) 0 )
|
||||
[8] (byte*) print_char_cursor#49 ← phi( main::@7/(byte*) print_char_cursor#10 main/(byte*) 1024 )
|
||||
[8] (byte) main::c#8 ← phi( main/(byte) 0 main::@7/(byte) main::c#2 )
|
||||
[8] (byte*) print_char_cursor#49 ← phi( main/(byte*) 1024 main::@7/(byte*) print_char_cursor#10 )
|
||||
[9] call init
|
||||
to:main::@2
|
||||
main::@2: scope:[main] from main::@1 main::@5
|
||||
@ -1517,7 +1497,7 @@ VARIABLE REGISTER WEIGHTS
|
||||
(word) last_time#0 0.2608695652173913
|
||||
(word) last_time#1 1.0
|
||||
(word) last_time#2 20.0
|
||||
(signed word()) main()
|
||||
(void()) main()
|
||||
(word~) main::$5 11.0
|
||||
(byte) main::c
|
||||
(byte) main::c#2 16.5
|
||||
@ -1525,7 +1505,6 @@ VARIABLE REGISTER WEIGHTS
|
||||
(word) main::i
|
||||
(word) main::i#2 151.5
|
||||
(word) main::i#3 101.0
|
||||
(signed word) main::return
|
||||
(struct node*) node::next
|
||||
(word) node::value
|
||||
(void()) prepend((word) prepend::x)
|
||||
@ -2953,7 +2932,7 @@ FINAL SYMBOL TABLE
|
||||
(word) last_time#0 last_time zp[2]:10 0.2608695652173913
|
||||
(word) last_time#1 last_time zp[2]:10 1.0
|
||||
(word) last_time#2 last_time zp[2]:10 20.0
|
||||
(signed word()) main()
|
||||
(void()) main()
|
||||
(word~) main::$5 zp[2]:8 11.0
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
@ -2969,7 +2948,6 @@ FINAL SYMBOL TABLE
|
||||
(word) main::i
|
||||
(word) main::i#2 i zp[2]:4 151.5
|
||||
(word) main::i#3 i zp[2]:4 101.0
|
||||
(signed word) main::return
|
||||
(struct node*) node::next
|
||||
(word) node::value
|
||||
(void()) prepend((word) prepend::x)
|
||||
|
@ -32,7 +32,7 @@
|
||||
(word) last_time#0 last_time zp[2]:10 0.2608695652173913
|
||||
(word) last_time#1 last_time zp[2]:10 1.0
|
||||
(word) last_time#2 last_time zp[2]:10 20.0
|
||||
(signed word()) main()
|
||||
(void()) main()
|
||||
(word~) main::$5 zp[2]:8 11.0
|
||||
(label) main::@1
|
||||
(label) main::@2
|
||||
@ -48,7 +48,6 @@
|
||||
(word) main::i
|
||||
(word) main::i#2 i zp[2]:4 151.5
|
||||
(word) main::i#3 i zp[2]:4 101.0
|
||||
(signed word) main::return
|
||||
(struct node*) node::next
|
||||
(word) node::value
|
||||
(void()) prepend((word) prepend::x)
|
||||
|
Loading…
Reference in New Issue
Block a user