mirror of
https://gitlab.com/camelot/kickc.git
synced 2025-02-20 00:29:10 +00:00
Tried adding more memory for the Junit JVM
This commit is contained in:
parent
939b70aa23
commit
20b9ab6881
10
pom.xml
10
pom.xml
@ -55,6 +55,16 @@
|
||||
</includes>
|
||||
</testResource>
|
||||
</testResources>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<version>2.19</version>
|
||||
<configuration>
|
||||
<argLine>-Xmx1024m</argLine>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
|
||||
|
165
src/test/java/dk/camelot64/kickc/test/ref/test-comparisons.asm
Normal file
165
src/test/java/dk/camelot64/kickc/test/ref/test-comparisons.asm
Normal file
@ -0,0 +1,165 @@
|
||||
.pc = $801 "Basic"
|
||||
:BasicUpstart(main)
|
||||
.pc = $80d "Program"
|
||||
.label line_cursor = 3
|
||||
.label char_cursor = 7
|
||||
jsr main
|
||||
main: {
|
||||
.label a = 2
|
||||
jsr print_cls
|
||||
lda #<$400
|
||||
sta line_cursor
|
||||
lda #>$400
|
||||
sta line_cursor+1
|
||||
lda #<$400
|
||||
sta char_cursor
|
||||
lda #>$400
|
||||
sta char_cursor+1
|
||||
lda #0
|
||||
sta a
|
||||
b1:
|
||||
lda #$a
|
||||
sec
|
||||
sbc a
|
||||
tay
|
||||
cpy a
|
||||
bcc b5
|
||||
ldx #'+'
|
||||
jmp b2
|
||||
b5:
|
||||
ldx #'-'
|
||||
b2:
|
||||
sty printu.b
|
||||
lda #'<'
|
||||
sta printu.op
|
||||
jsr printu
|
||||
lda a
|
||||
cmp #3
|
||||
bcs b6
|
||||
ldx #'+'
|
||||
jmp b3
|
||||
b6:
|
||||
ldx #'-'
|
||||
b3:
|
||||
lda #3
|
||||
sta printu.b
|
||||
lda #'<'
|
||||
sta printu.op
|
||||
jsr printu
|
||||
lda a
|
||||
tay
|
||||
cmp cs,y
|
||||
bcs b7
|
||||
ldx #'+'
|
||||
jmp b4
|
||||
b7:
|
||||
ldx #'-'
|
||||
b4:
|
||||
ldy a
|
||||
lda cs,y
|
||||
sta printu.b
|
||||
lda #'<'
|
||||
sta printu.op
|
||||
jsr printu
|
||||
jsr print_ln
|
||||
inc a
|
||||
lda a
|
||||
cmp #$b
|
||||
bne b14
|
||||
rts
|
||||
b14:
|
||||
lda line_cursor
|
||||
sta char_cursor
|
||||
lda line_cursor+1
|
||||
sta char_cursor+1
|
||||
jmp b1
|
||||
cs: .byte 0, $14, 4, 9, $b, 4, $d, 8, 4, 6
|
||||
}
|
||||
print_ln: {
|
||||
b1:
|
||||
lda line_cursor
|
||||
clc
|
||||
adc #$28
|
||||
sta line_cursor
|
||||
bcc !+
|
||||
inc line_cursor+1
|
||||
!:
|
||||
lda line_cursor+1
|
||||
cmp char_cursor+1
|
||||
bcc b1
|
||||
bne !+
|
||||
lda line_cursor
|
||||
cmp char_cursor
|
||||
bcc b1
|
||||
!:
|
||||
rts
|
||||
}
|
||||
printu: {
|
||||
.label a = 2
|
||||
.label b = 6
|
||||
.label op = 5
|
||||
lda #' '
|
||||
jsr print_char
|
||||
lda a
|
||||
sta print_byte.b
|
||||
jsr print_byte
|
||||
lda op
|
||||
jsr print_char
|
||||
lda b
|
||||
sta print_byte.b
|
||||
jsr print_byte
|
||||
lda #' '
|
||||
jsr print_char
|
||||
txa
|
||||
jsr print_char
|
||||
rts
|
||||
}
|
||||
print_char: {
|
||||
ldy #0
|
||||
sta (char_cursor),y
|
||||
inc char_cursor
|
||||
bne !+
|
||||
inc char_cursor+1
|
||||
!:
|
||||
rts
|
||||
}
|
||||
print_byte: {
|
||||
.label b = 9
|
||||
lda b
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
lsr
|
||||
tay
|
||||
lda hextab,y
|
||||
jsr print_char
|
||||
lda b
|
||||
and #$f
|
||||
tay
|
||||
lda hextab,y
|
||||
jsr print_char
|
||||
rts
|
||||
hextab: .text "0123456789abcdef"
|
||||
}
|
||||
print_cls: {
|
||||
.label sc = 3
|
||||
lda #<$400
|
||||
sta sc
|
||||
lda #>$400
|
||||
sta sc+1
|
||||
b1:
|
||||
lda #' '
|
||||
ldy #0
|
||||
sta (sc),y
|
||||
inc sc
|
||||
bne !+
|
||||
inc sc+1
|
||||
!:
|
||||
lda sc+1
|
||||
cmp #>$400+$3e8
|
||||
bne b1
|
||||
lda sc
|
||||
cmp #<$400+$3e8
|
||||
bne b1
|
||||
rts
|
||||
}
|
146
src/test/java/dk/camelot64/kickc/test/ref/test-comparisons.cfg
Normal file
146
src/test/java/dk/camelot64/kickc/test/ref/test-comparisons.cfg
Normal file
@ -0,0 +1,146 @@
|
||||
@begin: scope:[] from
|
||||
[0] phi() [ ] ( )
|
||||
to:@10
|
||||
@10: scope:[] from @begin
|
||||
[1] phi() [ ] ( )
|
||||
[2] call main param-assignment [ ] ( )
|
||||
to:@end
|
||||
@end: scope:[] from @10
|
||||
[3] phi() [ ] ( )
|
||||
main: scope:[main] from @10
|
||||
[4] phi() [ ] ( main:2 [ ] )
|
||||
[5] call print_cls param-assignment [ ] ( main:2 [ ] )
|
||||
to:main::@1
|
||||
main::@1: scope:[main] from main main::@14
|
||||
[6] (byte*) line_cursor#13 ← phi( main::@14/(byte*) line_cursor#1 main/((byte*))(word/signed word) 1024 ) [ main::a#10 char_cursor#44 line_cursor#13 ] ( main:2 [ main::a#10 char_cursor#44 line_cursor#13 ] )
|
||||
[6] (byte*) char_cursor#44 ← phi( main::@14/(byte*~) char_cursor#54 main/((byte*))(word/signed word) 1024 ) [ main::a#10 char_cursor#44 line_cursor#13 ] ( main:2 [ main::a#10 char_cursor#44 line_cursor#13 ] )
|
||||
[6] (byte) main::a#10 ← phi( main::@14/(byte) main::a#1 main/(byte/signed byte/word/signed word) 0 ) [ main::a#10 char_cursor#44 line_cursor#13 ] ( main:2 [ main::a#10 char_cursor#44 line_cursor#13 ] )
|
||||
[7] (byte) main::b#0 ← (byte/signed byte/word/signed word) 10 - (byte) main::a#10 [ main::a#10 char_cursor#44 line_cursor#13 main::b#0 ] ( main:2 [ main::a#10 char_cursor#44 line_cursor#13 main::b#0 ] )
|
||||
[8] if((byte) main::a#10>=(byte) main::b#0) goto main::@2 [ main::a#10 char_cursor#44 line_cursor#13 main::b#0 ] ( main:2 [ main::a#10 char_cursor#44 line_cursor#13 main::b#0 ] )
|
||||
to:main::@5
|
||||
main::@5: scope:[main] from main::@1
|
||||
[9] phi() [ main::a#10 char_cursor#44 line_cursor#13 main::b#0 ] ( main:2 [ main::a#10 char_cursor#44 line_cursor#13 main::b#0 ] )
|
||||
to:main::@2
|
||||
main::@2: scope:[main] from main::@1 main::@5
|
||||
[10] (byte) main::r#6 ← phi( main::@1/(byte) '-' main::@5/(byte) '+' ) [ main::a#10 char_cursor#44 line_cursor#13 main::b#0 main::r#6 ] ( main:2 [ main::a#10 char_cursor#44 line_cursor#13 main::b#0 main::r#6 ] )
|
||||
[11] (byte) printu::a#0 ← (byte) main::a#10 [ main::a#10 char_cursor#44 line_cursor#13 main::b#0 main::r#6 printu::a#0 ] ( main:2 [ main::a#10 char_cursor#44 line_cursor#13 main::b#0 main::r#6 printu::a#0 ] )
|
||||
[12] (byte) printu::b#0 ← (byte) main::b#0 [ main::a#10 char_cursor#44 line_cursor#13 main::r#6 printu::a#0 printu::b#0 ] ( main:2 [ main::a#10 char_cursor#44 line_cursor#13 main::r#6 printu::a#0 printu::b#0 ] )
|
||||
[13] (byte) printu::res#0 ← (byte) main::r#6 [ main::a#10 char_cursor#44 line_cursor#13 printu::a#0 printu::b#0 printu::res#0 ] ( main:2 [ main::a#10 char_cursor#44 line_cursor#13 printu::a#0 printu::b#0 printu::res#0 ] )
|
||||
[14] call printu param-assignment [ main::a#10 line_cursor#13 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 char_cursor#27 ] )
|
||||
to:main::@10
|
||||
main::@10: scope:[main] from main::@2
|
||||
[15] if((byte) main::a#10>=(byte/signed byte/word/signed word) 3) goto main::@3 [ main::a#10 line_cursor#13 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 char_cursor#27 ] )
|
||||
to:main::@6
|
||||
main::@6: scope:[main] from main::@10
|
||||
[16] phi() [ main::a#10 line_cursor#13 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 char_cursor#27 ] )
|
||||
to:main::@3
|
||||
main::@3: scope:[main] from main::@10 main::@6
|
||||
[17] (byte) main::r#7 ← phi( main::@10/(byte) '-' main::@6/(byte) '+' ) [ main::a#10 line_cursor#13 main::r#7 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 main::r#7 char_cursor#27 ] )
|
||||
[18] (byte) printu::a#1 ← (byte) main::a#10 [ main::a#10 line_cursor#13 main::r#7 printu::a#1 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 main::r#7 printu::a#1 char_cursor#27 ] )
|
||||
[19] (byte) printu::res#1 ← (byte) main::r#7 [ main::a#10 line_cursor#13 printu::a#1 printu::res#1 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 printu::a#1 printu::res#1 char_cursor#27 ] )
|
||||
[20] call printu param-assignment [ main::a#10 line_cursor#13 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 char_cursor#27 ] )
|
||||
to:main::@11
|
||||
main::@11: scope:[main] from main::@3
|
||||
[21] if((byte) main::a#10>=*((const byte[10]) main::cs#0 + (byte) main::a#10)) goto main::@4 [ main::a#10 line_cursor#13 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 char_cursor#27 ] )
|
||||
to:main::@7
|
||||
main::@7: scope:[main] from main::@11
|
||||
[22] phi() [ main::a#10 line_cursor#13 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 char_cursor#27 ] )
|
||||
to:main::@4
|
||||
main::@4: scope:[main] from main::@11 main::@7
|
||||
[23] (byte) main::r#8 ← phi( main::@11/(byte) '-' main::@7/(byte) '+' ) [ main::a#10 line_cursor#13 main::r#8 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 main::r#8 char_cursor#27 ] )
|
||||
[24] (byte) printu::a#2 ← (byte) main::a#10 [ main::a#10 line_cursor#13 main::r#8 printu::a#2 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 main::r#8 printu::a#2 char_cursor#27 ] )
|
||||
[25] (byte) printu::b#2 ← *((const byte[10]) main::cs#0 + (byte) main::a#10) [ main::a#10 line_cursor#13 main::r#8 printu::a#2 printu::b#2 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 main::r#8 printu::a#2 printu::b#2 char_cursor#27 ] )
|
||||
[26] (byte) printu::res#2 ← (byte) main::r#8 [ main::a#10 line_cursor#13 printu::a#2 printu::b#2 printu::res#2 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 printu::a#2 printu::b#2 printu::res#2 char_cursor#27 ] )
|
||||
[27] call printu param-assignment [ main::a#10 line_cursor#13 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 char_cursor#27 ] )
|
||||
to:main::@12
|
||||
main::@12: scope:[main] from main::@4
|
||||
[28] phi() [ main::a#10 line_cursor#13 char_cursor#27 ] ( main:2 [ main::a#10 line_cursor#13 char_cursor#27 ] )
|
||||
[29] call print_ln param-assignment [ main::a#10 line_cursor#1 ] ( main:2 [ main::a#10 line_cursor#1 ] )
|
||||
to:main::@13
|
||||
main::@13: scope:[main] from main::@12
|
||||
[30] (byte) main::a#1 ← ++ (byte) main::a#10 [ main::a#1 line_cursor#1 ] ( main:2 [ main::a#1 line_cursor#1 ] )
|
||||
[31] if((byte) main::a#1!=(byte/signed byte/word/signed word) 11) goto main::@14 [ main::a#1 line_cursor#1 ] ( main:2 [ main::a#1 line_cursor#1 ] )
|
||||
to:main::@return
|
||||
main::@return: scope:[main] from main::@13
|
||||
[32] return [ ] ( main:2 [ ] )
|
||||
to:@return
|
||||
main::@14: scope:[main] from main::@13
|
||||
[33] (byte*~) char_cursor#54 ← (byte*) line_cursor#1 [ main::a#1 char_cursor#54 line_cursor#1 ] ( main:2 [ main::a#1 char_cursor#54 line_cursor#1 ] )
|
||||
to:main::@1
|
||||
print_ln: scope:[print_ln] from main::@12
|
||||
[34] phi() [ line_cursor#13 char_cursor#27 ] ( main:2::print_ln:29 [ main::a#10 line_cursor#13 char_cursor#27 ] )
|
||||
to:print_ln::@1
|
||||
print_ln::@1: scope:[print_ln] from print_ln print_ln::@1
|
||||
[35] (byte*) line_cursor#6 ← phi( print_ln/(byte*) line_cursor#13 print_ln::@1/(byte*) line_cursor#1 ) [ line_cursor#6 char_cursor#27 ] ( main:2::print_ln:29 [ main::a#10 line_cursor#6 char_cursor#27 ] )
|
||||
[36] (byte*) line_cursor#1 ← (byte*) line_cursor#6 + (byte/signed byte/word/signed word) 40 [ line_cursor#1 char_cursor#27 ] ( main:2::print_ln:29 [ main::a#10 line_cursor#1 char_cursor#27 ] )
|
||||
[37] if((byte*) line_cursor#1<(byte*) char_cursor#27) goto print_ln::@1 [ line_cursor#1 char_cursor#27 ] ( main:2::print_ln:29 [ main::a#10 line_cursor#1 char_cursor#27 ] )
|
||||
to:print_ln::@return
|
||||
print_ln::@return: scope:[print_ln] from print_ln::@1
|
||||
[38] return [ line_cursor#1 ] ( main:2::print_ln:29 [ main::a#10 line_cursor#1 ] )
|
||||
to:@return
|
||||
printu: scope:[printu] from main::@2 main::@3 main::@4
|
||||
[39] (byte) printu::res#3 ← phi( main::@2/(byte) printu::res#0 main::@3/(byte) printu::res#1 main::@4/(byte) printu::res#2 ) [ char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] )
|
||||
[39] (byte) printu::b#3 ← phi( main::@2/(byte) printu::b#0 main::@3/(byte/signed byte/word/signed word) 3 main::@4/(byte) printu::b#2 ) [ char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] )
|
||||
[39] (byte) printu::op#3 ← phi( main::@2/(byte) '<' main::@3/(byte) '<' main::@4/(byte) '<' ) [ char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] )
|
||||
[39] (byte) printu::a#3 ← phi( main::@2/(byte) printu::a#0 main::@3/(byte) printu::a#1 main::@4/(byte) printu::a#2 ) [ char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] )
|
||||
[39] (byte*) char_cursor#43 ← phi( main::@2/(byte*) char_cursor#44 main::@3/(byte*) char_cursor#27 main::@4/(byte*) char_cursor#27 ) [ char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#43 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] )
|
||||
[40] call print_char param-assignment [ char_cursor#27 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#27 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#27 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#27 printu::a#3 printu::op#3 printu::b#3 printu::res#3 ] )
|
||||
to:printu::@1
|
||||
printu::@1: scope:[printu] from printu
|
||||
[41] (byte) print_byte::b#0 ← (byte) printu::a#3 [ char_cursor#27 printu::op#3 printu::b#3 printu::res#3 print_byte::b#0 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#27 printu::op#3 printu::b#3 printu::res#3 print_byte::b#0 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#27 printu::op#3 printu::b#3 printu::res#3 print_byte::b#0 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#27 printu::op#3 printu::b#3 printu::res#3 print_byte::b#0 ] )
|
||||
[42] call print_byte param-assignment [ char_cursor#27 printu::op#3 printu::b#3 printu::res#3 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#27 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#27 printu::op#3 printu::b#3 printu::res#3 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#27 printu::op#3 printu::b#3 printu::res#3 ] )
|
||||
to:printu::@2
|
||||
printu::@2: scope:[printu] from printu::@1
|
||||
[43] (byte) print_char::ch#3 ← (byte) printu::op#3 [ char_cursor#27 printu::b#3 printu::res#3 print_char::ch#3 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#27 printu::b#3 printu::res#3 print_char::ch#3 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#27 printu::b#3 printu::res#3 print_char::ch#3 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#27 printu::b#3 printu::res#3 print_char::ch#3 ] )
|
||||
[44] call print_char param-assignment [ char_cursor#27 printu::b#3 printu::res#3 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#27 printu::b#3 printu::res#3 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#27 printu::b#3 printu::res#3 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#27 printu::b#3 printu::res#3 ] )
|
||||
to:printu::@3
|
||||
printu::@3: scope:[printu] from printu::@2
|
||||
[45] (byte) print_byte::b#1 ← (byte) printu::b#3 [ char_cursor#27 printu::res#3 print_byte::b#1 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#27 printu::res#3 print_byte::b#1 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#27 printu::res#3 print_byte::b#1 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#27 printu::res#3 print_byte::b#1 ] )
|
||||
[46] call print_byte param-assignment [ char_cursor#27 printu::res#3 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#27 printu::res#3 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#27 printu::res#3 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#27 printu::res#3 ] )
|
||||
to:printu::@4
|
||||
printu::@4: scope:[printu] from printu::@3
|
||||
[47] phi() [ char_cursor#27 printu::res#3 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#27 printu::res#3 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#27 printu::res#3 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#27 printu::res#3 ] )
|
||||
[48] call print_char param-assignment [ char_cursor#27 printu::res#3 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#27 printu::res#3 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#27 printu::res#3 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#27 printu::res#3 ] )
|
||||
to:printu::@5
|
||||
printu::@5: scope:[printu] from printu::@4
|
||||
[49] (byte) print_char::ch#5 ← (byte) printu::res#3 [ char_cursor#27 print_char::ch#5 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#27 print_char::ch#5 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#27 print_char::ch#5 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#27 print_char::ch#5 ] )
|
||||
[50] call print_char param-assignment [ char_cursor#27 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#27 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#27 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#27 ] )
|
||||
to:printu::@return
|
||||
printu::@return: scope:[printu] from printu::@5
|
||||
[51] return [ char_cursor#27 ] ( main:2::printu:14 [ main::a#10 line_cursor#13 char_cursor#27 ] main:2::printu:20 [ main::a#10 line_cursor#13 char_cursor#27 ] main:2::printu:27 [ main::a#10 line_cursor#13 char_cursor#27 ] )
|
||||
to:@return
|
||||
print_char: scope:[print_char] from print_byte print_byte::@1 printu printu::@2 printu::@4 printu::@5
|
||||
[52] (byte*) char_cursor#26 ← phi( print_byte/(byte*) char_cursor#27 print_byte::@1/(byte*) char_cursor#27 printu/(byte*) char_cursor#43 printu::@2/(byte*) char_cursor#27 printu::@4/(byte*) char_cursor#27 printu::@5/(byte*) char_cursor#27 ) [ print_char::ch#6 char_cursor#26 ] ( main:2::printu:14::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_char:50 [ main::a#10 line_cursor#13 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_char:50 [ main::a#10 line_cursor#13 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_char:50 [ main::a#10 line_cursor#13 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 print_char::ch#6 char_cursor#26 ] )
|
||||
[52] (byte) print_char::ch#6 ← phi( print_byte/(byte) print_char::ch#0 print_byte::@1/(byte) print_char::ch#1 printu/(byte) ' ' printu::@2/(byte) print_char::ch#3 printu::@4/(byte) ' ' printu::@5/(byte) print_char::ch#5 ) [ print_char::ch#6 char_cursor#26 ] ( main:2::printu:14::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_char:50 [ main::a#10 line_cursor#13 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_char:50 [ main::a#10 line_cursor#13 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_char:50 [ main::a#10 line_cursor#13 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:14::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:20::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 print_char::ch#6 char_cursor#26 ] main:2::printu:27::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 print_char::ch#6 char_cursor#26 ] )
|
||||
[53] *((byte*) char_cursor#26) ← (byte) print_char::ch#6 [ char_cursor#26 ] ( main:2::printu:14::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 char_cursor#26 ] main:2::printu:20::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 char_cursor#26 ] main:2::printu:27::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 char_cursor#26 ] main:2::printu:14::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 char_cursor#26 ] main:2::printu:20::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 char_cursor#26 ] main:2::printu:27::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 char_cursor#26 ] main:2::printu:14::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#26 ] main:2::printu:20::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#26 ] main:2::printu:27::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#26 ] main:2::printu:14::print_char:50 [ main::a#10 line_cursor#13 char_cursor#26 ] main:2::printu:20::print_char:50 [ main::a#10 line_cursor#13 char_cursor#26 ] main:2::printu:27::print_char:50 [ main::a#10 line_cursor#13 char_cursor#26 ] main:2::printu:14::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 char_cursor#26 ] main:2::printu:20::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 char_cursor#26 ] main:2::printu:27::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 char_cursor#26 ] main:2::printu:14::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 char_cursor#26 ] main:2::printu:20::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 char_cursor#26 ] main:2::printu:27::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 char_cursor#26 ] main:2::printu:14::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#26 ] main:2::printu:20::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#26 ] main:2::printu:27::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#26 ] main:2::printu:14::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#26 ] main:2::printu:20::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#26 ] main:2::printu:27::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#26 ] )
|
||||
[54] (byte*) char_cursor#27 ← ++ (byte*) char_cursor#26 [ char_cursor#27 ] ( main:2::printu:14::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:20::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:27::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:14::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:20::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:27::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:14::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:20::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:27::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:14::print_char:50 [ main::a#10 line_cursor#13 char_cursor#27 ] main:2::printu:20::print_char:50 [ main::a#10 line_cursor#13 char_cursor#27 ] main:2::printu:27::print_char:50 [ main::a#10 line_cursor#13 char_cursor#27 ] main:2::printu:14::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 char_cursor#27 ] main:2::printu:20::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 char_cursor#27 ] main:2::printu:27::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 char_cursor#27 ] main:2::printu:14::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 char_cursor#27 ] main:2::printu:20::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 char_cursor#27 ] main:2::printu:27::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 char_cursor#27 ] main:2::printu:14::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:20::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:27::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:14::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:20::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:27::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] )
|
||||
to:print_char::@return
|
||||
print_char::@return: scope:[print_char] from print_char
|
||||
[55] return [ char_cursor#27 ] ( main:2::printu:14::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:20::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:27::print_char:40 [ main::a#10 line_cursor#13 printu::a#3 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:14::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:20::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:27::print_char:44 [ main::a#10 line_cursor#13 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:14::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:20::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:27::print_char:48 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:14::print_char:50 [ main::a#10 line_cursor#13 char_cursor#27 ] main:2::printu:20::print_char:50 [ main::a#10 line_cursor#13 char_cursor#27 ] main:2::printu:27::print_char:50 [ main::a#10 line_cursor#13 char_cursor#27 ] main:2::printu:14::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 char_cursor#27 ] main:2::printu:20::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 char_cursor#27 ] main:2::printu:27::print_byte:42::print_char:59 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 print_byte::b#2 char_cursor#27 ] main:2::printu:14::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 char_cursor#27 ] main:2::printu:20::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 char_cursor#27 ] main:2::printu:27::print_byte:46::print_char:59 [ main::a#10 line_cursor#13 printu::res#3 print_byte::b#2 char_cursor#27 ] main:2::printu:14::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:20::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:27::print_byte:42::print_char:62 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:14::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:20::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:27::print_byte:46::print_char:62 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] )
|
||||
to:@return
|
||||
print_byte: scope:[print_byte] from printu::@1 printu::@3
|
||||
[56] (byte) print_byte::b#2 ← phi( printu::@1/(byte) print_byte::b#0 printu::@3/(byte) print_byte::b#1 ) [ char_cursor#27 print_byte::b#2 ] ( main:2::printu:14::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_byte::b#2 ] main:2::printu:20::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_byte::b#2 ] main:2::printu:27::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_byte::b#2 ] main:2::printu:14::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_byte::b#2 ] main:2::printu:20::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_byte::b#2 ] main:2::printu:27::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_byte::b#2 ] )
|
||||
[57] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word) 4 [ char_cursor#27 print_byte::b#2 print_byte::$0 ] ( main:2::printu:14::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_byte::b#2 print_byte::$0 ] main:2::printu:20::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_byte::b#2 print_byte::$0 ] main:2::printu:27::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_byte::b#2 print_byte::$0 ] main:2::printu:14::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_byte::b#2 print_byte::$0 ] main:2::printu:20::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_byte::b#2 print_byte::$0 ] main:2::printu:27::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_byte::b#2 print_byte::$0 ] )
|
||||
[58] (byte) print_char::ch#0 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ char_cursor#27 print_char::ch#0 print_byte::b#2 ] ( main:2::printu:14::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_char::ch#0 print_byte::b#2 ] main:2::printu:20::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_char::ch#0 print_byte::b#2 ] main:2::printu:27::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_char::ch#0 print_byte::b#2 ] main:2::printu:14::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_char::ch#0 print_byte::b#2 ] main:2::printu:20::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_char::ch#0 print_byte::b#2 ] main:2::printu:27::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_char::ch#0 print_byte::b#2 ] )
|
||||
[59] call print_char param-assignment [ char_cursor#27 print_byte::b#2 ] ( main:2::printu:14::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_byte::b#2 ] main:2::printu:20::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_byte::b#2 ] main:2::printu:27::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_byte::b#2 ] main:2::printu:14::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_byte::b#2 ] main:2::printu:20::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_byte::b#2 ] main:2::printu:27::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_byte::b#2 ] )
|
||||
to:print_byte::@1
|
||||
print_byte::@1: scope:[print_byte] from print_byte
|
||||
[60] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word) 15 [ char_cursor#27 print_byte::$2 ] ( main:2::printu:14::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_byte::$2 ] main:2::printu:20::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_byte::$2 ] main:2::printu:27::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_byte::$2 ] main:2::printu:14::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_byte::$2 ] main:2::printu:20::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_byte::$2 ] main:2::printu:27::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_byte::$2 ] )
|
||||
[61] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#27 print_char::ch#1 ] ( main:2::printu:14::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_char::ch#1 ] main:2::printu:20::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_char::ch#1 ] main:2::printu:27::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 print_char::ch#1 ] main:2::printu:14::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_char::ch#1 ] main:2::printu:20::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_char::ch#1 ] main:2::printu:27::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 print_char::ch#1 ] )
|
||||
[62] call print_char param-assignment [ char_cursor#27 ] ( main:2::printu:14::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:20::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:27::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:14::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:20::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:27::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] )
|
||||
to:print_byte::@return
|
||||
print_byte::@return: scope:[print_byte] from print_byte::@1
|
||||
[63] return [ char_cursor#27 ] ( main:2::printu:14::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:20::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:27::print_byte:42 [ main::a#10 line_cursor#13 printu::op#3 printu::b#3 printu::res#3 char_cursor#27 ] main:2::printu:14::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:20::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] main:2::printu:27::print_byte:46 [ main::a#10 line_cursor#13 printu::res#3 char_cursor#27 ] )
|
||||
to:@return
|
||||
print_cls: scope:[print_cls] from main
|
||||
[64] phi() [ ] ( main:2::print_cls:5 [ ] )
|
||||
to:print_cls::@1
|
||||
print_cls::@1: scope:[print_cls] from print_cls print_cls::@1
|
||||
[65] (byte*) print_cls::sc#2 ← phi( print_cls/((byte*))(word/signed word) 1024 print_cls::@1/(byte*) print_cls::sc#1 ) [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] )
|
||||
[66] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] )
|
||||
[67] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] )
|
||||
[68] if((byte*) print_cls::sc#1!=(word/signed word) 1024+(word/signed word) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] )
|
||||
to:print_cls::@return
|
||||
print_cls::@return: scope:[print_cls] from print_cls::@1
|
||||
[69] return [ ] ( main:2::print_cls:5 [ ] )
|
||||
to:@return
|
3384
src/test/java/dk/camelot64/kickc/test/ref/test-comparisons.log
Normal file
3384
src/test/java/dk/camelot64/kickc/test/ref/test-comparisons.log
Normal file
File diff suppressed because it is too large
Load Diff
104
src/test/java/dk/camelot64/kickc/test/ref/test-comparisons.sym
Normal file
104
src/test/java/dk/camelot64/kickc/test/ref/test-comparisons.sym
Normal file
@ -0,0 +1,104 @@
|
||||
(label) @10
|
||||
(label) @begin
|
||||
(label) @end
|
||||
(byte*) char_cursor
|
||||
(byte*) char_cursor#26 char_cursor zp ZP_WORD:7 8.0
|
||||
(byte*) char_cursor#27 char_cursor zp ZP_WORD:7 3.2926829268292686
|
||||
(byte*) char_cursor#43 char_cursor zp ZP_WORD:7 35.0
|
||||
(byte*) char_cursor#44 char_cursor zp ZP_WORD:7 2.75
|
||||
(byte*~) char_cursor#54 char_cursor zp ZP_WORD:7 22.0
|
||||
(byte*) line_cursor
|
||||
(byte*) line_cursor#1 line_cursor zp ZP_WORD:3 46.42857142857143
|
||||
(byte*) line_cursor#13 line_cursor zp ZP_WORD:3 0.5416666666666666
|
||||
(byte*) line_cursor#6 line_cursor zp ZP_WORD:3 204.0
|
||||
(void()) main()
|
||||
(label) main::@1
|
||||
(label) main::@10
|
||||
(label) main::@11
|
||||
(label) main::@12
|
||||
(label) main::@13
|
||||
(label) main::@14
|
||||
(label) main::@2
|
||||
(label) main::@3
|
||||
(label) main::@4
|
||||
(label) main::@5
|
||||
(label) main::@6
|
||||
(label) main::@7
|
||||
(label) main::@return
|
||||
(byte) main::a
|
||||
(byte) main::a#1 a zp ZP_BYTE:2 11.0
|
||||
(byte) main::a#10 a zp ZP_BYTE:2 5.041666666666666
|
||||
(byte) main::b
|
||||
(byte) main::b#0 reg byte y 6.6000000000000005
|
||||
(byte[10]) main::cs
|
||||
(const byte[10]) main::cs#0 cs = { (byte/signed byte/word/signed word) 0, (byte/signed byte/word/signed word) 20, (byte/signed byte/word/signed word) 4, (byte/signed byte/word/signed word) 9, (byte/signed byte/word/signed word) 11, (byte/signed byte/word/signed word) 4, (byte/signed byte/word/signed word) 13, (byte/signed byte/word/signed word) 8, (byte/signed byte/word/signed word) 4, (byte/signed byte/word/signed word) 6 }
|
||||
(byte) main::r
|
||||
(byte) main::r#6 reg byte x 3.6666666666666665
|
||||
(byte) main::r#7 reg byte x 5.5
|
||||
(byte) main::r#8 reg byte x 3.6666666666666665
|
||||
(void()) print_byte((byte) print_byte::b)
|
||||
(byte~) print_byte::$0 reg byte y 4.0
|
||||
(byte~) print_byte::$2 reg byte y 4.0
|
||||
(label) print_byte::@1
|
||||
(label) print_byte::@return
|
||||
(byte) print_byte::b
|
||||
(byte) print_byte::b#0 b zp ZP_BYTE:9 4.0
|
||||
(byte) print_byte::b#1 b zp ZP_BYTE:9 4.0
|
||||
(byte) print_byte::b#2 b zp ZP_BYTE:9 2.0
|
||||
(byte[]) print_byte::hextab
|
||||
(const string) print_byte::hextab#0 hextab = (string) "0123456789abcdef"
|
||||
(void()) print_char((byte) print_char::ch)
|
||||
(label) print_char::@return
|
||||
(byte) print_char::ch
|
||||
(byte) print_char::ch#0 reg byte a 4.0
|
||||
(byte) print_char::ch#1 reg byte a 4.0
|
||||
(byte) print_char::ch#3 reg byte a 4.0
|
||||
(byte) print_char::ch#5 reg byte a 4.0
|
||||
(byte) print_char::ch#6 reg byte a 10.0
|
||||
(void()) print_cls()
|
||||
(label) print_cls::@1
|
||||
(label) print_cls::@return
|
||||
(byte*) print_cls::sc
|
||||
(byte*) print_cls::sc#1 sc zp ZP_WORD:3 16.5
|
||||
(byte*) print_cls::sc#2 sc zp ZP_WORD:3 16.5
|
||||
(void()) print_ln()
|
||||
(label) print_ln::@1
|
||||
(label) print_ln::@return
|
||||
(void()) printu((byte) printu::a , (byte) printu::op , (byte) printu::b , (byte) printu::res)
|
||||
(label) printu::@1
|
||||
(label) printu::@2
|
||||
(label) printu::@3
|
||||
(label) printu::@4
|
||||
(label) printu::@5
|
||||
(label) printu::@return
|
||||
(byte) printu::a
|
||||
(byte) printu::a#0 a zp ZP_BYTE:2 7.333333333333333
|
||||
(byte) printu::a#1 a zp ZP_BYTE:2 11.0
|
||||
(byte) printu::a#2 a zp ZP_BYTE:2 7.333333333333333
|
||||
(byte) printu::a#3 a zp ZP_BYTE:2 17.5
|
||||
(byte) printu::b
|
||||
(byte) printu::b#0 b zp ZP_BYTE:6 11.0
|
||||
(byte) printu::b#2 b zp ZP_BYTE:6 11.0
|
||||
(byte) printu::b#3 b zp ZP_BYTE:6 4.0
|
||||
(byte) printu::op
|
||||
(byte) printu::op#3 op zp ZP_BYTE:5 0.5
|
||||
(byte) printu::res
|
||||
(byte) printu::res#0 reg byte x 22.0
|
||||
(byte) printu::res#1 reg byte x 22.0
|
||||
(byte) printu::res#2 reg byte x 22.0
|
||||
(byte) printu::res#3 reg byte x 3.5000000000000004
|
||||
|
||||
zp ZP_BYTE:2 [ main::a#10 main::a#1 printu::a#3 printu::a#0 printu::a#1 printu::a#2 ]
|
||||
reg byte x [ main::r#6 ]
|
||||
reg byte x [ main::r#7 ]
|
||||
reg byte x [ main::r#8 ]
|
||||
zp ZP_WORD:3 [ line_cursor#6 line_cursor#13 line_cursor#1 print_cls::sc#2 print_cls::sc#1 ]
|
||||
zp ZP_BYTE:5 [ printu::op#3 ]
|
||||
zp ZP_BYTE:6 [ printu::b#3 printu::b#0 printu::b#2 ]
|
||||
reg byte x [ printu::res#3 printu::res#0 printu::res#1 printu::res#2 ]
|
||||
reg byte a [ print_char::ch#6 print_char::ch#0 print_char::ch#1 print_char::ch#3 print_char::ch#5 ]
|
||||
zp ZP_WORD:7 [ char_cursor#26 char_cursor#43 char_cursor#44 char_cursor#54 char_cursor#27 ]
|
||||
zp ZP_BYTE:9 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ]
|
||||
reg byte y [ main::b#0 ]
|
||||
reg byte y [ print_byte::$0 ]
|
||||
reg byte y [ print_byte::$2 ]
|
Loading…
x
Reference in New Issue
Block a user