From 8705527316a273d5f548e677c4249feab5dbc2f6 Mon Sep 17 00:00:00 2001 From: Jesper Gravgaard Date: Tue, 13 Feb 2018 21:40:52 +0100 Subject: [PATCH] Fixed conflict --- .../camelot64/kickc/test/kc/sinus-sprites.kc | 2 - .../kickc/test/ref/sinus-sprites.log | 51 +- .../kickc/test/ref/test-division.asm | 306 +- .../kickc/test/ref/test-division.cfg | 474 +- .../kickc/test/ref/test-division.log | 6705 +++++++++++------ .../kickc/test/ref/test-division.sym | 220 +- 6 files changed, 5140 insertions(+), 2618 deletions(-) diff --git a/src/test/java/dk/camelot64/kickc/test/kc/sinus-sprites.kc b/src/test/java/dk/camelot64/kickc/test/kc/sinus-sprites.kc index 7582c538b..88059a61a 100644 --- a/src/test/java/dk/camelot64/kickc/test/kc/sinus-sprites.kc +++ b/src/test/java/dk/camelot64/kickc/test/kc/sinus-sprites.kc @@ -2,8 +2,6 @@ import "c64" import "basic-floats" import "print" -const byte* SCREEN = $0400; - const byte sinlen_x = 221; const byte[221] sintab_x; const byte sinlen_y = 197; diff --git a/src/test/java/dk/camelot64/kickc/test/ref/sinus-sprites.log b/src/test/java/dk/camelot64/kickc/test/ref/sinus-sprites.log index 1d64b6c47..112bb8cf5 100644 --- a/src/test/java/dk/camelot64/kickc/test/ref/sinus-sprites.log +++ b/src/test/java/dk/camelot64/kickc/test/ref/sinus-sprites.log @@ -3,8 +3,6 @@ import "c64" import "basic-floats" import "print" -const byte* SCREEN = $0400; - const byte sinlen_x = 221; const byte[221] sintab_x; const byte sinlen_y = 197; @@ -538,7 +536,9 @@ void mulFACby10() { Importing print PARSING src/test/java/dk/camelot64/kickc/test/kc/print.kc -byte* line_cursor = $0400; +const byte* SCREEN = $0400; + +byte* line_cursor = SCREEN; byte* char_cursor = line_cursor; // Print a zero-terminated string @@ -595,9 +595,11 @@ void print_char(byte ch) { // Clear the screen void print_cls() { - for(byte* sc=$0400; sc!=$0400+1000; sc++) { + for(byte* sc=SCREEN; sc!=SCREEN+1000; sc++) { *sc = ' '; } + line_cursor = SCREEN; + char_cursor = line_cursor; } @@ -808,7 +810,8 @@ proc (void()) mulFACby10() mulFACby10::@return: return endproc // mulFACby10() - (byte*) line_cursor ← (word/signed word/dword/signed dword) 1024 + (byte*) SCREEN ← (word/signed word/dword/signed dword) 1024 + (byte*) line_cursor ← (byte*) SCREEN (byte*) char_cursor ← (byte*) line_cursor proc (void()) print_str((byte*) print_str::str) print_str::@1: @@ -884,17 +887,18 @@ print_char::@return: return endproc // print_char() proc (void()) print_cls() - (byte*) print_cls::sc ← (word/signed word/dword/signed dword) 1024 + (byte*) print_cls::sc ← (byte*) SCREEN print_cls::@1: *((byte*) print_cls::sc) ← (byte) ' ' (byte*) print_cls::sc ← ++ (byte*) print_cls::sc - (word/signed word/dword/signed dword~) print_cls::$0 ← (word/signed word/dword/signed dword) 1024 + (word/signed word/dword/signed dword) 1000 - (boolean~) print_cls::$1 ← (byte*) print_cls::sc != (word/signed word/dword/signed dword~) print_cls::$0 + (byte*~) print_cls::$0 ← (byte*) SCREEN + (word/signed word/dword/signed dword) 1000 + (boolean~) print_cls::$1 ← (byte*) print_cls::sc != (byte*~) print_cls::$0 if((boolean~) print_cls::$1) goto print_cls::@1 + (byte*) line_cursor ← (byte*) SCREEN + (byte*) char_cursor ← (byte*) line_cursor print_cls::@return: return endproc // print_cls() - (byte*) SCREEN ← (word/signed word/dword/signed dword) 1024 (byte) sinlen_x ← (byte/word/signed word/dword/signed dword) 221 (byte[221]) sintab_x ← { fill( 221, 0) } (byte) sinlen_y ← (byte/word/signed word/dword/signed dword) 197 @@ -1412,7 +1416,7 @@ SYMBOLS (label) print_char::@return (byte) print_char::ch (void()) print_cls() -(word/signed word/dword/signed dword~) print_cls::$0 +(byte*~) print_cls::$0 (boolean~) print_cls::$1 (label) print_cls::@1 (label) print_cls::@return @@ -1535,8 +1539,6 @@ Promoting word/dword/signed dword to byte* in SPRITES_COLS ← ((byte*)) 53287 Promoting word/dword/signed dword to byte* in COLS ← ((byte*)) 55296 Promoting byte/word/signed word/dword/signed dword to byte* in memLo ← ((byte*)) 254 Promoting byte/word/signed word/dword/signed dword to byte* in memHi ← ((byte*)) 255 -Promoting word/signed word/dword/signed dword to byte* in line_cursor ← ((byte*)) 1024 -Promoting word/signed word/dword/signed dword to byte* in print_cls::sc ← ((byte*)) 1024 Promoting word/signed word/dword/signed dword to byte* in SCREEN ← ((byte*)) 1024 Promoting word/signed word/dword/signed dword to byte* in sprites ← ((byte*)) 8192 Promoting word/dword/signed dword to byte* in gen_sintab::f_2pi ← ((byte*)) 58085 @@ -1811,7 +1813,8 @@ mulFACby10::@return: scope:[mulFACby10] from mulFACby10 return to:@return @27: scope:[] from @26 - (byte*) line_cursor ← ((byte*)) (word/signed word/dword/signed dword) 1024 + (byte*) SCREEN ← ((byte*)) (word/signed word/dword/signed dword) 1024 + (byte*) line_cursor ← (byte*) SCREEN (byte*) char_cursor ← (byte*) line_cursor to:@28 print_str: scope:[print_str] from @@ -1925,22 +1928,23 @@ print_char::@return: scope:[print_char] from print_char @34: scope:[] from @33 to:@35 print_cls: scope:[print_cls] from - (byte*) print_cls::sc ← ((byte*)) (word/signed word/dword/signed dword) 1024 + (byte*) print_cls::sc ← (byte*) SCREEN to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 *((byte*) print_cls::sc) ← (byte) ' ' (byte*) print_cls::sc ← ++ (byte*) print_cls::sc - (word/signed word/dword/signed dword~) print_cls::$0 ← (word/signed word/dword/signed dword) 1024 + (word/signed word/dword/signed dword) 1000 - (boolean~) print_cls::$1 ← (byte*) print_cls::sc != (word/signed word/dword/signed dword~) print_cls::$0 + (byte*~) print_cls::$0 ← (byte*) SCREEN + (word/signed word/dword/signed dword) 1000 + (boolean~) print_cls::$1 ← (byte*) print_cls::sc != (byte*~) print_cls::$0 if((boolean~) print_cls::$1) goto print_cls::@1 to:print_cls::@2 print_cls::@2: scope:[print_cls] from print_cls::@1 + (byte*) line_cursor ← (byte*) SCREEN + (byte*) char_cursor ← (byte*) line_cursor to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 return to:@return @35: scope:[] from @34 - (byte*) SCREEN ← ((byte*)) (word/signed word/dword/signed dword) 1024 (byte) sinlen_x ← (byte/word/signed word/dword/signed dword) 221 (byte[221]) sintab_x ← { fill( 221, 0) } (byte) sinlen_y ← (byte/word/signed word/dword/signed dword) 197 @@ -2350,7 +2354,7 @@ Eliminating unused variable - keeping the call (void~) setMEMtoFAC::$0 Eliminating unused variable - keeping the call (void~) addMEMtoFAC::$0 Eliminating unused variable - keeping the call (void~) divMEMbyFAC::$0 Eliminating unused variable - keeping the call (void~) mulFACbyMEM::$0 -Eliminating unused variable (byte*) char_cursor and assignment [68] (byte*) char_cursor ← (byte*) line_cursor +Eliminating unused variable (byte*) char_cursor and assignment [69] (byte*) char_cursor ← (byte*) line_cursor Eliminating unused variable - keeping the call (void~) main::$0 Eliminating unused variable - keeping the call (void~) main::$2 Eliminating unused variable - keeping the call (void~) init::$0 @@ -2382,7 +2386,7 @@ Eliminating unused variable - keeping the call (void~) gen_sintab::$20 Eliminating unused variable - keeping the call (void~) gen_sintab::$21 Eliminating unused variable - keeping the call (void~) gen_sintab::$22 Eliminating unused variable - keeping the call (void~) gen_sintab::$25 -Eliminating unused variable (byte*) line_cursor and assignment [46] (byte*) line_cursor ← ((byte*)) (word/signed word/dword/signed dword) 1024 +Eliminating unused variable (byte*) line_cursor and assignment [47] (byte*) line_cursor ← (byte*) SCREEN Creating constant string variable for inline (const string) gen_sprites::$3 "camelot" Removing empty block @1 Removing empty block @2 @@ -2411,7 +2415,6 @@ Removing empty block @23 Removing empty block @24 Removing empty block @25 Removing empty block @26 -Removing empty block @27 Removing empty block @28 Removing empty block @29 Removing empty block @30 @@ -2487,7 +2490,7 @@ CONTROL FLOW GRAPH SSA WITH ASSIGNMENT CALL & RETURN (byte*) COLS#0 ← ((byte*)) (word/dword/signed dword) 55296 (byte*) memLo#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) 254 (byte*) memHi#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) 255 - to:@35 + to:@27 prepareMEM: scope:[prepareMEM] from addMEMtoFAC divMEMbyFAC mulFACbyMEM setFAC setMEMtoFAC (byte*) prepareMEM::mem#5 ← phi( addMEMtoFAC/(byte*) prepareMEM::mem#2 divMEMbyFAC/(byte*) prepareMEM::mem#3 mulFACbyMEM/(byte*) prepareMEM::mem#4 setFAC/(byte*) prepareMEM::mem#0 setMEMtoFAC/(byte*) prepareMEM::mem#1 ) (byte~) prepareMEM::$0 ← < (byte*) prepareMEM::mem#5 @@ -2582,8 +2585,10 @@ sinFAC: scope:[sinFAC] from gen_sintab::@18 sinFAC::@return: scope:[sinFAC] from sinFAC return to:@return -@35: scope:[] from @begin +@27: scope:[] from @begin (byte*) SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024 + to:@35 +@35: scope:[] from @27 (byte) sinlen_x#0 ← (byte/word/signed word/dword/signed dword) 221 (byte[221]) sintab_x#0 ← { fill( 221, 0) } (byte) sinlen_y#0 ← (byte/word/signed word/dword/signed dword) 197 @@ -3374,6 +3379,7 @@ gen_sintab::@return: scope:[gen_sintab] from gen_sintab::@23 @end: scope:[] from @46 SYMBOL TABLE SSA +(label) @27 (label) @35 (label) @38 (label) @40 @@ -4677,6 +4683,7 @@ Eliminating unused constant (const byte) progress_idx#35 Succesful SSA optimization PassNEliminateUnusedVars Eliminating Noop Cast (byte*) prepareMEM::mem#0 ← ((byte*)) (word) setFAC::w#5 Succesful SSA optimization Pass2NopCastElimination +Culled Empty Block (label) @27 Culled Empty Block (label) @35 Culled Empty Block (label) main::@5 Culled Empty Block (label) main::@1 diff --git a/src/test/java/dk/camelot64/kickc/test/ref/test-division.asm b/src/test/java/dk/camelot64/kickc/test/ref/test-division.asm index cead13e83..0c06fb311 100644 --- a/src/test/java/dk/camelot64/kickc/test/ref/test-division.asm +++ b/src/test/java/dk/camelot64/kickc/test/ref/test-division.asm @@ -2,19 +2,227 @@ :BasicUpstart(main) .pc = $80d "Program" .label SCREEN = $400 - .label char_cursor = 6 + .label char_cursor = 8 .label line_cursor = 3 + .label rem16u = $a jsr main main: { jsr print_cls jsr test_8s jsr test_8u + jsr test_16u + rts +} +test_16u: { + .label dividend = 5 + .label divisor = $12 + .label res = $c + .label i = 2 + lda #0 + sta rem16u + sta rem16u+1 + sta i + b1: + ldy i + lda dividends,y + sta dividend + lda dividends+1,y + sta dividend+1 + lda divisors,y + sta divisor + lda divisors+1,y + sta divisor+1 + lda dividend + sta div16u.dividend + lda dividend+1 + sta div16u.dividend+1 + jsr div16u + lda line_cursor + sta char_cursor + lda line_cursor+1 + sta char_cursor+1 + jsr print_word + lda #str + sta print_str.str+1 + jsr print_str + lda divisor + sta print_word.w + lda divisor+1 + sta print_word.w+1 + jsr print_word + lda #str1 + sta print_str.str+1 + jsr print_str + lda res + sta print_word.w + lda res+1 + sta print_word.w+1 + jsr print_word + lda #str2 + sta print_str.str+1 + jsr print_str + lda div16u.rem + sta print_word.w + lda div16u.rem+1 + sta print_word.w+1 + jsr print_word + jsr print_ln + lda #2 + clc + adc i + sta i + cmp #$c + beq !b1+ + jmp b1 + !b1: + rts + str: .text " / @" + str1: .text " = @" + str2: .text " @" + dividends: .word $ffff, $ffff, $ffff, $ffff, $ffff, $ffff + divisors: .word 5, 7, $b, $d, $11, $13 +} +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 +} +print_word: { + .label w = 5 + lda w+1 + sta print_byte.b + jsr print_byte + lda w + sta print_byte.b + jsr print_byte + rts +} +print_byte: { + .label b = 7 + lda b + lsr + lsr + lsr + lsr + tay + lda hextab,y + jsr print_char + lda #$f + and b + tay + lda hextab,y + jsr print_char + rts + hextab: .text "0123456789abcdef" +} +print_char: { + ldy #0 + sta (char_cursor),y + inc char_cursor + bne !+ + inc char_cursor+1 + !: + rts +} +print_str: { + .label str = 5 + b1: + ldy #0 + lda (str),y + cmp #'@' + bne b2 + rts + b2: + ldy #0 + lda (str),y + sta (char_cursor),y + inc char_cursor + bne !+ + inc char_cursor+1 + !: + inc str + bne !+ + inc str+1 + !: + jmp b1 +} +div16u: { + .label rem = $a + .label dividend = 8 + .label quotient = $c + .label return = $c + .label divisor = $12 + ldx #0 + txa + sta quotient + sta quotient+1 + sta rem + sta rem+1 + b1: + asl rem + rol rem+1 + lda dividend+1 + and #$80 + cmp #0 + beq b2 + inc rem + bne !+ + inc rem+1 + !: + b2: + asl dividend + rol dividend+1 + asl quotient + rol quotient+1 + lda rem+1 + cmp divisor+1 + bcc b3 + bne !+ + lda rem + cmp divisor + bcc b3 + !: + inc quotient + bne !+ + inc quotient+1 + !: + lda rem + sec + sbc divisor + sta rem + lda rem+1 + sbc divisor+1 + sta rem+1 + b3: + inx + cpx #$10 + bne b1 rts } test_8u: { - .label rem = $e - .label dividend = 5 - .label divisor = $a + .label rem = $14 + .label dividend = 7 + .label divisor = $e .label i = 2 lda #0 sta rem @@ -74,80 +282,12 @@ test_8u: { dividends: .byte $ff, $ff, $ff, $ff, $ff, $ff divisors: .byte 5, 7, $b, $d, $11, $13 } -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 -} -print_byte: { - .label b = 5 - lda b - lsr - lsr - lsr - lsr - tay - lda hextab,y - jsr print_char - lda #$f - and b - tay - lda hextab,y - jsr print_char - rts - hextab: .text "0123456789abcdef" -} -print_char: { - ldy #0 - sta (char_cursor),y - inc char_cursor - bne !+ - inc char_cursor+1 - !: - rts -} -print_str: { - .label str = 8 - b1: - ldy #0 - lda (str),y - cmp #'@' - bne b2 - rts - b2: - ldy #0 - lda (str),y - sta (char_cursor),y - inc char_cursor - bne !+ - inc char_cursor+1 - !: - inc str - bne !+ - inc str+1 - !: - jmp b1 -} div8u: { - .label dividend = $b - .label quotient = $c - .label return = $c - .label divisor = $a - .label remainder = 8 + .label dividend = $f + .label quotient = $10 + .label return = $10 + .label divisor = $e + .label remainder = 5 ldx #0 txa sta quotient @@ -181,9 +321,9 @@ div8u: { rts } test_8s: { - .label dividend = 5 - .label divisor = $f - .label res = $a + .label dividend = 7 + .label divisor = $15 + .label res = $e .label i = 2 lda #> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#5 char_cursor#78 print_byte::$0 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] ) - [47] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#78 print_char::ch#1 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] ) - [48] call print_char param-assignment [ char_cursor#11 print_byte::b#5 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] ) +print_word: scope:[print_word] from test_16u::@3 test_16u::@5 test_16u::@7 test_16u::@9 + [47] (byte*) char_cursor#104 ← phi( test_16u::@3/(byte*~) char_cursor#121 test_16u::@5/(byte*) char_cursor#100 test_16u::@7/(byte*) char_cursor#100 test_16u::@9/(byte*) char_cursor#100 ) [ print_word::w#4 char_cursor#104 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 ] ) + [47] (word) print_word::w#4 ← phi( test_16u::@3/(word) print_word::w#0 test_16u::@5/(word) print_word::w#1 test_16u::@7/(word) print_word::w#2 test_16u::@9/(word) print_word::w#3 ) [ print_word::w#4 char_cursor#104 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 ] ) + [48] (byte) print_byte::b#1 ← > (word) print_word::w#4 [ print_word::w#4 char_cursor#104 print_byte::b#1 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] ) + [49] call print_byte param-assignment [ char_cursor#14 print_word::w#4 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_word::w#4 ] ) + to:print_word::@1 +print_word::@1: scope:[print_word] from print_word + [50] (byte) print_byte::b#2 ← < (word) print_word::w#4 [ char_cursor#14 print_byte::b#2 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] ) + [51] call print_byte param-assignment [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + to:print_word::@return +print_word::@return: scope:[print_word] from print_word::@1 + [52] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + to:@return +print_byte: scope:[print_byte] from print_sbyte::@1 print_word print_word::@1 test_8u::@3 test_8u::@5 test_8u::@7 test_8u::@9 + [53] (byte*) char_cursor#105 ← phi( print_sbyte::@1/(byte*) char_cursor#102 print_word/(byte*) char_cursor#104 print_word::@1/(byte*) char_cursor#14 test_8u::@3/(byte*~) char_cursor#128 test_8u::@5/(byte*) char_cursor#100 test_8u::@7/(byte*) char_cursor#100 test_8u::@9/(byte*) char_cursor#100 ) [ print_byte::b#7 char_cursor#105 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] ) + [53] (byte) print_byte::b#7 ← phi( print_sbyte::@1/(byte~) print_byte::b#9 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 test_8u::@3/(byte) print_byte::b#3 test_8u::@5/(byte) print_byte::b#4 test_8u::@7/(byte) print_byte::b#5 test_8u::@9/(byte) print_byte::b#6 ) [ print_byte::b#7 char_cursor#105 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] ) + [54] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 char_cursor#105 print_byte::$0 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] ) + [55] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#7 char_cursor#105 print_char::ch#1 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] ) + [56] call print_char param-assignment [ char_cursor#14 print_byte::b#7 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] ) to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - [49] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#11 print_byte::$2 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] ) - [50] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#11 print_char::ch#2 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] ) - [51] call print_char param-assignment [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + [57] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#14 print_byte::$2 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] ) + [58] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#14 print_char::ch#2 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] ) + [59] call print_char param-assignment [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@1 - [52] return [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + [60] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@2 - [53] (byte*) char_cursor#48 ← phi( print_byte/(byte*) char_cursor#78 print_byte::@1/(byte*) char_cursor#11 print_sbyte::@2/(byte*) char_cursor#77 ) [ print_char::ch#3 char_cursor#48 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] ) - [53] (byte) print_char::ch#3 ← phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sbyte::@2/(byte) '-' ) [ print_char::ch#3 char_cursor#48 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] ) - [54] *((byte*) char_cursor#48) ← (byte) print_char::ch#3 [ char_cursor#48 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] ) - [55] (byte*) char_cursor#11 ← ++ (byte*) char_cursor#48 [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] ) + [61] (byte*) char_cursor#64 ← phi( print_byte/(byte*) char_cursor#105 print_byte::@1/(byte*) char_cursor#14 print_sbyte::@2/(byte*) char_cursor#103 ) [ print_char::ch#3 char_cursor#64 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] ) + [61] (byte) print_char::ch#3 ← phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sbyte::@2/(byte) '-' ) [ print_char::ch#3 char_cursor#64 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] ) + [62] *((byte*) char_cursor#64) ← (byte) print_char::ch#3 [ char_cursor#64 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] ) + [63] (byte*) char_cursor#14 ← ++ (byte*) char_cursor#64 [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] ) to:print_char::@return print_char::@return: scope:[print_char] from print_char - [56] return [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] ) + [64] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] ) to:@return -print_str: scope:[print_str] from test_8s::@4 test_8s::@6 test_8s::@8 test_8u::@4 test_8u::@6 test_8u::@8 - [57] (byte*) print_str::str#9 ← phi( test_8s::@4/(const string) test_8s::str test_8s::@6/(const string) test_8s::str1 test_8s::@8/(const string) test_8s::str2 test_8u::@4/(const string) test_8u::str test_8u::@6/(const string) test_8u::str1 test_8u::@8/(const string) test_8u::str2 ) [ char_cursor#11 print_str::str#9 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_str::str#9 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_str::str#9 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_str::str#9 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_str::str#9 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_str::str#9 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_str::str#9 ] ) +print_str: scope:[print_str] from test_16u::@4 test_16u::@6 test_16u::@8 test_8s::@4 test_8s::@6 test_8s::@8 test_8u::@4 test_8u::@6 test_8u::@8 + [65] (byte*) print_str::str#12 ← phi( test_16u::@4/(const string) test_16u::str test_16u::@6/(const string) test_16u::str1 test_16u::@8/(const string) test_16u::str2 test_8s::@4/(const string) test_8s::str test_8s::@6/(const string) test_8s::str1 test_8s::@8/(const string) test_8s::str2 test_8u::@4/(const string) test_8u::str test_8u::@6/(const string) test_8u::str1 test_8u::@8/(const string) test_8u::str2 ) [ char_cursor#14 print_str::str#12 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_str::str#12 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_str::str#12 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_str::str#12 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_str::str#12 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_str::str#12 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_str::str#12 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_str::str#12 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_str::str#12 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_str::str#12 ] ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - [58] (byte*) char_cursor#2 ← phi( print_str/(byte*) char_cursor#11 print_str::@2/(byte*) char_cursor#1 ) [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) - [58] (byte*) print_str::str#7 ← phi( print_str/(byte*) print_str::str#9 print_str::@2/(byte*) print_str::str#0 ) [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) - [59] if(*((byte*) print_str::str#7)!=(byte) '@') goto print_str::@2 [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) + [66] (byte*) char_cursor#100 ← phi( print_str/(byte*) char_cursor#14 print_str::@2/(byte*) char_cursor#1 ) [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) + [66] (byte*) print_str::str#10 ← phi( print_str/(byte*) print_str::str#12 print_str::@2/(byte*) print_str::str#0 ) [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) + [67] if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) to:print_str::@return print_str::@return: scope:[print_str] from print_str::@1 - [60] return [ char_cursor#2 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 ] ) + [68] return [ char_cursor#100 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 ] ) to:@return print_str::@2: scope:[print_str] from print_str::@1 - [61] *((byte*) char_cursor#2) ← *((byte*) print_str::str#7) [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) - [62] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#2 [ print_str::str#7 char_cursor#1 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] ) - [63] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#7 [ print_str::str#0 char_cursor#1 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] ) + [69] *((byte*) char_cursor#100) ← *((byte*) print_str::str#10) [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) + [70] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#100 [ print_str::str#10 char_cursor#1 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] ) + [71] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#10 [ print_str::str#0 char_cursor#1 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] ) to:print_str::@1 +div16u: scope:[div16u] from test_16u::@1 + [72] phi() [ div16u::dividend#1 div16u::divisor#0 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::dividend#1 div16u::divisor#0 ] ) + to:div16u::@1 +div16u::@1: scope:[div16u] from div16u div16u::@3 + [73] (byte) div16u::i#2 ← phi( div16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div16u::@3/(byte) div16u::i#1 ) [ div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ) + [73] (word) div16u::quotient#3 ← phi( div16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div16u::@3/(word) div16u::return#0 ) [ div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ) + [73] (word) div16u::dividend#2 ← phi( div16u/(word) div16u::dividend#1 div16u::@3/(word) div16u::dividend#0 ) [ div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ) + [73] (word) div16u::rem#4 ← phi( div16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div16u::@3/(word) div16u::rem#8 ) [ div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ) + [74] (word) div16u::rem#1 ← (word) div16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ) + [75] (byte~) div16u::$1 ← > (word) div16u::dividend#2 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ) + [76] (byte~) div16u::$2 ← (byte~) div16u::$1 & (byte/word/signed word/dword/signed dword) 128 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ) + [77] if((byte~) div16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div16u::@2 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ) + to:div16u::@4 +div16u::@4: scope:[div16u] from div16u::@1 + [78] (word) div16u::rem#2 ← ++ (word) div16u::rem#1 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#2 ] ) + to:div16u::@2 +div16u::@2: scope:[div16u] from div16u::@1 div16u::@4 + [79] (word) div16u::rem#5 ← phi( div16u::@1/(word) div16u::rem#1 div16u::@4/(word) div16u::rem#2 ) [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#5 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#5 ] ) + [80] (word) div16u::dividend#0 ← (word) div16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::quotient#3 div16u::i#2 div16u::dividend#0 div16u::rem#5 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::quotient#3 div16u::i#2 div16u::dividend#0 div16u::rem#5 ] ) + [81] (word) div16u::quotient#1 ← (word) div16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ) + [82] if((word) div16u::rem#5<(word) div16u::divisor#0) goto div16u::@3 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ) + to:div16u::@5 +div16u::@5: scope:[div16u] from div16u::@2 + [83] (word) div16u::quotient#2 ← ++ (word) div16u::quotient#1 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#2 ] ) + [84] (word) div16u::rem#3 ← (word) div16u::rem#5 - (word) div16u::divisor#0 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ) + to:div16u::@3 +div16u::@3: scope:[div16u] from div16u::@2 div16u::@5 + [85] (word) div16u::return#0 ← phi( div16u::@2/(word) div16u::quotient#1 div16u::@5/(word) div16u::quotient#2 ) [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::i#2 div16u::dividend#0 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::i#2 div16u::dividend#0 ] ) + [85] (word) div16u::rem#8 ← phi( div16u::@2/(word) div16u::rem#5 div16u::@5/(word) div16u::rem#3 ) [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::i#2 div16u::dividend#0 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::i#2 div16u::dividend#0 ] ) + [86] (byte) div16u::i#1 ← ++ (byte) div16u::i#2 [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ) + [87] if((byte) div16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto div16u::@1 [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ) + to:div16u::@return +div16u::@return: scope:[div16u] from div16u::@3 + [88] return [ div16u::rem#8 div16u::return#0 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::return#0 ] ) + to:@return +test_8u: scope:[test_8u] from main::@2 + [89] (byte) test_8u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ line_cursor#1 test_8u::rem#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 div8s::rem8u#0 ] ) + to:test_8u::@1 +test_8u::@1: scope:[test_8u] from test_8u test_8u::@11 + [90] (byte) test_8u::i#10 ← phi( test_8u/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8u::@11/(byte) test_8u::i#1 ) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + [91] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 div8s::rem8u#0 ] ) + [92] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ) + [93] (byte) div8u::dividend#2 ← (byte) test_8u::dividend#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8s::rem8u#0 ] ) + [94] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 div8s::rem8u#0 ] ) + [95] call div8u param-assignment [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 div8s::rem8u#0 ] ) + [96] (byte) div8u::return#3 ← (byte) div8u::return#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 div8s::rem8u#0 ] ) + to:test_8u::@3 +test_8u::@3: scope:[test_8u] from test_8u::@1 + [97] (byte) test_8u::res#0 ← (byte) div8u::return#3 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + [98] (byte) print_byte::b#3 ← (byte) test_8u::dividend#0 [ line_cursor#1 print_byte::b#3 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 print_byte::b#3 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + [99] (byte*~) char_cursor#128 ← (byte*) line_cursor#1 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + [100] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + to:test_8u::@4 +test_8u::@4: scope:[test_8u] from test_8u::@3 + [101] phi() [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + [102] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + to:test_8u::@5 +test_8u::@5: scope:[test_8u] from test_8u::@4 + [103] (byte) print_byte::b#4 ← (byte) test_8u::divisor#0 [ line_cursor#1 char_cursor#100 print_byte::b#4 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#4 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + [104] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + to:test_8u::@6 +test_8u::@6: scope:[test_8u] from test_8u::@5 + [105] phi() [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + [106] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + to:test_8u::@7 +test_8u::@7: scope:[test_8u] from test_8u::@6 + [107] (byte) print_byte::b#5 ← (byte) test_8u::res#0 [ line_cursor#1 char_cursor#100 print_byte::b#5 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#5 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + [108] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + to:test_8u::@8 +test_8u::@8: scope:[test_8u] from test_8u::@7 + [109] phi() [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + [110] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + to:test_8u::@9 +test_8u::@9: scope:[test_8u] from test_8u::@8 + [111] (byte) print_byte::b#6 ← (byte) test_8u::rem#0 [ line_cursor#1 char_cursor#100 print_byte::b#6 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#6 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + [112] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + to:test_8u::@10 +test_8u::@10: scope:[test_8u] from test_8u::@9 + [113] phi() [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + [114] call print_ln param-assignment [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + to:test_8u::@11 +test_8u::@11: scope:[test_8u] from test_8u::@10 + [115] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ) + [116] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@1 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ) + to:test_8u::@return +test_8u::@return: scope:[test_8u] from test_8u::@11 + [117] return [ line_cursor#1 ] ( main:2::test_8u:9 [ line_cursor#1 ] ) + to:@return div8u: scope:[div8u] from div8s::@4 test_8u::@1 - [64] (byte*) div8u::remainder#8 ← phi( div8s::@4/&(byte) div8s::rem8u#0 test_8u::@1/&(byte) test_8u::rem#0 ) [ test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ) - [64] (byte) div8u::divisor#6 ← phi( div8s::@4/(byte) div8u::divisor#0 test_8u::@1/(byte) div8u::divisor#1 ) [ test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ) - [64] (byte) div8u::dividend#5 ← phi( div8s::@4/(byte) div8u::dividend#1 test_8u::@1/(byte) div8u::dividend#2 ) [ test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ) + [118] (byte*) div8u::remainder#8 ← phi( div8s::@4/&(byte) div8s::rem8u#0 test_8u::@1/&(byte) test_8u::rem#0 ) [ test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ) + [118] (byte) div8u::divisor#6 ← phi( div8s::@4/(byte) div8u::divisor#0 test_8u::@1/(byte) div8u::divisor#1 ) [ test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ) + [118] (byte) div8u::dividend#5 ← phi( div8s::@4/(byte) div8u::dividend#1 test_8u::@1/(byte) div8u::dividend#2 ) [ test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ) to:div8u::@1 div8u::@1: scope:[div8u] from div8u div8u::@3 - [65] (byte) div8u::i#2 ← phi( div8u/(byte/signed byte/word/signed word/dword/signed dword) 0 div8u::@3/(byte) div8u::i#1 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) - [65] (byte) div8u::quotient#3 ← phi( div8u/(byte/signed byte/word/signed word/dword/signed dword) 0 div8u::@3/(byte) div8u::return#0 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) - [65] (byte) div8u::dividend#3 ← phi( div8u/(byte) div8u::dividend#5 div8u::@3/(byte) div8u::dividend#0 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) - [65] (byte) div8u::rem#4 ← phi( div8u/(byte/signed byte/word/signed word/dword/signed dword) 0 div8u::@3/(byte) div8u::rem#8 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) - [66] (byte) div8u::rem#1 ← (byte) div8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) - [67] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) - [68] if((byte~) div8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8u::@2 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) + [119] (byte) div8u::i#2 ← phi( div8u/(byte/signed byte/word/signed word/dword/signed dword) 0 div8u::@3/(byte) div8u::i#1 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) + [119] (byte) div8u::quotient#3 ← phi( div8u/(byte/signed byte/word/signed word/dword/signed dword) 0 div8u::@3/(byte) div8u::return#0 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) + [119] (byte) div8u::dividend#3 ← phi( div8u/(byte) div8u::dividend#5 div8u::@3/(byte) div8u::dividend#0 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) + [119] (byte) div8u::rem#4 ← phi( div8u/(byte/signed byte/word/signed word/dword/signed dword) 0 div8u::@3/(byte) div8u::rem#8 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) + [120] (byte) div8u::rem#1 ← (byte) div8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) + [121] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) + [122] if((byte~) div8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8u::@2 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) to:div8u::@4 div8u::@4: scope:[div8u] from div8u::@1 - [69] (byte) div8u::rem#2 ← ++ (byte) div8u::rem#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ) + [123] (byte) div8u::rem#2 ← ++ (byte) div8u::rem#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ) to:div8u::@2 div8u::@2: scope:[div8u] from div8u::@1 div8u::@4 - [70] (byte) div8u::rem#5 ← phi( div8u::@1/(byte) div8u::rem#1 div8u::@4/(byte) div8u::rem#2 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#5 div8s::rem8u#0 ] ) - [71] (byte) div8u::dividend#0 ← (byte) div8u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ) - [72] (byte) div8u::quotient#1 ← (byte) div8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) - [73] if((byte) div8u::rem#5<(byte) div8u::divisor#6) goto div8u::@3 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) + [124] (byte) div8u::rem#5 ← phi( div8u::@1/(byte) div8u::rem#1 div8u::@4/(byte) div8u::rem#2 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#5 div8s::rem8u#0 ] ) + [125] (byte) div8u::dividend#0 ← (byte) div8u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ) + [126] (byte) div8u::quotient#1 ← (byte) div8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) + [127] if((byte) div8u::rem#5<(byte) div8u::divisor#6) goto div8u::@3 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) to:div8u::@5 div8u::@5: scope:[div8u] from div8u::@2 - [74] (byte) div8u::quotient#2 ← ++ (byte) div8u::quotient#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ) - [75] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) + [128] (byte) div8u::quotient#2 ← ++ (byte) div8u::quotient#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ) + [129] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) to:div8u::@3 div8u::@3: scope:[div8u] from div8u::@2 div8u::@5 - [76] (byte) div8u::return#0 ← phi( div8u::@2/(byte) div8u::quotient#1 div8u::@5/(byte) div8u::quotient#2 ) [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ) - [76] (byte) div8u::rem#8 ← phi( div8u::@2/(byte) div8u::rem#5 div8u::@5/(byte) div8u::rem#3 ) [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ) - [77] (byte) div8u::i#1 ← ++ (byte) div8u::i#2 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) - [78] if((byte) div8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto div8u::@1 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) + [130] (byte) div8u::return#0 ← phi( div8u::@2/(byte) div8u::quotient#1 div8u::@5/(byte) div8u::quotient#2 ) [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ) + [130] (byte) div8u::rem#8 ← phi( div8u::@2/(byte) div8u::rem#5 div8u::@5/(byte) div8u::rem#3 ) [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ) + [131] (byte) div8u::i#1 ← ++ (byte) div8u::i#2 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) + [132] if((byte) div8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto div8u::@1 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) to:div8u::@6 div8u::@6: scope:[div8u] from div8u::@3 - [79] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) + [133] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) to:div8u::@return div8u::@return: scope:[div8u] from div8u::@6 - [80] return [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) + [134] return [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) to:@return test_8s: scope:[test_8s] from main::@1 - [81] phi() [ test_8u::rem#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 ] ) + [135] phi() [ test_8u::rem#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 ] ) to:test_8s::@1 test_8s::@1: scope:[test_8s] from test_8s test_8s::@12 - [82] (byte*) line_cursor#30 ← phi( test_8s/(const byte*) SCREEN#0 test_8s::@12/(byte*) line_cursor#1 ) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ) - [82] (byte*) char_cursor#81 ← phi( test_8s/(const byte*) SCREEN#0 test_8s::@12/(byte*~) char_cursor#100 ) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ) - [82] (signed byte) rem8s#18 ← phi( test_8s/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8s::@12/(signed byte) rem8s#3 ) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ) - [82] (byte) test_8s::i#10 ← phi( test_8s/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8s::@12/(byte) test_8s::i#1 ) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ) - [83] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ) - [84] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ) - [85] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ) - [86] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ) - [87] call div8s param-assignment [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ) - [88] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ) + [136] (byte*) line_cursor#37 ← phi( test_8s/(const byte*) SCREEN#0 test_8s::@12/(byte*) line_cursor#1 ) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ) + [136] (byte*) char_cursor#109 ← phi( test_8s/(const byte*) SCREEN#0 test_8s::@12/(byte*~) char_cursor#137 ) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ) + [136] (signed byte) rem8s#18 ← phi( test_8s/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8s::@12/(signed byte) rem8s#3 ) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ) + [136] (byte) test_8s::i#10 ← phi( test_8s/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8s::@12/(byte) test_8s::i#1 ) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ) + [137] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ) + [138] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ) + [139] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ) + [140] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ) + [141] call div8s param-assignment [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ) + [142] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ) to:test_8s::@3 test_8s::@3: scope:[test_8s] from test_8s::@1 - [89] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) - [90] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ) - [91] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + [143] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + [144] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ) + [145] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) to:test_8s::@4 test_8s::@4: scope:[test_8s] from test_8s::@3 - [92] phi() [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) - [93] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + [146] phi() [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + [147] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) to:test_8s::@5 test_8s::@5: scope:[test_8s] from test_8s::@4 - [94] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ) - [95] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) + [148] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ) + [149] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) to:test_8s::@6 test_8s::@6: scope:[test_8s] from test_8s::@5 - [96] phi() [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) - [97] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) + [150] phi() [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) + [151] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) to:test_8s::@7 test_8s::@7: scope:[test_8s] from test_8s::@6 - [98] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ) - [99] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + [152] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ) + [153] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) to:test_8s::@8 test_8s::@8: scope:[test_8s] from test_8s::@7 - [100] phi() [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - [101] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + [154] phi() [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + [155] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) to:test_8s::@9 test_8s::@9: scope:[test_8s] from test_8s::@8 - [102] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ) - [103] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + [156] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ) + [157] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) to:test_8s::@10 test_8s::@10: scope:[test_8s] from test_8s::@9 - [104] phi() [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - [105] call print_ln param-assignment [ test_8u::rem#0 line_cursor#1 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + [158] phi() [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + [159] call print_ln param-assignment [ line_cursor#1 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) to:test_8s::@11 test_8s::@11: scope:[test_8s] from test_8s::@10 - [106] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) - [107] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@12 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) + [160] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) + [161] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@12 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) to:test_8s::@return test_8s::@return: scope:[test_8s] from test_8s::@11 - [108] return [ line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 div8s::rem8u#0 ] ) + [162] return [ line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 div8s::rem8u#0 ] ) to:@return test_8s::@12: scope:[test_8s] from test_8s::@11 - [109] (byte*~) char_cursor#100 ← (byte*) line_cursor#1 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ) + [163] (byte*~) char_cursor#137 ← (byte*) line_cursor#1 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ) to:test_8s::@1 print_sbyte: scope:[print_sbyte] from test_8s::@3 test_8s::@5 test_8s::@7 test_8s::@9 - [110] (byte*) char_cursor#77 ← phi( test_8s::@3/(byte*) char_cursor#81 test_8s::@5/(byte*) char_cursor#2 test_8s::@7/(byte*) char_cursor#2 test_8s::@9/(byte*) char_cursor#2 ) [ char_cursor#77 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] ) - [110] (signed byte) print_sbyte::b#5 ← phi( test_8s::@3/(signed byte) print_sbyte::b#1 test_8s::@5/(signed byte) print_sbyte::b#2 test_8s::@7/(signed byte) print_sbyte::b#3 test_8s::@9/(signed byte) print_sbyte::b#4 ) [ char_cursor#77 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] ) - [111] if((signed byte) print_sbyte::b#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#77 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] ) + [164] (byte*) char_cursor#103 ← phi( test_8s::@3/(byte*) char_cursor#109 test_8s::@5/(byte*) char_cursor#100 test_8s::@7/(byte*) char_cursor#100 test_8s::@9/(byte*) char_cursor#100 ) [ char_cursor#103 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] ) + [164] (signed byte) print_sbyte::b#5 ← phi( test_8s::@3/(signed byte) print_sbyte::b#1 test_8s::@5/(signed byte) print_sbyte::b#2 test_8s::@7/(signed byte) print_sbyte::b#3 test_8s::@9/(signed byte) print_sbyte::b#4 ) [ char_cursor#103 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] ) + [165] if((signed byte) print_sbyte::b#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#103 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] ) to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte - [112] phi() [ char_cursor#77 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] ) - [113] call print_char param-assignment [ char_cursor#11 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] ) + [166] phi() [ char_cursor#103 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] ) + [167] call print_char param-assignment [ char_cursor#14 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] ) to:print_sbyte::@4 print_sbyte::@4: scope:[print_sbyte] from print_sbyte::@2 - [114] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#11 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] ) + [168] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#14 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] ) to:print_sbyte::@1 print_sbyte::@1: scope:[print_sbyte] from print_sbyte print_sbyte::@4 - [115] (byte*) char_cursor#76 ← phi( print_sbyte/(byte*) char_cursor#77 print_sbyte::@4/(byte*) char_cursor#11 ) [ char_cursor#76 print_sbyte::b#6 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] ) - [115] (signed byte) print_sbyte::b#6 ← phi( print_sbyte/(signed byte) print_sbyte::b#5 print_sbyte::@4/(signed byte) print_sbyte::b#0 ) [ char_cursor#76 print_sbyte::b#6 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] ) - [116] (byte~) print_byte::b#7 ← (byte)(signed byte) print_sbyte::b#6 [ print_byte::b#7 char_cursor#76 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] ) - [117] call print_byte param-assignment [ char_cursor#11 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + [169] (byte*) char_cursor#102 ← phi( print_sbyte/(byte*) char_cursor#103 print_sbyte::@4/(byte*) char_cursor#14 ) [ char_cursor#102 print_sbyte::b#6 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] ) + [169] (signed byte) print_sbyte::b#6 ← phi( print_sbyte/(signed byte) print_sbyte::b#5 print_sbyte::@4/(signed byte) print_sbyte::b#0 ) [ char_cursor#102 print_sbyte::b#6 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] ) + [170] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#6 [ print_byte::b#9 char_cursor#102 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] ) + [171] call print_byte param-assignment [ char_cursor#14 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@1 - [118] return [ char_cursor#11 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + [172] return [ char_cursor#14 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) to:@return div8s: scope:[div8s] from test_8s::@1 - [119] if((signed byte) div8s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@16 [ test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ) + [173] if((signed byte) div8s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@16 [ test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ) to:div8s::@7 div8s::@7: scope:[div8s] from div8s - [120] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) - [121] (byte~) div8s::dividendb#8 ← (byte)(signed byte~) div8s::$2 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ) + [174] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) + [175] (byte~) div8s::dividendb#8 ← (byte)(signed byte~) div8s::$2 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ) to:div8s::@2 div8s::@2: scope:[div8s] from div8s::@16 div8s::@7 - [122] (byte) div8s::dividendb#3 ← phi( div8s::@16/(byte~) div8s::dividendb#7 div8s::@7/(byte~) div8s::dividendb#8 ) [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) - [122] (byte) div8s::neg#3 ← phi( div8s::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 div8s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) - [123] if((signed byte) div8s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@17 [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) + [176] (byte) div8s::dividendb#3 ← phi( div8s::@16/(byte~) div8s::dividendb#7 div8s::@7/(byte~) div8s::dividendb#8 ) [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) + [176] (byte) div8s::neg#3 ← phi( div8s::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 div8s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) + [177] if((signed byte) div8s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@17 [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) to:div8s::@9 div8s::@9: scope:[div8s] from div8s::@2 - [124] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) - [125] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) - [126] (byte~) div8s::divisorb#5 ← (byte)(signed byte~) div8s::$7 [ test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ) + [178] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) + [179] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) + [180] (byte~) div8s::divisorb#5 ← (byte)(signed byte~) div8s::$7 [ test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ) to:div8s::@4 div8s::@4: scope:[div8s] from div8s::@17 div8s::@9 - [127] (byte) div8s::neg#4 ← phi( div8s::@17/(byte) div8s::neg#3 div8s::@9/(byte) div8s::neg#2 ) [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ) - [127] (byte) div8s::divisorb#3 ← phi( div8s::@17/(byte~) div8s::divisorb#4 div8s::@9/(byte~) div8s::divisorb#5 ) [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ) - [128] (byte) div8s::rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) - [129] (byte) div8u::dividend#1 ← (byte) div8s::dividendb#3 [ test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) - [130] (byte) div8u::divisor#0 ← (byte) div8s::divisorb#3 [ test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ) - [131] call div8u param-assignment [ test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ) - [132] (byte) div8u::return#2 ← (byte) div8u::return#0 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ) + [181] (byte) div8s::neg#4 ← phi( div8s::@17/(byte) div8s::neg#3 div8s::@9/(byte) div8s::neg#2 ) [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ) + [181] (byte) div8s::divisorb#3 ← phi( div8s::@17/(byte~) div8s::divisorb#4 div8s::@9/(byte~) div8s::divisorb#5 ) [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ) + [182] (byte) div8s::rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) + [183] (byte) div8u::dividend#1 ← (byte) div8s::dividendb#3 [ test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) + [184] (byte) div8u::divisor#0 ← (byte) div8s::divisorb#3 [ test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ) + [185] call div8u param-assignment [ test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ) + [186] (byte) div8u::return#2 ← (byte) div8u::return#0 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ) to:div8s::@15 div8s::@15: scope:[div8s] from div8s::@4 - [133] (byte) div8s::resultb#0 ← (byte) div8u::return#2 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ) - [134] if((byte) div8s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@5 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ) + [187] (byte) div8s::resultb#0 ← (byte) div8u::return#2 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ) + [188] if((byte) div8s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@5 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ) to:div8s::@18 div8s::@18: scope:[div8s] from div8s::@15 - [135] (signed byte~) div8s::return#6 ← (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ) - [136] (signed byte~) rem8s#30 ← (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#30 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#30 ] ) + [189] (signed byte~) div8s::return#6 ← (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ) + [190] (signed byte~) rem8s#32 ← (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#32 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#32 ] ) to:div8s::@return div8s::@return: scope:[div8s] from div8s::@18 div8s::@5 - [137] (signed byte) rem8s#3 ← phi( div8s::@18/(signed byte~) rem8s#30 div8s::@5/(signed byte) rem8s#1 ) [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) - [137] (signed byte) div8s::return#2 ← phi( div8s::@18/(signed byte~) div8s::return#6 div8s::@5/(signed byte) div8s::return#0 ) [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) - [138] return [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) + [191] (signed byte) rem8s#3 ← phi( div8s::@18/(signed byte~) rem8s#32 div8s::@5/(signed byte) rem8s#1 ) [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) + [191] (signed byte) div8s::return#2 ← phi( div8s::@18/(signed byte~) div8s::return#6 div8s::@5/(signed byte) div8s::return#0 ) [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) + [192] return [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) to:@return div8s::@5: scope:[div8s] from div8s::@15 - [139] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) - [140] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) + [193] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) + [194] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) to:div8s::@return div8s::@17: scope:[div8s] from div8s::@2 - [141] (byte~) div8s::divisorb#4 ← (byte)(signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ) + [195] (byte~) div8s::divisorb#4 ← (byte)(signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ) to:div8s::@4 div8s::@16: scope:[div8s] from div8s - [142] (byte~) div8s::dividendb#7 ← (byte)(signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ) + [196] (byte~) div8s::dividendb#7 ← (byte)(signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ) to:div8s::@2 print_cls: scope:[print_cls] from main - [143] phi() [ ] ( main:2::print_cls:5 [ test_8u::rem#0 ] ) + [197] phi() [ ] ( main:2::print_cls:5 [ test_8u::rem#0 ] ) to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [144] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) SCREEN#0 print_cls::@1/(byte*) print_cls::sc#1 ) [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) - [145] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) - [146] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) - [147] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) + [198] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) SCREEN#0 print_cls::@1/(byte*) print_cls::sc#1 ) [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) + [199] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) + [200] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) + [201] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 - [148] return [ ] ( main:2::print_cls:5 [ test_8u::rem#0 ] ) + [202] return [ ] ( main:2::print_cls:5 [ test_8u::rem#0 ] ) to:@return diff --git a/src/test/java/dk/camelot64/kickc/test/ref/test-division.log b/src/test/java/dk/camelot64/kickc/test/ref/test-division.log index 869f5fd7d..3cde5e762 100644 --- a/src/test/java/dk/camelot64/kickc/test/ref/test-division.log +++ b/src/test/java/dk/camelot64/kickc/test/ref/test-division.log @@ -7,7 +7,7 @@ void main() { print_cls(); test_8s(); test_8u(); - //test_16u(); + test_16u(); } void test_16u() { @@ -452,6 +452,7 @@ proc (void()) main() (void~) main::$0 ← call print_cls (void~) main::$1 ← call test_8s (void~) main::$2 ← call test_8u + (void~) main::$3 ← call test_16u main::@return: return endproc // main() @@ -622,6 +623,7 @@ SYMBOLS (void~) main::$0 (void~) main::$1 (void~) main::$2 +(void~) main::$3 (label) main::@return (void()) print_byte((byte) print_byte::b) (byte~) print_byte::$0 @@ -1058,6 +1060,7 @@ main: scope:[main] from (void~) main::$0 ← call print_cls (void~) main::$1 ← call test_8s (void~) main::$2 ← call test_8u + (void~) main::$3 ← call test_16u to:main::@return main::@return: scope:[main] from main return @@ -1162,17 +1165,24 @@ test_8s::@return: scope:[test_8s] from test_8s::@2 @end: scope:[] from @15 Removing unused procedure print_sword -Removing unused procedure test_16u -Removing unused procedure print_word -Removing unused procedure div16u Eliminating unused variable - keeping the call (void~) print_sbyte::$5 Eliminating unused variable - keeping the call (void~) print_sbyte::$2 +Eliminating unused variable - keeping the call (void~) print_word::$1 +Eliminating unused variable - keeping the call (void~) print_word::$3 Eliminating unused variable - keeping the call (void~) print_byte::$1 Eliminating unused variable - keeping the call (void~) print_byte::$3 -Eliminating unused variable (word) rem16u and assignment [111] (word) rem16u ← (byte/signed byte/word/signed word/dword/signed dword) 0 Eliminating unused variable - keeping the call (void~) main::$0 Eliminating unused variable - keeping the call (void~) main::$1 Eliminating unused variable - keeping the call (void~) main::$2 +Eliminating unused variable - keeping the call (void~) main::$3 +Eliminating unused variable - keeping the call (void~) test_16u::$1 +Eliminating unused variable - keeping the call (void~) test_16u::$2 +Eliminating unused variable - keeping the call (void~) test_16u::$3 +Eliminating unused variable - keeping the call (void~) test_16u::$4 +Eliminating unused variable - keeping the call (void~) test_16u::$5 +Eliminating unused variable - keeping the call (void~) test_16u::$6 +Eliminating unused variable - keeping the call (void~) test_16u::$7 +Eliminating unused variable - keeping the call (void~) test_16u::$8 Eliminating unused variable - keeping the call (void~) test_8u::$2 Eliminating unused variable - keeping the call (void~) test_8u::$3 Eliminating unused variable - keeping the call (void~) test_8u::$4 @@ -1190,6 +1200,9 @@ Eliminating unused variable - keeping the call (void~) test_8s::$10 Eliminating unused variable - keeping the call (void~) test_8s::$11 Eliminating unused variable - keeping the call (void~) test_8s::$12 Creating constant string variable for inline (const string) print_byte::$4 "0123456789abcdef" +Creating constant string variable for inline (const string) test_16u::str " / @" +Creating constant string variable for inline (const string) test_16u::str1 " = @" +Creating constant string variable for inline (const string) test_16u::str2 " @" Creating constant string variable for inline (const string) test_8u::str " / @" Creating constant string variable for inline (const string) test_8u::str1 " = @" Creating constant string variable for inline (const string) test_8u::str2 " @" @@ -1215,9 +1228,10 @@ Removing empty block div8s::@12 Removing empty block div8s::@6 Removing empty block div8s::@13 Removing empty block div8s::@14 -Removing empty block @10 +Removing empty block div16u::@7 Removing empty block @11 Removing empty block @12 +Removing empty block test_16u::@2 Removing empty block @13 Removing empty block test_8u::@2 Removing empty block @14 @@ -1227,14 +1241,20 @@ print_str modifies char_cursor print_ln modifies line_cursor print_ln modifies char_cursor print_sbyte modifies char_cursor +print_word modifies char_cursor print_byte modifies char_cursor print_char modifies char_cursor print_cls modifies line_cursor print_cls modifies char_cursor div8s modifies rem8s +div16u modifies rem16u main modifies line_cursor main modifies char_cursor main modifies rem8s +main modifies rem16u +test_16u modifies rem16u +test_16u modifies char_cursor +test_16u modifies line_cursor test_8u modifies char_cursor test_8u modifies line_cursor test_8s modifies rem8s @@ -1259,121 +1279,145 @@ CONTROL FLOW GRAPH SSA WITH ASSIGNMENT CALL & RETURN (byte*) line_cursor#0 ← (byte*) SCREEN#0 (byte*) char_cursor#0 ← (byte*) line_cursor#0 to:@9 -print_str: scope:[print_str] from test_8s::@4 test_8s::@6 test_8s::@8 test_8u::@4 test_8u::@6 test_8u::@8 - (byte*) char_cursor#83 ← phi( test_8s::@4/(byte*) char_cursor#28 test_8s::@6/(byte*) char_cursor#30 test_8s::@8/(byte*) char_cursor#32 test_8u::@4/(byte*) char_cursor#19 test_8u::@6/(byte*) char_cursor#21 test_8u::@8/(byte*) char_cursor#23 ) - (byte*) print_str::str#9 ← phi( test_8s::@4/(byte*) print_str::str#4 test_8s::@6/(byte*) print_str::str#5 test_8s::@8/(byte*) print_str::str#6 test_8u::@4/(byte*) print_str::str#1 test_8u::@6/(byte*) print_str::str#2 test_8u::@8/(byte*) print_str::str#3 ) +print_str: scope:[print_str] from test_16u::@4 test_16u::@6 test_16u::@8 test_8s::@4 test_8s::@6 test_8s::@8 test_8u::@4 test_8u::@6 test_8u::@8 + (byte*) char_cursor#111 ← phi( test_16u::@4/(byte*) char_cursor#23 test_16u::@6/(byte*) char_cursor#25 test_16u::@8/(byte*) char_cursor#27 test_8s::@4/(byte*) char_cursor#41 test_8s::@6/(byte*) char_cursor#43 test_8s::@8/(byte*) char_cursor#45 test_8u::@4/(byte*) char_cursor#32 test_8u::@6/(byte*) char_cursor#34 test_8u::@8/(byte*) char_cursor#36 ) + (byte*) print_str::str#12 ← phi( test_16u::@4/(byte*) print_str::str#1 test_16u::@6/(byte*) print_str::str#2 test_16u::@8/(byte*) print_str::str#3 test_8s::@4/(byte*) print_str::str#7 test_8s::@6/(byte*) print_str::str#8 test_8s::@8/(byte*) print_str::str#9 test_8u::@4/(byte*) print_str::str#4 test_8u::@6/(byte*) print_str::str#5 test_8u::@8/(byte*) print_str::str#6 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - (byte*) char_cursor#74 ← phi( print_str/(byte*) char_cursor#83 print_str::@2/(byte*) char_cursor#1 ) - (byte*) print_str::str#7 ← phi( print_str/(byte*) print_str::str#9 print_str::@2/(byte*) print_str::str#0 ) - (boolean~) print_str::$0 ← *((byte*) print_str::str#7) != (byte) '@' + (byte*) char_cursor#100 ← phi( print_str/(byte*) char_cursor#111 print_str::@2/(byte*) char_cursor#1 ) + (byte*) print_str::str#10 ← phi( print_str/(byte*) print_str::str#12 print_str::@2/(byte*) print_str::str#0 ) + (boolean~) print_str::$0 ← *((byte*) print_str::str#10) != (byte) '@' if((boolean~) print_str::$0) goto print_str::@2 to:print_str::@return print_str::@2: scope:[print_str] from print_str::@1 - (byte*) char_cursor#38 ← phi( print_str::@1/(byte*) char_cursor#74 ) - (byte*) print_str::str#8 ← phi( print_str::@1/(byte*) print_str::str#7 ) - *((byte*) char_cursor#38) ← *((byte*) print_str::str#8) - (byte*) char_cursor#1 ← ++ (byte*) char_cursor#38 - (byte*) print_str::str#0 ← ++ (byte*) print_str::str#8 + (byte*) char_cursor#51 ← phi( print_str::@1/(byte*) char_cursor#100 ) + (byte*) print_str::str#11 ← phi( print_str::@1/(byte*) print_str::str#10 ) + *((byte*) char_cursor#51) ← *((byte*) print_str::str#11) + (byte*) char_cursor#1 ← ++ (byte*) char_cursor#51 + (byte*) print_str::str#0 ← ++ (byte*) print_str::str#11 to:print_str::@1 print_str::@return: scope:[print_str] from print_str::@1 - (byte*) char_cursor#39 ← phi( print_str::@1/(byte*) char_cursor#74 ) - (byte*) char_cursor#2 ← (byte*) char_cursor#39 + (byte*) char_cursor#52 ← phi( print_str::@1/(byte*) char_cursor#100 ) + (byte*) char_cursor#2 ← (byte*) char_cursor#52 return to:@return -print_ln: scope:[print_ln] from test_8s::@10 test_8u::@10 - (byte*) char_cursor#75 ← phi( test_8s::@10/(byte*) char_cursor#34 test_8u::@10/(byte*) char_cursor#25 ) - (byte*) line_cursor#27 ← phi( test_8s::@10/(byte*) line_cursor#30 test_8u::@10/(byte*) line_cursor#29 ) +print_ln: scope:[print_ln] from test_16u::@10 test_8s::@10 test_8u::@10 + (byte*) char_cursor#101 ← phi( test_16u::@10/(byte*) char_cursor#29 test_8s::@10/(byte*) char_cursor#47 test_8u::@10/(byte*) char_cursor#38 ) + (byte*) line_cursor#33 ← phi( test_16u::@10/(byte*) line_cursor#35 test_8s::@10/(byte*) line_cursor#37 test_8u::@10/(byte*) line_cursor#36 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - (byte*) char_cursor#40 ← phi( print_ln/(byte*) char_cursor#75 print_ln::@1/(byte*) char_cursor#40 ) - (byte*) line_cursor#14 ← phi( print_ln/(byte*) line_cursor#27 print_ln::@1/(byte*) line_cursor#1 ) - (byte*~) print_ln::$0 ← (byte*) line_cursor#14 + (byte/signed byte/word/signed word/dword/signed dword) 40 + (byte*) char_cursor#53 ← phi( print_ln/(byte*) char_cursor#101 print_ln::@1/(byte*) char_cursor#53 ) + (byte*) line_cursor#17 ← phi( print_ln/(byte*) line_cursor#33 print_ln::@1/(byte*) line_cursor#1 ) + (byte*~) print_ln::$0 ← (byte*) line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 (byte*) line_cursor#1 ← (byte*~) print_ln::$0 - (boolean~) print_ln::$1 ← (byte*) line_cursor#1 < (byte*) char_cursor#40 + (boolean~) print_ln::$1 ← (byte*) line_cursor#1 < (byte*) char_cursor#53 if((boolean~) print_ln::$1) goto print_ln::@1 to:print_ln::@2 print_ln::@2: scope:[print_ln] from print_ln::@1 - (byte*) line_cursor#15 ← phi( print_ln::@1/(byte*) line_cursor#1 ) - (byte*) char_cursor#3 ← (byte*) line_cursor#15 + (byte*) line_cursor#18 ← phi( print_ln::@1/(byte*) line_cursor#1 ) + (byte*) char_cursor#3 ← (byte*) line_cursor#18 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@2 - (byte*) char_cursor#41 ← phi( print_ln::@2/(byte*) char_cursor#3 ) - (byte*) line_cursor#16 ← phi( print_ln::@2/(byte*) line_cursor#15 ) - (byte*) line_cursor#2 ← (byte*) line_cursor#16 - (byte*) char_cursor#4 ← (byte*) char_cursor#41 + (byte*) char_cursor#54 ← phi( print_ln::@2/(byte*) char_cursor#3 ) + (byte*) line_cursor#19 ← phi( print_ln::@2/(byte*) line_cursor#18 ) + (byte*) line_cursor#2 ← (byte*) line_cursor#19 + (byte*) char_cursor#4 ← (byte*) char_cursor#54 return to:@return print_sbyte: scope:[print_sbyte] from test_8s::@3 test_8s::@5 test_8s::@7 test_8s::@9 - (byte*) char_cursor#84 ← phi( test_8s::@3/(byte*) char_cursor#81 test_8s::@5/(byte*) char_cursor#29 test_8s::@7/(byte*) char_cursor#31 test_8s::@9/(byte*) char_cursor#33 ) + (byte*) char_cursor#112 ← phi( test_8s::@3/(byte*) char_cursor#109 test_8s::@5/(byte*) char_cursor#42 test_8s::@7/(byte*) char_cursor#44 test_8s::@9/(byte*) char_cursor#46 ) (signed byte) print_sbyte::b#5 ← phi( test_8s::@3/(signed byte) print_sbyte::b#1 test_8s::@5/(signed byte) print_sbyte::b#2 test_8s::@7/(signed byte) print_sbyte::b#3 test_8s::@9/(signed byte) print_sbyte::b#4 ) (boolean~) print_sbyte::$0 ← (signed byte) print_sbyte::b#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) print_sbyte::$1 ← ! (boolean~) print_sbyte::$0 if((boolean~) print_sbyte::$1) goto print_sbyte::@1 to:print_sbyte::@2 print_sbyte::@1: scope:[print_sbyte] from print_sbyte print_sbyte::@4 - (byte*) char_cursor#76 ← phi( print_sbyte/(byte*) char_cursor#84 print_sbyte::@4/(byte*) char_cursor#6 ) + (byte*) char_cursor#102 ← phi( print_sbyte/(byte*) char_cursor#112 print_sbyte::@4/(byte*) char_cursor#6 ) (signed byte) print_sbyte::b#6 ← phi( print_sbyte/(signed byte) print_sbyte::b#5 print_sbyte::@4/(signed byte) print_sbyte::b#0 ) (byte~) print_sbyte::$4 ← ((byte)) (signed byte) print_sbyte::b#6 (byte) print_byte::b#0 ← (byte~) print_sbyte::$4 call print_byte param-assignment to:print_sbyte::@3 print_sbyte::@3: scope:[print_sbyte] from print_sbyte::@1 - (byte*) char_cursor#42 ← phi( print_sbyte::@1/(byte*) char_cursor#10 ) - (byte*) char_cursor#5 ← (byte*) char_cursor#42 + (byte*) char_cursor#55 ← phi( print_sbyte::@1/(byte*) char_cursor#13 ) + (byte*) char_cursor#5 ← (byte*) char_cursor#55 to:print_sbyte::@return print_sbyte::@2: scope:[print_sbyte] from print_sbyte (signed byte) print_sbyte::b#8 ← phi( print_sbyte/(signed byte) print_sbyte::b#5 ) - (byte*) char_cursor#77 ← phi( print_sbyte/(byte*) char_cursor#84 ) + (byte*) char_cursor#103 ← phi( print_sbyte/(byte*) char_cursor#112 ) (byte) print_char::ch#0 ← (byte) '-' call print_char param-assignment to:print_sbyte::@4 print_sbyte::@4: scope:[print_sbyte] from print_sbyte::@2 (signed byte) print_sbyte::b#7 ← phi( print_sbyte::@2/(signed byte) print_sbyte::b#8 ) - (byte*) char_cursor#43 ← phi( print_sbyte::@2/(byte*) char_cursor#12 ) - (byte*) char_cursor#6 ← (byte*) char_cursor#43 + (byte*) char_cursor#56 ← phi( print_sbyte::@2/(byte*) char_cursor#15 ) + (byte*) char_cursor#6 ← (byte*) char_cursor#56 (signed byte~) print_sbyte::$3 ← - (signed byte) print_sbyte::b#7 (signed byte) print_sbyte::b#0 ← (signed byte~) print_sbyte::$3 to:print_sbyte::@1 print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@3 - (byte*) char_cursor#44 ← phi( print_sbyte::@3/(byte*) char_cursor#5 ) - (byte*) char_cursor#7 ← (byte*) char_cursor#44 + (byte*) char_cursor#57 ← phi( print_sbyte::@3/(byte*) char_cursor#5 ) + (byte*) char_cursor#7 ← (byte*) char_cursor#57 return to:@return -print_byte: scope:[print_byte] from print_sbyte::@1 test_8u::@3 test_8u::@5 test_8u::@7 test_8u::@9 - (byte*) char_cursor#78 ← phi( print_sbyte::@1/(byte*) char_cursor#76 test_8u::@3/(byte*) char_cursor#80 test_8u::@5/(byte*) char_cursor#20 test_8u::@7/(byte*) char_cursor#22 test_8u::@9/(byte*) char_cursor#24 ) - (byte) print_byte::b#5 ← phi( print_sbyte::@1/(byte) print_byte::b#0 test_8u::@3/(byte) print_byte::b#1 test_8u::@5/(byte) print_byte::b#2 test_8u::@7/(byte) print_byte::b#3 test_8u::@9/(byte) print_byte::b#4 ) +print_word: scope:[print_word] from test_16u::@3 test_16u::@5 test_16u::@7 test_16u::@9 + (byte*) char_cursor#104 ← phi( test_16u::@3/(byte*) char_cursor#107 test_16u::@5/(byte*) char_cursor#24 test_16u::@7/(byte*) char_cursor#26 test_16u::@9/(byte*) char_cursor#28 ) + (word) print_word::w#4 ← phi( test_16u::@3/(word) print_word::w#0 test_16u::@5/(word) print_word::w#1 test_16u::@7/(word) print_word::w#2 test_16u::@9/(word) print_word::w#3 ) + (byte~) print_word::$0 ← > (word) print_word::w#4 + (byte) print_byte::b#1 ← (byte~) print_word::$0 + call print_byte param-assignment + to:print_word::@1 +print_word::@1: scope:[print_word] from print_word + (word) print_word::w#5 ← phi( print_word/(word) print_word::w#4 ) + (byte*) char_cursor#58 ← phi( print_word/(byte*) char_cursor#13 ) + (byte*) char_cursor#8 ← (byte*) char_cursor#58 + (byte~) print_word::$2 ← < (word) print_word::w#5 + (byte) print_byte::b#2 ← (byte~) print_word::$2 + call print_byte param-assignment + to:print_word::@2 +print_word::@2: scope:[print_word] from print_word::@1 + (byte*) char_cursor#59 ← phi( print_word::@1/(byte*) char_cursor#13 ) + (byte*) char_cursor#9 ← (byte*) char_cursor#59 + to:print_word::@return +print_word::@return: scope:[print_word] from print_word::@2 + (byte*) char_cursor#60 ← phi( print_word::@2/(byte*) char_cursor#9 ) + (byte*) char_cursor#10 ← (byte*) char_cursor#60 + return + to:@return +print_byte: scope:[print_byte] from print_sbyte::@1 print_word print_word::@1 test_8u::@3 test_8u::@5 test_8u::@7 test_8u::@9 + (byte*) char_cursor#105 ← phi( print_sbyte::@1/(byte*) char_cursor#102 print_word/(byte*) char_cursor#104 print_word::@1/(byte*) char_cursor#8 test_8u::@3/(byte*) char_cursor#108 test_8u::@5/(byte*) char_cursor#33 test_8u::@7/(byte*) char_cursor#35 test_8u::@9/(byte*) char_cursor#37 ) + (byte) print_byte::b#7 ← phi( print_sbyte::@1/(byte) print_byte::b#0 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 test_8u::@3/(byte) print_byte::b#3 test_8u::@5/(byte) print_byte::b#4 test_8u::@7/(byte) print_byte::b#5 test_8u::@9/(byte) print_byte::b#6 ) (byte[]) print_byte::hextab#0 ← (const string) print_byte::$4 - (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 (byte) print_char::ch#1 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$0) call print_char param-assignment to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - (byte) print_byte::b#6 ← phi( print_byte/(byte) print_byte::b#5 ) - (byte*) char_cursor#45 ← phi( print_byte/(byte*) char_cursor#12 ) - (byte*) char_cursor#8 ← (byte*) char_cursor#45 - (byte~) print_byte::$2 ← (byte) print_byte::b#6 & (byte/signed byte/word/signed word/dword/signed dword) 15 + (byte) print_byte::b#8 ← phi( print_byte/(byte) print_byte::b#7 ) + (byte*) char_cursor#61 ← phi( print_byte/(byte*) char_cursor#15 ) + (byte*) char_cursor#11 ← (byte*) char_cursor#61 + (byte~) print_byte::$2 ← (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) 15 (byte) print_char::ch#2 ← *((byte[]) print_byte::hextab#0 + (byte~) print_byte::$2) call print_char param-assignment to:print_byte::@2 print_byte::@2: scope:[print_byte] from print_byte::@1 - (byte*) char_cursor#46 ← phi( print_byte::@1/(byte*) char_cursor#12 ) - (byte*) char_cursor#9 ← (byte*) char_cursor#46 + (byte*) char_cursor#62 ← phi( print_byte::@1/(byte*) char_cursor#15 ) + (byte*) char_cursor#12 ← (byte*) char_cursor#62 to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@2 - (byte*) char_cursor#47 ← phi( print_byte::@2/(byte*) char_cursor#9 ) - (byte*) char_cursor#10 ← (byte*) char_cursor#47 + (byte*) char_cursor#63 ← phi( print_byte::@2/(byte*) char_cursor#12 ) + (byte*) char_cursor#13 ← (byte*) char_cursor#63 return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@2 - (byte*) char_cursor#48 ← phi( print_byte/(byte*) char_cursor#78 print_byte::@1/(byte*) char_cursor#8 print_sbyte::@2/(byte*) char_cursor#77 ) + (byte*) char_cursor#64 ← phi( print_byte/(byte*) char_cursor#105 print_byte::@1/(byte*) char_cursor#11 print_sbyte::@2/(byte*) char_cursor#103 ) (byte) print_char::ch#3 ← phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sbyte::@2/(byte) print_char::ch#0 ) - *((byte*) char_cursor#48) ← (byte) print_char::ch#3 - (byte*) char_cursor#11 ← ++ (byte*) char_cursor#48 + *((byte*) char_cursor#64) ← (byte) print_char::ch#3 + (byte*) char_cursor#14 ← ++ (byte*) char_cursor#64 to:print_char::@return print_char::@return: scope:[print_char] from print_char - (byte*) char_cursor#49 ← phi( print_char/(byte*) char_cursor#11 ) - (byte*) char_cursor#12 ← (byte*) char_cursor#49 + (byte*) char_cursor#65 ← phi( print_char/(byte*) char_cursor#14 ) + (byte*) char_cursor#15 ← (byte*) char_cursor#65 return to:@return print_cls: scope:[print_cls] from main @@ -1389,13 +1433,13 @@ print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 to:print_cls::@2 print_cls::@2: scope:[print_cls] from print_cls::@1 (byte*) line_cursor#3 ← (byte*) SCREEN#0 - (byte*) char_cursor#13 ← (byte*) line_cursor#3 + (byte*) char_cursor#16 ← (byte*) line_cursor#3 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 - (byte*) char_cursor#50 ← phi( print_cls::@2/(byte*) char_cursor#13 ) - (byte*) line_cursor#17 ← phi( print_cls::@2/(byte*) line_cursor#3 ) - (byte*) line_cursor#4 ← (byte*) line_cursor#17 - (byte*) char_cursor#14 ← (byte*) char_cursor#50 + (byte*) char_cursor#66 ← phi( print_cls::@2/(byte*) char_cursor#16 ) + (byte*) line_cursor#20 ← phi( print_cls::@2/(byte*) line_cursor#3 ) + (byte*) line_cursor#4 ← (byte*) line_cursor#20 + (byte*) char_cursor#17 ← (byte*) char_cursor#66 return to:@return div8u: scope:[div8u] from div8s::@4 test_8u::@1 @@ -1479,10 +1523,10 @@ div8u::@return: scope:[div8u] from div8u::@6 return to:@return @9: scope:[] from @begin - (byte*) char_cursor#87 ← phi( @begin/(byte*) char_cursor#0 ) - (byte*) line_cursor#34 ← phi( @begin/(byte*) line_cursor#0 ) + (byte*) char_cursor#117 ← phi( @begin/(byte*) char_cursor#0 ) + (byte*) line_cursor#43 ← phi( @begin/(byte*) line_cursor#0 ) (signed byte) rem8s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 - to:@15 + to:@10 div8s: scope:[div8s] from test_8s::@1 (signed byte) div8s::divisor#6 ← phi( test_8s::@1/(signed byte) div8s::divisor#0 ) (signed byte) div8s::dividend#1 ← phi( test_8s::@1/(signed byte) div8s::dividend#0 ) @@ -1580,56 +1624,277 @@ div8s::@return: scope:[div8s] from div8s::@11 div8s::@5 (signed byte) rem8s#3 ← (signed byte) rem8s#9 return to:@return +@10: scope:[] from @9 + (signed byte) rem8s#27 ← phi( @9/(signed byte) rem8s#0 ) + (byte*) char_cursor#116 ← phi( @9/(byte*) char_cursor#117 ) + (byte*) line_cursor#42 ← phi( @9/(byte*) line_cursor#43 ) + (word) rem16u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:@15 +div16u: scope:[div16u] from test_16u::@1 + (word) div16u::divisor#5 ← phi( test_16u::@1/(word) div16u::divisor#0 ) + (word) div16u::dividend#4 ← phi( test_16u::@1/(word) div16u::dividend#1 ) + (word) div16u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) div16u::quotient#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) div16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:div16u::@1 +div16u::@1: scope:[div16u] from div16u div16u::@3 + (byte) div16u::i#5 ← phi( div16u/(byte) div16u::i#0 div16u::@3/(byte) div16u::i#1 ) + (word) div16u::divisor#3 ← phi( div16u/(word) div16u::divisor#5 div16u::@3/(word) div16u::divisor#6 ) + (word) div16u::quotient#6 ← phi( div16u/(word) div16u::quotient#0 div16u::@3/(word) div16u::quotient#8 ) + (word) div16u::dividend#2 ← phi( div16u/(word) div16u::dividend#4 div16u::@3/(word) div16u::dividend#5 ) + (word) div16u::rem#4 ← phi( div16u/(word) div16u::rem#0 div16u::@3/(word) div16u::rem#9 ) + (word~) div16u::$0 ← (word) div16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) div16u::rem#1 ← (word~) div16u::$0 + (byte~) div16u::$1 ← > (word) div16u::dividend#2 + (byte~) div16u::$2 ← (byte~) div16u::$1 & (byte/word/signed word/dword/signed dword) 128 + (boolean~) div16u::$3 ← (byte~) div16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (boolean~) div16u::$4 ← ! (boolean~) div16u::$3 + if((boolean~) div16u::$4) goto div16u::@2 + to:div16u::@4 +div16u::@2: scope:[div16u] from div16u::@1 div16u::@4 + (byte) div16u::i#3 ← phi( div16u::@1/(byte) div16u::i#5 div16u::@4/(byte) div16u::i#6 ) + (word) div16u::divisor#1 ← phi( div16u::@1/(word) div16u::divisor#3 div16u::@4/(word) div16u::divisor#4 ) + (word) div16u::rem#5 ← phi( div16u::@1/(word) div16u::rem#1 div16u::@4/(word) div16u::rem#2 ) + (word) div16u::quotient#3 ← phi( div16u::@1/(word) div16u::quotient#6 div16u::@4/(word) div16u::quotient#7 ) + (word) div16u::dividend#3 ← phi( div16u::@1/(word) div16u::dividend#2 div16u::@4/(word) div16u::dividend#6 ) + (word~) div16u::$5 ← (word) div16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) div16u::dividend#0 ← (word~) div16u::$5 + (word~) div16u::$6 ← (word) div16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) div16u::quotient#1 ← (word~) div16u::$6 + (boolean~) div16u::$7 ← (word) div16u::rem#5 >= (word) div16u::divisor#1 + (boolean~) div16u::$8 ← ! (boolean~) div16u::$7 + if((boolean~) div16u::$8) goto div16u::@3 + to:div16u::@5 +div16u::@4: scope:[div16u] from div16u::@1 + (byte) div16u::i#6 ← phi( div16u::@1/(byte) div16u::i#5 ) + (word) div16u::divisor#4 ← phi( div16u::@1/(word) div16u::divisor#3 ) + (word) div16u::quotient#7 ← phi( div16u::@1/(word) div16u::quotient#6 ) + (word) div16u::dividend#6 ← phi( div16u::@1/(word) div16u::dividend#2 ) + (word) div16u::rem#6 ← phi( div16u::@1/(word) div16u::rem#1 ) + (word) div16u::rem#2 ← ++ (word) div16u::rem#6 + to:div16u::@2 +div16u::@3: scope:[div16u] from div16u::@2 div16u::@5 + (word) div16u::divisor#6 ← phi( div16u::@2/(word) div16u::divisor#1 div16u::@5/(word) div16u::divisor#2 ) + (word) div16u::quotient#8 ← phi( div16u::@2/(word) div16u::quotient#1 div16u::@5/(word) div16u::quotient#2 ) + (word) div16u::dividend#5 ← phi( div16u::@2/(word) div16u::dividend#0 div16u::@5/(word) div16u::dividend#7 ) + (word) div16u::rem#9 ← phi( div16u::@2/(word) div16u::rem#5 div16u::@5/(word) div16u::rem#3 ) + (byte) div16u::i#2 ← phi( div16u::@2/(byte) div16u::i#3 div16u::@5/(byte) div16u::i#4 ) + (byte) div16u::i#1 ← ++ (byte) div16u::i#2 + (boolean~) div16u::$10 ← (byte) div16u::i#1 != (byte/signed byte/word/signed word/dword/signed dword) 16 + if((boolean~) div16u::$10) goto div16u::@1 + to:div16u::@6 +div16u::@5: scope:[div16u] from div16u::@2 + (word) div16u::dividend#7 ← phi( div16u::@2/(word) div16u::dividend#0 ) + (byte) div16u::i#4 ← phi( div16u::@2/(byte) div16u::i#3 ) + (word) div16u::divisor#2 ← phi( div16u::@2/(word) div16u::divisor#1 ) + (word) div16u::rem#7 ← phi( div16u::@2/(word) div16u::rem#5 ) + (word) div16u::quotient#4 ← phi( div16u::@2/(word) div16u::quotient#1 ) + (word) div16u::quotient#2 ← ++ (word) div16u::quotient#4 + (word~) div16u::$9 ← (word) div16u::rem#7 - (word) div16u::divisor#2 + (word) div16u::rem#3 ← (word~) div16u::$9 + to:div16u::@3 +div16u::@6: scope:[div16u] from div16u::@3 + (word) div16u::quotient#5 ← phi( div16u::@3/(word) div16u::quotient#8 ) + (word) div16u::rem#8 ← phi( div16u::@3/(word) div16u::rem#9 ) + (word) rem16u#1 ← (word) div16u::rem#8 + (word) div16u::return#0 ← (word) div16u::quotient#5 + to:div16u::@return +div16u::@return: scope:[div16u] from div16u::@6 + (word) rem16u#8 ← phi( div16u::@6/(word) rem16u#1 ) + (word) div16u::return#3 ← phi( div16u::@6/(word) div16u::return#0 ) + (word) div16u::return#1 ← (word) div16u::return#3 + (word) rem16u#2 ← (word) rem16u#8 + return + to:@return main: scope:[main] from @15 + (word) rem16u#26 ← phi( @15/(word) rem16u#19 ) (signed byte) rem8s#22 ← phi( @15/(signed byte) rem8s#21 ) - (byte*) char_cursor#79 ← phi( @15/(byte*) char_cursor#82 ) - (byte*) line_cursor#28 ← phi( @15/(byte*) line_cursor#31 ) + (byte*) char_cursor#106 ← phi( @15/(byte*) char_cursor#110 ) + (byte*) line_cursor#34 ← phi( @15/(byte*) line_cursor#38 ) call print_cls param-assignment to:main::@1 main::@1: scope:[main] from main + (word) rem16u#24 ← phi( main/(word) rem16u#26 ) (signed byte) rem8s#16 ← phi( main/(signed byte) rem8s#22 ) - (byte*) char_cursor#51 ← phi( main/(byte*) char_cursor#14 ) - (byte*) line_cursor#18 ← phi( main/(byte*) line_cursor#4 ) - (byte*) line_cursor#5 ← (byte*) line_cursor#18 - (byte*) char_cursor#15 ← (byte*) char_cursor#51 + (byte*) char_cursor#67 ← phi( main/(byte*) char_cursor#17 ) + (byte*) line_cursor#21 ← phi( main/(byte*) line_cursor#4 ) + (byte*) line_cursor#5 ← (byte*) line_cursor#21 + (byte*) char_cursor#18 ← (byte*) char_cursor#67 call test_8s param-assignment to:main::@2 main::@2: scope:[main] from main::@1 - (byte*) line_cursor#19 ← phi( main::@1/(byte*) line_cursor#12 ) - (byte*) char_cursor#52 ← phi( main::@1/(byte*) char_cursor#36 ) + (word) rem16u#20 ← phi( main::@1/(word) rem16u#24 ) + (byte*) line_cursor#22 ← phi( main::@1/(byte*) line_cursor#15 ) + (byte*) char_cursor#68 ← phi( main::@1/(byte*) char_cursor#49 ) (signed byte) rem8s#10 ← phi( main::@1/(signed byte) rem8s#7 ) (signed byte) rem8s#4 ← (signed byte) rem8s#10 - (byte*) char_cursor#16 ← (byte*) char_cursor#52 - (byte*) line_cursor#6 ← (byte*) line_cursor#19 + (byte*) char_cursor#19 ← (byte*) char_cursor#68 + (byte*) line_cursor#6 ← (byte*) line_cursor#22 call test_8u param-assignment to:main::@3 main::@3: scope:[main] from main::@2 - (signed byte) rem8s#17 ← phi( main::@2/(signed byte) rem8s#4 ) - (byte*) line_cursor#20 ← phi( main::@2/(byte*) line_cursor#10 ) - (byte*) char_cursor#53 ← phi( main::@2/(byte*) char_cursor#27 ) - (byte*) char_cursor#17 ← (byte*) char_cursor#53 - (byte*) line_cursor#7 ← (byte*) line_cursor#20 + (signed byte) rem8s#23 ← phi( main::@2/(signed byte) rem8s#4 ) + (word) rem16u#15 ← phi( main::@2/(word) rem16u#20 ) + (byte*) line_cursor#23 ← phi( main::@2/(byte*) line_cursor#13 ) + (byte*) char_cursor#69 ← phi( main::@2/(byte*) char_cursor#40 ) + (byte*) char_cursor#20 ← (byte*) char_cursor#69 + (byte*) line_cursor#7 ← (byte*) line_cursor#23 + call test_16u param-assignment + to:main::@4 +main::@4: scope:[main] from main::@3 + (signed byte) rem8s#17 ← phi( main::@3/(signed byte) rem8s#23 ) + (byte*) line_cursor#24 ← phi( main::@3/(byte*) line_cursor#11 ) + (byte*) char_cursor#70 ← phi( main::@3/(byte*) char_cursor#31 ) + (word) rem16u#9 ← phi( main::@3/(word) rem16u#6 ) + (word) rem16u#3 ← (word) rem16u#9 + (byte*) char_cursor#21 ← (byte*) char_cursor#70 + (byte*) line_cursor#8 ← (byte*) line_cursor#24 to:main::@return -main::@return: scope:[main] from main::@3 - (signed byte) rem8s#11 ← phi( main::@3/(signed byte) rem8s#17 ) - (byte*) char_cursor#54 ← phi( main::@3/(byte*) char_cursor#17 ) - (byte*) line_cursor#21 ← phi( main::@3/(byte*) line_cursor#7 ) - (byte*) line_cursor#8 ← (byte*) line_cursor#21 - (byte*) char_cursor#18 ← (byte*) char_cursor#54 +main::@return: scope:[main] from main::@4 + (word) rem16u#10 ← phi( main::@4/(word) rem16u#3 ) + (signed byte) rem8s#11 ← phi( main::@4/(signed byte) rem8s#17 ) + (byte*) char_cursor#71 ← phi( main::@4/(byte*) char_cursor#21 ) + (byte*) line_cursor#25 ← phi( main::@4/(byte*) line_cursor#8 ) + (byte*) line_cursor#9 ← (byte*) line_cursor#25 + (byte*) char_cursor#22 ← (byte*) char_cursor#71 (signed byte) rem8s#5 ← (signed byte) rem8s#11 + (word) rem16u#4 ← (word) rem16u#10 + return + to:@return +test_16u: scope:[test_16u] from main::@3 + (byte*) line_cursor#65 ← phi( main::@3/(byte*) line_cursor#7 ) + (byte*) char_cursor#118 ← phi( main::@3/(byte*) char_cursor#20 ) + (word) rem16u#21 ← phi( main::@3/(word) rem16u#15 ) + (word[]) test_16u::dividends#0 ← { (word/dword/signed dword) 65535, (word/dword/signed dword) 65535, (word/dword/signed dword) 65535, (word/dword/signed dword) 65535, (word/dword/signed dword) 65535, (word/dword/signed dword) 65535 } + (word[]) test_16u::divisors#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 11, (byte/signed byte/word/signed word/dword/signed dword) 13, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 19 } + (byte) test_16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:test_16u::@1 +test_16u::@1: scope:[test_16u] from test_16u test_16u::@11 + (byte*) line_cursor#62 ← phi( test_16u/(byte*) line_cursor#65 test_16u::@11/(byte*) line_cursor#10 ) + (byte*) char_cursor#113 ← phi( test_16u/(byte*) char_cursor#118 test_16u::@11/(byte*) char_cursor#30 ) + (word) rem16u#16 ← phi( test_16u/(word) rem16u#21 test_16u::@11/(word) rem16u#18 ) + (byte) test_16u::i#2 ← phi( test_16u/(byte) test_16u::i#0 test_16u::@11/(byte) test_16u::i#1 ) + (word) test_16u::dividend#0 ← *((word[]) test_16u::dividends#0 + (byte) test_16u::i#2) + (word) test_16u::divisor#0 ← *((word[]) test_16u::divisors#0 + (byte) test_16u::i#2) + (word) div16u::dividend#1 ← (word) test_16u::dividend#0 + (word) div16u::divisor#0 ← (word) test_16u::divisor#0 + call div16u param-assignment + (word) div16u::return#2 ← (word) div16u::return#1 + to:test_16u::@3 +test_16u::@3: scope:[test_16u] from test_16u::@1 + (byte) test_16u::i#11 ← phi( test_16u::@1/(byte) test_16u::i#2 ) + (byte*) line_cursor#59 ← phi( test_16u::@1/(byte*) line_cursor#62 ) + (word) test_16u::divisor#3 ← phi( test_16u::@1/(word) test_16u::divisor#0 ) + (byte*) char_cursor#107 ← phi( test_16u::@1/(byte*) char_cursor#113 ) + (word) test_16u::dividend#1 ← phi( test_16u::@1/(word) test_16u::dividend#0 ) + (word) rem16u#11 ← phi( test_16u::@1/(word) rem16u#2 ) + (word) div16u::return#4 ← phi( test_16u::@1/(word) div16u::return#2 ) + (word~) test_16u::$0 ← (word) div16u::return#4 + (word) rem16u#5 ← (word) rem16u#11 + (word) test_16u::res#0 ← (word~) test_16u::$0 + (word) print_word::w#0 ← (word) test_16u::dividend#1 + call print_word param-assignment + to:test_16u::@4 +test_16u::@4: scope:[test_16u] from test_16u::@3 + (byte) test_16u::i#10 ← phi( test_16u::@3/(byte) test_16u::i#11 ) + (byte*) line_cursor#56 ← phi( test_16u::@3/(byte*) line_cursor#59 ) + (word) rem16u#28 ← phi( test_16u::@3/(word) rem16u#5 ) + (word) test_16u::res#4 ← phi( test_16u::@3/(word) test_16u::res#0 ) + (word) test_16u::divisor#2 ← phi( test_16u::@3/(word) test_16u::divisor#3 ) + (byte*) char_cursor#72 ← phi( test_16u::@3/(byte*) char_cursor#10 ) + (byte*) char_cursor#23 ← (byte*) char_cursor#72 + (byte*) print_str::str#1 ← (const string) test_16u::str + call print_str param-assignment + to:test_16u::@5 +test_16u::@5: scope:[test_16u] from test_16u::@4 + (byte) test_16u::i#9 ← phi( test_16u::@4/(byte) test_16u::i#10 ) + (byte*) line_cursor#53 ← phi( test_16u::@4/(byte*) line_cursor#56 ) + (word) rem16u#27 ← phi( test_16u::@4/(word) rem16u#28 ) + (word) test_16u::res#3 ← phi( test_16u::@4/(word) test_16u::res#4 ) + (word) test_16u::divisor#1 ← phi( test_16u::@4/(word) test_16u::divisor#2 ) + (byte*) char_cursor#73 ← phi( test_16u::@4/(byte*) char_cursor#2 ) + (byte*) char_cursor#24 ← (byte*) char_cursor#73 + (word) print_word::w#1 ← (word) test_16u::divisor#1 + call print_word param-assignment + to:test_16u::@6 +test_16u::@6: scope:[test_16u] from test_16u::@5 + (byte) test_16u::i#8 ← phi( test_16u::@5/(byte) test_16u::i#9 ) + (byte*) line_cursor#50 ← phi( test_16u::@5/(byte*) line_cursor#53 ) + (word) rem16u#25 ← phi( test_16u::@5/(word) rem16u#27 ) + (word) test_16u::res#2 ← phi( test_16u::@5/(word) test_16u::res#3 ) + (byte*) char_cursor#74 ← phi( test_16u::@5/(byte*) char_cursor#10 ) + (byte*) char_cursor#25 ← (byte*) char_cursor#74 + (byte*) print_str::str#2 ← (const string) test_16u::str1 + call print_str param-assignment + to:test_16u::@7 +test_16u::@7: scope:[test_16u] from test_16u::@6 + (byte) test_16u::i#7 ← phi( test_16u::@6/(byte) test_16u::i#8 ) + (byte*) line_cursor#47 ← phi( test_16u::@6/(byte*) line_cursor#50 ) + (word) rem16u#22 ← phi( test_16u::@6/(word) rem16u#25 ) + (word) test_16u::res#1 ← phi( test_16u::@6/(word) test_16u::res#2 ) + (byte*) char_cursor#75 ← phi( test_16u::@6/(byte*) char_cursor#2 ) + (byte*) char_cursor#26 ← (byte*) char_cursor#75 + (word) print_word::w#2 ← (word) test_16u::res#1 + call print_word param-assignment + to:test_16u::@8 +test_16u::@8: scope:[test_16u] from test_16u::@7 + (byte) test_16u::i#6 ← phi( test_16u::@7/(byte) test_16u::i#7 ) + (byte*) line_cursor#44 ← phi( test_16u::@7/(byte*) line_cursor#47 ) + (word) rem16u#17 ← phi( test_16u::@7/(word) rem16u#22 ) + (byte*) char_cursor#76 ← phi( test_16u::@7/(byte*) char_cursor#10 ) + (byte*) char_cursor#27 ← (byte*) char_cursor#76 + (byte*) print_str::str#3 ← (const string) test_16u::str2 + call print_str param-assignment + to:test_16u::@9 +test_16u::@9: scope:[test_16u] from test_16u::@8 + (byte) test_16u::i#5 ← phi( test_16u::@8/(byte) test_16u::i#6 ) + (byte*) line_cursor#39 ← phi( test_16u::@8/(byte*) line_cursor#44 ) + (word) rem16u#12 ← phi( test_16u::@8/(word) rem16u#17 ) + (byte*) char_cursor#77 ← phi( test_16u::@8/(byte*) char_cursor#2 ) + (byte*) char_cursor#28 ← (byte*) char_cursor#77 + (word) print_word::w#3 ← (word) rem16u#12 + call print_word param-assignment + to:test_16u::@10 +test_16u::@10: scope:[test_16u] from test_16u::@9 + (word) rem16u#23 ← phi( test_16u::@9/(word) rem16u#12 ) + (byte) test_16u::i#4 ← phi( test_16u::@9/(byte) test_16u::i#5 ) + (byte*) line_cursor#35 ← phi( test_16u::@9/(byte*) line_cursor#39 ) + (byte*) char_cursor#78 ← phi( test_16u::@9/(byte*) char_cursor#10 ) + (byte*) char_cursor#29 ← (byte*) char_cursor#78 + call print_ln param-assignment + to:test_16u::@11 +test_16u::@11: scope:[test_16u] from test_16u::@10 + (word) rem16u#18 ← phi( test_16u::@10/(word) rem16u#23 ) + (byte) test_16u::i#3 ← phi( test_16u::@10/(byte) test_16u::i#4 ) + (byte*) char_cursor#79 ← phi( test_16u::@10/(byte*) char_cursor#4 ) + (byte*) line_cursor#26 ← phi( test_16u::@10/(byte*) line_cursor#2 ) + (byte*) line_cursor#10 ← (byte*) line_cursor#26 + (byte*) char_cursor#30 ← (byte*) char_cursor#79 + (byte/word~) test_16u::$9 ← (byte) test_16u::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) test_16u::i#1 ← (byte/word~) test_16u::$9 + (boolean~) test_16u::$10 ← (byte) test_16u::i#1 != (byte/signed byte/word/signed word/dword/signed dword) 12 + if((boolean~) test_16u::$10) goto test_16u::@1 + to:test_16u::@return +test_16u::@return: scope:[test_16u] from test_16u::@11 + (byte*) line_cursor#27 ← phi( test_16u::@11/(byte*) line_cursor#10 ) + (byte*) char_cursor#80 ← phi( test_16u::@11/(byte*) char_cursor#30 ) + (word) rem16u#13 ← phi( test_16u::@11/(word) rem16u#18 ) + (word) rem16u#6 ← (word) rem16u#13 + (byte*) char_cursor#31 ← (byte*) char_cursor#80 + (byte*) line_cursor#11 ← (byte*) line_cursor#27 return to:@return test_8u: scope:[test_8u] from main::@2 - (byte*) line_cursor#49 ← phi( main::@2/(byte*) line_cursor#6 ) - (byte*) char_cursor#88 ← phi( main::@2/(byte*) char_cursor#16 ) + (byte*) line_cursor#66 ← phi( main::@2/(byte*) line_cursor#6 ) + (byte*) char_cursor#119 ← phi( main::@2/(byte*) char_cursor#19 ) (byte[]) test_8u::dividends#0 ← { (byte/word/signed word/dword/signed dword) 255, (byte/word/signed word/dword/signed dword) 255, (byte/word/signed word/dword/signed dword) 255, (byte/word/signed word/dword/signed dword) 255, (byte/word/signed word/dword/signed dword) 255, (byte/word/signed word/dword/signed dword) 255 } (byte[]) test_8u::divisors#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 11, (byte/signed byte/word/signed word/dword/signed dword) 13, (byte/signed byte/word/signed word/dword/signed dword) 17, (byte/signed byte/word/signed word/dword/signed dword) 19 } (byte) test_8u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 (byte) test_8u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:test_8u::@1 test_8u::@1: scope:[test_8u] from test_8u test_8u::@11 - (byte*) line_cursor#47 ← phi( test_8u/(byte*) line_cursor#49 test_8u::@11/(byte*) line_cursor#9 ) - (byte*) char_cursor#85 ← phi( test_8u/(byte*) char_cursor#88 test_8u::@11/(byte*) char_cursor#26 ) + (byte*) line_cursor#63 ← phi( test_8u/(byte*) line_cursor#66 test_8u::@11/(byte*) line_cursor#12 ) + (byte*) char_cursor#114 ← phi( test_8u/(byte*) char_cursor#119 test_8u::@11/(byte*) char_cursor#39 ) (byte) test_8u::rem#1 ← phi( test_8u/(byte) test_8u::rem#0 test_8u::@11/(byte) test_8u::rem#3 ) (byte) test_8u::i#2 ← phi( test_8u/(byte) test_8u::i#0 test_8u::@11/(byte) test_8u::i#1 ) (byte) test_8u::dividend#0 ← *((byte[]) test_8u::dividends#0 + (byte) test_8u::i#2) @@ -1643,107 +1908,107 @@ test_8u::@1: scope:[test_8u] from test_8u test_8u::@11 to:test_8u::@3 test_8u::@3: scope:[test_8u] from test_8u::@1 (byte) test_8u::i#11 ← phi( test_8u::@1/(byte) test_8u::i#2 ) - (byte*) line_cursor#45 ← phi( test_8u::@1/(byte*) line_cursor#47 ) + (byte*) line_cursor#60 ← phi( test_8u::@1/(byte*) line_cursor#63 ) (byte) test_8u::rem#10 ← phi( test_8u::@1/(byte) test_8u::rem#1 ) (byte) test_8u::divisor#3 ← phi( test_8u::@1/(byte) test_8u::divisor#0 ) - (byte*) char_cursor#80 ← phi( test_8u::@1/(byte*) char_cursor#85 ) + (byte*) char_cursor#108 ← phi( test_8u::@1/(byte*) char_cursor#114 ) (byte) test_8u::dividend#1 ← phi( test_8u::@1/(byte) test_8u::dividend#0 ) (byte) div8u::return#6 ← phi( test_8u::@1/(byte) div8u::return#3 ) (byte~) test_8u::$1 ← (byte) div8u::return#6 (byte) test_8u::res#0 ← (byte~) test_8u::$1 - (byte) print_byte::b#1 ← (byte) test_8u::dividend#1 + (byte) print_byte::b#3 ← (byte) test_8u::dividend#1 call print_byte param-assignment to:test_8u::@4 test_8u::@4: scope:[test_8u] from test_8u::@3 (byte) test_8u::i#10 ← phi( test_8u::@3/(byte) test_8u::i#11 ) - (byte*) line_cursor#43 ← phi( test_8u::@3/(byte*) line_cursor#45 ) + (byte*) line_cursor#57 ← phi( test_8u::@3/(byte*) line_cursor#60 ) (byte) test_8u::rem#9 ← phi( test_8u::@3/(byte) test_8u::rem#10 ) (byte) test_8u::res#4 ← phi( test_8u::@3/(byte) test_8u::res#0 ) (byte) test_8u::divisor#2 ← phi( test_8u::@3/(byte) test_8u::divisor#3 ) - (byte*) char_cursor#55 ← phi( test_8u::@3/(byte*) char_cursor#10 ) - (byte*) char_cursor#19 ← (byte*) char_cursor#55 - (byte*) print_str::str#1 ← (const string) test_8u::str + (byte*) char_cursor#81 ← phi( test_8u::@3/(byte*) char_cursor#13 ) + (byte*) char_cursor#32 ← (byte*) char_cursor#81 + (byte*) print_str::str#4 ← (const string) test_8u::str call print_str param-assignment to:test_8u::@5 test_8u::@5: scope:[test_8u] from test_8u::@4 (byte) test_8u::i#9 ← phi( test_8u::@4/(byte) test_8u::i#10 ) - (byte*) line_cursor#41 ← phi( test_8u::@4/(byte*) line_cursor#43 ) + (byte*) line_cursor#54 ← phi( test_8u::@4/(byte*) line_cursor#57 ) (byte) test_8u::rem#8 ← phi( test_8u::@4/(byte) test_8u::rem#9 ) (byte) test_8u::res#3 ← phi( test_8u::@4/(byte) test_8u::res#4 ) (byte) test_8u::divisor#1 ← phi( test_8u::@4/(byte) test_8u::divisor#2 ) - (byte*) char_cursor#56 ← phi( test_8u::@4/(byte*) char_cursor#2 ) - (byte*) char_cursor#20 ← (byte*) char_cursor#56 - (byte) print_byte::b#2 ← (byte) test_8u::divisor#1 + (byte*) char_cursor#82 ← phi( test_8u::@4/(byte*) char_cursor#2 ) + (byte*) char_cursor#33 ← (byte*) char_cursor#82 + (byte) print_byte::b#4 ← (byte) test_8u::divisor#1 call print_byte param-assignment to:test_8u::@6 test_8u::@6: scope:[test_8u] from test_8u::@5 (byte) test_8u::i#8 ← phi( test_8u::@5/(byte) test_8u::i#9 ) - (byte*) line_cursor#39 ← phi( test_8u::@5/(byte*) line_cursor#41 ) + (byte*) line_cursor#51 ← phi( test_8u::@5/(byte*) line_cursor#54 ) (byte) test_8u::rem#7 ← phi( test_8u::@5/(byte) test_8u::rem#8 ) (byte) test_8u::res#2 ← phi( test_8u::@5/(byte) test_8u::res#3 ) - (byte*) char_cursor#57 ← phi( test_8u::@5/(byte*) char_cursor#10 ) - (byte*) char_cursor#21 ← (byte*) char_cursor#57 - (byte*) print_str::str#2 ← (const string) test_8u::str1 + (byte*) char_cursor#83 ← phi( test_8u::@5/(byte*) char_cursor#13 ) + (byte*) char_cursor#34 ← (byte*) char_cursor#83 + (byte*) print_str::str#5 ← (const string) test_8u::str1 call print_str param-assignment to:test_8u::@7 test_8u::@7: scope:[test_8u] from test_8u::@6 (byte) test_8u::i#7 ← phi( test_8u::@6/(byte) test_8u::i#8 ) - (byte*) line_cursor#37 ← phi( test_8u::@6/(byte*) line_cursor#39 ) + (byte*) line_cursor#48 ← phi( test_8u::@6/(byte*) line_cursor#51 ) (byte) test_8u::rem#5 ← phi( test_8u::@6/(byte) test_8u::rem#7 ) (byte) test_8u::res#1 ← phi( test_8u::@6/(byte) test_8u::res#2 ) - (byte*) char_cursor#58 ← phi( test_8u::@6/(byte*) char_cursor#2 ) - (byte*) char_cursor#22 ← (byte*) char_cursor#58 - (byte) print_byte::b#3 ← (byte) test_8u::res#1 + (byte*) char_cursor#84 ← phi( test_8u::@6/(byte*) char_cursor#2 ) + (byte*) char_cursor#35 ← (byte*) char_cursor#84 + (byte) print_byte::b#5 ← (byte) test_8u::res#1 call print_byte param-assignment to:test_8u::@8 test_8u::@8: scope:[test_8u] from test_8u::@7 (byte) test_8u::i#6 ← phi( test_8u::@7/(byte) test_8u::i#7 ) - (byte*) line_cursor#35 ← phi( test_8u::@7/(byte*) line_cursor#37 ) + (byte*) line_cursor#45 ← phi( test_8u::@7/(byte*) line_cursor#48 ) (byte) test_8u::rem#4 ← phi( test_8u::@7/(byte) test_8u::rem#5 ) - (byte*) char_cursor#59 ← phi( test_8u::@7/(byte*) char_cursor#10 ) - (byte*) char_cursor#23 ← (byte*) char_cursor#59 - (byte*) print_str::str#3 ← (const string) test_8u::str2 + (byte*) char_cursor#85 ← phi( test_8u::@7/(byte*) char_cursor#13 ) + (byte*) char_cursor#36 ← (byte*) char_cursor#85 + (byte*) print_str::str#6 ← (const string) test_8u::str2 call print_str param-assignment to:test_8u::@9 test_8u::@9: scope:[test_8u] from test_8u::@8 (byte) test_8u::i#5 ← phi( test_8u::@8/(byte) test_8u::i#6 ) - (byte*) line_cursor#32 ← phi( test_8u::@8/(byte*) line_cursor#35 ) + (byte*) line_cursor#40 ← phi( test_8u::@8/(byte*) line_cursor#45 ) (byte) test_8u::rem#2 ← phi( test_8u::@8/(byte) test_8u::rem#4 ) - (byte*) char_cursor#60 ← phi( test_8u::@8/(byte*) char_cursor#2 ) - (byte*) char_cursor#24 ← (byte*) char_cursor#60 - (byte) print_byte::b#4 ← (byte) test_8u::rem#2 + (byte*) char_cursor#86 ← phi( test_8u::@8/(byte*) char_cursor#2 ) + (byte*) char_cursor#37 ← (byte*) char_cursor#86 + (byte) print_byte::b#6 ← (byte) test_8u::rem#2 call print_byte param-assignment to:test_8u::@10 test_8u::@10: scope:[test_8u] from test_8u::@9 (byte) test_8u::rem#6 ← phi( test_8u::@9/(byte) test_8u::rem#2 ) (byte) test_8u::i#4 ← phi( test_8u::@9/(byte) test_8u::i#5 ) - (byte*) line_cursor#29 ← phi( test_8u::@9/(byte*) line_cursor#32 ) - (byte*) char_cursor#61 ← phi( test_8u::@9/(byte*) char_cursor#10 ) - (byte*) char_cursor#25 ← (byte*) char_cursor#61 + (byte*) line_cursor#36 ← phi( test_8u::@9/(byte*) line_cursor#40 ) + (byte*) char_cursor#87 ← phi( test_8u::@9/(byte*) char_cursor#13 ) + (byte*) char_cursor#38 ← (byte*) char_cursor#87 call print_ln param-assignment to:test_8u::@11 test_8u::@11: scope:[test_8u] from test_8u::@10 (byte) test_8u::rem#3 ← phi( test_8u::@10/(byte) test_8u::rem#6 ) (byte) test_8u::i#3 ← phi( test_8u::@10/(byte) test_8u::i#4 ) - (byte*) char_cursor#62 ← phi( test_8u::@10/(byte*) char_cursor#4 ) - (byte*) line_cursor#22 ← phi( test_8u::@10/(byte*) line_cursor#2 ) - (byte*) line_cursor#9 ← (byte*) line_cursor#22 - (byte*) char_cursor#26 ← (byte*) char_cursor#62 + (byte*) char_cursor#88 ← phi( test_8u::@10/(byte*) char_cursor#4 ) + (byte*) line_cursor#28 ← phi( test_8u::@10/(byte*) line_cursor#2 ) + (byte*) line_cursor#12 ← (byte*) line_cursor#28 + (byte*) char_cursor#39 ← (byte*) char_cursor#88 (byte) test_8u::i#1 ← ++ (byte) test_8u::i#3 (boolean~) test_8u::$10 ← (byte) test_8u::i#1 != (byte/signed byte/word/signed word/dword/signed dword) 6 if((boolean~) test_8u::$10) goto test_8u::@1 to:test_8u::@return test_8u::@return: scope:[test_8u] from test_8u::@11 - (byte*) line_cursor#23 ← phi( test_8u::@11/(byte*) line_cursor#9 ) - (byte*) char_cursor#63 ← phi( test_8u::@11/(byte*) char_cursor#26 ) - (byte*) char_cursor#27 ← (byte*) char_cursor#63 - (byte*) line_cursor#10 ← (byte*) line_cursor#23 + (byte*) line_cursor#29 ← phi( test_8u::@11/(byte*) line_cursor#12 ) + (byte*) char_cursor#89 ← phi( test_8u::@11/(byte*) char_cursor#39 ) + (byte*) char_cursor#40 ← (byte*) char_cursor#89 + (byte*) line_cursor#13 ← (byte*) line_cursor#29 return to:@return test_8s: scope:[test_8s] from main::@1 - (byte*) line_cursor#50 ← phi( main::@1/(byte*) line_cursor#5 ) - (byte*) char_cursor#89 ← phi( main::@1/(byte*) char_cursor#15 ) - (signed byte) rem8s#23 ← phi( main::@1/(signed byte) rem8s#16 ) + (byte*) line_cursor#67 ← phi( main::@1/(byte*) line_cursor#5 ) + (byte*) char_cursor#120 ← phi( main::@1/(byte*) char_cursor#18 ) + (signed byte) rem8s#24 ← phi( main::@1/(signed byte) rem8s#16 ) (signed byte/signed word/signed dword~) test_8s::$0 ← - (byte/signed byte/word/signed word/dword/signed dword) 127 (signed byte/signed word/signed dword~) test_8s::$1 ← - (byte/signed byte/word/signed word/dword/signed dword) 127 (signed byte[]) test_8s::dividends#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 127, (signed byte/signed word/signed dword~) test_8s::$0, (signed byte/signed word/signed dword~) test_8s::$1, (byte/signed byte/word/signed word/dword/signed dword) 127, (byte/signed byte/word/signed word/dword/signed dword) 127, (byte/signed byte/word/signed word/dword/signed dword) 127 } @@ -1753,9 +2018,9 @@ test_8s: scope:[test_8s] from main::@1 (byte) test_8s::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:test_8s::@1 test_8s::@1: scope:[test_8s] from test_8s test_8s::@11 - (byte*) line_cursor#48 ← phi( test_8s/(byte*) line_cursor#50 test_8s::@11/(byte*) line_cursor#11 ) - (byte*) char_cursor#86 ← phi( test_8s/(byte*) char_cursor#89 test_8s::@11/(byte*) char_cursor#35 ) - (signed byte) rem8s#18 ← phi( test_8s/(signed byte) rem8s#23 test_8s::@11/(signed byte) rem8s#20 ) + (byte*) line_cursor#64 ← phi( test_8s/(byte*) line_cursor#67 test_8s::@11/(byte*) line_cursor#14 ) + (byte*) char_cursor#115 ← phi( test_8s/(byte*) char_cursor#120 test_8s::@11/(byte*) char_cursor#48 ) + (signed byte) rem8s#18 ← phi( test_8s/(signed byte) rem8s#24 test_8s::@11/(signed byte) rem8s#20 ) (byte) test_8s::i#2 ← phi( test_8s/(byte) test_8s::i#0 test_8s::@11/(byte) test_8s::i#1 ) (signed byte) test_8s::dividend#0 ← *((signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#2) (signed byte) test_8s::divisor#0 ← *((signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#2) @@ -1766,9 +2031,9 @@ test_8s::@1: scope:[test_8s] from test_8s test_8s::@11 to:test_8s::@3 test_8s::@3: scope:[test_8s] from test_8s::@1 (byte) test_8s::i#11 ← phi( test_8s::@1/(byte) test_8s::i#2 ) - (byte*) line_cursor#46 ← phi( test_8s::@1/(byte*) line_cursor#48 ) + (byte*) line_cursor#61 ← phi( test_8s::@1/(byte*) line_cursor#64 ) (signed byte) test_8s::divisor#3 ← phi( test_8s::@1/(signed byte) test_8s::divisor#0 ) - (byte*) char_cursor#81 ← phi( test_8s::@1/(byte*) char_cursor#86 ) + (byte*) char_cursor#109 ← phi( test_8s::@1/(byte*) char_cursor#115 ) (signed byte) test_8s::dividend#1 ← phi( test_8s::@1/(signed byte) test_8s::dividend#0 ) (signed byte) rem8s#12 ← phi( test_8s::@1/(signed byte) rem8s#3 ) (signed byte) div8s::return#5 ← phi( test_8s::@1/(signed byte) div8s::return#3 ) @@ -1780,109 +2045,113 @@ test_8s::@3: scope:[test_8s] from test_8s::@1 to:test_8s::@4 test_8s::@4: scope:[test_8s] from test_8s::@3 (byte) test_8s::i#10 ← phi( test_8s::@3/(byte) test_8s::i#11 ) - (byte*) line_cursor#44 ← phi( test_8s::@3/(byte*) line_cursor#46 ) - (signed byte) rem8s#28 ← phi( test_8s::@3/(signed byte) rem8s#6 ) + (byte*) line_cursor#58 ← phi( test_8s::@3/(byte*) line_cursor#61 ) + (signed byte) rem8s#30 ← phi( test_8s::@3/(signed byte) rem8s#6 ) (signed byte) test_8s::res#4 ← phi( test_8s::@3/(signed byte) test_8s::res#0 ) (signed byte) test_8s::divisor#2 ← phi( test_8s::@3/(signed byte) test_8s::divisor#3 ) - (byte*) char_cursor#64 ← phi( test_8s::@3/(byte*) char_cursor#7 ) - (byte*) char_cursor#28 ← (byte*) char_cursor#64 - (byte*) print_str::str#4 ← (const string) test_8s::str + (byte*) char_cursor#90 ← phi( test_8s::@3/(byte*) char_cursor#7 ) + (byte*) char_cursor#41 ← (byte*) char_cursor#90 + (byte*) print_str::str#7 ← (const string) test_8s::str call print_str param-assignment to:test_8s::@5 test_8s::@5: scope:[test_8s] from test_8s::@4 (byte) test_8s::i#9 ← phi( test_8s::@4/(byte) test_8s::i#10 ) - (byte*) line_cursor#42 ← phi( test_8s::@4/(byte*) line_cursor#44 ) - (signed byte) rem8s#27 ← phi( test_8s::@4/(signed byte) rem8s#28 ) + (byte*) line_cursor#55 ← phi( test_8s::@4/(byte*) line_cursor#58 ) + (signed byte) rem8s#29 ← phi( test_8s::@4/(signed byte) rem8s#30 ) (signed byte) test_8s::res#3 ← phi( test_8s::@4/(signed byte) test_8s::res#4 ) (signed byte) test_8s::divisor#1 ← phi( test_8s::@4/(signed byte) test_8s::divisor#2 ) - (byte*) char_cursor#65 ← phi( test_8s::@4/(byte*) char_cursor#2 ) - (byte*) char_cursor#29 ← (byte*) char_cursor#65 + (byte*) char_cursor#91 ← phi( test_8s::@4/(byte*) char_cursor#2 ) + (byte*) char_cursor#42 ← (byte*) char_cursor#91 (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#1 call print_sbyte param-assignment to:test_8s::@6 test_8s::@6: scope:[test_8s] from test_8s::@5 (byte) test_8s::i#8 ← phi( test_8s::@5/(byte) test_8s::i#9 ) - (byte*) line_cursor#40 ← phi( test_8s::@5/(byte*) line_cursor#42 ) - (signed byte) rem8s#26 ← phi( test_8s::@5/(signed byte) rem8s#27 ) + (byte*) line_cursor#52 ← phi( test_8s::@5/(byte*) line_cursor#55 ) + (signed byte) rem8s#28 ← phi( test_8s::@5/(signed byte) rem8s#29 ) (signed byte) test_8s::res#2 ← phi( test_8s::@5/(signed byte) test_8s::res#3 ) - (byte*) char_cursor#66 ← phi( test_8s::@5/(byte*) char_cursor#7 ) - (byte*) char_cursor#30 ← (byte*) char_cursor#66 - (byte*) print_str::str#5 ← (const string) test_8s::str1 + (byte*) char_cursor#92 ← phi( test_8s::@5/(byte*) char_cursor#7 ) + (byte*) char_cursor#43 ← (byte*) char_cursor#92 + (byte*) print_str::str#8 ← (const string) test_8s::str1 call print_str param-assignment to:test_8s::@7 test_8s::@7: scope:[test_8s] from test_8s::@6 (byte) test_8s::i#7 ← phi( test_8s::@6/(byte) test_8s::i#8 ) - (byte*) line_cursor#38 ← phi( test_8s::@6/(byte*) line_cursor#40 ) - (signed byte) rem8s#24 ← phi( test_8s::@6/(signed byte) rem8s#26 ) + (byte*) line_cursor#49 ← phi( test_8s::@6/(byte*) line_cursor#52 ) + (signed byte) rem8s#25 ← phi( test_8s::@6/(signed byte) rem8s#28 ) (signed byte) test_8s::res#1 ← phi( test_8s::@6/(signed byte) test_8s::res#2 ) - (byte*) char_cursor#67 ← phi( test_8s::@6/(byte*) char_cursor#2 ) - (byte*) char_cursor#31 ← (byte*) char_cursor#67 + (byte*) char_cursor#93 ← phi( test_8s::@6/(byte*) char_cursor#2 ) + (byte*) char_cursor#44 ← (byte*) char_cursor#93 (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#1 call print_sbyte param-assignment to:test_8s::@8 test_8s::@8: scope:[test_8s] from test_8s::@7 (byte) test_8s::i#6 ← phi( test_8s::@7/(byte) test_8s::i#7 ) - (byte*) line_cursor#36 ← phi( test_8s::@7/(byte*) line_cursor#38 ) - (signed byte) rem8s#19 ← phi( test_8s::@7/(signed byte) rem8s#24 ) - (byte*) char_cursor#68 ← phi( test_8s::@7/(byte*) char_cursor#7 ) - (byte*) char_cursor#32 ← (byte*) char_cursor#68 - (byte*) print_str::str#6 ← (const string) test_8s::str2 + (byte*) line_cursor#46 ← phi( test_8s::@7/(byte*) line_cursor#49 ) + (signed byte) rem8s#19 ← phi( test_8s::@7/(signed byte) rem8s#25 ) + (byte*) char_cursor#94 ← phi( test_8s::@7/(byte*) char_cursor#7 ) + (byte*) char_cursor#45 ← (byte*) char_cursor#94 + (byte*) print_str::str#9 ← (const string) test_8s::str2 call print_str param-assignment to:test_8s::@9 test_8s::@9: scope:[test_8s] from test_8s::@8 (byte) test_8s::i#5 ← phi( test_8s::@8/(byte) test_8s::i#6 ) - (byte*) line_cursor#33 ← phi( test_8s::@8/(byte*) line_cursor#36 ) + (byte*) line_cursor#41 ← phi( test_8s::@8/(byte*) line_cursor#46 ) (signed byte) rem8s#13 ← phi( test_8s::@8/(signed byte) rem8s#19 ) - (byte*) char_cursor#69 ← phi( test_8s::@8/(byte*) char_cursor#2 ) - (byte*) char_cursor#33 ← (byte*) char_cursor#69 + (byte*) char_cursor#95 ← phi( test_8s::@8/(byte*) char_cursor#2 ) + (byte*) char_cursor#46 ← (byte*) char_cursor#95 (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#13 call print_sbyte param-assignment to:test_8s::@10 test_8s::@10: scope:[test_8s] from test_8s::@9 - (signed byte) rem8s#25 ← phi( test_8s::@9/(signed byte) rem8s#13 ) + (signed byte) rem8s#26 ← phi( test_8s::@9/(signed byte) rem8s#13 ) (byte) test_8s::i#4 ← phi( test_8s::@9/(byte) test_8s::i#5 ) - (byte*) line_cursor#30 ← phi( test_8s::@9/(byte*) line_cursor#33 ) - (byte*) char_cursor#70 ← phi( test_8s::@9/(byte*) char_cursor#7 ) - (byte*) char_cursor#34 ← (byte*) char_cursor#70 + (byte*) line_cursor#37 ← phi( test_8s::@9/(byte*) line_cursor#41 ) + (byte*) char_cursor#96 ← phi( test_8s::@9/(byte*) char_cursor#7 ) + (byte*) char_cursor#47 ← (byte*) char_cursor#96 call print_ln param-assignment to:test_8s::@11 test_8s::@11: scope:[test_8s] from test_8s::@10 - (signed byte) rem8s#20 ← phi( test_8s::@10/(signed byte) rem8s#25 ) + (signed byte) rem8s#20 ← phi( test_8s::@10/(signed byte) rem8s#26 ) (byte) test_8s::i#3 ← phi( test_8s::@10/(byte) test_8s::i#4 ) - (byte*) char_cursor#71 ← phi( test_8s::@10/(byte*) char_cursor#4 ) - (byte*) line_cursor#24 ← phi( test_8s::@10/(byte*) line_cursor#2 ) - (byte*) line_cursor#11 ← (byte*) line_cursor#24 - (byte*) char_cursor#35 ← (byte*) char_cursor#71 + (byte*) char_cursor#97 ← phi( test_8s::@10/(byte*) char_cursor#4 ) + (byte*) line_cursor#30 ← phi( test_8s::@10/(byte*) line_cursor#2 ) + (byte*) line_cursor#14 ← (byte*) line_cursor#30 + (byte*) char_cursor#48 ← (byte*) char_cursor#97 (byte) test_8s::i#1 ← ++ (byte) test_8s::i#3 (boolean~) test_8s::$13 ← (byte) test_8s::i#1 != (byte/signed byte/word/signed word/dword/signed dword) 6 if((boolean~) test_8s::$13) goto test_8s::@1 to:test_8s::@return test_8s::@return: scope:[test_8s] from test_8s::@11 - (byte*) line_cursor#25 ← phi( test_8s::@11/(byte*) line_cursor#11 ) - (byte*) char_cursor#72 ← phi( test_8s::@11/(byte*) char_cursor#35 ) + (byte*) line_cursor#31 ← phi( test_8s::@11/(byte*) line_cursor#14 ) + (byte*) char_cursor#98 ← phi( test_8s::@11/(byte*) char_cursor#48 ) (signed byte) rem8s#14 ← phi( test_8s::@11/(signed byte) rem8s#20 ) (signed byte) rem8s#7 ← (signed byte) rem8s#14 - (byte*) char_cursor#36 ← (byte*) char_cursor#72 - (byte*) line_cursor#12 ← (byte*) line_cursor#25 + (byte*) char_cursor#49 ← (byte*) char_cursor#98 + (byte*) line_cursor#15 ← (byte*) line_cursor#31 return to:@return -@15: scope:[] from @9 - (signed byte) rem8s#21 ← phi( @9/(signed byte) rem8s#0 ) - (byte*) char_cursor#82 ← phi( @9/(byte*) char_cursor#87 ) - (byte*) line_cursor#31 ← phi( @9/(byte*) line_cursor#34 ) +@15: scope:[] from @10 + (word) rem16u#19 ← phi( @10/(word) rem16u#0 ) + (signed byte) rem8s#21 ← phi( @10/(signed byte) rem8s#27 ) + (byte*) char_cursor#110 ← phi( @10/(byte*) char_cursor#116 ) + (byte*) line_cursor#38 ← phi( @10/(byte*) line_cursor#42 ) call main param-assignment to:@16 @16: scope:[] from @15 + (word) rem16u#14 ← phi( @15/(word) rem16u#4 ) (signed byte) rem8s#15 ← phi( @15/(signed byte) rem8s#5 ) - (byte*) char_cursor#73 ← phi( @15/(byte*) char_cursor#18 ) - (byte*) line_cursor#26 ← phi( @15/(byte*) line_cursor#8 ) - (byte*) line_cursor#13 ← (byte*) line_cursor#26 - (byte*) char_cursor#37 ← (byte*) char_cursor#73 + (byte*) char_cursor#99 ← phi( @15/(byte*) char_cursor#22 ) + (byte*) line_cursor#32 ← phi( @15/(byte*) line_cursor#9 ) + (byte*) line_cursor#16 ← (byte*) line_cursor#32 + (byte*) char_cursor#50 ← (byte*) char_cursor#99 (signed byte) rem8s#8 ← (signed byte) rem8s#15 + (word) rem16u#7 ← (word) rem16u#14 to:@end @end: scope:[] from @16 SYMBOL TABLE SSA +(label) @10 (label) @15 (label) @16 (label) @9 @@ -1894,8 +2163,29 @@ SYMBOL TABLE SSA (byte*) char_cursor#0 (byte*) char_cursor#1 (byte*) char_cursor#10 +(byte*) char_cursor#100 +(byte*) char_cursor#101 +(byte*) char_cursor#102 +(byte*) char_cursor#103 +(byte*) char_cursor#104 +(byte*) char_cursor#105 +(byte*) char_cursor#106 +(byte*) char_cursor#107 +(byte*) char_cursor#108 +(byte*) char_cursor#109 (byte*) char_cursor#11 +(byte*) char_cursor#110 +(byte*) char_cursor#111 +(byte*) char_cursor#112 +(byte*) char_cursor#113 +(byte*) char_cursor#114 +(byte*) char_cursor#115 +(byte*) char_cursor#116 +(byte*) char_cursor#117 +(byte*) char_cursor#118 +(byte*) char_cursor#119 (byte*) char_cursor#12 +(byte*) char_cursor#120 (byte*) char_cursor#13 (byte*) char_cursor#14 (byte*) char_cursor#15 @@ -1981,6 +2271,87 @@ SYMBOL TABLE SSA (byte*) char_cursor#88 (byte*) char_cursor#89 (byte*) char_cursor#9 +(byte*) char_cursor#90 +(byte*) char_cursor#91 +(byte*) char_cursor#92 +(byte*) char_cursor#93 +(byte*) char_cursor#94 +(byte*) char_cursor#95 +(byte*) char_cursor#96 +(byte*) char_cursor#97 +(byte*) char_cursor#98 +(byte*) char_cursor#99 +(word()) div16u((word) div16u::dividend , (word) div16u::divisor) +(word~) div16u::$0 +(byte~) div16u::$1 +(boolean~) div16u::$10 +(byte~) div16u::$2 +(boolean~) div16u::$3 +(boolean~) div16u::$4 +(word~) div16u::$5 +(word~) div16u::$6 +(boolean~) div16u::$7 +(boolean~) div16u::$8 +(word~) div16u::$9 +(label) div16u::@1 +(label) div16u::@2 +(label) div16u::@3 +(label) div16u::@4 +(label) div16u::@5 +(label) div16u::@6 +(label) div16u::@return +(word) div16u::dividend +(word) div16u::dividend#0 +(word) div16u::dividend#1 +(word) div16u::dividend#2 +(word) div16u::dividend#3 +(word) div16u::dividend#4 +(word) div16u::dividend#5 +(word) div16u::dividend#6 +(word) div16u::dividend#7 +(word) div16u::divisor +(word) div16u::divisor#0 +(word) div16u::divisor#1 +(word) div16u::divisor#2 +(word) div16u::divisor#3 +(word) div16u::divisor#4 +(word) div16u::divisor#5 +(word) div16u::divisor#6 +(byte) div16u::i +(byte) div16u::i#0 +(byte) div16u::i#1 +(byte) div16u::i#2 +(byte) div16u::i#3 +(byte) div16u::i#4 +(byte) div16u::i#5 +(byte) div16u::i#6 +(word) div16u::quotient +(word) div16u::quotient#0 +(word) div16u::quotient#1 +(word) div16u::quotient#2 +(word) div16u::quotient#3 +(word) div16u::quotient#4 +(word) div16u::quotient#5 +(word) div16u::quotient#6 +(word) div16u::quotient#7 +(word) div16u::quotient#8 +(word) div16u::rem +(word) div16u::rem#0 +(word) div16u::rem#1 +(word) div16u::rem#2 +(word) div16u::rem#3 +(word) div16u::rem#4 +(word) div16u::rem#5 +(word) div16u::rem#6 +(word) div16u::rem#7 +(word) div16u::rem#8 +(word) div16u::rem#9 +(word) div16u::return +(word) div16u::return#0 +(word) div16u::return#1 +(word) div16u::return#2 +(word) div16u::return#3 +(word) div16u::return#4 (signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::divisor) (boolean~) div8s::$0 (boolean~) div8s::$1 @@ -2197,7 +2568,24 @@ SYMBOL TABLE SSA (byte*) line_cursor#49 (byte*) line_cursor#5 (byte*) line_cursor#50 +(byte*) line_cursor#51 +(byte*) line_cursor#52 +(byte*) line_cursor#53 +(byte*) line_cursor#54 +(byte*) line_cursor#55 +(byte*) line_cursor#56 +(byte*) line_cursor#57 +(byte*) line_cursor#58 +(byte*) line_cursor#59 (byte*) line_cursor#6 +(byte*) line_cursor#60 +(byte*) line_cursor#61 +(byte*) line_cursor#62 +(byte*) line_cursor#63 +(byte*) line_cursor#64 +(byte*) line_cursor#65 +(byte*) line_cursor#66 +(byte*) line_cursor#67 (byte*) line_cursor#7 (byte*) line_cursor#8 (byte*) line_cursor#9 @@ -2205,6 +2593,7 @@ SYMBOL TABLE SSA (label) main::@1 (label) main::@2 (label) main::@3 +(label) main::@4 (label) main::@return (void()) print_byte((byte) print_byte::b) (byte~) print_byte::$0 @@ -2221,6 +2610,8 @@ SYMBOL TABLE SSA (byte) print_byte::b#4 (byte) print_byte::b#5 (byte) print_byte::b#6 +(byte) print_byte::b#7 +(byte) print_byte::b#8 (byte[]) print_byte::hextab (byte[]) print_byte::hextab#0 (void()) print_char((byte) print_char::ch) @@ -2274,6 +2665,9 @@ SYMBOL TABLE SSA (byte*) print_str::str (byte*) print_str::str#0 (byte*) print_str::str#1 +(byte*) print_str::str#10 +(byte*) print_str::str#11 +(byte*) print_str::str#12 (byte*) print_str::str#2 (byte*) print_str::str#3 (byte*) print_str::str#4 @@ -2282,6 +2676,49 @@ SYMBOL TABLE SSA (byte*) print_str::str#7 (byte*) print_str::str#8 (byte*) print_str::str#9 +(void()) print_word((word) print_word::w) +(byte~) print_word::$0 +(byte~) print_word::$2 +(label) print_word::@1 +(label) print_word::@2 +(label) print_word::@return +(word) print_word::w +(word) print_word::w#0 +(word) print_word::w#1 +(word) print_word::w#2 +(word) print_word::w#3 +(word) print_word::w#4 +(word) print_word::w#5 +(word) rem16u +(word) rem16u#0 +(word) rem16u#1 +(word) rem16u#10 +(word) rem16u#11 +(word) rem16u#12 +(word) rem16u#13 +(word) rem16u#14 +(word) rem16u#15 +(word) rem16u#16 +(word) rem16u#17 +(word) rem16u#18 +(word) rem16u#19 +(word) rem16u#2 +(word) rem16u#20 +(word) rem16u#21 +(word) rem16u#22 +(word) rem16u#23 +(word) rem16u#24 +(word) rem16u#25 +(word) rem16u#26 +(word) rem16u#27 +(word) rem16u#28 +(word) rem16u#3 +(word) rem16u#4 +(word) rem16u#5 +(word) rem16u#6 +(word) rem16u#7 +(word) rem16u#8 +(word) rem16u#9 (signed byte) rem8s (signed byte) rem8s#0 (signed byte) rem8s#1 @@ -2305,13 +2742,64 @@ SYMBOL TABLE SSA (signed byte) rem8s#26 (signed byte) rem8s#27 (signed byte) rem8s#28 +(signed byte) rem8s#29 (signed byte) rem8s#3 +(signed byte) rem8s#30 (signed byte) rem8s#4 (signed byte) rem8s#5 (signed byte) rem8s#6 (signed byte) rem8s#7 (signed byte) rem8s#8 (signed byte) rem8s#9 +(void()) test_16u() +(word~) test_16u::$0 +(boolean~) test_16u::$10 +(byte/word~) test_16u::$9 +(label) test_16u::@1 +(label) test_16u::@10 +(label) test_16u::@11 +(label) test_16u::@3 +(label) test_16u::@4 +(label) test_16u::@5 +(label) test_16u::@6 +(label) test_16u::@7 +(label) test_16u::@8 +(label) test_16u::@9 +(label) test_16u::@return +(word) test_16u::dividend +(word) test_16u::dividend#0 +(word) test_16u::dividend#1 +(word[]) test_16u::dividends +(word[]) test_16u::dividends#0 +(word) test_16u::divisor +(word) test_16u::divisor#0 +(word) test_16u::divisor#1 +(word) test_16u::divisor#2 +(word) test_16u::divisor#3 +(word[]) test_16u::divisors +(word[]) test_16u::divisors#0 +(byte) test_16u::i +(byte) test_16u::i#0 +(byte) test_16u::i#1 +(byte) test_16u::i#10 +(byte) test_16u::i#11 +(byte) test_16u::i#2 +(byte) test_16u::i#3 +(byte) test_16u::i#4 +(byte) test_16u::i#5 +(byte) test_16u::i#6 +(byte) test_16u::i#7 +(byte) test_16u::i#8 +(byte) test_16u::i#9 +(word) test_16u::res +(word) test_16u::res#0 +(word) test_16u::res#1 +(word) test_16u::res#2 +(word) test_16u::res#3 +(word) test_16u::res#4 +(const string) test_16u::str = (string) " / @" +(const string) test_16u::str1 = (string) " = @" +(const string) test_16u::str2 = (string) " @" (void()) test_8s() (signed byte/signed word/signed dword~) test_8s::$0 (signed byte/signed word/signed dword~) test_8s::$1 @@ -2433,21 +2921,27 @@ Inversing boolean not (boolean~) div8u::$7 ← (byte) div8u::rem#5 < (byte) div8 Inversing boolean not (boolean~) div8s::$1 ← (signed byte) div8s::dividend#1 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) div8s::$0 ← (signed byte) div8s::dividend#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) div8s::$6 ← (signed byte) div8s::divisor#1 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) div8s::$5 ← (signed byte) div8s::divisor#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) div8s::$14 ← (byte) div8s::neg#4 != (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) div8s::$13 ← (byte) div8s::neg#4 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not (boolean~) div16u::$4 ← (byte~) div16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) div16u::$3 ← (byte~) div16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not (boolean~) div16u::$8 ← (word) div16u::rem#5 < (word) div16u::divisor#1 from (boolean~) div16u::$7 ← (word) div16u::rem#5 >= (word) div16u::divisor#1 Succesful SSA optimization Pass2UnaryNotSimplification -Not aliassing across scopes: print_str::str#9 print_str::str#4 -Not aliassing across scopes: char_cursor#83 char_cursor#28 -Not aliassing across scopes: line_cursor#27 line_cursor#30 -Not aliassing across scopes: char_cursor#75 char_cursor#34 +Not aliassing across scopes: print_str::str#12 print_str::str#1 +Not aliassing across scopes: char_cursor#111 char_cursor#23 +Not aliassing across scopes: line_cursor#33 line_cursor#35 +Not aliassing across scopes: char_cursor#101 char_cursor#29 Not aliassing across scopes: print_sbyte::b#5 print_sbyte::b#1 -Not aliassing across scopes: char_cursor#84 char_cursor#81 -Not aliassing across scopes: char_cursor#42 char_cursor#10 -Not aliassing across scopes: char_cursor#43 char_cursor#12 -Not aliassing across scopes: print_byte::b#5 print_byte::b#0 -Not aliassing across scopes: char_cursor#78 char_cursor#76 -Not aliassing across scopes: char_cursor#45 char_cursor#12 -Not aliassing across scopes: char_cursor#46 char_cursor#12 +Not aliassing across scopes: char_cursor#112 char_cursor#109 +Not aliassing across scopes: char_cursor#55 char_cursor#13 +Not aliassing across scopes: char_cursor#56 char_cursor#15 +Not aliassing across scopes: print_word::w#4 print_word::w#0 +Not aliassing across scopes: char_cursor#104 char_cursor#107 +Not aliassing across scopes: char_cursor#58 char_cursor#13 +Not aliassing across scopes: char_cursor#59 char_cursor#13 +Not aliassing across scopes: print_byte::b#7 print_byte::b#0 +Not aliassing across scopes: char_cursor#105 char_cursor#102 +Not aliassing across scopes: char_cursor#61 char_cursor#15 +Not aliassing across scopes: char_cursor#62 char_cursor#15 Not aliassing across scopes: print_char::ch#3 print_char::ch#1 -Not aliassing across scopes: char_cursor#48 char_cursor#78 +Not aliassing across scopes: char_cursor#64 char_cursor#105 Not aliassing across scopes: print_cls::sc#0 SCREEN#0 Not aliassing across scopes: line_cursor#3 SCREEN#0 Not aliassing across scopes: div8u::dividend#5 div8u::dividend#1 @@ -2459,74 +2953,108 @@ Not aliassing across scopes: div8u::dividend#1 div8s::dividendb#3 Not aliassing across scopes: div8u::divisor#0 div8s::divisorb#3 Not aliassing across scopes: div8u::return#2 div8u::return#1 Not aliassing across scopes: div8s::$12 div8u::return#5 -Not aliassing across scopes: line_cursor#28 line_cursor#31 -Not aliassing across scopes: char_cursor#79 char_cursor#82 +Not aliassing across scopes: div16u::dividend#4 div16u::dividend#1 +Not aliassing across scopes: div16u::divisor#5 div16u::divisor#0 +Not aliassing across scopes: rem16u#1 div16u::rem#8 +Not aliassing across scopes: line_cursor#34 line_cursor#38 +Not aliassing across scopes: char_cursor#106 char_cursor#110 Not aliassing across scopes: rem8s#22 rem8s#21 -Not aliassing across scopes: line_cursor#18 line_cursor#4 -Not aliassing across scopes: char_cursor#51 char_cursor#14 +Not aliassing across scopes: rem16u#26 rem16u#19 +Not aliassing across scopes: line_cursor#21 line_cursor#4 +Not aliassing across scopes: char_cursor#67 char_cursor#17 Not aliassing across scopes: rem8s#10 rem8s#7 -Not aliassing across scopes: char_cursor#52 char_cursor#36 -Not aliassing across scopes: line_cursor#19 line_cursor#12 -Not aliassing across scopes: char_cursor#53 char_cursor#27 -Not aliassing across scopes: line_cursor#20 line_cursor#10 -Not aliassing across scopes: char_cursor#88 char_cursor#16 -Not aliassing across scopes: line_cursor#49 line_cursor#6 +Not aliassing across scopes: char_cursor#68 char_cursor#49 +Not aliassing across scopes: line_cursor#22 line_cursor#15 +Not aliassing across scopes: char_cursor#69 char_cursor#40 +Not aliassing across scopes: line_cursor#23 line_cursor#13 +Not aliassing across scopes: rem16u#9 rem16u#6 +Not aliassing across scopes: char_cursor#70 char_cursor#31 +Not aliassing across scopes: line_cursor#24 line_cursor#11 +Not aliassing across scopes: rem16u#21 rem16u#15 +Not aliassing across scopes: char_cursor#118 char_cursor#20 +Not aliassing across scopes: line_cursor#65 line_cursor#7 +Not aliassing across scopes: div16u::dividend#1 test_16u::dividend#0 +Not aliassing across scopes: div16u::divisor#0 test_16u::divisor#0 +Not aliassing across scopes: div16u::return#2 div16u::return#1 +Not aliassing across scopes: rem16u#11 rem16u#2 +Not aliassing across scopes: test_16u::$0 div16u::return#4 +Not aliassing across scopes: print_word::w#0 test_16u::dividend#1 +Not aliassing across scopes: char_cursor#72 char_cursor#10 +Not aliassing across scopes: char_cursor#73 char_cursor#2 +Not aliassing across scopes: print_word::w#1 test_16u::divisor#1 +Not aliassing across scopes: char_cursor#74 char_cursor#10 +Not aliassing across scopes: char_cursor#75 char_cursor#2 +Not aliassing across scopes: print_word::w#2 test_16u::res#1 +Not aliassing across scopes: char_cursor#76 char_cursor#10 +Not aliassing across scopes: char_cursor#77 char_cursor#2 +Not aliassing across scopes: print_word::w#3 rem16u#12 +Not aliassing across scopes: char_cursor#78 char_cursor#10 +Not aliassing across scopes: line_cursor#26 line_cursor#2 +Not aliassing across scopes: char_cursor#79 char_cursor#4 +Not aliassing across scopes: char_cursor#119 char_cursor#19 +Not aliassing across scopes: line_cursor#66 line_cursor#6 Not aliassing across scopes: div8u::dividend#2 test_8u::dividend#0 Not aliassing across scopes: div8u::divisor#1 test_8u::divisor#0 Not aliassing across scopes: div8u::return#3 div8u::return#1 Not aliassing across scopes: test_8u::$1 div8u::return#6 -Not aliassing across scopes: print_byte::b#1 test_8u::dividend#1 -Not aliassing across scopes: char_cursor#55 char_cursor#10 -Not aliassing across scopes: char_cursor#56 char_cursor#2 -Not aliassing across scopes: print_byte::b#2 test_8u::divisor#1 -Not aliassing across scopes: char_cursor#57 char_cursor#10 -Not aliassing across scopes: char_cursor#58 char_cursor#2 -Not aliassing across scopes: print_byte::b#3 test_8u::res#1 -Not aliassing across scopes: char_cursor#59 char_cursor#10 -Not aliassing across scopes: char_cursor#60 char_cursor#2 -Not aliassing across scopes: print_byte::b#4 test_8u::rem#2 -Not aliassing across scopes: char_cursor#61 char_cursor#10 -Not aliassing across scopes: line_cursor#22 line_cursor#2 -Not aliassing across scopes: char_cursor#62 char_cursor#4 -Not aliassing across scopes: rem8s#23 rem8s#16 -Not aliassing across scopes: char_cursor#89 char_cursor#15 -Not aliassing across scopes: line_cursor#50 line_cursor#5 +Not aliassing across scopes: print_byte::b#3 test_8u::dividend#1 +Not aliassing across scopes: char_cursor#81 char_cursor#13 +Not aliassing across scopes: char_cursor#82 char_cursor#2 +Not aliassing across scopes: print_byte::b#4 test_8u::divisor#1 +Not aliassing across scopes: char_cursor#83 char_cursor#13 +Not aliassing across scopes: char_cursor#84 char_cursor#2 +Not aliassing across scopes: print_byte::b#5 test_8u::res#1 +Not aliassing across scopes: char_cursor#85 char_cursor#13 +Not aliassing across scopes: char_cursor#86 char_cursor#2 +Not aliassing across scopes: print_byte::b#6 test_8u::rem#2 +Not aliassing across scopes: char_cursor#87 char_cursor#13 +Not aliassing across scopes: line_cursor#28 line_cursor#2 +Not aliassing across scopes: char_cursor#88 char_cursor#4 +Not aliassing across scopes: rem8s#24 rem8s#16 +Not aliassing across scopes: char_cursor#120 char_cursor#18 +Not aliassing across scopes: line_cursor#67 line_cursor#5 Not aliassing across scopes: div8s::dividend#0 test_8s::dividend#0 Not aliassing across scopes: div8s::divisor#0 test_8s::divisor#0 Not aliassing across scopes: div8s::return#3 div8s::return#2 Not aliassing across scopes: rem8s#12 rem8s#3 Not aliassing across scopes: test_8s::$4 div8s::return#5 Not aliassing across scopes: print_sbyte::b#1 test_8s::dividend#1 -Not aliassing across scopes: char_cursor#64 char_cursor#7 -Not aliassing across scopes: char_cursor#65 char_cursor#2 +Not aliassing across scopes: char_cursor#90 char_cursor#7 +Not aliassing across scopes: char_cursor#91 char_cursor#2 Not aliassing across scopes: print_sbyte::b#2 test_8s::divisor#1 -Not aliassing across scopes: char_cursor#66 char_cursor#7 -Not aliassing across scopes: char_cursor#67 char_cursor#2 +Not aliassing across scopes: char_cursor#92 char_cursor#7 +Not aliassing across scopes: char_cursor#93 char_cursor#2 Not aliassing across scopes: print_sbyte::b#3 test_8s::res#1 -Not aliassing across scopes: char_cursor#68 char_cursor#7 -Not aliassing across scopes: char_cursor#69 char_cursor#2 +Not aliassing across scopes: char_cursor#94 char_cursor#7 +Not aliassing across scopes: char_cursor#95 char_cursor#2 Not aliassing across scopes: print_sbyte::b#4 rem8s#13 -Not aliassing across scopes: char_cursor#70 char_cursor#7 -Not aliassing across scopes: line_cursor#24 line_cursor#2 -Not aliassing across scopes: char_cursor#71 char_cursor#4 -Not aliassing across scopes: line_cursor#26 line_cursor#8 -Not aliassing across scopes: char_cursor#73 char_cursor#18 +Not aliassing across scopes: char_cursor#96 char_cursor#7 +Not aliassing across scopes: line_cursor#30 line_cursor#2 +Not aliassing across scopes: char_cursor#97 char_cursor#4 +Not aliassing across scopes: line_cursor#32 line_cursor#9 +Not aliassing across scopes: char_cursor#99 char_cursor#22 Not aliassing across scopes: rem8s#15 rem8s#5 -Alias (byte*) SCREEN#0 = (byte*) line_cursor#0 (byte*) char_cursor#0 (byte*) line_cursor#34 (byte*) char_cursor#87 (byte*) line_cursor#31 (byte*) char_cursor#82 -Alias (byte*) print_str::str#7 = (byte*) print_str::str#8 -Alias (byte*) char_cursor#2 = (byte*) char_cursor#38 (byte*) char_cursor#74 (byte*) char_cursor#39 -Alias (byte*) line_cursor#1 = (byte*~) print_ln::$0 (byte*) line_cursor#15 (byte*) char_cursor#3 (byte*) line_cursor#16 (byte*) char_cursor#41 (byte*) line_cursor#2 (byte*) char_cursor#4 +Not aliassing across scopes: rem16u#14 rem16u#4 +Alias (byte*) SCREEN#0 = (byte*) line_cursor#0 (byte*) char_cursor#0 (byte*) line_cursor#43 (byte*) char_cursor#117 (byte*) line_cursor#42 (byte*) char_cursor#116 (byte*) line_cursor#38 (byte*) char_cursor#110 +Alias (byte*) print_str::str#10 = (byte*) print_str::str#11 +Alias (byte*) char_cursor#100 = (byte*) char_cursor#51 (byte*) char_cursor#52 (byte*) char_cursor#2 +Alias (byte*) line_cursor#1 = (byte*~) print_ln::$0 (byte*) line_cursor#18 (byte*) char_cursor#3 (byte*) line_cursor#19 (byte*) char_cursor#54 (byte*) line_cursor#2 (byte*) char_cursor#4 Alias (byte) print_byte::b#0 = (byte~) print_sbyte::$4 -Alias (byte*) char_cursor#42 = (byte*) char_cursor#5 (byte*) char_cursor#44 (byte*) char_cursor#7 -Alias (byte*) char_cursor#77 = (byte*) char_cursor#84 +Alias (byte*) char_cursor#5 = (byte*) char_cursor#55 (byte*) char_cursor#57 (byte*) char_cursor#7 +Alias (byte*) char_cursor#103 = (byte*) char_cursor#112 Alias (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#8 (signed byte) print_sbyte::b#7 -Alias (byte*) char_cursor#43 = (byte*) char_cursor#6 +Alias (byte*) char_cursor#56 = (byte*) char_cursor#6 Alias (signed byte) print_sbyte::b#0 = (signed byte~) print_sbyte::$3 -Alias (byte) print_byte::b#5 = (byte) print_byte::b#6 -Alias (byte*) char_cursor#45 = (byte*) char_cursor#8 -Alias (byte*) char_cursor#10 = (byte*) char_cursor#9 (byte*) char_cursor#46 (byte*) char_cursor#47 -Alias (byte*) char_cursor#11 = (byte*) char_cursor#49 (byte*) char_cursor#12 -Alias (byte*) line_cursor#17 = (byte*) char_cursor#13 (byte*) line_cursor#3 (byte*) char_cursor#50 (byte*) line_cursor#4 (byte*) char_cursor#14 +Alias (byte) print_byte::b#1 = (byte~) print_word::$0 +Alias (word) print_word::w#4 = (word) print_word::w#5 +Alias (byte*) char_cursor#58 = (byte*) char_cursor#8 +Alias (byte) print_byte::b#2 = (byte~) print_word::$2 +Alias (byte*) char_cursor#10 = (byte*) char_cursor#9 (byte*) char_cursor#59 (byte*) char_cursor#60 +Alias (byte) print_byte::b#7 = (byte) print_byte::b#8 +Alias (byte*) char_cursor#11 = (byte*) char_cursor#61 +Alias (byte*) char_cursor#12 = (byte*) char_cursor#62 (byte*) char_cursor#63 (byte*) char_cursor#13 +Alias (byte*) char_cursor#14 = (byte*) char_cursor#65 (byte*) char_cursor#15 +Alias (byte*) line_cursor#20 = (byte*) char_cursor#16 (byte*) line_cursor#3 (byte*) char_cursor#66 (byte*) line_cursor#4 (byte*) char_cursor#17 Alias (byte) div8u::rem#1 = (byte~) div8u::$0 (byte) div8u::rem#6 Alias (byte) div8u::dividend#0 = (byte~) div8u::$4 (byte) div8u::dividend#8 Alias (byte) div8u::quotient#1 = (byte~) div8u::$5 (byte) div8u::quotient#4 @@ -2565,70 +3093,112 @@ Alias (signed byte) rem8s#2 = (signed byte~) div8s::$15 Alias (signed byte) div8s::return#1 = (signed byte~) div8s::$16 Alias (signed byte) div8s::return#2 = (signed byte) div8s::return#4 Alias (signed byte) rem8s#3 = (signed byte) rem8s#9 +Alias (signed byte) rem8s#0 = (signed byte) rem8s#27 (signed byte) rem8s#21 +Alias (word) div16u::rem#1 = (word~) div16u::$0 (word) div16u::rem#6 +Alias (word) div16u::dividend#0 = (word~) div16u::$5 (word) div16u::dividend#7 +Alias (word) div16u::quotient#1 = (word~) div16u::$6 (word) div16u::quotient#4 +Alias (word) div16u::dividend#2 = (word) div16u::dividend#6 +Alias (word) div16u::quotient#6 = (word) div16u::quotient#7 +Alias (word) div16u::divisor#3 = (word) div16u::divisor#4 +Alias (byte) div16u::i#5 = (byte) div16u::i#6 +Alias (word) div16u::rem#5 = (word) div16u::rem#7 +Alias (word) div16u::divisor#1 = (word) div16u::divisor#2 +Alias (byte) div16u::i#3 = (byte) div16u::i#4 +Alias (word) div16u::rem#3 = (word~) div16u::$9 +Alias (word) div16u::rem#8 = (word) div16u::rem#9 +Alias (word) div16u::return#0 = (word) div16u::quotient#5 (word) div16u::quotient#8 (word) div16u::return#3 (word) div16u::return#1 +Alias (word) rem16u#1 = (word) rem16u#8 (word) rem16u#2 Alias (signed byte) rem8s#16 = (signed byte) rem8s#22 -Alias (byte*) line_cursor#18 = (byte*) line_cursor#5 -Alias (byte*) char_cursor#15 = (byte*) char_cursor#51 -Alias (signed byte) rem8s#10 = (signed byte) rem8s#4 (signed byte) rem8s#17 (signed byte) rem8s#11 (signed byte) rem8s#5 -Alias (byte*) char_cursor#16 = (byte*) char_cursor#52 -Alias (byte*) line_cursor#19 = (byte*) line_cursor#6 -Alias (byte*) char_cursor#17 = (byte*) char_cursor#53 (byte*) char_cursor#54 (byte*) char_cursor#18 -Alias (byte*) line_cursor#20 = (byte*) line_cursor#7 (byte*) line_cursor#21 (byte*) line_cursor#8 +Alias (word) rem16u#15 = (word) rem16u#24 (word) rem16u#26 (word) rem16u#20 +Alias (byte*) line_cursor#21 = (byte*) line_cursor#5 +Alias (byte*) char_cursor#18 = (byte*) char_cursor#67 +Alias (signed byte) rem8s#10 = (signed byte) rem8s#4 (signed byte) rem8s#23 (signed byte) rem8s#17 (signed byte) rem8s#11 (signed byte) rem8s#5 +Alias (byte*) char_cursor#19 = (byte*) char_cursor#68 +Alias (byte*) line_cursor#22 = (byte*) line_cursor#6 +Alias (byte*) char_cursor#20 = (byte*) char_cursor#69 +Alias (byte*) line_cursor#23 = (byte*) line_cursor#7 +Alias (word) rem16u#10 = (word) rem16u#3 (word) rem16u#9 (word) rem16u#4 +Alias (byte*) char_cursor#21 = (byte*) char_cursor#70 (byte*) char_cursor#71 (byte*) char_cursor#22 +Alias (byte*) line_cursor#24 = (byte*) line_cursor#8 (byte*) line_cursor#25 (byte*) line_cursor#9 +Alias (word) div16u::return#2 = (word) div16u::return#4 +Alias (word) test_16u::dividend#0 = (word) test_16u::dividend#1 +Alias (byte*) char_cursor#107 = (byte*) char_cursor#113 +Alias (word) test_16u::divisor#0 = (word) test_16u::divisor#3 (word) test_16u::divisor#2 (word) test_16u::divisor#1 +Alias (byte*) line_cursor#35 = (byte*) line_cursor#59 (byte*) line_cursor#62 (byte*) line_cursor#56 (byte*) line_cursor#53 (byte*) line_cursor#50 (byte*) line_cursor#47 (byte*) line_cursor#44 (byte*) line_cursor#39 +Alias (byte) test_16u::i#10 = (byte) test_16u::i#11 (byte) test_16u::i#2 (byte) test_16u::i#9 (byte) test_16u::i#8 (byte) test_16u::i#7 (byte) test_16u::i#6 (byte) test_16u::i#5 (byte) test_16u::i#4 (byte) test_16u::i#3 +Alias (word) rem16u#11 = (word) rem16u#5 (word) rem16u#28 (word) rem16u#27 (word) rem16u#25 (word) rem16u#22 (word) rem16u#17 (word) rem16u#12 (word) rem16u#23 (word) rem16u#18 (word) rem16u#13 (word) rem16u#6 +Alias (word) test_16u::res#0 = (word~) test_16u::$0 (word) test_16u::res#4 (word) test_16u::res#3 (word) test_16u::res#2 (word) test_16u::res#1 +Alias (byte*) char_cursor#23 = (byte*) char_cursor#72 +Alias (byte*) char_cursor#24 = (byte*) char_cursor#73 +Alias (byte*) char_cursor#25 = (byte*) char_cursor#74 +Alias (byte*) char_cursor#26 = (byte*) char_cursor#75 +Alias (byte*) char_cursor#27 = (byte*) char_cursor#76 +Alias (byte*) char_cursor#28 = (byte*) char_cursor#77 +Alias (byte*) char_cursor#29 = (byte*) char_cursor#78 +Alias (byte*) line_cursor#10 = (byte*) line_cursor#26 (byte*) line_cursor#27 (byte*) line_cursor#11 +Alias (byte*) char_cursor#30 = (byte*) char_cursor#79 (byte*) char_cursor#80 (byte*) char_cursor#31 +Alias (byte) test_16u::i#1 = (byte/word~) test_16u::$9 Alias (byte*) div8u::remainder#1 = (byte*~) test_8u::$0 Alias (byte) div8u::return#3 = (byte) div8u::return#6 Alias (byte) test_8u::dividend#0 = (byte) test_8u::dividend#1 -Alias (byte*) char_cursor#80 = (byte*) char_cursor#85 +Alias (byte*) char_cursor#108 = (byte*) char_cursor#114 Alias (byte) test_8u::divisor#0 = (byte) test_8u::divisor#3 (byte) test_8u::divisor#2 (byte) test_8u::divisor#1 Alias (byte) test_8u::rem#1 = (byte) test_8u::rem#10 (byte) test_8u::rem#9 (byte) test_8u::rem#8 (byte) test_8u::rem#7 (byte) test_8u::rem#5 (byte) test_8u::rem#4 (byte) test_8u::rem#2 (byte) test_8u::rem#6 (byte) test_8u::rem#3 -Alias (byte*) line_cursor#29 = (byte*) line_cursor#45 (byte*) line_cursor#47 (byte*) line_cursor#43 (byte*) line_cursor#41 (byte*) line_cursor#39 (byte*) line_cursor#37 (byte*) line_cursor#35 (byte*) line_cursor#32 +Alias (byte*) line_cursor#36 = (byte*) line_cursor#60 (byte*) line_cursor#63 (byte*) line_cursor#57 (byte*) line_cursor#54 (byte*) line_cursor#51 (byte*) line_cursor#48 (byte*) line_cursor#45 (byte*) line_cursor#40 Alias (byte) test_8u::i#10 = (byte) test_8u::i#11 (byte) test_8u::i#2 (byte) test_8u::i#9 (byte) test_8u::i#8 (byte) test_8u::i#7 (byte) test_8u::i#6 (byte) test_8u::i#5 (byte) test_8u::i#4 (byte) test_8u::i#3 Alias (byte) test_8u::res#0 = (byte~) test_8u::$1 (byte) test_8u::res#4 (byte) test_8u::res#3 (byte) test_8u::res#2 (byte) test_8u::res#1 -Alias (byte*) char_cursor#19 = (byte*) char_cursor#55 -Alias (byte*) char_cursor#20 = (byte*) char_cursor#56 -Alias (byte*) char_cursor#21 = (byte*) char_cursor#57 -Alias (byte*) char_cursor#22 = (byte*) char_cursor#58 -Alias (byte*) char_cursor#23 = (byte*) char_cursor#59 -Alias (byte*) char_cursor#24 = (byte*) char_cursor#60 -Alias (byte*) char_cursor#25 = (byte*) char_cursor#61 -Alias (byte*) line_cursor#10 = (byte*) line_cursor#9 (byte*) line_cursor#22 (byte*) line_cursor#23 -Alias (byte*) char_cursor#26 = (byte*) char_cursor#62 (byte*) char_cursor#63 (byte*) char_cursor#27 +Alias (byte*) char_cursor#32 = (byte*) char_cursor#81 +Alias (byte*) char_cursor#33 = (byte*) char_cursor#82 +Alias (byte*) char_cursor#34 = (byte*) char_cursor#83 +Alias (byte*) char_cursor#35 = (byte*) char_cursor#84 +Alias (byte*) char_cursor#36 = (byte*) char_cursor#85 +Alias (byte*) char_cursor#37 = (byte*) char_cursor#86 +Alias (byte*) char_cursor#38 = (byte*) char_cursor#87 +Alias (byte*) line_cursor#12 = (byte*) line_cursor#28 (byte*) line_cursor#29 (byte*) line_cursor#13 +Alias (byte*) char_cursor#39 = (byte*) char_cursor#88 (byte*) char_cursor#89 (byte*) char_cursor#40 Alias (signed byte) div8s::return#3 = (signed byte) div8s::return#5 Alias (signed byte) test_8s::dividend#0 = (signed byte) test_8s::dividend#1 -Alias (byte*) char_cursor#81 = (byte*) char_cursor#86 +Alias (byte*) char_cursor#109 = (byte*) char_cursor#115 Alias (signed byte) test_8s::divisor#0 = (signed byte) test_8s::divisor#3 (signed byte) test_8s::divisor#2 (signed byte) test_8s::divisor#1 -Alias (byte*) line_cursor#30 = (byte*) line_cursor#46 (byte*) line_cursor#48 (byte*) line_cursor#44 (byte*) line_cursor#42 (byte*) line_cursor#40 (byte*) line_cursor#38 (byte*) line_cursor#36 (byte*) line_cursor#33 +Alias (byte*) line_cursor#37 = (byte*) line_cursor#61 (byte*) line_cursor#64 (byte*) line_cursor#58 (byte*) line_cursor#55 (byte*) line_cursor#52 (byte*) line_cursor#49 (byte*) line_cursor#46 (byte*) line_cursor#41 Alias (byte) test_8s::i#10 = (byte) test_8s::i#11 (byte) test_8s::i#2 (byte) test_8s::i#9 (byte) test_8s::i#8 (byte) test_8s::i#7 (byte) test_8s::i#6 (byte) test_8s::i#5 (byte) test_8s::i#4 (byte) test_8s::i#3 -Alias (signed byte) rem8s#12 = (signed byte) rem8s#6 (signed byte) rem8s#28 (signed byte) rem8s#27 (signed byte) rem8s#26 (signed byte) rem8s#24 (signed byte) rem8s#19 (signed byte) rem8s#13 (signed byte) rem8s#25 (signed byte) rem8s#20 (signed byte) rem8s#14 (signed byte) rem8s#7 +Alias (signed byte) rem8s#12 = (signed byte) rem8s#6 (signed byte) rem8s#30 (signed byte) rem8s#29 (signed byte) rem8s#28 (signed byte) rem8s#25 (signed byte) rem8s#19 (signed byte) rem8s#13 (signed byte) rem8s#26 (signed byte) rem8s#20 (signed byte) rem8s#14 (signed byte) rem8s#7 Alias (signed byte) test_8s::res#0 = (signed byte~) test_8s::$4 (signed byte) test_8s::res#4 (signed byte) test_8s::res#3 (signed byte) test_8s::res#2 (signed byte) test_8s::res#1 -Alias (byte*) char_cursor#28 = (byte*) char_cursor#64 -Alias (byte*) char_cursor#29 = (byte*) char_cursor#65 -Alias (byte*) char_cursor#30 = (byte*) char_cursor#66 -Alias (byte*) char_cursor#31 = (byte*) char_cursor#67 -Alias (byte*) char_cursor#32 = (byte*) char_cursor#68 -Alias (byte*) char_cursor#33 = (byte*) char_cursor#69 -Alias (byte*) char_cursor#34 = (byte*) char_cursor#70 -Alias (byte*) line_cursor#11 = (byte*) line_cursor#24 (byte*) line_cursor#25 (byte*) line_cursor#12 -Alias (byte*) char_cursor#35 = (byte*) char_cursor#71 (byte*) char_cursor#72 (byte*) char_cursor#36 -Alias (signed byte) rem8s#0 = (signed byte) rem8s#21 -Alias (byte*) line_cursor#13 = (byte*) line_cursor#26 -Alias (byte*) char_cursor#37 = (byte*) char_cursor#73 +Alias (byte*) char_cursor#41 = (byte*) char_cursor#90 +Alias (byte*) char_cursor#42 = (byte*) char_cursor#91 +Alias (byte*) char_cursor#43 = (byte*) char_cursor#92 +Alias (byte*) char_cursor#44 = (byte*) char_cursor#93 +Alias (byte*) char_cursor#45 = (byte*) char_cursor#94 +Alias (byte*) char_cursor#46 = (byte*) char_cursor#95 +Alias (byte*) char_cursor#47 = (byte*) char_cursor#96 +Alias (byte*) line_cursor#14 = (byte*) line_cursor#30 (byte*) line_cursor#31 (byte*) line_cursor#15 +Alias (byte*) char_cursor#48 = (byte*) char_cursor#97 (byte*) char_cursor#98 (byte*) char_cursor#49 +Alias (word) rem16u#0 = (word) rem16u#19 +Alias (byte*) line_cursor#16 = (byte*) line_cursor#32 +Alias (byte*) char_cursor#50 = (byte*) char_cursor#99 Alias (signed byte) rem8s#15 = (signed byte) rem8s#8 +Alias (word) rem16u#14 = (word) rem16u#7 Succesful SSA optimization Pass2AliasElimination -Not aliassing across scopes: print_str::str#9 print_str::str#4 -Not aliassing across scopes: char_cursor#83 char_cursor#28 -Not aliassing across scopes: line_cursor#27 line_cursor#30 -Not aliassing across scopes: char_cursor#75 char_cursor#34 +Not aliassing across scopes: print_str::str#12 print_str::str#1 +Not aliassing across scopes: char_cursor#111 char_cursor#23 +Not aliassing across scopes: line_cursor#33 line_cursor#35 +Not aliassing across scopes: char_cursor#101 char_cursor#29 Not aliassing across scopes: print_sbyte::b#5 print_sbyte::b#1 -Not aliassing across scopes: char_cursor#77 char_cursor#81 -Not aliassing across scopes: char_cursor#42 char_cursor#10 -Not aliassing across scopes: char_cursor#43 char_cursor#11 -Not aliassing across scopes: print_byte::b#5 print_byte::b#0 -Not aliassing across scopes: char_cursor#78 char_cursor#76 -Not aliassing across scopes: char_cursor#45 char_cursor#11 -Not aliassing across scopes: char_cursor#10 char_cursor#11 +Not aliassing across scopes: char_cursor#103 char_cursor#109 +Not aliassing across scopes: char_cursor#5 char_cursor#12 +Not aliassing across scopes: char_cursor#56 char_cursor#14 +Not aliassing across scopes: print_word::w#4 print_word::w#0 +Not aliassing across scopes: char_cursor#104 char_cursor#107 +Not aliassing across scopes: char_cursor#58 char_cursor#12 +Not aliassing across scopes: char_cursor#10 char_cursor#12 +Not aliassing across scopes: print_byte::b#7 print_byte::b#0 +Not aliassing across scopes: char_cursor#105 char_cursor#102 +Not aliassing across scopes: char_cursor#11 char_cursor#14 +Not aliassing across scopes: char_cursor#12 char_cursor#14 Not aliassing across scopes: print_char::ch#3 print_char::ch#1 -Not aliassing across scopes: char_cursor#48 char_cursor#78 +Not aliassing across scopes: char_cursor#64 char_cursor#105 Not aliassing across scopes: print_cls::sc#0 SCREEN#0 -Not aliassing across scopes: line_cursor#17 SCREEN#0 +Not aliassing across scopes: line_cursor#20 SCREEN#0 Not aliassing across scopes: div8u::dividend#5 div8u::dividend#1 Not aliassing across scopes: div8u::divisor#6 div8u::divisor#0 Not aliassing across scopes: div8u::remainder#8 div8u::remainder#0 @@ -2638,59 +3208,88 @@ Not aliassing across scopes: div8u::dividend#1 div8s::dividendb#3 Not aliassing across scopes: div8u::divisor#0 div8s::divisorb#3 Not aliassing across scopes: div8u::return#2 div8u::return#0 Not aliassing across scopes: div8s::resultb#0 div8u::return#2 -Not aliassing across scopes: line_cursor#28 SCREEN#0 -Not aliassing across scopes: char_cursor#79 SCREEN#0 +Not aliassing across scopes: div16u::dividend#4 div16u::dividend#1 +Not aliassing across scopes: div16u::divisor#5 div16u::divisor#0 +Not aliassing across scopes: rem16u#1 div16u::rem#8 +Not aliassing across scopes: line_cursor#34 SCREEN#0 +Not aliassing across scopes: char_cursor#106 SCREEN#0 Not aliassing across scopes: rem8s#16 rem8s#0 -Not aliassing across scopes: line_cursor#18 line_cursor#17 -Not aliassing across scopes: char_cursor#15 line_cursor#17 +Not aliassing across scopes: rem16u#15 rem16u#0 +Not aliassing across scopes: line_cursor#21 line_cursor#20 +Not aliassing across scopes: char_cursor#18 line_cursor#20 Not aliassing across scopes: rem8s#10 rem8s#12 -Not aliassing across scopes: char_cursor#16 char_cursor#35 -Not aliassing across scopes: line_cursor#19 line_cursor#11 -Not aliassing across scopes: char_cursor#17 char_cursor#26 -Not aliassing across scopes: line_cursor#20 line_cursor#10 -Not aliassing across scopes: char_cursor#88 char_cursor#16 -Not aliassing across scopes: line_cursor#49 line_cursor#19 +Not aliassing across scopes: char_cursor#19 char_cursor#48 +Not aliassing across scopes: line_cursor#22 line_cursor#14 +Not aliassing across scopes: char_cursor#20 char_cursor#39 +Not aliassing across scopes: line_cursor#23 line_cursor#12 +Not aliassing across scopes: rem16u#10 rem16u#11 +Not aliassing across scopes: char_cursor#21 char_cursor#30 +Not aliassing across scopes: line_cursor#24 line_cursor#10 +Not aliassing across scopes: rem16u#21 rem16u#15 +Not aliassing across scopes: char_cursor#118 char_cursor#20 +Not aliassing across scopes: line_cursor#65 line_cursor#23 +Not aliassing across scopes: div16u::dividend#1 test_16u::dividend#0 +Not aliassing across scopes: div16u::divisor#0 test_16u::divisor#0 +Not aliassing across scopes: div16u::return#2 div16u::return#0 +Not aliassing across scopes: rem16u#11 rem16u#1 +Not aliassing across scopes: test_16u::res#0 div16u::return#2 +Not aliassing across scopes: print_word::w#0 test_16u::dividend#0 +Not aliassing across scopes: char_cursor#23 char_cursor#10 +Not aliassing across scopes: char_cursor#24 char_cursor#100 +Not aliassing across scopes: print_word::w#1 test_16u::divisor#0 +Not aliassing across scopes: char_cursor#25 char_cursor#10 +Not aliassing across scopes: char_cursor#26 char_cursor#100 +Not aliassing across scopes: print_word::w#2 test_16u::res#0 +Not aliassing across scopes: char_cursor#27 char_cursor#10 +Not aliassing across scopes: char_cursor#28 char_cursor#100 +Not aliassing across scopes: print_word::w#3 rem16u#11 +Not aliassing across scopes: char_cursor#29 char_cursor#10 +Not aliassing across scopes: line_cursor#10 line_cursor#1 +Not aliassing across scopes: char_cursor#30 line_cursor#1 +Not aliassing across scopes: char_cursor#119 char_cursor#19 +Not aliassing across scopes: line_cursor#66 line_cursor#22 Not aliassing across scopes: div8u::dividend#2 test_8u::dividend#0 Not aliassing across scopes: div8u::divisor#1 test_8u::divisor#0 Not aliassing across scopes: div8u::return#3 div8u::return#0 Not aliassing across scopes: test_8u::res#0 div8u::return#3 -Not aliassing across scopes: print_byte::b#1 test_8u::dividend#0 -Not aliassing across scopes: char_cursor#19 char_cursor#10 -Not aliassing across scopes: char_cursor#20 char_cursor#2 -Not aliassing across scopes: print_byte::b#2 test_8u::divisor#0 -Not aliassing across scopes: char_cursor#21 char_cursor#10 -Not aliassing across scopes: char_cursor#22 char_cursor#2 -Not aliassing across scopes: print_byte::b#3 test_8u::res#0 -Not aliassing across scopes: char_cursor#23 char_cursor#10 -Not aliassing across scopes: char_cursor#24 char_cursor#2 -Not aliassing across scopes: print_byte::b#4 test_8u::rem#1 -Not aliassing across scopes: char_cursor#25 char_cursor#10 -Not aliassing across scopes: line_cursor#10 line_cursor#1 -Not aliassing across scopes: char_cursor#26 line_cursor#1 -Not aliassing across scopes: rem8s#23 rem8s#16 -Not aliassing across scopes: char_cursor#89 char_cursor#15 -Not aliassing across scopes: line_cursor#50 line_cursor#18 +Not aliassing across scopes: print_byte::b#3 test_8u::dividend#0 +Not aliassing across scopes: char_cursor#32 char_cursor#12 +Not aliassing across scopes: char_cursor#33 char_cursor#100 +Not aliassing across scopes: print_byte::b#4 test_8u::divisor#0 +Not aliassing across scopes: char_cursor#34 char_cursor#12 +Not aliassing across scopes: char_cursor#35 char_cursor#100 +Not aliassing across scopes: print_byte::b#5 test_8u::res#0 +Not aliassing across scopes: char_cursor#36 char_cursor#12 +Not aliassing across scopes: char_cursor#37 char_cursor#100 +Not aliassing across scopes: print_byte::b#6 test_8u::rem#1 +Not aliassing across scopes: char_cursor#38 char_cursor#12 +Not aliassing across scopes: line_cursor#12 line_cursor#1 +Not aliassing across scopes: char_cursor#39 line_cursor#1 +Not aliassing across scopes: rem8s#24 rem8s#16 +Not aliassing across scopes: char_cursor#120 char_cursor#18 +Not aliassing across scopes: line_cursor#67 line_cursor#21 Not aliassing across scopes: div8s::dividend#0 test_8s::dividend#0 Not aliassing across scopes: div8s::divisor#0 test_8s::divisor#0 Not aliassing across scopes: div8s::return#3 div8s::return#2 Not aliassing across scopes: rem8s#12 rem8s#3 Not aliassing across scopes: test_8s::res#0 div8s::return#3 Not aliassing across scopes: print_sbyte::b#1 test_8s::dividend#0 -Not aliassing across scopes: char_cursor#28 char_cursor#42 -Not aliassing across scopes: char_cursor#29 char_cursor#2 +Not aliassing across scopes: char_cursor#41 char_cursor#5 +Not aliassing across scopes: char_cursor#42 char_cursor#100 Not aliassing across scopes: print_sbyte::b#2 test_8s::divisor#0 -Not aliassing across scopes: char_cursor#30 char_cursor#42 -Not aliassing across scopes: char_cursor#31 char_cursor#2 +Not aliassing across scopes: char_cursor#43 char_cursor#5 +Not aliassing across scopes: char_cursor#44 char_cursor#100 Not aliassing across scopes: print_sbyte::b#3 test_8s::res#0 -Not aliassing across scopes: char_cursor#32 char_cursor#42 -Not aliassing across scopes: char_cursor#33 char_cursor#2 +Not aliassing across scopes: char_cursor#45 char_cursor#5 +Not aliassing across scopes: char_cursor#46 char_cursor#100 Not aliassing across scopes: print_sbyte::b#4 rem8s#12 -Not aliassing across scopes: char_cursor#34 char_cursor#42 -Not aliassing across scopes: line_cursor#11 line_cursor#1 -Not aliassing across scopes: char_cursor#35 line_cursor#1 -Not aliassing across scopes: line_cursor#13 line_cursor#20 -Not aliassing across scopes: char_cursor#37 char_cursor#17 +Not aliassing across scopes: char_cursor#47 char_cursor#5 +Not aliassing across scopes: line_cursor#14 line_cursor#1 +Not aliassing across scopes: char_cursor#48 line_cursor#1 +Not aliassing across scopes: line_cursor#16 line_cursor#24 +Not aliassing across scopes: char_cursor#50 char_cursor#21 Not aliassing across scopes: rem8s#15 rem8s#10 +Not aliassing across scopes: rem16u#14 rem16u#10 Alias (byte) div8u::dividend#3 = (byte) div8u::dividend#4 Alias (byte) div8u::quotient#3 = (byte) div8u::quotient#6 Alias (byte) div8u::divisor#2 = (byte) div8u::divisor#4 (byte) div8u::divisor#7 @@ -2699,23 +3298,32 @@ Alias (byte*) div8u::remainder#2 = (byte*) div8u::remainder#4 (byte*) div8u::rem Alias (byte) div8u::dividend#0 = (byte) div8u::dividend#6 Alias (signed byte) div8s::divisor#1 = (signed byte) div8s::divisor#4 Alias (byte) div8s::dividendb#3 = (byte) div8s::dividendb#4 +Alias (word) div16u::dividend#2 = (word) div16u::dividend#3 +Alias (word) div16u::quotient#3 = (word) div16u::quotient#6 +Alias (word) div16u::divisor#1 = (word) div16u::divisor#3 (word) div16u::divisor#6 +Alias (byte) div16u::i#2 = (byte) div16u::i#3 (byte) div16u::i#5 +Alias (word) div16u::dividend#0 = (word) div16u::dividend#5 Succesful SSA optimization Pass2AliasElimination -Not aliassing across scopes: print_str::str#9 print_str::str#4 -Not aliassing across scopes: char_cursor#83 char_cursor#28 -Not aliassing across scopes: line_cursor#27 line_cursor#30 -Not aliassing across scopes: char_cursor#75 char_cursor#34 +Not aliassing across scopes: print_str::str#12 print_str::str#1 +Not aliassing across scopes: char_cursor#111 char_cursor#23 +Not aliassing across scopes: line_cursor#33 line_cursor#35 +Not aliassing across scopes: char_cursor#101 char_cursor#29 Not aliassing across scopes: print_sbyte::b#5 print_sbyte::b#1 -Not aliassing across scopes: char_cursor#77 char_cursor#81 -Not aliassing across scopes: char_cursor#42 char_cursor#10 -Not aliassing across scopes: char_cursor#43 char_cursor#11 -Not aliassing across scopes: print_byte::b#5 print_byte::b#0 -Not aliassing across scopes: char_cursor#78 char_cursor#76 -Not aliassing across scopes: char_cursor#45 char_cursor#11 -Not aliassing across scopes: char_cursor#10 char_cursor#11 +Not aliassing across scopes: char_cursor#103 char_cursor#109 +Not aliassing across scopes: char_cursor#5 char_cursor#12 +Not aliassing across scopes: char_cursor#56 char_cursor#14 +Not aliassing across scopes: print_word::w#4 print_word::w#0 +Not aliassing across scopes: char_cursor#104 char_cursor#107 +Not aliassing across scopes: char_cursor#58 char_cursor#12 +Not aliassing across scopes: char_cursor#10 char_cursor#12 +Not aliassing across scopes: print_byte::b#7 print_byte::b#0 +Not aliassing across scopes: char_cursor#105 char_cursor#102 +Not aliassing across scopes: char_cursor#11 char_cursor#14 +Not aliassing across scopes: char_cursor#12 char_cursor#14 Not aliassing across scopes: print_char::ch#3 print_char::ch#1 -Not aliassing across scopes: char_cursor#48 char_cursor#78 +Not aliassing across scopes: char_cursor#64 char_cursor#105 Not aliassing across scopes: print_cls::sc#0 SCREEN#0 -Not aliassing across scopes: line_cursor#17 SCREEN#0 +Not aliassing across scopes: line_cursor#20 SCREEN#0 Not aliassing across scopes: div8u::dividend#5 div8u::dividend#1 Not aliassing across scopes: div8u::divisor#6 div8u::divisor#0 Not aliassing across scopes: div8u::remainder#8 div8u::remainder#0 @@ -2725,119 +3333,174 @@ Not aliassing across scopes: div8u::dividend#1 div8s::dividendb#3 Not aliassing across scopes: div8u::divisor#0 div8s::divisorb#3 Not aliassing across scopes: div8u::return#2 div8u::return#0 Not aliassing across scopes: div8s::resultb#0 div8u::return#2 -Not aliassing across scopes: line_cursor#28 SCREEN#0 -Not aliassing across scopes: char_cursor#79 SCREEN#0 +Not aliassing across scopes: div16u::dividend#4 div16u::dividend#1 +Not aliassing across scopes: div16u::divisor#5 div16u::divisor#0 +Not aliassing across scopes: rem16u#1 div16u::rem#8 +Not aliassing across scopes: line_cursor#34 SCREEN#0 +Not aliassing across scopes: char_cursor#106 SCREEN#0 Not aliassing across scopes: rem8s#16 rem8s#0 -Not aliassing across scopes: line_cursor#18 line_cursor#17 -Not aliassing across scopes: char_cursor#15 line_cursor#17 +Not aliassing across scopes: rem16u#15 rem16u#0 +Not aliassing across scopes: line_cursor#21 line_cursor#20 +Not aliassing across scopes: char_cursor#18 line_cursor#20 Not aliassing across scopes: rem8s#10 rem8s#12 -Not aliassing across scopes: char_cursor#16 char_cursor#35 -Not aliassing across scopes: line_cursor#19 line_cursor#11 -Not aliassing across scopes: char_cursor#17 char_cursor#26 -Not aliassing across scopes: line_cursor#20 line_cursor#10 -Not aliassing across scopes: char_cursor#88 char_cursor#16 -Not aliassing across scopes: line_cursor#49 line_cursor#19 +Not aliassing across scopes: char_cursor#19 char_cursor#48 +Not aliassing across scopes: line_cursor#22 line_cursor#14 +Not aliassing across scopes: char_cursor#20 char_cursor#39 +Not aliassing across scopes: line_cursor#23 line_cursor#12 +Not aliassing across scopes: rem16u#10 rem16u#11 +Not aliassing across scopes: char_cursor#21 char_cursor#30 +Not aliassing across scopes: line_cursor#24 line_cursor#10 +Not aliassing across scopes: rem16u#21 rem16u#15 +Not aliassing across scopes: char_cursor#118 char_cursor#20 +Not aliassing across scopes: line_cursor#65 line_cursor#23 +Not aliassing across scopes: div16u::dividend#1 test_16u::dividend#0 +Not aliassing across scopes: div16u::divisor#0 test_16u::divisor#0 +Not aliassing across scopes: div16u::return#2 div16u::return#0 +Not aliassing across scopes: rem16u#11 rem16u#1 +Not aliassing across scopes: test_16u::res#0 div16u::return#2 +Not aliassing across scopes: print_word::w#0 test_16u::dividend#0 +Not aliassing across scopes: char_cursor#23 char_cursor#10 +Not aliassing across scopes: char_cursor#24 char_cursor#100 +Not aliassing across scopes: print_word::w#1 test_16u::divisor#0 +Not aliassing across scopes: char_cursor#25 char_cursor#10 +Not aliassing across scopes: char_cursor#26 char_cursor#100 +Not aliassing across scopes: print_word::w#2 test_16u::res#0 +Not aliassing across scopes: char_cursor#27 char_cursor#10 +Not aliassing across scopes: char_cursor#28 char_cursor#100 +Not aliassing across scopes: print_word::w#3 rem16u#11 +Not aliassing across scopes: char_cursor#29 char_cursor#10 +Not aliassing across scopes: line_cursor#10 line_cursor#1 +Not aliassing across scopes: char_cursor#30 line_cursor#1 +Not aliassing across scopes: char_cursor#119 char_cursor#19 +Not aliassing across scopes: line_cursor#66 line_cursor#22 Not aliassing across scopes: div8u::dividend#2 test_8u::dividend#0 Not aliassing across scopes: div8u::divisor#1 test_8u::divisor#0 Not aliassing across scopes: div8u::return#3 div8u::return#0 Not aliassing across scopes: test_8u::res#0 div8u::return#3 -Not aliassing across scopes: print_byte::b#1 test_8u::dividend#0 -Not aliassing across scopes: char_cursor#19 char_cursor#10 -Not aliassing across scopes: char_cursor#20 char_cursor#2 -Not aliassing across scopes: print_byte::b#2 test_8u::divisor#0 -Not aliassing across scopes: char_cursor#21 char_cursor#10 -Not aliassing across scopes: char_cursor#22 char_cursor#2 -Not aliassing across scopes: print_byte::b#3 test_8u::res#0 -Not aliassing across scopes: char_cursor#23 char_cursor#10 -Not aliassing across scopes: char_cursor#24 char_cursor#2 -Not aliassing across scopes: print_byte::b#4 test_8u::rem#1 -Not aliassing across scopes: char_cursor#25 char_cursor#10 -Not aliassing across scopes: line_cursor#10 line_cursor#1 -Not aliassing across scopes: char_cursor#26 line_cursor#1 -Not aliassing across scopes: rem8s#23 rem8s#16 -Not aliassing across scopes: char_cursor#89 char_cursor#15 -Not aliassing across scopes: line_cursor#50 line_cursor#18 +Not aliassing across scopes: print_byte::b#3 test_8u::dividend#0 +Not aliassing across scopes: char_cursor#32 char_cursor#12 +Not aliassing across scopes: char_cursor#33 char_cursor#100 +Not aliassing across scopes: print_byte::b#4 test_8u::divisor#0 +Not aliassing across scopes: char_cursor#34 char_cursor#12 +Not aliassing across scopes: char_cursor#35 char_cursor#100 +Not aliassing across scopes: print_byte::b#5 test_8u::res#0 +Not aliassing across scopes: char_cursor#36 char_cursor#12 +Not aliassing across scopes: char_cursor#37 char_cursor#100 +Not aliassing across scopes: print_byte::b#6 test_8u::rem#1 +Not aliassing across scopes: char_cursor#38 char_cursor#12 +Not aliassing across scopes: line_cursor#12 line_cursor#1 +Not aliassing across scopes: char_cursor#39 line_cursor#1 +Not aliassing across scopes: rem8s#24 rem8s#16 +Not aliassing across scopes: char_cursor#120 char_cursor#18 +Not aliassing across scopes: line_cursor#67 line_cursor#21 Not aliassing across scopes: div8s::dividend#0 test_8s::dividend#0 Not aliassing across scopes: div8s::divisor#0 test_8s::divisor#0 Not aliassing across scopes: div8s::return#3 div8s::return#2 Not aliassing across scopes: rem8s#12 rem8s#3 Not aliassing across scopes: test_8s::res#0 div8s::return#3 Not aliassing across scopes: print_sbyte::b#1 test_8s::dividend#0 -Not aliassing across scopes: char_cursor#28 char_cursor#42 -Not aliassing across scopes: char_cursor#29 char_cursor#2 +Not aliassing across scopes: char_cursor#41 char_cursor#5 +Not aliassing across scopes: char_cursor#42 char_cursor#100 Not aliassing across scopes: print_sbyte::b#2 test_8s::divisor#0 -Not aliassing across scopes: char_cursor#30 char_cursor#42 -Not aliassing across scopes: char_cursor#31 char_cursor#2 +Not aliassing across scopes: char_cursor#43 char_cursor#5 +Not aliassing across scopes: char_cursor#44 char_cursor#100 Not aliassing across scopes: print_sbyte::b#3 test_8s::res#0 -Not aliassing across scopes: char_cursor#32 char_cursor#42 -Not aliassing across scopes: char_cursor#33 char_cursor#2 +Not aliassing across scopes: char_cursor#45 char_cursor#5 +Not aliassing across scopes: char_cursor#46 char_cursor#100 Not aliassing across scopes: print_sbyte::b#4 rem8s#12 -Not aliassing across scopes: char_cursor#34 char_cursor#42 -Not aliassing across scopes: line_cursor#11 line_cursor#1 -Not aliassing across scopes: char_cursor#35 line_cursor#1 -Not aliassing across scopes: line_cursor#13 line_cursor#20 -Not aliassing across scopes: char_cursor#37 char_cursor#17 +Not aliassing across scopes: char_cursor#47 char_cursor#5 +Not aliassing across scopes: line_cursor#14 line_cursor#1 +Not aliassing across scopes: char_cursor#48 line_cursor#1 +Not aliassing across scopes: line_cursor#16 line_cursor#24 +Not aliassing across scopes: char_cursor#50 char_cursor#21 Not aliassing across scopes: rem8s#15 rem8s#10 -Self Phi Eliminated (byte*) char_cursor#40 +Not aliassing across scopes: rem16u#14 rem16u#10 +Self Phi Eliminated (byte*) char_cursor#53 Self Phi Eliminated (byte) div8u::divisor#2 Self Phi Eliminated (byte*) div8u::remainder#2 +Self Phi Eliminated (word) div16u::divisor#1 Self Phi Eliminated (byte) test_8u::rem#1 Succesful SSA optimization Pass2SelfPhiElimination -Redundant Phi (byte*) char_cursor#40 (byte*) char_cursor#75 -Redundant Phi (byte*) char_cursor#42 (byte*) char_cursor#10 -Redundant Phi (byte*) char_cursor#43 (byte*) char_cursor#11 -Redundant Phi (byte*) char_cursor#45 (byte*) char_cursor#11 -Redundant Phi (byte*) char_cursor#10 (byte*) char_cursor#11 +Redundant Phi (byte*) char_cursor#53 (byte*) char_cursor#101 +Redundant Phi (byte*) char_cursor#5 (byte*) char_cursor#12 +Redundant Phi (byte*) char_cursor#56 (byte*) char_cursor#14 +Redundant Phi (byte*) char_cursor#58 (byte*) char_cursor#12 +Redundant Phi (byte*) char_cursor#10 (byte*) char_cursor#12 +Redundant Phi (byte*) char_cursor#11 (byte*) char_cursor#14 +Redundant Phi (byte*) char_cursor#12 (byte*) char_cursor#14 Redundant Phi (byte) div8u::divisor#2 (byte) div8u::divisor#6 Redundant Phi (byte*) div8u::remainder#2 (byte*) div8u::remainder#8 Redundant Phi (signed byte) div8s::dividend#1 (signed byte) div8s::dividend#0 Redundant Phi (signed byte) div8s::divisor#1 (signed byte) div8s::divisor#0 -Redundant Phi (byte*) line_cursor#28 (byte*) SCREEN#0 -Redundant Phi (byte*) char_cursor#79 (byte*) SCREEN#0 +Redundant Phi (word) div16u::dividend#4 (word) div16u::dividend#1 +Redundant Phi (word) div16u::divisor#5 (word) div16u::divisor#0 +Redundant Phi (word) div16u::divisor#1 (word) div16u::divisor#5 +Redundant Phi (byte*) line_cursor#34 (byte*) SCREEN#0 +Redundant Phi (byte*) char_cursor#106 (byte*) SCREEN#0 Redundant Phi (signed byte) rem8s#16 (signed byte) rem8s#0 -Redundant Phi (byte*) line_cursor#18 (byte*) line_cursor#17 -Redundant Phi (byte*) char_cursor#15 (byte*) line_cursor#17 +Redundant Phi (word) rem16u#15 (word) rem16u#0 +Redundant Phi (byte*) line_cursor#21 (byte*) line_cursor#20 +Redundant Phi (byte*) char_cursor#18 (byte*) line_cursor#20 Redundant Phi (signed byte) rem8s#10 (signed byte) rem8s#12 -Redundant Phi (byte*) char_cursor#16 (byte*) char_cursor#35 -Redundant Phi (byte*) line_cursor#19 (byte*) line_cursor#11 -Redundant Phi (byte*) char_cursor#17 (byte*) char_cursor#26 -Redundant Phi (byte*) line_cursor#20 (byte*) line_cursor#10 -Redundant Phi (byte*) char_cursor#88 (byte*) char_cursor#16 -Redundant Phi (byte*) line_cursor#49 (byte*) line_cursor#19 -Redundant Phi (byte) test_8u::rem#1 (byte) test_8u::rem#0 -Redundant Phi (byte*) char_cursor#19 (byte*) char_cursor#10 -Redundant Phi (byte*) char_cursor#20 (byte*) char_cursor#2 -Redundant Phi (byte*) char_cursor#21 (byte*) char_cursor#10 -Redundant Phi (byte*) char_cursor#22 (byte*) char_cursor#2 +Redundant Phi (byte*) char_cursor#19 (byte*) char_cursor#48 +Redundant Phi (byte*) line_cursor#22 (byte*) line_cursor#14 +Redundant Phi (byte*) char_cursor#20 (byte*) char_cursor#39 +Redundant Phi (byte*) line_cursor#23 (byte*) line_cursor#12 +Redundant Phi (word) rem16u#10 (word) rem16u#11 +Redundant Phi (byte*) char_cursor#21 (byte*) char_cursor#30 +Redundant Phi (byte*) line_cursor#24 (byte*) line_cursor#10 +Redundant Phi (word) rem16u#21 (word) rem16u#15 +Redundant Phi (byte*) char_cursor#118 (byte*) char_cursor#20 +Redundant Phi (byte*) line_cursor#65 (byte*) line_cursor#23 +Redundant Phi (word) rem16u#11 (word) rem16u#1 Redundant Phi (byte*) char_cursor#23 (byte*) char_cursor#10 -Redundant Phi (byte*) char_cursor#24 (byte*) char_cursor#2 +Redundant Phi (byte*) char_cursor#24 (byte*) char_cursor#100 Redundant Phi (byte*) char_cursor#25 (byte*) char_cursor#10 +Redundant Phi (byte*) char_cursor#26 (byte*) char_cursor#100 +Redundant Phi (byte*) char_cursor#27 (byte*) char_cursor#10 +Redundant Phi (byte*) char_cursor#28 (byte*) char_cursor#100 +Redundant Phi (byte*) char_cursor#29 (byte*) char_cursor#10 Redundant Phi (byte*) line_cursor#10 (byte*) line_cursor#1 -Redundant Phi (byte*) char_cursor#26 (byte*) line_cursor#1 -Redundant Phi (signed byte) rem8s#23 (signed byte) rem8s#16 -Redundant Phi (byte*) char_cursor#89 (byte*) char_cursor#15 -Redundant Phi (byte*) line_cursor#50 (byte*) line_cursor#18 +Redundant Phi (byte*) char_cursor#30 (byte*) line_cursor#1 +Redundant Phi (byte*) char_cursor#119 (byte*) char_cursor#19 +Redundant Phi (byte*) line_cursor#66 (byte*) line_cursor#22 +Redundant Phi (byte) test_8u::rem#1 (byte) test_8u::rem#0 +Redundant Phi (byte*) char_cursor#32 (byte*) char_cursor#12 +Redundant Phi (byte*) char_cursor#33 (byte*) char_cursor#100 +Redundant Phi (byte*) char_cursor#34 (byte*) char_cursor#12 +Redundant Phi (byte*) char_cursor#35 (byte*) char_cursor#100 +Redundant Phi (byte*) char_cursor#36 (byte*) char_cursor#12 +Redundant Phi (byte*) char_cursor#37 (byte*) char_cursor#100 +Redundant Phi (byte*) char_cursor#38 (byte*) char_cursor#12 +Redundant Phi (byte*) line_cursor#12 (byte*) line_cursor#1 +Redundant Phi (byte*) char_cursor#39 (byte*) line_cursor#1 +Redundant Phi (signed byte) rem8s#24 (signed byte) rem8s#16 +Redundant Phi (byte*) char_cursor#120 (byte*) char_cursor#18 +Redundant Phi (byte*) line_cursor#67 (byte*) line_cursor#21 Redundant Phi (signed byte) rem8s#12 (signed byte) rem8s#3 -Redundant Phi (byte*) char_cursor#28 (byte*) char_cursor#42 -Redundant Phi (byte*) char_cursor#29 (byte*) char_cursor#2 -Redundant Phi (byte*) char_cursor#30 (byte*) char_cursor#42 -Redundant Phi (byte*) char_cursor#31 (byte*) char_cursor#2 -Redundant Phi (byte*) char_cursor#32 (byte*) char_cursor#42 -Redundant Phi (byte*) char_cursor#33 (byte*) char_cursor#2 -Redundant Phi (byte*) char_cursor#34 (byte*) char_cursor#42 -Redundant Phi (byte*) line_cursor#11 (byte*) line_cursor#1 -Redundant Phi (byte*) char_cursor#35 (byte*) line_cursor#1 -Redundant Phi (byte*) line_cursor#13 (byte*) line_cursor#20 -Redundant Phi (byte*) char_cursor#37 (byte*) char_cursor#17 +Redundant Phi (byte*) char_cursor#41 (byte*) char_cursor#5 +Redundant Phi (byte*) char_cursor#42 (byte*) char_cursor#100 +Redundant Phi (byte*) char_cursor#43 (byte*) char_cursor#5 +Redundant Phi (byte*) char_cursor#44 (byte*) char_cursor#100 +Redundant Phi (byte*) char_cursor#45 (byte*) char_cursor#5 +Redundant Phi (byte*) char_cursor#46 (byte*) char_cursor#100 +Redundant Phi (byte*) char_cursor#47 (byte*) char_cursor#5 +Redundant Phi (byte*) line_cursor#14 (byte*) line_cursor#1 +Redundant Phi (byte*) char_cursor#48 (byte*) line_cursor#1 +Redundant Phi (byte*) line_cursor#16 (byte*) line_cursor#24 +Redundant Phi (byte*) char_cursor#50 (byte*) char_cursor#21 Redundant Phi (signed byte) rem8s#15 (signed byte) rem8s#10 +Redundant Phi (word) rem16u#14 (word) rem16u#10 Succesful SSA optimization Pass2RedundantPhiElimination -Redundant Phi (byte*) char_cursor#83 (byte*) char_cursor#11 -Redundant Phi (byte*) char_cursor#75 (byte*) char_cursor#11 -Redundant Phi (byte*) char_cursor#80 (byte*) line_cursor#1 -Redundant Phi (byte*) line_cursor#29 (byte*) line_cursor#1 +Redundant Phi (byte*) char_cursor#111 (byte*) char_cursor#14 +Redundant Phi (byte*) char_cursor#101 (byte*) char_cursor#14 +Redundant Phi (byte*) char_cursor#107 (byte*) line_cursor#1 +Redundant Phi (byte*) line_cursor#35 (byte*) line_cursor#1 +Redundant Phi (byte*) char_cursor#108 (byte*) line_cursor#1 +Redundant Phi (byte*) line_cursor#36 (byte*) line_cursor#1 Succesful SSA optimization Pass2RedundantPhiElimination -Simple Condition (boolean~) print_str::$0 if(*((byte*) print_str::str#7)!=(byte) '@') goto print_str::@2 -Simple Condition (boolean~) print_ln::$1 if((byte*) line_cursor#1<(byte*) char_cursor#11) goto print_ln::@1 +Simple Condition (boolean~) print_str::$0 if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 +Simple Condition (boolean~) print_ln::$1 if((byte*) line_cursor#1<(byte*) char_cursor#14) goto print_ln::@1 Simple Condition (boolean~) print_sbyte::$1 if((signed byte) print_sbyte::b#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 Simple Condition (boolean~) print_cls::$1 if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 Simple Condition (boolean~) div8u::$3 if((byte~) div8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8u::@2 @@ -2846,6 +3509,10 @@ Simple Condition (boolean~) div8u::$9 if((byte) div8u::i#1!=(byte/signed byte/wo Simple Condition (boolean~) div8s::$1 if((signed byte) div8s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@1 Simple Condition (boolean~) div8s::$6 if((signed byte) div8s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@3 Simple Condition (boolean~) div8s::$14 if((byte) div8s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@5 +Simple Condition (boolean~) div16u::$4 if((byte~) div16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div16u::@2 +Simple Condition (boolean~) div16u::$8 if((word) div16u::rem#5<(word) div16u::divisor#0) goto div16u::@3 +Simple Condition (boolean~) div16u::$10 if((byte) div16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto div16u::@1 +Simple Condition (boolean~) test_16u::$10 if((byte) test_16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 12) goto test_16u::@1 Simple Condition (boolean~) test_8u::$10 if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@1 Simple Condition (boolean~) test_8s::$13 if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@1 Succesful SSA optimization Pass2ConditionalJumpSimplification @@ -2861,25 +3528,35 @@ Constant (const byte) div8s::dividendb#0 = 0 Constant (const byte) div8s::neg#1 = 1 Constant (const byte) div8s::divisorb#0 = 0 Constant (const byte*) div8u::remainder#0 = &div8s::rem8u#0 +Constant (const word) rem16u#0 = 0 +Constant (const word) div16u::rem#0 = 0 +Constant (const word) div16u::quotient#0 = 0 +Constant (const byte) div16u::i#0 = 0 +Constant (const word[]) test_16u::dividends#0 = { 65535, 65535, 65535, 65535, 65535, 65535 } +Constant (const word[]) test_16u::divisors#0 = { 5, 7, 11, 13, 17, 19 } +Constant (const byte) test_16u::i#0 = 0 +Constant (const string) print_str::str#1 = test_16u::str +Constant (const string) print_str::str#2 = test_16u::str1 +Constant (const string) print_str::str#3 = test_16u::str2 Constant (const byte[]) test_8u::dividends#0 = { 255, 255, 255, 255, 255, 255 } Constant (const byte[]) test_8u::divisors#0 = { 5, 7, 11, 13, 17, 19 } Constant (const byte) test_8u::i#0 = 0 Constant (const byte*) div8u::remainder#1 = &test_8u::rem#0 -Constant (const string) print_str::str#1 = test_8u::str -Constant (const string) print_str::str#2 = test_8u::str1 -Constant (const string) print_str::str#3 = test_8u::str2 +Constant (const string) print_str::str#4 = test_8u::str +Constant (const string) print_str::str#5 = test_8u::str1 +Constant (const string) print_str::str#6 = test_8u::str2 Constant (const signed byte/signed word/signed dword) test_8s::$0 = -127 Constant (const signed byte/signed word/signed dword) test_8s::$1 = -127 Constant (const signed byte/signed word/signed dword) test_8s::$2 = -11 Constant (const signed byte/signed word/signed dword) test_8s::$3 = -13 Constant (const byte) test_8s::i#0 = 0 -Constant (const string) print_str::str#4 = test_8s::str -Constant (const string) print_str::str#5 = test_8s::str1 -Constant (const string) print_str::str#6 = test_8s::str2 +Constant (const string) print_str::str#7 = test_8s::str +Constant (const string) print_str::str#8 = test_8s::str1 +Constant (const string) print_str::str#9 = test_8s::str2 Succesful SSA optimization Pass2ConstantIdentification Constant (const byte*) print_cls::sc#0 = SCREEN#0 Constant (const byte*) print_cls::$0 = SCREEN#0+1000 -Constant (const byte*) line_cursor#17 = SCREEN#0 +Constant (const byte*) line_cursor#20 = SCREEN#0 Constant (const signed byte[]) test_8s::dividends#0 = { 127, test_8s::$0, test_8s::$1, 127, 127, 127 } Constant (const signed byte[]) test_8s::divisors#0 = { 5, 7, test_8s::$2, test_8s::$3, 17, 19 } Succesful SSA optimization Pass2ConstantIdentification @@ -2898,36 +3575,49 @@ Eliminating Noop Cast (signed byte) div8s::return#1 ← ((signed byte)) (byte) d Succesful SSA optimization Pass2NopCastElimination Culled Empty Block (label) print_ln::@2 Culled Empty Block (label) print_sbyte::@3 +Culled Empty Block (label) print_word::@2 Culled Empty Block (label) print_byte::@2 Culled Empty Block (label) print_cls::@2 Culled Empty Block (label) @9 Culled Empty Block (label) div8s::@1 Culled Empty Block (label) div8s::@3 Culled Empty Block (label) div8s::@11 -Culled Empty Block (label) main::@3 +Culled Empty Block (label) @10 +Culled Empty Block (label) main::@4 Culled Empty Block (label) @16 Succesful SSA optimization Pass2CullEmptyBlocks -Not aliassing across scopes: char_cursor#2 char_cursor#11 -Not aliassing across scopes: line_cursor#27 line_cursor#30 +Not aliassing across scopes: char_cursor#100 char_cursor#14 Not aliassing across scopes: print_sbyte::b#5 print_sbyte::b#1 -Not aliassing across scopes: char_cursor#77 char_cursor#81 -Not aliassing across scopes: char_cursor#78 char_cursor#76 +Not aliassing across scopes: char_cursor#103 char_cursor#109 +Not aliassing across scopes: print_word::w#4 print_word::w#0 +Not aliassing across scopes: char_cursor#104 line_cursor#1 +Not aliassing across scopes: char_cursor#105 char_cursor#102 Not aliassing across scopes: print_char::ch#3 print_char::ch#1 -Not aliassing across scopes: char_cursor#48 char_cursor#78 +Not aliassing across scopes: char_cursor#64 char_cursor#105 Not aliassing across scopes: div8u::dividend#5 div8u::dividend#1 Not aliassing across scopes: div8u::divisor#6 div8u::divisor#0 Not aliassing across scopes: div8u::dividend#1 div8s::dividendb#3 Not aliassing across scopes: div8u::divisor#0 div8s::divisorb#3 Not aliassing across scopes: div8u::return#2 div8u::return#0 Not aliassing across scopes: div8s::resultb#0 div8u::return#2 +Not aliassing across scopes: div16u::dividend#2 div16u::dividend#1 +Not aliassing across scopes: rem16u#1 div16u::rem#8 +Not aliassing across scopes: div16u::dividend#1 test_16u::dividend#0 +Not aliassing across scopes: div16u::divisor#0 test_16u::divisor#0 +Not aliassing across scopes: div16u::return#2 div16u::return#0 +Not aliassing across scopes: test_16u::res#0 div16u::return#2 +Not aliassing across scopes: print_word::w#0 test_16u::dividend#0 +Not aliassing across scopes: print_word::w#1 test_16u::divisor#0 +Not aliassing across scopes: print_word::w#2 test_16u::res#0 +Not aliassing across scopes: print_word::w#3 rem16u#1 Not aliassing across scopes: div8u::dividend#2 test_8u::dividend#0 Not aliassing across scopes: div8u::divisor#1 test_8u::divisor#0 Not aliassing across scopes: div8u::return#3 div8u::return#0 Not aliassing across scopes: test_8u::res#0 div8u::return#3 -Not aliassing across scopes: print_byte::b#1 test_8u::dividend#0 -Not aliassing across scopes: print_byte::b#2 test_8u::divisor#0 -Not aliassing across scopes: print_byte::b#3 test_8u::res#0 -Not aliassing across scopes: print_byte::b#4 test_8u::rem#0 +Not aliassing across scopes: print_byte::b#3 test_8u::dividend#0 +Not aliassing across scopes: print_byte::b#4 test_8u::divisor#0 +Not aliassing across scopes: print_byte::b#5 test_8u::res#0 +Not aliassing across scopes: print_byte::b#6 test_8u::rem#0 Not aliassing across scopes: div8s::dividend#0 test_8s::dividend#0 Not aliassing across scopes: div8s::divisor#0 test_8s::divisor#0 Not aliassing across scopes: div8s::return#3 div8s::return#2 @@ -2936,27 +3626,38 @@ Not aliassing across scopes: print_sbyte::b#1 test_8s::dividend#0 Not aliassing across scopes: print_sbyte::b#2 test_8s::divisor#0 Not aliassing across scopes: print_sbyte::b#3 test_8s::res#0 Not aliassing across scopes: print_sbyte::b#4 rem8s#3 -Not aliassing across scopes: char_cursor#2 char_cursor#11 -Not aliassing across scopes: line_cursor#27 line_cursor#30 +Not aliassing across scopes: char_cursor#100 char_cursor#14 Not aliassing across scopes: print_sbyte::b#5 print_sbyte::b#1 -Not aliassing across scopes: char_cursor#77 char_cursor#81 -Not aliassing across scopes: char_cursor#78 char_cursor#76 +Not aliassing across scopes: char_cursor#103 char_cursor#109 +Not aliassing across scopes: print_word::w#4 print_word::w#0 +Not aliassing across scopes: char_cursor#104 line_cursor#1 +Not aliassing across scopes: char_cursor#105 char_cursor#102 Not aliassing across scopes: print_char::ch#3 print_char::ch#1 -Not aliassing across scopes: char_cursor#48 char_cursor#78 +Not aliassing across scopes: char_cursor#64 char_cursor#105 Not aliassing across scopes: div8u::dividend#5 div8u::dividend#1 Not aliassing across scopes: div8u::divisor#6 div8u::divisor#0 Not aliassing across scopes: div8u::dividend#1 div8s::dividendb#3 Not aliassing across scopes: div8u::divisor#0 div8s::divisorb#3 Not aliassing across scopes: div8u::return#2 div8u::return#0 Not aliassing across scopes: div8s::resultb#0 div8u::return#2 +Not aliassing across scopes: div16u::dividend#2 div16u::dividend#1 +Not aliassing across scopes: rem16u#1 div16u::rem#8 +Not aliassing across scopes: div16u::dividend#1 test_16u::dividend#0 +Not aliassing across scopes: div16u::divisor#0 test_16u::divisor#0 +Not aliassing across scopes: div16u::return#2 div16u::return#0 +Not aliassing across scopes: test_16u::res#0 div16u::return#2 +Not aliassing across scopes: print_word::w#0 test_16u::dividend#0 +Not aliassing across scopes: print_word::w#1 test_16u::divisor#0 +Not aliassing across scopes: print_word::w#2 test_16u::res#0 +Not aliassing across scopes: print_word::w#3 rem16u#1 Not aliassing across scopes: div8u::dividend#2 test_8u::dividend#0 Not aliassing across scopes: div8u::divisor#1 test_8u::divisor#0 Not aliassing across scopes: div8u::return#3 div8u::return#0 Not aliassing across scopes: test_8u::res#0 div8u::return#3 -Not aliassing across scopes: print_byte::b#1 test_8u::dividend#0 -Not aliassing across scopes: print_byte::b#2 test_8u::divisor#0 -Not aliassing across scopes: print_byte::b#3 test_8u::res#0 -Not aliassing across scopes: print_byte::b#4 test_8u::rem#0 +Not aliassing across scopes: print_byte::b#3 test_8u::dividend#0 +Not aliassing across scopes: print_byte::b#4 test_8u::divisor#0 +Not aliassing across scopes: print_byte::b#5 test_8u::res#0 +Not aliassing across scopes: print_byte::b#6 test_8u::rem#0 Not aliassing across scopes: div8s::dividend#0 test_8s::dividend#0 Not aliassing across scopes: div8s::divisor#0 test_8s::divisor#0 Not aliassing across scopes: div8s::return#3 div8s::return#2 @@ -2984,6 +3685,15 @@ Inlining constant with var siblings (const string) print_str::str#5 Inlining constant with var siblings (const string) print_str::str#6 Inlining constant with var siblings (const string) print_str::str#6 Inlining constant with var siblings (const string) print_str::str#6 +Inlining constant with var siblings (const string) print_str::str#7 +Inlining constant with var siblings (const string) print_str::str#7 +Inlining constant with var siblings (const string) print_str::str#7 +Inlining constant with var siblings (const string) print_str::str#8 +Inlining constant with var siblings (const string) print_str::str#8 +Inlining constant with var siblings (const string) print_str::str#8 +Inlining constant with var siblings (const string) print_str::str#9 +Inlining constant with var siblings (const string) print_str::str#9 +Inlining constant with var siblings (const string) print_str::str#9 Inlining constant with var siblings (const byte) print_char::ch#0 Inlining constant with var siblings (const byte) print_char::ch#0 Inlining constant with var siblings (const byte) print_char::ch#0 @@ -3012,6 +3722,19 @@ Inlining constant with var siblings (const byte) div8s::neg#1 Inlining constant with var siblings (const byte) div8s::neg#1 Inlining constant with var siblings (const byte) div8s::neg#1 Inlining constant with different constant siblings (const byte) div8s::neg#1 +Inlining constant with var siblings (const word) div16u::rem#0 +Inlining constant with var siblings (const word) div16u::rem#0 +Inlining constant with var siblings (const word) div16u::rem#0 +Inlining constant with var siblings (const word) div16u::rem#0 +Inlining constant with var siblings (const word) div16u::rem#0 +Inlining constant with var siblings (const word) div16u::rem#0 +Inlining constant with var siblings (const word) div16u::quotient#0 +Inlining constant with var siblings (const word) div16u::quotient#0 +Inlining constant with var siblings (const word) div16u::quotient#0 +Inlining constant with var siblings (const byte) div16u::i#0 +Inlining constant with var siblings (const byte) div16u::i#0 +Inlining constant with var siblings (const byte) test_16u::i#0 +Inlining constant with var siblings (const byte) test_16u::i#0 Inlining constant with var siblings (const byte) test_8u::i#0 Inlining constant with var siblings (const byte) test_8u::i#0 Inlining constant with var siblings (const byte) test_8s::i#0 @@ -3019,39 +3742,53 @@ Inlining constant with var siblings (const byte) test_8s::i#0 Inlining constant with var siblings (const signed byte) rem8s#0 Inlining constant with var siblings (const signed byte) rem8s#0 Inlining constant with var siblings (const signed byte) rem8s#0 -Inlining constant with var siblings (const byte*) line_cursor#17 -Inlining constant with var siblings (const byte*) line_cursor#17 -Inlining constant with var siblings (const byte*) line_cursor#17 -Inlining constant with var siblings (const byte*) line_cursor#17 +Inlining constant with var siblings (const word) rem16u#0 +Inlining constant with var siblings (const word) rem16u#0 +Inlining constant with var siblings (const byte*) line_cursor#20 +Inlining constant with var siblings (const byte*) line_cursor#20 +Inlining constant with var siblings (const byte*) line_cursor#20 +Inlining constant with var siblings (const byte*) line_cursor#20 Constant inlined print_cls::$0 = (const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000 Constant inlined div8u::remainder#0 = &(byte) div8s::rem8u#0 Constant inlined div8u::remainder#1 = &(byte) test_8u::rem#0 +Constant inlined test_16u::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined line_cursor#20 = (const byte*) SCREEN#0 Constant inlined div8u::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined test_8u::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined test_8s::$3 = -(byte/signed byte/word/signed word/dword/signed dword) 13 Constant inlined test_8s::$2 = -(byte/signed byte/word/signed word/dword/signed dword) 11 Constant inlined test_8s::$1 = -(byte/signed byte/word/signed word/dword/signed dword) 127 Constant inlined test_8s::$0 = -(byte/signed byte/word/signed word/dword/signed dword) 127 +Constant inlined div16u::rem#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined div16u::quotient#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined div16u::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined rem16u#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined print_cls::sc#0 = (const byte*) SCREEN#0 +Constant inlined print_str::str#9 = (const string) test_8s::str2 Constant inlined print_char::ch#0 = (byte) '-' -Constant inlined print_str::str#4 = (const string) test_8s::str +Constant inlined print_str::str#4 = (const string) test_8u::str Constant inlined div8u::quotient#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined print_str::str#3 = (const string) test_8u::str2 +Constant inlined print_str::str#3 = (const string) test_16u::str2 Constant inlined div8s::neg#1 = (byte/signed byte/word/signed word/dword/signed dword) 1 Constant inlined rem8s#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined print_str::str#2 = (const string) test_8u::str1 +Constant inlined print_str::str#2 = (const string) test_16u::str1 Constant inlined div8s::neg#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined print_str::str#1 = (const string) test_8u::str +Constant inlined print_str::str#1 = (const string) test_16u::str Constant inlined print_byte::$4 = (const string) print_byte::hextab#0 -Constant inlined line_cursor#17 = (const byte*) SCREEN#0 -Constant inlined print_str::str#6 = (const string) test_8s::str2 +Constant inlined print_str::str#8 = (const string) test_8s::str1 +Constant inlined print_str::str#7 = (const string) test_8s::str +Constant inlined print_str::str#6 = (const string) test_8u::str2 Constant inlined test_8s::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined print_str::str#5 = (const string) test_8s::str1 +Constant inlined print_str::str#5 = (const string) test_8u::str1 Constant inlined div8u::rem#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Succesful SSA optimization Pass2ConstantInlining -Block Sequence Planned @begin @15 @end main main::@1 main::@2 main::@return test_8u test_8u::@1 test_8u::@3 test_8u::@4 test_8u::@5 test_8u::@6 test_8u::@7 test_8u::@8 test_8u::@9 test_8u::@10 test_8u::@11 test_8u::@return print_ln print_ln::@1 print_ln::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_str print_str::@1 print_str::@return print_str::@2 div8u div8u::@1 div8u::@4 div8u::@2 div8u::@5 div8u::@3 div8u::@6 div8u::@return test_8s test_8s::@1 test_8s::@3 test_8s::@4 test_8s::@5 test_8s::@6 test_8s::@7 test_8s::@8 test_8s::@9 test_8s::@10 test_8s::@11 test_8s::@return print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return div8s div8s::@7 div8s::@2 div8s::@9 div8s::@4 div8s::@15 div8s::@return div8s::@5 print_cls print_cls::@1 print_cls::@return -Added new block during phi lifting test_8u::@12(between test_8u::@11 and test_8u::@1) +Block Sequence Planned @begin @15 @end main main::@1 main::@2 main::@3 main::@return test_16u test_16u::@1 test_16u::@3 test_16u::@4 test_16u::@5 test_16u::@6 test_16u::@7 test_16u::@8 test_16u::@9 test_16u::@10 test_16u::@11 test_16u::@return print_ln print_ln::@1 print_ln::@return print_word print_word::@1 print_word::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_str print_str::@1 print_str::@return print_str::@2 div16u div16u::@1 div16u::@4 div16u::@2 div16u::@5 div16u::@3 div16u::@6 div16u::@return test_8u test_8u::@1 test_8u::@3 test_8u::@4 test_8u::@5 test_8u::@6 test_8u::@7 test_8u::@8 test_8u::@9 test_8u::@10 test_8u::@11 test_8u::@return div8u div8u::@1 div8u::@4 div8u::@2 div8u::@5 div8u::@3 div8u::@6 div8u::@return test_8s test_8s::@1 test_8s::@3 test_8s::@4 test_8s::@5 test_8s::@6 test_8s::@7 test_8s::@8 test_8s::@9 test_8s::@10 test_8s::@11 test_8s::@return print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return div8s div8s::@7 div8s::@2 div8s::@9 div8s::@4 div8s::@15 div8s::@return div8s::@5 print_cls print_cls::@1 print_cls::@return +Added new block during phi lifting test_16u::@12(between test_16u::@11 and test_16u::@1) Added new block during phi lifting print_ln::@3(between print_ln::@1 and print_ln::@1) +Added new block during phi lifting div16u::@8(between div16u::@3 and div16u::@1) +Added new block during phi lifting div16u::@9(between div16u::@1 and div16u::@2) +Added new block during phi lifting div16u::@10(between div16u::@2 and div16u::@3) +Added new block during phi lifting test_8u::@12(between test_8u::@11 and test_8u::@1) Added new block during phi lifting div8u::@8(between div8u::@3 and div8u::@1) Added new block during phi lifting div8u::@9(between div8u::@1 and div8u::@2) Added new block during phi lifting div8u::@10(between div8u::@2 and div8u::@3) @@ -3062,13 +3799,18 @@ Fixing phi predecessor for div8s::neg#3 to new block ( div8s -> div8s::@16 ) dur Added new block during phi lifting div8s::@17(between div8s::@2 and div8s::@4) Added new block during phi lifting div8s::@18(between div8s::@15 and div8s::@return) Added new block during phi lifting print_cls::@3(between print_cls::@1 and print_cls::@1) -Block Sequence Planned @begin @15 @end main main::@1 main::@2 main::@return test_8u test_8u::@1 test_8u::@3 test_8u::@4 test_8u::@5 test_8u::@6 test_8u::@7 test_8u::@8 test_8u::@9 test_8u::@10 test_8u::@11 test_8u::@return test_8u::@12 print_ln print_ln::@1 print_ln::@return print_ln::@3 print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_str print_str::@1 print_str::@return print_str::@2 div8u div8u::@1 div8u::@4 div8u::@2 div8u::@5 div8u::@3 div8u::@6 div8u::@return div8u::@8 div8u::@10 div8u::@9 test_8s test_8s::@1 test_8s::@3 test_8s::@4 test_8s::@5 test_8s::@6 test_8s::@7 test_8s::@8 test_8s::@9 test_8s::@10 test_8s::@11 test_8s::@return test_8s::@12 print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return print_sbyte::@5 div8s div8s::@7 div8s::@2 div8s::@9 div8s::@4 div8s::@15 div8s::@18 div8s::@return div8s::@5 div8s::@17 div8s::@16 print_cls print_cls::@1 print_cls::@return print_cls::@3 +Block Sequence Planned @begin @15 @end main main::@1 main::@2 main::@3 main::@return test_16u test_16u::@1 test_16u::@3 test_16u::@4 test_16u::@5 test_16u::@6 test_16u::@7 test_16u::@8 test_16u::@9 test_16u::@10 test_16u::@11 test_16u::@return test_16u::@12 print_ln print_ln::@1 print_ln::@return print_ln::@3 print_word print_word::@1 print_word::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_str print_str::@1 print_str::@return print_str::@2 div16u div16u::@1 div16u::@4 div16u::@2 div16u::@5 div16u::@3 div16u::@6 div16u::@return div16u::@8 div16u::@10 div16u::@9 test_8u test_8u::@1 test_8u::@3 test_8u::@4 test_8u::@5 test_8u::@6 test_8u::@7 test_8u::@8 test_8u::@9 test_8u::@10 test_8u::@11 test_8u::@return test_8u::@12 div8u div8u::@1 div8u::@4 div8u::@2 div8u::@5 div8u::@3 div8u::@6 div8u::@return div8u::@8 div8u::@10 div8u::@9 test_8s test_8s::@1 test_8s::@3 test_8s::@4 test_8s::@5 test_8s::@6 test_8s::@7 test_8s::@8 test_8s::@9 test_8s::@10 test_8s::@11 test_8s::@return test_8s::@12 print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return print_sbyte::@5 div8s div8s::@7 div8s::@2 div8s::@9 div8s::@4 div8s::@15 div8s::@18 div8s::@return div8s::@5 div8s::@17 div8s::@16 print_cls print_cls::@1 print_cls::@return print_cls::@3 Adding NOP phi() at start of @begin Adding NOP phi() at start of @15 Adding NOP phi() at start of @end Adding NOP phi() at start of main Adding NOP phi() at start of main::@1 Adding NOP phi() at start of main::@2 +Adding NOP phi() at start of main::@3 +Adding NOP phi() at start of test_16u +Adding NOP phi() at start of test_16u::@4 +Adding NOP phi() at start of test_16u::@6 +Adding NOP phi() at start of test_16u::@8 Adding NOP phi() at start of test_8u::@4 Adding NOP phi() at start of test_8u::@6 Adding NOP phi() at start of test_8u::@8 @@ -3079,12 +3821,14 @@ Adding NOP phi() at start of test_8s::@8 Adding NOP phi() at start of print_cls CALL GRAPH Calls in [] to main:2 -Calls in [main] to print_cls:5 test_8s:7 test_8u:9 -Calls in [test_8u] to div8u:19 print_byte:25 print_str:27 print_byte:31 print_str:33 print_byte:37 print_str:39 print_byte:43 print_ln:45 -Calls in [print_byte] to print_char:62 print_char:67 -Calls in [test_8s] to div8s:118 print_sbyte:124 print_str:126 print_sbyte:130 print_str:132 print_sbyte:136 print_str:138 print_sbyte:142 print_ln:144 -Calls in [print_sbyte] to print_char:155 print_byte:162 -Calls in [div8s] to div8u:181 +Calls in [main] to print_cls:5 test_8s:7 test_8u:9 test_16u:11 +Calls in [test_16u] to div16u:19 print_word:25 print_str:27 print_word:31 print_str:33 print_word:37 print_str:39 print_word:43 print_ln:45 +Calls in [print_word] to print_byte:62 print_byte:66 +Calls in [print_byte] to print_char:73 print_char:78 +Calls in [test_8u] to div8u:131 print_byte:137 print_str:139 print_byte:143 print_str:145 print_byte:149 print_str:151 print_byte:155 print_ln:157 +Calls in [test_8s] to div8s:196 print_sbyte:202 print_str:204 print_sbyte:208 print_str:210 print_sbyte:214 print_str:216 print_sbyte:220 print_ln:222 +Calls in [print_sbyte] to print_char:233 print_byte:240 +Calls in [div8s] to div8u:259 Propagating live ranges... Propagating live ranges... @@ -3176,81 +3920,120 @@ Propagating live ranges... Propagating live ranges... Propagating live ranges... Propagating live ranges... -Created 35 initial phi equivalence classes -Coalesced [17] div8u::dividend#10 ← div8u::dividend#2 -Coalesced [18] div8u::divisor#9 ← div8u::divisor#1 -Coalesced [23] print_byte::b#8 ← print_byte::b#1 -Not coalescing [24] char_cursor#91 ← line_cursor#1 -Coalesced [29] print_byte::b#9 ← print_byte::b#2 -Coalesced [30] char_cursor#92 ← char_cursor#2 -Coalesced [35] print_byte::b#10 ← print_byte::b#3 -Coalesced (already) [36] char_cursor#93 ← char_cursor#2 -Coalesced [41] print_byte::b#11 ← print_byte::b#4 -Coalesced (already) [42] char_cursor#94 ← char_cursor#2 -Coalesced [44] line_cursor#52 ← line_cursor#1 -Coalesced [49] test_8u::i#12 ← test_8u::i#1 -Coalesced [51] line_cursor#53 ← line_cursor#27 -Coalesced (already) [56] line_cursor#54 ← line_cursor#1 -Coalesced [60] print_char::ch#4 ← print_char::ch#1 -Coalesced [61] char_cursor#95 ← char_cursor#78 -Coalesced [65] print_char::ch#5 ← print_char::ch#2 -Coalesced [66] char_cursor#96 ← char_cursor#11 -Coalesced [74] print_str::str#10 ← print_str::str#9 -Coalesced (already) [75] char_cursor#98 ← char_cursor#11 -Coalesced [82] print_str::str#11 ← print_str::str#0 -Coalesced [83] char_cursor#99 ← char_cursor#1 -Coalesced [85] div8u::dividend#11 ← div8u::dividend#5 -Coalesced [91] div8u::rem#12 ← div8u::rem#2 -Coalesced [98] div8u::rem#14 ← div8u::rem#3 -Coalesced [99] div8u::return#8 ← div8u::quotient#2 -Coalesced [105] div8u::rem#10 ← div8u::rem#8 -Coalesced [106] div8u::dividend#12 ← div8u::dividend#0 -Coalesced [107] div8u::quotient#9 ← div8u::return#0 -Coalesced [108] div8u::i#7 ← div8u::i#1 -Coalesced [109] div8u::rem#13 ← div8u::rem#5 -Coalesced [110] div8u::return#7 ← div8u::quotient#1 -Coalesced [111] div8u::rem#11 ← div8u::rem#1 -Coalesced [122] print_sbyte::b#9 ← print_sbyte::b#1 -Coalesced [123] char_cursor#101 ← char_cursor#81 -Coalesced [128] print_sbyte::b#10 ← print_sbyte::b#2 -Coalesced [129] char_cursor#102 ← char_cursor#2 -Coalesced [134] print_sbyte::b#11 ← print_sbyte::b#3 -Coalesced (already) [135] char_cursor#103 ← char_cursor#2 -Coalesced [140] print_sbyte::b#12 ← print_sbyte::b#4 -Coalesced (already) [141] char_cursor#104 ← char_cursor#2 -Coalesced [143] line_cursor#51 ← line_cursor#30 -Coalesced [148] test_8s::i#12 ← test_8s::i#1 -Coalesced [149] rem8s#29 ← rem8s#3 -Not coalescing [150] char_cursor#100 ← line_cursor#1 -Coalesced (already) [151] line_cursor#55 ← line_cursor#1 -Coalesced (already) [154] char_cursor#97 ← char_cursor#77 -Coalesced [157] print_sbyte::b#14 ← print_sbyte::b#0 -Coalesced [158] char_cursor#106 ← char_cursor#11 -Coalesced (already) [161] char_cursor#90 ← char_cursor#76 -Coalesced [164] print_sbyte::b#13 ← print_sbyte::b#5 -Coalesced (already) [165] char_cursor#105 ← char_cursor#77 -Coalesced [174] div8s::neg#10 ← div8s::neg#2 -Coalesced [179] div8u::dividend#9 ← div8u::dividend#1 -Coalesced [180] div8u::divisor#8 ← div8u::divisor#0 -Coalesced [191] div8s::return#7 ← div8s::return#0 -Coalesced [192] rem8s#31 ← rem8s#1 -Coalesced [194] div8s::neg#9 ← div8s::neg#3 -Coalesced [202] print_cls::sc#3 ← print_cls::sc#1 -Coalesced down to 20 phi equivalence classes -Culled Empty Block (label) test_8u::@12 +Created 46 initial phi equivalence classes +Coalesced [23] print_word::w#6 ← print_word::w#0 +Not coalescing [24] char_cursor#121 ← line_cursor#1 +Coalesced [29] print_word::w#7 ← print_word::w#1 +Coalesced [30] char_cursor#122 ← char_cursor#100 +Coalesced [35] print_word::w#8 ← print_word::w#2 +Coalesced (already) [36] char_cursor#123 ← char_cursor#100 +Coalesced [41] print_word::w#9 ← print_word::w#3 +Coalesced (already) [42] char_cursor#124 ← char_cursor#100 +Coalesced [44] line_cursor#68 ← line_cursor#1 +Coalesced [49] test_16u::i#12 ← test_16u::i#1 +Coalesced [50] rem16u#29 ← rem16u#1 +Coalesced [52] line_cursor#71 ← line_cursor#33 +Coalesced (already) [57] line_cursor#72 ← line_cursor#1 +Coalesced [60] print_byte::b#10 ← print_byte::b#1 +Coalesced [61] char_cursor#126 ← char_cursor#104 +Coalesced [64] print_byte::b#11 ← print_byte::b#2 +Coalesced [65] char_cursor#127 ← char_cursor#14 +Coalesced [71] print_char::ch#4 ← print_char::ch#1 +Coalesced [72] char_cursor#132 ← char_cursor#105 +Coalesced [76] print_char::ch#5 ← print_char::ch#2 +Coalesced (already) [77] char_cursor#133 ← char_cursor#14 +Coalesced [85] print_str::str#13 ← print_str::str#12 +Coalesced (already) [86] char_cursor#135 ← char_cursor#14 +Coalesced [93] print_str::str#14 ← print_str::str#0 +Coalesced [94] char_cursor#136 ← char_cursor#1 +Coalesced [95] div16u::dividend#8 ← div16u::dividend#1 +Coalesced [102] div16u::rem#12 ← div16u::rem#2 +Coalesced [109] div16u::rem#14 ← div16u::rem#3 +Coalesced [110] div16u::return#6 ← div16u::quotient#2 +Coalesced [114] rem16u#1 ← div16u::rem#8 +Coalesced [116] div16u::rem#10 ← div16u::rem#8 +Coalesced [117] div16u::dividend#9 ← div16u::dividend#0 +Coalesced [118] div16u::quotient#9 ← div16u::return#0 +Coalesced [119] div16u::i#7 ← div16u::i#1 +Coalesced [120] div16u::rem#13 ← div16u::rem#5 +Coalesced [121] div16u::return#5 ← div16u::quotient#1 +Coalesced [122] div16u::rem#11 ← div16u::rem#1 +Coalesced [129] div8u::dividend#10 ← div8u::dividend#2 +Coalesced [130] div8u::divisor#9 ← div8u::divisor#1 +Coalesced [135] print_byte::b#12 ← print_byte::b#3 +Not coalescing [136] char_cursor#128 ← line_cursor#1 +Coalesced [141] print_byte::b#13 ← print_byte::b#4 +Coalesced (already) [142] char_cursor#129 ← char_cursor#100 +Coalesced [147] print_byte::b#14 ← print_byte::b#5 +Coalesced (already) [148] char_cursor#130 ← char_cursor#100 +Coalesced [153] print_byte::b#15 ← print_byte::b#6 +Coalesced (already) [154] char_cursor#131 ← char_cursor#100 +Coalesced (already) [156] line_cursor#70 ← line_cursor#1 +Coalesced [161] test_8u::i#12 ← test_8u::i#1 +Coalesced [163] div8u::dividend#11 ← div8u::dividend#5 +Coalesced [169] div8u::rem#12 ← div8u::rem#2 +Coalesced [176] div8u::rem#14 ← div8u::rem#3 +Coalesced [177] div8u::return#8 ← div8u::quotient#2 +Coalesced [183] div8u::rem#10 ← div8u::rem#8 +Coalesced [184] div8u::dividend#12 ← div8u::dividend#0 +Coalesced [185] div8u::quotient#9 ← div8u::return#0 +Coalesced [186] div8u::i#7 ← div8u::i#1 +Coalesced [187] div8u::rem#13 ← div8u::rem#5 +Coalesced [188] div8u::return#7 ← div8u::quotient#1 +Coalesced [189] div8u::rem#11 ← div8u::rem#1 +Coalesced [200] print_sbyte::b#9 ← print_sbyte::b#1 +Coalesced [201] char_cursor#138 ← char_cursor#109 +Coalesced [206] print_sbyte::b#10 ← print_sbyte::b#2 +Coalesced [207] char_cursor#139 ← char_cursor#100 +Coalesced [212] print_sbyte::b#11 ← print_sbyte::b#3 +Coalesced (already) [213] char_cursor#140 ← char_cursor#100 +Coalesced [218] print_sbyte::b#12 ← print_sbyte::b#4 +Coalesced (already) [219] char_cursor#141 ← char_cursor#100 +Coalesced [221] line_cursor#69 ← line_cursor#37 +Coalesced [226] test_8s::i#12 ← test_8s::i#1 +Coalesced [227] rem8s#31 ← rem8s#3 +Not coalescing [228] char_cursor#137 ← line_cursor#1 +Coalesced (already) [229] line_cursor#73 ← line_cursor#1 +Coalesced (already) [232] char_cursor#134 ← char_cursor#103 +Coalesced [235] print_sbyte::b#14 ← print_sbyte::b#0 +Coalesced [236] char_cursor#143 ← char_cursor#14 +Coalesced (already) [239] char_cursor#125 ← char_cursor#102 +Coalesced [242] print_sbyte::b#13 ← print_sbyte::b#5 +Coalesced (already) [243] char_cursor#142 ← char_cursor#103 +Coalesced [252] div8s::neg#10 ← div8s::neg#2 +Coalesced [257] div8u::dividend#9 ← div8u::dividend#1 +Coalesced [258] div8u::divisor#8 ← div8u::divisor#0 +Coalesced [269] div8s::return#7 ← div8s::return#0 +Coalesced [270] rem8s#33 ← rem8s#1 +Coalesced [272] div8s::neg#9 ← div8s::neg#3 +Coalesced [280] print_cls::sc#3 ← print_cls::sc#1 +Coalesced down to 26 phi equivalence classes +Culled Empty Block (label) test_16u::@12 Culled Empty Block (label) print_ln::@3 +Culled Empty Block (label) div16u::@6 +Culled Empty Block (label) div16u::@8 +Culled Empty Block (label) div16u::@10 +Culled Empty Block (label) div16u::@9 +Culled Empty Block (label) test_8u::@12 Culled Empty Block (label) div8u::@8 Culled Empty Block (label) div8u::@10 Culled Empty Block (label) div8u::@9 Culled Empty Block (label) print_sbyte::@5 Culled Empty Block (label) print_cls::@3 -Block Sequence Planned @begin @15 @end main main::@1 main::@2 main::@return test_8u test_8u::@1 test_8u::@3 test_8u::@4 test_8u::@5 test_8u::@6 test_8u::@7 test_8u::@8 test_8u::@9 test_8u::@10 test_8u::@11 test_8u::@return print_ln print_ln::@1 print_ln::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_str print_str::@1 print_str::@return print_str::@2 div8u div8u::@1 div8u::@4 div8u::@2 div8u::@5 div8u::@3 div8u::@6 div8u::@return test_8s test_8s::@1 test_8s::@3 test_8s::@4 test_8s::@5 test_8s::@6 test_8s::@7 test_8s::@8 test_8s::@9 test_8s::@10 test_8s::@11 test_8s::@return test_8s::@12 print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return div8s div8s::@7 div8s::@2 div8s::@9 div8s::@4 div8s::@15 div8s::@18 div8s::@return div8s::@5 div8s::@17 div8s::@16 print_cls print_cls::@1 print_cls::@return +Block Sequence Planned @begin @15 @end main main::@1 main::@2 main::@3 main::@return test_16u test_16u::@1 test_16u::@3 test_16u::@4 test_16u::@5 test_16u::@6 test_16u::@7 test_16u::@8 test_16u::@9 test_16u::@10 test_16u::@11 test_16u::@return print_ln print_ln::@1 print_ln::@return print_word print_word::@1 print_word::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_str print_str::@1 print_str::@return print_str::@2 div16u div16u::@1 div16u::@4 div16u::@2 div16u::@5 div16u::@3 div16u::@return test_8u test_8u::@1 test_8u::@3 test_8u::@4 test_8u::@5 test_8u::@6 test_8u::@7 test_8u::@8 test_8u::@9 test_8u::@10 test_8u::@11 test_8u::@return div8u div8u::@1 div8u::@4 div8u::@2 div8u::@5 div8u::@3 div8u::@6 div8u::@return test_8s test_8s::@1 test_8s::@3 test_8s::@4 test_8s::@5 test_8s::@6 test_8s::@7 test_8s::@8 test_8s::@9 test_8s::@10 test_8s::@11 test_8s::@return test_8s::@12 print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return div8s div8s::@7 div8s::@2 div8s::@9 div8s::@4 div8s::@15 div8s::@18 div8s::@return div8s::@5 div8s::@17 div8s::@16 print_cls print_cls::@1 print_cls::@return Adding NOP phi() at start of @begin Adding NOP phi() at start of @15 Adding NOP phi() at start of @end Adding NOP phi() at start of main Adding NOP phi() at start of main::@1 Adding NOP phi() at start of main::@2 +Adding NOP phi() at start of main::@3 +Adding NOP phi() at start of test_16u +Adding NOP phi() at start of test_16u::@4 +Adding NOP phi() at start of test_16u::@6 +Adding NOP phi() at start of test_16u::@8 +Adding NOP phi() at start of test_16u::@10 +Adding NOP phi() at start of div16u Adding NOP phi() at start of test_8u::@4 Adding NOP phi() at start of test_8u::@6 Adding NOP phi() at start of test_8u::@8 @@ -3351,293 +4134,399 @@ main::@1: scope:[main] from main to:main::@2 main::@2: scope:[main] from main::@1 [8] phi() [ line_cursor#1 div8s::rem8u#0 ] ( main:2 [ line_cursor#1 div8s::rem8u#0 ] ) - [9] call test_8u param-assignment [ ] ( main:2 [ ] ) + [9] call test_8u param-assignment [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) + to:main::@3 +main::@3: scope:[main] from main::@2 + [10] phi() [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) + [11] call test_16u param-assignment [ ] ( main:2 [ ] ) to:main::@return -main::@return: scope:[main] from main::@2 - [10] return [ ] ( main:2 [ ] ) +main::@return: scope:[main] from main::@3 + [12] return [ ] ( main:2 [ ] ) to:@return -test_8u: scope:[test_8u] from main::@2 - [11] (byte) test_8u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 line_cursor#1 div8s::rem8u#0 ] ) - to:test_8u::@1 -test_8u::@1: scope:[test_8u] from test_8u test_8u::@11 - [12] (byte) test_8u::i#10 ← phi( test_8u/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8u::@11/(byte) test_8u::i#1 ) [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 ] ) - [13] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 line_cursor#1 div8s::rem8u#0 ] ) - [14] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 div8s::rem8u#0 ] ) - [15] (byte) div8u::dividend#2 ← (byte) test_8u::dividend#0 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 line_cursor#1 div8s::rem8u#0 ] ) - [16] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 line_cursor#1 div8s::rem8u#0 ] ) - [17] call div8u param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 line_cursor#1 div8s::rem8u#0 ] ) - [18] (byte) div8u::return#3 ← (byte) div8u::return#0 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 line_cursor#1 div8s::rem8u#0 ] ) - to:test_8u::@3 -test_8u::@3: scope:[test_8u] from test_8u::@1 - [19] (byte) test_8u::res#0 ← (byte) div8u::return#3 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 ] ) - [20] (byte) print_byte::b#1 ← (byte) test_8u::dividend#0 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 line_cursor#1 div8s::rem8u#0 ] ) - [21] (byte*~) char_cursor#91 ← (byte*) line_cursor#1 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 char_cursor#91 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 char_cursor#91 line_cursor#1 div8s::rem8u#0 ] ) - [22] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - to:test_8u::@4 -test_8u::@4: scope:[test_8u] from test_8u::@3 - [23] phi() [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - [24] call print_str param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ) - to:test_8u::@5 -test_8u::@5: scope:[test_8u] from test_8u::@4 - [25] (byte) print_byte::b#2 ← (byte) test_8u::divisor#0 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 print_byte::b#2 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 print_byte::b#2 char_cursor#2 div8s::rem8u#0 ] ) - [26] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - to:test_8u::@6 -test_8u::@6: scope:[test_8u] from test_8u::@5 - [27] phi() [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - [28] call print_str param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ) - to:test_8u::@7 -test_8u::@7: scope:[test_8u] from test_8u::@6 - [29] (byte) print_byte::b#3 ← (byte) test_8u::res#0 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#3 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#3 char_cursor#2 div8s::rem8u#0 ] ) - [30] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - to:test_8u::@8 -test_8u::@8: scope:[test_8u] from test_8u::@7 - [31] phi() [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - [32] call print_str param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ) - to:test_8u::@9 -test_8u::@9: scope:[test_8u] from test_8u::@8 - [33] (byte) print_byte::b#4 ← (byte) test_8u::rem#0 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#4 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#4 char_cursor#2 div8s::rem8u#0 ] ) - [34] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - to:test_8u::@10 -test_8u::@10: scope:[test_8u] from test_8u::@9 - [35] phi() [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - [36] call print_ln param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 ] ) - to:test_8u::@11 -test_8u::@11: scope:[test_8u] from test_8u::@10 - [37] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ) - [38] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@1 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ) - to:test_8u::@return -test_8u::@return: scope:[test_8u] from test_8u::@11 - [39] return [ ] ( main:2::test_8u:9 [ ] ) +test_16u: scope:[test_16u] from main::@3 + [13] phi() [ line_cursor#1 ] ( main:2::test_16u:11 [ line_cursor#1 ] ) + to:test_16u::@1 +test_16u::@1: scope:[test_16u] from test_16u test_16u::@11 + [14] (word) rem16u#16 ← phi( test_16u/(byte/signed byte/word/signed word/dword/signed dword) 0 test_16u::@11/(word) div16u::rem#8 ) [ test_16u::i#10 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 line_cursor#1 ] ) + [14] (byte) test_16u::i#10 ← phi( test_16u/(byte/signed byte/word/signed word/dword/signed dword) 0 test_16u::@11/(byte) test_16u::i#1 ) [ test_16u::i#10 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 line_cursor#1 ] ) + [15] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) [ test_16u::i#10 test_16u::dividend#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 line_cursor#1 ] ) + [16] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 ] ) + [17] (word) div16u::dividend#1 ← (word) test_16u::dividend#0 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 line_cursor#1 ] ) + [18] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 div16u::divisor#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 div16u::divisor#0 line_cursor#1 ] ) + [19] call div16u param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#0 line_cursor#1 ] ) + [20] (word) div16u::return#2 ← (word) div16u::return#0 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 line_cursor#1 ] ) + to:test_16u::@3 +test_16u::@3: scope:[test_16u] from test_16u::@1 + [21] (word) test_16u::res#0 ← (word) div16u::return#2 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 line_cursor#1 ] ) + [22] (word) print_word::w#0 ← (word) test_16u::dividend#0 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 line_cursor#1 ] ) + [23] (byte*~) char_cursor#121 ← (byte*) line_cursor#1 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 char_cursor#121 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 char_cursor#121 line_cursor#1 ] ) + [24] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] ) + to:test_16u::@4 +test_16u::@4: scope:[test_16u] from test_16u::@3 + [25] phi() [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] ) + [26] call print_str param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] ) + to:test_16u::@5 +test_16u::@5: scope:[test_16u] from test_16u::@4 + [27] (word) print_word::w#1 ← (word) test_16u::divisor#0 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#1 char_cursor#100 ] ) + [28] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] ) + to:test_16u::@6 +test_16u::@6: scope:[test_16u] from test_16u::@5 + [29] phi() [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] ) + [30] call print_str param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] ) + to:test_16u::@7 +test_16u::@7: scope:[test_16u] from test_16u::@6 + [31] (word) print_word::w#2 ← (word) test_16u::res#0 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#2 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#2 char_cursor#100 ] ) + [32] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + to:test_16u::@8 +test_16u::@8: scope:[test_16u] from test_16u::@7 + [33] phi() [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + [34] call print_str param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] ) + to:test_16u::@9 +test_16u::@9: scope:[test_16u] from test_16u::@8 + [35] (word) print_word::w#3 ← (word) div16u::rem#8 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#3 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#3 char_cursor#100 ] ) + [36] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + to:test_16u::@10 +test_16u::@10: scope:[test_16u] from test_16u::@9 + [37] phi() [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + [38] call print_ln param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 ] ) + to:test_16u::@11 +test_16u::@11: scope:[test_16u] from test_16u::@10 + [39] (byte) test_16u::i#1 ← (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ) + [40] if((byte) test_16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 12) goto test_16u::@1 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ) + to:test_16u::@return +test_16u::@return: scope:[test_16u] from test_16u::@11 + [41] return [ ] ( main:2::test_16u:11 [ ] ) to:@return -print_ln: scope:[print_ln] from test_8s::@10 test_8u::@10 - [40] (byte*) line_cursor#27 ← phi( test_8s::@10/(byte*) line_cursor#30 test_8u::@10/(byte*) line_cursor#1 ) [ line_cursor#27 char_cursor#11 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#27 char_cursor#11 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#27 char_cursor#11 ] ) +print_ln: scope:[print_ln] from test_16u::@10 test_8s::@10 test_8u::@10 + [42] (byte*) line_cursor#33 ← phi( test_16u::@10/(byte*) line_cursor#1 test_8s::@10/(byte*) line_cursor#37 test_8u::@10/(byte*) line_cursor#1 ) [ line_cursor#33 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#33 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#33 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#33 char_cursor#14 ] ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - [41] (byte*) line_cursor#14 ← phi( print_ln/(byte*) line_cursor#27 print_ln::@1/(byte*) line_cursor#1 ) [ line_cursor#14 char_cursor#11 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#14 char_cursor#11 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#14 char_cursor#11 ] ) - [42] (byte*) line_cursor#1 ← (byte*) line_cursor#14 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#11 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] ) - [43] if((byte*) line_cursor#1<(byte*) char_cursor#11) goto print_ln::@1 [ line_cursor#1 char_cursor#11 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] ) + [43] (byte*) line_cursor#17 ← phi( print_ln/(byte*) line_cursor#33 print_ln::@1/(byte*) line_cursor#1 ) [ line_cursor#17 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#17 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#17 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#17 char_cursor#14 ] ) + [44] (byte*) line_cursor#1 ← (byte*) line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] ) + [45] if((byte*) line_cursor#1<(byte*) char_cursor#14) goto print_ln::@1 [ line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] ) to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@1 - [44] return [ line_cursor#1 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 ] ) + [46] return [ line_cursor#1 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 ] ) to:@return -print_byte: scope:[print_byte] from print_sbyte::@1 test_8u::@3 test_8u::@5 test_8u::@7 test_8u::@9 - [45] (byte*) char_cursor#78 ← phi( print_sbyte::@1/(byte*) char_cursor#76 test_8u::@3/(byte*~) char_cursor#91 test_8u::@5/(byte*) char_cursor#2 test_8u::@7/(byte*) char_cursor#2 test_8u::@9/(byte*) char_cursor#2 ) [ print_byte::b#5 char_cursor#78 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] ) - [45] (byte) print_byte::b#5 ← phi( print_sbyte::@1/(byte~) print_byte::b#7 test_8u::@3/(byte) print_byte::b#1 test_8u::@5/(byte) print_byte::b#2 test_8u::@7/(byte) print_byte::b#3 test_8u::@9/(byte) print_byte::b#4 ) [ print_byte::b#5 char_cursor#78 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 ] ) - [46] (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#5 char_cursor#78 print_byte::$0 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] ) - [47] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#78 print_char::ch#1 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] ) - [48] call print_char param-assignment [ char_cursor#11 print_byte::b#5 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] ) +print_word: scope:[print_word] from test_16u::@3 test_16u::@5 test_16u::@7 test_16u::@9 + [47] (byte*) char_cursor#104 ← phi( test_16u::@3/(byte*~) char_cursor#121 test_16u::@5/(byte*) char_cursor#100 test_16u::@7/(byte*) char_cursor#100 test_16u::@9/(byte*) char_cursor#100 ) [ print_word::w#4 char_cursor#104 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 ] ) + [47] (word) print_word::w#4 ← phi( test_16u::@3/(word) print_word::w#0 test_16u::@5/(word) print_word::w#1 test_16u::@7/(word) print_word::w#2 test_16u::@9/(word) print_word::w#3 ) [ print_word::w#4 char_cursor#104 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 ] ) + [48] (byte) print_byte::b#1 ← > (word) print_word::w#4 [ print_word::w#4 char_cursor#104 print_byte::b#1 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] ) + [49] call print_byte param-assignment [ char_cursor#14 print_word::w#4 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_word::w#4 ] ) + to:print_word::@1 +print_word::@1: scope:[print_word] from print_word + [50] (byte) print_byte::b#2 ← < (word) print_word::w#4 [ char_cursor#14 print_byte::b#2 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] ) + [51] call print_byte param-assignment [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + to:print_word::@return +print_word::@return: scope:[print_word] from print_word::@1 + [52] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + to:@return +print_byte: scope:[print_byte] from print_sbyte::@1 print_word print_word::@1 test_8u::@3 test_8u::@5 test_8u::@7 test_8u::@9 + [53] (byte*) char_cursor#105 ← phi( print_sbyte::@1/(byte*) char_cursor#102 print_word/(byte*) char_cursor#104 print_word::@1/(byte*) char_cursor#14 test_8u::@3/(byte*~) char_cursor#128 test_8u::@5/(byte*) char_cursor#100 test_8u::@7/(byte*) char_cursor#100 test_8u::@9/(byte*) char_cursor#100 ) [ print_byte::b#7 char_cursor#105 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] ) + [53] (byte) print_byte::b#7 ← phi( print_sbyte::@1/(byte~) print_byte::b#9 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 test_8u::@3/(byte) print_byte::b#3 test_8u::@5/(byte) print_byte::b#4 test_8u::@7/(byte) print_byte::b#5 test_8u::@9/(byte) print_byte::b#6 ) [ print_byte::b#7 char_cursor#105 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 ] ) + [54] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 char_cursor#105 print_byte::$0 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] ) + [55] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#7 char_cursor#105 print_char::ch#1 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] ) + [56] call print_char param-assignment [ char_cursor#14 print_byte::b#7 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] ) to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - [49] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#11 print_byte::$2 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] ) - [50] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#11 print_char::ch#2 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] ) - [51] call print_char param-assignment [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + [57] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#14 print_byte::$2 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] ) + [58] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#14 print_char::ch#2 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] ) + [59] call print_char param-assignment [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@1 - [52] return [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + [60] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@2 - [53] (byte*) char_cursor#48 ← phi( print_byte/(byte*) char_cursor#78 print_byte::@1/(byte*) char_cursor#11 print_sbyte::@2/(byte*) char_cursor#77 ) [ print_char::ch#3 char_cursor#48 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] ) - [53] (byte) print_char::ch#3 ← phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sbyte::@2/(byte) '-' ) [ print_char::ch#3 char_cursor#48 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#48 ] ) - [54] *((byte*) char_cursor#48) ← (byte) print_char::ch#3 [ char_cursor#48 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] ) - [55] (byte*) char_cursor#11 ← ++ (byte*) char_cursor#48 [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] ) + [61] (byte*) char_cursor#64 ← phi( print_byte/(byte*) char_cursor#105 print_byte::@1/(byte*) char_cursor#14 print_sbyte::@2/(byte*) char_cursor#103 ) [ print_char::ch#3 char_cursor#64 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] ) + [61] (byte) print_char::ch#3 ← phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sbyte::@2/(byte) '-' ) [ print_char::ch#3 char_cursor#64 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 print_char::ch#3 char_cursor#64 ] ) + [62] *((byte*) char_cursor#64) ← (byte) print_char::ch#3 [ char_cursor#64 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] ) + [63] (byte*) char_cursor#14 ← ++ (byte*) char_cursor#64 [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] ) to:print_char::@return print_char::@return: scope:[print_char] from print_char - [56] return [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] ) + [64] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] ) to:@return -print_str: scope:[print_str] from test_8s::@4 test_8s::@6 test_8s::@8 test_8u::@4 test_8u::@6 test_8u::@8 - [57] (byte*) print_str::str#9 ← phi( test_8s::@4/(const string) test_8s::str test_8s::@6/(const string) test_8s::str1 test_8s::@8/(const string) test_8s::str2 test_8u::@4/(const string) test_8u::str test_8u::@6/(const string) test_8u::str1 test_8u::@8/(const string) test_8u::str2 ) [ char_cursor#11 print_str::str#9 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_str::str#9 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_str::str#9 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_str::str#9 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_str::str#9 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_str::str#9 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_str::str#9 ] ) +print_str: scope:[print_str] from test_16u::@4 test_16u::@6 test_16u::@8 test_8s::@4 test_8s::@6 test_8s::@8 test_8u::@4 test_8u::@6 test_8u::@8 + [65] (byte*) print_str::str#12 ← phi( test_16u::@4/(const string) test_16u::str test_16u::@6/(const string) test_16u::str1 test_16u::@8/(const string) test_16u::str2 test_8s::@4/(const string) test_8s::str test_8s::@6/(const string) test_8s::str1 test_8s::@8/(const string) test_8s::str2 test_8u::@4/(const string) test_8u::str test_8u::@6/(const string) test_8u::str1 test_8u::@8/(const string) test_8u::str2 ) [ char_cursor#14 print_str::str#12 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_str::str#12 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_str::str#12 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_str::str#12 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_str::str#12 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_str::str#12 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_str::str#12 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_str::str#12 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_str::str#12 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_str::str#12 ] ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - [58] (byte*) char_cursor#2 ← phi( print_str/(byte*) char_cursor#11 print_str::@2/(byte*) char_cursor#1 ) [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) - [58] (byte*) print_str::str#7 ← phi( print_str/(byte*) print_str::str#9 print_str::@2/(byte*) print_str::str#0 ) [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) - [59] if(*((byte*) print_str::str#7)!=(byte) '@') goto print_str::@2 [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) + [66] (byte*) char_cursor#100 ← phi( print_str/(byte*) char_cursor#14 print_str::@2/(byte*) char_cursor#1 ) [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) + [66] (byte*) print_str::str#10 ← phi( print_str/(byte*) print_str::str#12 print_str::@2/(byte*) print_str::str#0 ) [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) + [67] if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) to:print_str::@return print_str::@return: scope:[print_str] from print_str::@1 - [60] return [ char_cursor#2 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 ] ) + [68] return [ char_cursor#100 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 ] ) to:@return print_str::@2: scope:[print_str] from print_str::@1 - [61] *((byte*) char_cursor#2) ← *((byte*) print_str::str#7) [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) - [62] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#2 [ print_str::str#7 char_cursor#1 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] ) - [63] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#7 [ print_str::str#0 char_cursor#1 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] ) + [69] *((byte*) char_cursor#100) ← *((byte*) print_str::str#10) [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) + [70] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#100 [ print_str::str#10 char_cursor#1 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] ) + [71] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#10 [ print_str::str#0 char_cursor#1 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] ) to:print_str::@1 +div16u: scope:[div16u] from test_16u::@1 + [72] phi() [ div16u::dividend#1 div16u::divisor#0 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::dividend#1 div16u::divisor#0 ] ) + to:div16u::@1 +div16u::@1: scope:[div16u] from div16u div16u::@3 + [73] (byte) div16u::i#2 ← phi( div16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div16u::@3/(byte) div16u::i#1 ) [ div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ) + [73] (word) div16u::quotient#3 ← phi( div16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div16u::@3/(word) div16u::return#0 ) [ div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ) + [73] (word) div16u::dividend#2 ← phi( div16u/(word) div16u::dividend#1 div16u::@3/(word) div16u::dividend#0 ) [ div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ) + [73] (word) div16u::rem#4 ← phi( div16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div16u::@3/(word) div16u::rem#8 ) [ div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::rem#4 div16u::dividend#2 div16u::quotient#3 div16u::i#2 ] ) + [74] (word) div16u::rem#1 ← (word) div16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ) + [75] (byte~) div16u::$1 ← > (word) div16u::dividend#2 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ) + [76] (byte~) div16u::$2 ← (byte~) div16u::$1 & (byte/word/signed word/dword/signed dword) 128 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ) + [77] if((byte~) div16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div16u::@2 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ) + to:div16u::@4 +div16u::@4: scope:[div16u] from div16u::@1 + [78] (word) div16u::rem#2 ← ++ (word) div16u::rem#1 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#2 ] ) + to:div16u::@2 +div16u::@2: scope:[div16u] from div16u::@1 div16u::@4 + [79] (word) div16u::rem#5 ← phi( div16u::@1/(word) div16u::rem#1 div16u::@4/(word) div16u::rem#2 ) [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#5 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#5 ] ) + [80] (word) div16u::dividend#0 ← (word) div16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::quotient#3 div16u::i#2 div16u::dividend#0 div16u::rem#5 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::quotient#3 div16u::i#2 div16u::dividend#0 div16u::rem#5 ] ) + [81] (word) div16u::quotient#1 ← (word) div16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ) + [82] if((word) div16u::rem#5<(word) div16u::divisor#0) goto div16u::@3 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ) + to:div16u::@5 +div16u::@5: scope:[div16u] from div16u::@2 + [83] (word) div16u::quotient#2 ← ++ (word) div16u::quotient#1 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#2 ] ) + [84] (word) div16u::rem#3 ← (word) div16u::rem#5 - (word) div16u::divisor#0 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ) + to:div16u::@3 +div16u::@3: scope:[div16u] from div16u::@2 div16u::@5 + [85] (word) div16u::return#0 ← phi( div16u::@2/(word) div16u::quotient#1 div16u::@5/(word) div16u::quotient#2 ) [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::i#2 div16u::dividend#0 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::i#2 div16u::dividend#0 ] ) + [85] (word) div16u::rem#8 ← phi( div16u::@2/(word) div16u::rem#5 div16u::@5/(word) div16u::rem#3 ) [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::i#2 div16u::dividend#0 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::i#2 div16u::dividend#0 ] ) + [86] (byte) div16u::i#1 ← ++ (byte) div16u::i#2 [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ) + [87] if((byte) div16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto div16u::@1 [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ) + to:div16u::@return +div16u::@return: scope:[div16u] from div16u::@3 + [88] return [ div16u::rem#8 div16u::return#0 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::return#0 ] ) + to:@return +test_8u: scope:[test_8u] from main::@2 + [89] (byte) test_8u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ line_cursor#1 test_8u::rem#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 div8s::rem8u#0 ] ) + to:test_8u::@1 +test_8u::@1: scope:[test_8u] from test_8u test_8u::@11 + [90] (byte) test_8u::i#10 ← phi( test_8u/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8u::@11/(byte) test_8u::i#1 ) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + [91] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 div8s::rem8u#0 ] ) + [92] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ) + [93] (byte) div8u::dividend#2 ← (byte) test_8u::dividend#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8s::rem8u#0 ] ) + [94] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 div8s::rem8u#0 ] ) + [95] call div8u param-assignment [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 div8s::rem8u#0 ] ) + [96] (byte) div8u::return#3 ← (byte) div8u::return#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 div8s::rem8u#0 ] ) + to:test_8u::@3 +test_8u::@3: scope:[test_8u] from test_8u::@1 + [97] (byte) test_8u::res#0 ← (byte) div8u::return#3 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + [98] (byte) print_byte::b#3 ← (byte) test_8u::dividend#0 [ line_cursor#1 print_byte::b#3 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 print_byte::b#3 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + [99] (byte*~) char_cursor#128 ← (byte*) line_cursor#1 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + [100] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + to:test_8u::@4 +test_8u::@4: scope:[test_8u] from test_8u::@3 + [101] phi() [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + [102] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + to:test_8u::@5 +test_8u::@5: scope:[test_8u] from test_8u::@4 + [103] (byte) print_byte::b#4 ← (byte) test_8u::divisor#0 [ line_cursor#1 char_cursor#100 print_byte::b#4 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#4 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + [104] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + to:test_8u::@6 +test_8u::@6: scope:[test_8u] from test_8u::@5 + [105] phi() [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + [106] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + to:test_8u::@7 +test_8u::@7: scope:[test_8u] from test_8u::@6 + [107] (byte) print_byte::b#5 ← (byte) test_8u::res#0 [ line_cursor#1 char_cursor#100 print_byte::b#5 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#5 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + [108] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + to:test_8u::@8 +test_8u::@8: scope:[test_8u] from test_8u::@7 + [109] phi() [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + [110] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + to:test_8u::@9 +test_8u::@9: scope:[test_8u] from test_8u::@8 + [111] (byte) print_byte::b#6 ← (byte) test_8u::rem#0 [ line_cursor#1 char_cursor#100 print_byte::b#6 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#6 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + [112] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + to:test_8u::@10 +test_8u::@10: scope:[test_8u] from test_8u::@9 + [113] phi() [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + [114] call print_ln param-assignment [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + to:test_8u::@11 +test_8u::@11: scope:[test_8u] from test_8u::@10 + [115] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ) + [116] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@1 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ) + to:test_8u::@return +test_8u::@return: scope:[test_8u] from test_8u::@11 + [117] return [ line_cursor#1 ] ( main:2::test_8u:9 [ line_cursor#1 ] ) + to:@return div8u: scope:[div8u] from div8s::@4 test_8u::@1 - [64] (byte*) div8u::remainder#8 ← phi( div8s::@4/&(byte) div8s::rem8u#0 test_8u::@1/&(byte) test_8u::rem#0 ) [ test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ) - [64] (byte) div8u::divisor#6 ← phi( div8s::@4/(byte) div8u::divisor#0 test_8u::@1/(byte) div8u::divisor#1 ) [ test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ) - [64] (byte) div8u::dividend#5 ← phi( div8s::@4/(byte) div8u::dividend#1 test_8u::@1/(byte) div8u::dividend#2 ) [ test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ) + [118] (byte*) div8u::remainder#8 ← phi( div8s::@4/&(byte) div8s::rem8u#0 test_8u::@1/&(byte) test_8u::rem#0 ) [ test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ) + [118] (byte) div8u::divisor#6 ← phi( div8s::@4/(byte) div8u::divisor#0 test_8u::@1/(byte) div8u::divisor#1 ) [ test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ) + [118] (byte) div8u::dividend#5 ← phi( div8s::@4/(byte) div8u::dividend#1 test_8u::@1/(byte) div8u::dividend#2 ) [ test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::dividend#5 div8u::divisor#6 div8u::remainder#8 div8s::rem8u#0 ] ) to:div8u::@1 div8u::@1: scope:[div8u] from div8u div8u::@3 - [65] (byte) div8u::i#2 ← phi( div8u/(byte/signed byte/word/signed word/dword/signed dword) 0 div8u::@3/(byte) div8u::i#1 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) - [65] (byte) div8u::quotient#3 ← phi( div8u/(byte/signed byte/word/signed word/dword/signed dword) 0 div8u::@3/(byte) div8u::return#0 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) - [65] (byte) div8u::dividend#3 ← phi( div8u/(byte) div8u::dividend#5 div8u::@3/(byte) div8u::dividend#0 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) - [65] (byte) div8u::rem#4 ← phi( div8u/(byte/signed byte/word/signed word/dword/signed dword) 0 div8u::@3/(byte) div8u::rem#8 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) - [66] (byte) div8u::rem#1 ← (byte) div8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) - [67] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) - [68] if((byte~) div8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8u::@2 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) + [119] (byte) div8u::i#2 ← phi( div8u/(byte/signed byte/word/signed word/dword/signed dword) 0 div8u::@3/(byte) div8u::i#1 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) + [119] (byte) div8u::quotient#3 ← phi( div8u/(byte/signed byte/word/signed word/dword/signed dword) 0 div8u::@3/(byte) div8u::return#0 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) + [119] (byte) div8u::dividend#3 ← phi( div8u/(byte) div8u::dividend#5 div8u::@3/(byte) div8u::dividend#0 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) + [119] (byte) div8u::rem#4 ← phi( div8u/(byte/signed byte/word/signed word/dword/signed dword) 0 div8u::@3/(byte) div8u::rem#8 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#4 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8s::rem8u#0 ] ) + [120] (byte) div8u::rem#1 ← (byte) div8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) + [121] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) + [122] if((byte~) div8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8u::@2 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) to:div8u::@4 div8u::@4: scope:[div8u] from div8u::@1 - [69] (byte) div8u::rem#2 ← ++ (byte) div8u::rem#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ) + [123] (byte) div8u::rem#2 ← ++ (byte) div8u::rem#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ) to:div8u::@2 div8u::@2: scope:[div8u] from div8u::@1 div8u::@4 - [70] (byte) div8u::rem#5 ← phi( div8u::@1/(byte) div8u::rem#1 div8u::@4/(byte) div8u::rem#2 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#5 div8s::rem8u#0 ] ) - [71] (byte) div8u::dividend#0 ← (byte) div8u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ) - [72] (byte) div8u::quotient#1 ← (byte) div8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) - [73] if((byte) div8u::rem#5<(byte) div8u::divisor#6) goto div8u::@3 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) + [124] (byte) div8u::rem#5 ← phi( div8u::@1/(byte) div8u::rem#1 div8u::@4/(byte) div8u::rem#2 ) [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#5 div8s::rem8u#0 ] ) + [125] (byte) div8u::dividend#0 ← (byte) div8u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ) + [126] (byte) div8u::quotient#1 ← (byte) div8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) + [127] if((byte) div8u::rem#5<(byte) div8u::divisor#6) goto div8u::@3 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) to:div8u::@5 div8u::@5: scope:[div8u] from div8u::@2 - [74] (byte) div8u::quotient#2 ← ++ (byte) div8u::quotient#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ) - [75] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) + [128] (byte) div8u::quotient#2 ← ++ (byte) div8u::quotient#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ) + [129] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) to:div8u::@3 div8u::@3: scope:[div8u] from div8u::@2 div8u::@5 - [76] (byte) div8u::return#0 ← phi( div8u::@2/(byte) div8u::quotient#1 div8u::@5/(byte) div8u::quotient#2 ) [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ) - [76] (byte) div8u::rem#8 ← phi( div8u::@2/(byte) div8u::rem#5 div8u::@5/(byte) div8u::rem#3 ) [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ) - [77] (byte) div8u::i#1 ← ++ (byte) div8u::i#2 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) - [78] if((byte) div8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto div8u::@1 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) + [130] (byte) div8u::return#0 ← phi( div8u::@2/(byte) div8u::quotient#1 div8u::@5/(byte) div8u::quotient#2 ) [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ) + [130] (byte) div8u::rem#8 ← phi( div8u::@2/(byte) div8u::rem#5 div8u::@5/(byte) div8u::rem#3 ) [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::rem#8 div8u::dividend#0 div8s::rem8u#0 ] ) + [131] (byte) div8u::i#1 ← ++ (byte) div8u::i#2 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) + [132] if((byte) div8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto div8u::@1 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) to:div8u::@6 div8u::@6: scope:[div8u] from div8u::@3 - [79] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) + [133] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) to:div8u::@return div8u::@return: scope:[div8u] from div8u::@6 - [80] return [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) + [134] return [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) to:@return test_8s: scope:[test_8s] from main::@1 - [81] phi() [ test_8u::rem#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 ] ) + [135] phi() [ test_8u::rem#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 ] ) to:test_8s::@1 test_8s::@1: scope:[test_8s] from test_8s test_8s::@12 - [82] (byte*) line_cursor#30 ← phi( test_8s/(const byte*) SCREEN#0 test_8s::@12/(byte*) line_cursor#1 ) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ) - [82] (byte*) char_cursor#81 ← phi( test_8s/(const byte*) SCREEN#0 test_8s::@12/(byte*~) char_cursor#100 ) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ) - [82] (signed byte) rem8s#18 ← phi( test_8s/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8s::@12/(signed byte) rem8s#3 ) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ) - [82] (byte) test_8s::i#10 ← phi( test_8s/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8s::@12/(byte) test_8s::i#1 ) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 ] ) - [83] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ) - [84] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ) - [85] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ) - [86] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ) - [87] call div8s param-assignment [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ) - [88] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ) + [136] (byte*) line_cursor#37 ← phi( test_8s/(const byte*) SCREEN#0 test_8s::@12/(byte*) line_cursor#1 ) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ) + [136] (byte*) char_cursor#109 ← phi( test_8s/(const byte*) SCREEN#0 test_8s::@12/(byte*~) char_cursor#137 ) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ) + [136] (signed byte) rem8s#18 ← phi( test_8s/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8s::@12/(signed byte) rem8s#3 ) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ) + [136] (byte) test_8s::i#10 ← phi( test_8s/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8s::@12/(byte) test_8s::i#1 ) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 ] ) + [137] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ) + [138] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ) + [139] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ) + [140] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ) + [141] call div8s param-assignment [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ) + [142] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ) to:test_8s::@3 test_8s::@3: scope:[test_8s] from test_8s::@1 - [89] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) - [90] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ) - [91] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + [143] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + [144] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ) + [145] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) to:test_8s::@4 test_8s::@4: scope:[test_8s] from test_8s::@3 - [92] phi() [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) - [93] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + [146] phi() [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + [147] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) to:test_8s::@5 test_8s::@5: scope:[test_8s] from test_8s::@4 - [94] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ) - [95] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) + [148] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ) + [149] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) to:test_8s::@6 test_8s::@6: scope:[test_8s] from test_8s::@5 - [96] phi() [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) - [97] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) + [150] phi() [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) + [151] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) to:test_8s::@7 test_8s::@7: scope:[test_8s] from test_8s::@6 - [98] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ) - [99] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + [152] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ) + [153] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) to:test_8s::@8 test_8s::@8: scope:[test_8s] from test_8s::@7 - [100] phi() [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - [101] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + [154] phi() [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + [155] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) to:test_8s::@9 test_8s::@9: scope:[test_8s] from test_8s::@8 - [102] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ) - [103] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + [156] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ) + [157] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) to:test_8s::@10 test_8s::@10: scope:[test_8s] from test_8s::@9 - [104] phi() [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - [105] call print_ln param-assignment [ test_8u::rem#0 line_cursor#1 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + [158] phi() [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + [159] call print_ln param-assignment [ line_cursor#1 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) to:test_8s::@11 test_8s::@11: scope:[test_8s] from test_8s::@10 - [106] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) - [107] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@12 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) + [160] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) + [161] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@12 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) to:test_8s::@return test_8s::@return: scope:[test_8s] from test_8s::@11 - [108] return [ line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 div8s::rem8u#0 ] ) + [162] return [ line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 div8s::rem8u#0 ] ) to:@return test_8s::@12: scope:[test_8s] from test_8s::@11 - [109] (byte*~) char_cursor#100 ← (byte*) line_cursor#1 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ) + [163] (byte*~) char_cursor#137 ← (byte*) line_cursor#1 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ) to:test_8s::@1 print_sbyte: scope:[print_sbyte] from test_8s::@3 test_8s::@5 test_8s::@7 test_8s::@9 - [110] (byte*) char_cursor#77 ← phi( test_8s::@3/(byte*) char_cursor#81 test_8s::@5/(byte*) char_cursor#2 test_8s::@7/(byte*) char_cursor#2 test_8s::@9/(byte*) char_cursor#2 ) [ char_cursor#77 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] ) - [110] (signed byte) print_sbyte::b#5 ← phi( test_8s::@3/(signed byte) print_sbyte::b#1 test_8s::@5/(signed byte) print_sbyte::b#2 test_8s::@7/(signed byte) print_sbyte::b#3 test_8s::@9/(signed byte) print_sbyte::b#4 ) [ char_cursor#77 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] ) - [111] if((signed byte) print_sbyte::b#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#77 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] ) + [164] (byte*) char_cursor#103 ← phi( test_8s::@3/(byte*) char_cursor#109 test_8s::@5/(byte*) char_cursor#100 test_8s::@7/(byte*) char_cursor#100 test_8s::@9/(byte*) char_cursor#100 ) [ char_cursor#103 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] ) + [164] (signed byte) print_sbyte::b#5 ← phi( test_8s::@3/(signed byte) print_sbyte::b#1 test_8s::@5/(signed byte) print_sbyte::b#2 test_8s::@7/(signed byte) print_sbyte::b#3 test_8s::@9/(signed byte) print_sbyte::b#4 ) [ char_cursor#103 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] ) + [165] if((signed byte) print_sbyte::b#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#103 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] ) to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte - [112] phi() [ char_cursor#77 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] ) - [113] call print_char param-assignment [ char_cursor#11 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] ) + [166] phi() [ char_cursor#103 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] ) + [167] call print_char param-assignment [ char_cursor#14 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] ) to:print_sbyte::@4 print_sbyte::@4: scope:[print_sbyte] from print_sbyte::@2 - [114] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#11 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] ) + [168] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#14 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] ) to:print_sbyte::@1 print_sbyte::@1: scope:[print_sbyte] from print_sbyte print_sbyte::@4 - [115] (byte*) char_cursor#76 ← phi( print_sbyte/(byte*) char_cursor#77 print_sbyte::@4/(byte*) char_cursor#11 ) [ char_cursor#76 print_sbyte::b#6 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] ) - [115] (signed byte) print_sbyte::b#6 ← phi( print_sbyte/(signed byte) print_sbyte::b#5 print_sbyte::@4/(signed byte) print_sbyte::b#0 ) [ char_cursor#76 print_sbyte::b#6 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#76 print_sbyte::b#6 ] ) - [116] (byte~) print_byte::b#7 ← (byte)(signed byte) print_sbyte::b#6 [ print_byte::b#7 char_cursor#76 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] ) - [117] call print_byte param-assignment [ char_cursor#11 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + [169] (byte*) char_cursor#102 ← phi( print_sbyte/(byte*) char_cursor#103 print_sbyte::@4/(byte*) char_cursor#14 ) [ char_cursor#102 print_sbyte::b#6 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] ) + [169] (signed byte) print_sbyte::b#6 ← phi( print_sbyte/(signed byte) print_sbyte::b#5 print_sbyte::@4/(signed byte) print_sbyte::b#0 ) [ char_cursor#102 print_sbyte::b#6 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#102 print_sbyte::b#6 ] ) + [170] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#6 [ print_byte::b#9 char_cursor#102 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] ) + [171] call print_byte param-assignment [ char_cursor#14 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@1 - [118] return [ char_cursor#11 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + [172] return [ char_cursor#14 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) to:@return div8s: scope:[div8s] from test_8s::@1 - [119] if((signed byte) div8s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@16 [ test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ) + [173] if((signed byte) div8s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@16 [ test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ) to:div8s::@7 div8s::@7: scope:[div8s] from div8s - [120] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) - [121] (byte~) div8s::dividendb#8 ← (byte)(signed byte~) div8s::$2 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ) + [174] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) + [175] (byte~) div8s::dividendb#8 ← (byte)(signed byte~) div8s::$2 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ) to:div8s::@2 div8s::@2: scope:[div8s] from div8s::@16 div8s::@7 - [122] (byte) div8s::dividendb#3 ← phi( div8s::@16/(byte~) div8s::dividendb#7 div8s::@7/(byte~) div8s::dividendb#8 ) [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) - [122] (byte) div8s::neg#3 ← phi( div8s::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 div8s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) - [123] if((signed byte) div8s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@17 [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) + [176] (byte) div8s::dividendb#3 ← phi( div8s::@16/(byte~) div8s::dividendb#7 div8s::@7/(byte~) div8s::dividendb#8 ) [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) + [176] (byte) div8s::neg#3 ← phi( div8s::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 div8s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) + [177] if((signed byte) div8s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@17 [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) to:div8s::@9 div8s::@9: scope:[div8s] from div8s::@2 - [124] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) - [125] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) - [126] (byte~) div8s::divisorb#5 ← (byte)(signed byte~) div8s::$7 [ test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ) + [178] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) + [179] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) + [180] (byte~) div8s::divisorb#5 ← (byte)(signed byte~) div8s::$7 [ test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ) to:div8s::@4 div8s::@4: scope:[div8s] from div8s::@17 div8s::@9 - [127] (byte) div8s::neg#4 ← phi( div8s::@17/(byte) div8s::neg#3 div8s::@9/(byte) div8s::neg#2 ) [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ) - [127] (byte) div8s::divisorb#3 ← phi( div8s::@17/(byte~) div8s::divisorb#4 div8s::@9/(byte~) div8s::divisorb#5 ) [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ) - [128] (byte) div8s::rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) - [129] (byte) div8u::dividend#1 ← (byte) div8s::dividendb#3 [ test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) - [130] (byte) div8u::divisor#0 ← (byte) div8s::divisorb#3 [ test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ) - [131] call div8u param-assignment [ test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ) - [132] (byte) div8u::return#2 ← (byte) div8u::return#0 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ) + [181] (byte) div8s::neg#4 ← phi( div8s::@17/(byte) div8s::neg#3 div8s::@9/(byte) div8s::neg#2 ) [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ) + [181] (byte) div8s::divisorb#3 ← phi( div8s::@17/(byte~) div8s::divisorb#4 div8s::@9/(byte~) div8s::divisorb#5 ) [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 ] ) + [182] (byte) div8s::rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) + [183] (byte) div8u::dividend#1 ← (byte) div8s::dividendb#3 [ test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) + [184] (byte) div8u::divisor#0 ← (byte) div8s::divisorb#3 [ test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ) + [185] call div8u param-assignment [ test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ) + [186] (byte) div8u::return#2 ← (byte) div8u::return#0 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ) to:div8s::@15 div8s::@15: scope:[div8s] from div8s::@4 - [133] (byte) div8s::resultb#0 ← (byte) div8u::return#2 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ) - [134] if((byte) div8s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@5 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ) + [187] (byte) div8s::resultb#0 ← (byte) div8u::return#2 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ) + [188] if((byte) div8s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@5 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ) to:div8s::@18 div8s::@18: scope:[div8s] from div8s::@15 - [135] (signed byte~) div8s::return#6 ← (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ) - [136] (signed byte~) rem8s#30 ← (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#30 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#30 ] ) + [189] (signed byte~) div8s::return#6 ← (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ) + [190] (signed byte~) rem8s#32 ← (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#32 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#32 ] ) to:div8s::@return div8s::@return: scope:[div8s] from div8s::@18 div8s::@5 - [137] (signed byte) rem8s#3 ← phi( div8s::@18/(signed byte~) rem8s#30 div8s::@5/(signed byte) rem8s#1 ) [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) - [137] (signed byte) div8s::return#2 ← phi( div8s::@18/(signed byte~) div8s::return#6 div8s::@5/(signed byte) div8s::return#0 ) [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) - [138] return [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) + [191] (signed byte) rem8s#3 ← phi( div8s::@18/(signed byte~) rem8s#32 div8s::@5/(signed byte) rem8s#1 ) [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) + [191] (signed byte) div8s::return#2 ← phi( div8s::@18/(signed byte~) div8s::return#6 div8s::@5/(signed byte) div8s::return#0 ) [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) + [192] return [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) to:@return div8s::@5: scope:[div8s] from div8s::@15 - [139] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) - [140] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) + [193] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) + [194] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) to:div8s::@return div8s::@17: scope:[div8s] from div8s::@2 - [141] (byte~) div8s::divisorb#4 ← (byte)(signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ) + [195] (byte~) div8s::divisorb#4 ← (byte)(signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ) to:div8s::@4 div8s::@16: scope:[div8s] from div8s - [142] (byte~) div8s::dividendb#7 ← (byte)(signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ) + [196] (byte~) div8s::dividendb#7 ← (byte)(signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ) to:div8s::@2 print_cls: scope:[print_cls] from main - [143] phi() [ ] ( main:2::print_cls:5 [ test_8u::rem#0 ] ) + [197] phi() [ ] ( main:2::print_cls:5 [ test_8u::rem#0 ] ) to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [144] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) SCREEN#0 print_cls::@1/(byte*) print_cls::sc#1 ) [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) - [145] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) - [146] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) - [147] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) + [198] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) SCREEN#0 print_cls::@1/(byte*) print_cls::sc#1 ) [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) + [199] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) + [200] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) + [201] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 - [148] return [ ] ( main:2::print_cls:5 [ test_8u::rem#0 ] ) + [202] return [ ] ( main:2::print_cls:5 [ test_8u::rem#0 ] ) to:@return DOMINATORS @@ -3647,7 +4536,42 @@ DOMINATORS main dominated by main @begin @15 main::@1 dominated by main main::@1 @begin @15 main::@2 dominated by main main::@1 main::@2 @begin @15 -main::@return dominated by main main::@1 main::@2 @begin main::@return @15 +main::@3 dominated by main main::@1 main::@2 main::@3 @begin @15 +main::@return dominated by main main::@1 main::@2 main::@3 @begin main::@return @15 +test_16u dominated by main main::@1 main::@2 main::@3 @begin @15 test_16u +test_16u::@1 dominated by main main::@1 main::@2 main::@3 @begin @15 test_16u test_16u::@1 +test_16u::@3 dominated by main main::@1 main::@2 main::@3 @begin @15 test_16u test_16u::@1 test_16u::@3 +test_16u::@4 dominated by main main::@1 main::@2 main::@3 @begin @15 test_16u test_16u::@1 test_16u::@3 test_16u::@4 +test_16u::@5 dominated by main main::@1 main::@2 main::@3 @begin @15 test_16u test_16u::@5 test_16u::@1 test_16u::@3 test_16u::@4 +test_16u::@6 dominated by main main::@1 main::@2 main::@3 @begin @15 test_16u test_16u::@5 test_16u::@6 test_16u::@1 test_16u::@3 test_16u::@4 +test_16u::@7 dominated by main main::@1 main::@2 main::@3 @begin @15 test_16u test_16u::@5 test_16u::@6 test_16u::@7 test_16u::@1 test_16u::@3 test_16u::@4 +test_16u::@8 dominated by main main::@1 main::@2 main::@3 @begin @15 test_16u test_16u::@5 test_16u::@6 test_16u::@7 test_16u::@8 test_16u::@1 test_16u::@3 test_16u::@4 +test_16u::@9 dominated by main main::@1 main::@2 main::@3 @begin @15 test_16u test_16u::@9 test_16u::@5 test_16u::@6 test_16u::@7 test_16u::@8 test_16u::@1 test_16u::@3 test_16u::@4 +test_16u::@10 dominated by main main::@1 main::@2 main::@3 @begin test_16u::@10 @15 test_16u test_16u::@9 test_16u::@5 test_16u::@6 test_16u::@7 test_16u::@8 test_16u::@1 test_16u::@3 test_16u::@4 +test_16u::@11 dominated by main main::@1 main::@2 main::@3 @begin test_16u::@11 test_16u::@10 @15 test_16u test_16u::@9 test_16u::@5 test_16u::@6 test_16u::@7 test_16u::@8 test_16u::@1 test_16u::@3 test_16u::@4 +test_16u::@return dominated by main main::@1 main::@2 main::@3 @begin test_16u::@return test_16u::@11 test_16u::@10 @15 test_16u test_16u::@9 test_16u::@5 test_16u::@6 test_16u::@7 test_16u::@8 test_16u::@1 test_16u::@3 test_16u::@4 +print_ln dominated by main main::@1 @begin print_ln @15 +print_ln::@1 dominated by print_ln::@1 main main::@1 @begin print_ln @15 +print_ln::@return dominated by print_ln::@1 main print_ln::@return main::@1 @begin print_ln @15 +print_word dominated by main print_word main::@1 main::@2 main::@3 @begin @15 test_16u test_16u::@1 test_16u::@3 +print_word::@1 dominated by main print_word main::@1 main::@2 main::@3 @begin print_word::@1 @15 test_16u test_16u::@1 test_16u::@3 +print_word::@return dominated by main print_word main::@1 main::@2 main::@3 @begin print_word::@return print_word::@1 @15 test_16u test_16u::@1 test_16u::@3 +print_byte dominated by main main::@1 @begin @15 print_byte +print_byte::@1 dominated by main main::@1 @begin print_byte::@1 @15 print_byte +print_byte::@return dominated by main main::@1 @begin print_byte::@return print_byte::@1 @15 print_byte +print_char dominated by main print_char main::@1 @begin @15 +print_char::@return dominated by main print_char main::@1 print_char::@return @begin @15 +print_str dominated by main main::@1 @begin @15 print_str +print_str::@1 dominated by main main::@1 @begin print_str::@1 @15 print_str +print_str::@return dominated by main main::@1 @begin print_str::@return print_str::@1 @15 print_str +print_str::@2 dominated by main main::@1 @begin print_str::@1 print_str::@2 @15 print_str +div16u dominated by main main::@1 main::@2 div16u main::@3 @begin @15 test_16u test_16u::@1 +div16u::@1 dominated by main main::@1 main::@2 div16u main::@3 @begin div16u::@1 @15 test_16u test_16u::@1 +div16u::@4 dominated by main main::@1 main::@2 div16u main::@3 @begin div16u::@4 div16u::@1 @15 test_16u test_16u::@1 +div16u::@2 dominated by main main::@1 main::@2 div16u main::@3 @begin div16u::@2 div16u::@1 @15 test_16u test_16u::@1 +div16u::@5 dominated by main main::@1 main::@2 div16u main::@3 @begin div16u::@5 div16u::@2 div16u::@1 @15 test_16u test_16u::@1 +div16u::@3 dominated by main main::@1 main::@2 div16u main::@3 @begin div16u::@3 div16u::@2 div16u::@1 @15 test_16u test_16u::@1 +div16u::@return dominated by main div16u::@return main::@1 main::@2 div16u main::@3 @begin div16u::@3 div16u::@2 div16u::@1 @15 test_16u test_16u::@1 test_8u dominated by main main::@1 main::@2 @begin test_8u @15 test_8u::@1 dominated by main main::@1 main::@2 @begin test_8u test_8u::@1 @15 test_8u::@3 dominated by main main::@1 main::@2 @begin test_8u test_8u::@3 test_8u::@1 @15 @@ -3660,18 +4584,6 @@ test_8u::@9 dominated by main main::@1 main::@2 @begin test_8u::@6 test_8u::@7 test_8u::@10 dominated by main main::@1 main::@2 @begin test_8u::@6 test_8u::@7 test_8u::@8 test_8u::@9 test_8u test_8u::@10 test_8u::@3 test_8u::@4 test_8u::@5 test_8u::@1 @15 test_8u::@11 dominated by main main::@1 main::@2 @begin test_8u::@6 test_8u::@7 test_8u::@8 test_8u::@9 test_8u test_8u::@10 test_8u::@11 test_8u::@3 test_8u::@4 test_8u::@5 test_8u::@1 @15 test_8u::@return dominated by main main::@1 main::@2 @begin test_8u::@6 test_8u::@7 test_8u::@8 test_8u::@9 test_8u test_8u::@10 test_8u::@11 test_8u::@3 test_8u::@4 test_8u::@5 test_8u::@1 @15 test_8u::@return -print_ln dominated by main main::@1 @begin print_ln @15 -print_ln::@1 dominated by print_ln::@1 main main::@1 @begin print_ln @15 -print_ln::@return dominated by print_ln::@1 main print_ln::@return main::@1 @begin print_ln @15 -print_byte dominated by main main::@1 @begin @15 print_byte -print_byte::@1 dominated by main main::@1 @begin print_byte::@1 @15 print_byte -print_byte::@return dominated by main main::@1 @begin print_byte::@return print_byte::@1 @15 print_byte -print_char dominated by main print_char main::@1 @begin @15 -print_char::@return dominated by main print_char main::@1 print_char::@return @begin @15 -print_str dominated by main main::@1 @begin @15 print_str -print_str::@1 dominated by main main::@1 @begin print_str::@1 @15 print_str -print_str::@return dominated by main main::@1 @begin print_str::@return print_str::@1 @15 print_str -print_str::@2 dominated by main main::@1 @begin print_str::@1 print_str::@2 @15 print_str div8u dominated by main main::@1 @begin div8u @15 div8u::@1 dominated by main main::@1 @begin div8u @15 div8u::@1 div8u::@4 dominated by main div8u::@4 main::@1 @begin div8u @15 div8u::@1 @@ -3714,21 +4626,27 @@ print_cls::@1 dominated by main @begin @15 print_cls::@1 print_cls print_cls::@return dominated by main @begin print_cls::@return @15 print_cls::@1 print_cls NATURAL LOOPS -Found back edge: Loop head: test_8u::@1 tails: test_8u::@11 blocks: null +Found back edge: Loop head: test_16u::@1 tails: test_16u::@11 blocks: null Found back edge: Loop head: print_ln::@1 tails: print_ln::@1 blocks: null Found back edge: Loop head: print_str::@1 tails: print_str::@2 blocks: null +Found back edge: Loop head: div16u::@1 tails: div16u::@3 blocks: null +Found back edge: Loop head: test_8u::@1 tails: test_8u::@11 blocks: null Found back edge: Loop head: div8u::@1 tails: div8u::@3 blocks: null Found back edge: Loop head: test_8s::@1 tails: test_8s::@12 blocks: null Found back edge: Loop head: print_cls::@1 tails: print_cls::@1 blocks: null -Populated: Loop head: test_8u::@1 tails: test_8u::@11 blocks: test_8u::@11 test_8u::@10 test_8u::@9 test_8u::@8 test_8u::@7 test_8u::@6 test_8u::@5 test_8u::@4 test_8u::@3 test_8u::@1 +Populated: Loop head: test_16u::@1 tails: test_16u::@11 blocks: test_16u::@11 test_16u::@10 test_16u::@9 test_16u::@8 test_16u::@7 test_16u::@6 test_16u::@5 test_16u::@4 test_16u::@3 test_16u::@1 Populated: Loop head: print_ln::@1 tails: print_ln::@1 blocks: print_ln::@1 Populated: Loop head: print_str::@1 tails: print_str::@2 blocks: print_str::@2 print_str::@1 +Populated: Loop head: div16u::@1 tails: div16u::@3 blocks: div16u::@3 div16u::@2 div16u::@5 div16u::@1 div16u::@4 +Populated: Loop head: test_8u::@1 tails: test_8u::@11 blocks: test_8u::@11 test_8u::@10 test_8u::@9 test_8u::@8 test_8u::@7 test_8u::@6 test_8u::@5 test_8u::@4 test_8u::@3 test_8u::@1 Populated: Loop head: div8u::@1 tails: div8u::@3 blocks: div8u::@3 div8u::@2 div8u::@5 div8u::@1 div8u::@4 Populated: Loop head: test_8s::@1 tails: test_8s::@12 blocks: test_8s::@12 test_8s::@11 test_8s::@10 test_8s::@9 test_8s::@8 test_8s::@7 test_8s::@6 test_8s::@5 test_8s::@4 test_8s::@3 test_8s::@1 Populated: Loop head: print_cls::@1 tails: print_cls::@1 blocks: print_cls::@1 -Loop head: test_8u::@1 tails: test_8u::@11 blocks: test_8u::@11 test_8u::@10 test_8u::@9 test_8u::@8 test_8u::@7 test_8u::@6 test_8u::@5 test_8u::@4 test_8u::@3 test_8u::@1 +Loop head: test_16u::@1 tails: test_16u::@11 blocks: test_16u::@11 test_16u::@10 test_16u::@9 test_16u::@8 test_16u::@7 test_16u::@6 test_16u::@5 test_16u::@4 test_16u::@3 test_16u::@1 Loop head: print_ln::@1 tails: print_ln::@1 blocks: print_ln::@1 Loop head: print_str::@1 tails: print_str::@2 blocks: print_str::@2 print_str::@1 +Loop head: div16u::@1 tails: div16u::@3 blocks: div16u::@3 div16u::@2 div16u::@5 div16u::@1 div16u::@4 +Loop head: test_8u::@1 tails: test_8u::@11 blocks: test_8u::@11 test_8u::@10 test_8u::@9 test_8u::@8 test_8u::@7 test_8u::@6 test_8u::@5 test_8u::@4 test_8u::@3 test_8u::@1 Loop head: div8u::@1 tails: div8u::@3 blocks: div8u::@3 div8u::@2 div8u::@5 div8u::@1 div8u::@4 Loop head: test_8s::@1 tails: test_8s::@12 blocks: test_8s::@12 test_8s::@11 test_8s::@10 test_8s::@9 test_8s::@8 test_8s::@7 test_8s::@6 test_8s::@5 test_8s::@4 test_8s::@3 test_8s::@1 Loop head: print_cls::@1 tails: print_cls::@1 blocks: print_cls::@1 @@ -3742,6 +4660,8 @@ Found 1 loops in scope [test_8s] Loop head: test_8s::@1 tails: test_8s::@12 blocks: test_8s::@12 test_8s::@11 test_8s::@10 test_8s::@9 test_8s::@8 test_8s::@7 test_8s::@6 test_8s::@5 test_8s::@4 test_8s::@3 test_8s::@1 Found 1 loops in scope [test_8u] Loop head: test_8u::@1 tails: test_8u::@11 blocks: test_8u::@11 test_8u::@10 test_8u::@9 test_8u::@8 test_8u::@7 test_8u::@6 test_8u::@5 test_8u::@4 test_8u::@3 test_8u::@1 +Found 1 loops in scope [test_16u] + Loop head: test_16u::@1 tails: test_16u::@11 blocks: test_16u::@11 test_16u::@10 test_16u::@9 test_16u::@8 test_16u::@7 test_16u::@6 test_16u::@5 test_16u::@4 test_16u::@3 test_16u::@1 Found 0 loops in scope [div8s] Found 0 loops in scope [print_sbyte] Found 1 loops in scope [print_str] @@ -3751,10 +4671,15 @@ Found 1 loops in scope [print_ln] Found 1 loops in scope [div8u] Loop head: div8u::@1 tails: div8u::@3 blocks: div8u::@3 div8u::@2 div8u::@5 div8u::@1 div8u::@4 Found 0 loops in scope [print_byte] +Found 1 loops in scope [div16u] + Loop head: div16u::@1 tails: div16u::@3 blocks: div16u::@3 div16u::@2 div16u::@5 div16u::@1 div16u::@4 +Found 0 loops in scope [print_word] Found 0 loops in scope [print_char] -Loop head: test_8u::@1 tails: test_8u::@11 blocks: test_8u::@11 test_8u::@10 test_8u::@9 test_8u::@8 test_8u::@7 test_8u::@6 test_8u::@5 test_8u::@4 test_8u::@3 test_8u::@1 depth: 1 +Loop head: test_16u::@1 tails: test_16u::@11 blocks: test_16u::@11 test_16u::@10 test_16u::@9 test_16u::@8 test_16u::@7 test_16u::@6 test_16u::@5 test_16u::@4 test_16u::@3 test_16u::@1 depth: 1 Loop head: print_ln::@1 tails: print_ln::@1 blocks: print_ln::@1 depth: 2 Loop head: print_str::@1 tails: print_str::@2 blocks: print_str::@2 print_str::@1 depth: 2 +Loop head: div16u::@1 tails: div16u::@3 blocks: div16u::@3 div16u::@2 div16u::@5 div16u::@1 div16u::@4 depth: 2 +Loop head: test_8u::@1 tails: test_8u::@11 blocks: test_8u::@11 test_8u::@10 test_8u::@9 test_8u::@8 test_8u::@7 test_8u::@6 test_8u::@5 test_8u::@4 test_8u::@3 test_8u::@1 depth: 1 Loop head: div8u::@1 tails: div8u::@3 blocks: div8u::@3 div8u::@2 div8u::@5 div8u::@1 div8u::@4 depth: 2 Loop head: test_8s::@1 tails: test_8s::@12 blocks: test_8s::@12 test_8s::@11 test_8s::@10 test_8s::@9 test_8s::@8 test_8s::@7 test_8s::@6 test_8s::@5 test_8s::@4 test_8s::@3 test_8s::@1 depth: 1 Loop head: print_cls::@1 tails: print_cls::@1 blocks: print_cls::@1 depth: 1 @@ -3764,15 +4689,43 @@ VARIABLE REGISTER WEIGHTS (byte*) SCREEN (byte*) char_cursor (byte*) char_cursor#1 101.0 -(byte*~) char_cursor#100 22.0 -(byte*) char_cursor#11 3.40625 -(byte*) char_cursor#2 23.1875 -(byte*) char_cursor#48 5.0 -(byte*) char_cursor#76 3.0 -(byte*) char_cursor#77 15.999999999999998 -(byte*) char_cursor#78 15.999999999999998 -(byte*) char_cursor#81 2.4444444444444446 -(byte*~) char_cursor#91 22.0 +(byte*) char_cursor#100 18.363636363636363 +(byte*) char_cursor#102 3.0 +(byte*) char_cursor#103 15.999999999999998 +(byte*) char_cursor#104 23.0 +(byte*) char_cursor#105 17.333333333333332 +(byte*) char_cursor#109 2.4444444444444446 +(byte*~) char_cursor#121 22.0 +(byte*~) char_cursor#128 22.0 +(byte*~) char_cursor#137 22.0 +(byte*) char_cursor#14 2.5227272727272725 +(byte*) char_cursor#64 5.0 +(word()) div16u((word) div16u::dividend , (word) div16u::divisor) +(byte~) div16u::$1 202.0 +(byte~) div16u::$2 202.0 +(word) div16u::dividend +(word) div16u::dividend#0 25.25 +(word) div16u::dividend#1 4.333333333333333 +(word) div16u::dividend#2 43.57142857142858 +(word) div16u::divisor +(word) div16u::divisor#0 12.529411764705884 +(byte) div16u::i +(byte) div16u::i#1 151.5 +(byte) div16u::i#2 15.538461538461538 +(word) div16u::quotient +(word) div16u::quotient#1 151.5 +(word) div16u::quotient#2 101.0 +(word) div16u::quotient#3 25.25 +(word) div16u::rem +(word) div16u::rem#1 75.75 +(word) div16u::rem#2 202.0 +(word) div16u::rem#3 202.0 +(word) div16u::rem#4 202.0 +(word) div16u::rem#5 101.0 +(word) div16u::rem#8 12.5 +(word) div16u::return +(word) div16u::return#0 62.8 +(word) div16u::return#2 22.0 (signed byte()) div8s((signed byte) div8s::dividend , (signed byte) div8s::divisor) (signed byte~) div8s::$2 2.0 (signed byte~) div8s::$7 1.0 @@ -3834,21 +4787,23 @@ VARIABLE REGISTER WEIGHTS (byte) div8u::return#2 4.0 (byte) div8u::return#3 22.0 (byte*) line_cursor -(byte*) line_cursor#1 9.131578947368421 -(byte*) line_cursor#14 204.0 -(byte*) line_cursor#27 24.0 -(byte*) line_cursor#30 0.9565217391304348 +(byte*) line_cursor#1 5.3478260869565215 +(byte*) line_cursor#17 204.0 +(byte*) line_cursor#33 35.0 +(byte*) line_cursor#37 0.9565217391304348 (void()) main() (void()) print_byte((byte) print_byte::b) (byte~) print_byte::$0 4.0 (byte~) print_byte::$2 4.0 (byte) print_byte::b -(byte) print_byte::b#1 11.0 -(byte) print_byte::b#2 22.0 -(byte) print_byte::b#3 22.0 +(byte) print_byte::b#1 4.0 +(byte) print_byte::b#2 4.0 +(byte) print_byte::b#3 11.0 (byte) print_byte::b#4 22.0 -(byte) print_byte::b#5 12.5 -(byte~) print_byte::b#7 4.0 +(byte) print_byte::b#5 22.0 +(byte) print_byte::b#6 22.0 +(byte) print_byte::b#7 13.5 +(byte~) print_byte::b#9 4.0 (byte[]) print_byte::hextab (void()) print_char((byte) print_char::ch) (byte) print_char::ch @@ -3872,13 +4827,34 @@ VARIABLE REGISTER WEIGHTS (void()) print_str((byte*) print_str::str) (byte*) print_str::str (byte*) print_str::str#0 202.0 -(byte*) print_str::str#7 101.5 -(byte*) print_str::str#9 2.0 +(byte*) print_str::str#10 101.5 +(byte*) print_str::str#12 2.0 +(void()) print_word((word) print_word::w) +(word) print_word::w +(word) print_word::w#0 11.0 +(word) print_word::w#1 22.0 +(word) print_word::w#2 22.0 +(word) print_word::w#3 22.0 +(word) print_word::w#4 15.999999999999998 +(word) rem16u +(word) rem16u#16 110.0 (signed byte) rem8s (signed byte) rem8s#1 2.0 (signed byte) rem8s#18 110.0 (signed byte) rem8s#3 1.0833333333333333 -(signed byte~) rem8s#30 4.0 +(signed byte~) rem8s#32 4.0 +(void()) test_16u() +(word) test_16u::dividend +(word) test_16u::dividend#0 4.714285714285714 +(word[]) test_16u::dividends +(word) test_16u::divisor +(word) test_16u::divisor#0 3.0 +(word[]) test_16u::divisors +(byte) test_16u::i +(byte) test_16u::i#1 16.5 +(byte) test_16u::i#10 1.76 +(word) test_16u::res +(word) test_16u::res#0 2.2 (void()) test_8s() (signed byte) test_8s::dividend (signed byte) test_8s::dividend#0 4.714285714285714 @@ -3907,12 +4883,18 @@ VARIABLE REGISTER WEIGHTS (byte) test_8u::res#0 2.2 Initial phi equivalence classes -[ test_8u::i#10 test_8u::i#1 ] -[ line_cursor#14 line_cursor#27 line_cursor#30 line_cursor#1 ] -[ print_byte::b#5 print_byte::b#7 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 ] +[ test_16u::i#10 test_16u::i#1 ] +[ line_cursor#17 line_cursor#33 line_cursor#1 line_cursor#37 ] +[ print_word::w#4 print_word::w#0 print_word::w#1 print_word::w#2 print_word::w#3 ] +[ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] [ print_char::ch#3 print_char::ch#1 print_char::ch#2 ] -[ char_cursor#48 char_cursor#78 char_cursor#76 char_cursor#91 char_cursor#2 char_cursor#11 char_cursor#77 char_cursor#1 char_cursor#81 char_cursor#100 ] -[ print_str::str#7 print_str::str#9 print_str::str#0 ] +[ char_cursor#64 char_cursor#105 char_cursor#102 char_cursor#104 char_cursor#121 char_cursor#100 char_cursor#14 char_cursor#128 char_cursor#103 char_cursor#1 char_cursor#109 char_cursor#137 ] +[ print_str::str#10 print_str::str#12 print_str::str#0 ] +[ div16u::rem#4 rem16u#16 div16u::rem#8 div16u::rem#5 div16u::rem#1 div16u::rem#2 div16u::rem#3 ] +[ div16u::dividend#2 div16u::dividend#1 div16u::dividend#0 ] +[ div16u::quotient#3 div16u::return#0 div16u::quotient#1 div16u::quotient#2 ] +[ div16u::i#2 div16u::i#1 ] +[ test_8u::i#10 test_8u::i#1 ] [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] [ div8u::remainder#8 ] [ div8u::rem#4 div8u::rem#8 div8u::rem#5 div8u::rem#1 div8u::rem#2 div8u::rem#3 ] @@ -3920,20 +4902,27 @@ Initial phi equivalence classes [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] [ div8u::i#2 div8u::i#1 ] [ test_8s::i#10 test_8s::i#1 ] -[ rem8s#18 rem8s#3 rem8s#30 rem8s#1 ] +[ rem8s#18 rem8s#3 rem8s#32 rem8s#1 ] [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] [ div8s::dividendb#3 div8s::dividendb#7 div8s::dividendb#8 ] [ div8s::divisorb#3 div8s::divisorb#4 div8s::divisorb#5 ] [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] [ div8s::return#2 div8s::return#6 div8s::return#0 ] [ print_cls::sc#2 print_cls::sc#1 ] +Added variable test_16u::dividend#0 to zero page equivalence class [ test_16u::dividend#0 ] +Added variable test_16u::divisor#0 to zero page equivalence class [ test_16u::divisor#0 ] +Added variable div16u::divisor#0 to zero page equivalence class [ div16u::divisor#0 ] +Added variable div16u::return#2 to zero page equivalence class [ div16u::return#2 ] +Added variable test_16u::res#0 to zero page equivalence class [ test_16u::res#0 ] +Added variable print_byte::$0 to zero page equivalence class [ print_byte::$0 ] +Added variable print_byte::$2 to zero page equivalence class [ print_byte::$2 ] +Added variable div16u::$1 to zero page equivalence class [ div16u::$1 ] +Added variable div16u::$2 to zero page equivalence class [ div16u::$2 ] Added variable test_8u::rem#0 to zero page equivalence class [ test_8u::rem#0 ] Added variable test_8u::dividend#0 to zero page equivalence class [ test_8u::dividend#0 ] Added variable test_8u::divisor#0 to zero page equivalence class [ test_8u::divisor#0 ] Added variable div8u::return#3 to zero page equivalence class [ div8u::return#3 ] Added variable test_8u::res#0 to zero page equivalence class [ test_8u::res#0 ] -Added variable print_byte::$0 to zero page equivalence class [ print_byte::$0 ] -Added variable print_byte::$2 to zero page equivalence class [ print_byte::$2 ] Added variable div8u::$1 to zero page equivalence class [ div8u::$1 ] Added variable test_8s::dividend#0 to zero page equivalence class [ test_8s::dividend#0 ] Added variable test_8s::divisor#0 to zero page equivalence class [ test_8s::divisor#0 ] @@ -3947,12 +4936,18 @@ Added variable div8s::rem8u#0 to zero page equivalence class [ div8s::rem8u#0 ] Added variable div8u::return#2 to zero page equivalence class [ div8u::return#2 ] Added variable div8s::resultb#0 to zero page equivalence class [ div8s::resultb#0 ] Complete equivalence classes -[ test_8u::i#10 test_8u::i#1 ] -[ line_cursor#14 line_cursor#27 line_cursor#30 line_cursor#1 ] -[ print_byte::b#5 print_byte::b#7 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 ] +[ test_16u::i#10 test_16u::i#1 ] +[ line_cursor#17 line_cursor#33 line_cursor#1 line_cursor#37 ] +[ print_word::w#4 print_word::w#0 print_word::w#1 print_word::w#2 print_word::w#3 ] +[ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] [ print_char::ch#3 print_char::ch#1 print_char::ch#2 ] -[ char_cursor#48 char_cursor#78 char_cursor#76 char_cursor#91 char_cursor#2 char_cursor#11 char_cursor#77 char_cursor#1 char_cursor#81 char_cursor#100 ] -[ print_str::str#7 print_str::str#9 print_str::str#0 ] +[ char_cursor#64 char_cursor#105 char_cursor#102 char_cursor#104 char_cursor#121 char_cursor#100 char_cursor#14 char_cursor#128 char_cursor#103 char_cursor#1 char_cursor#109 char_cursor#137 ] +[ print_str::str#10 print_str::str#12 print_str::str#0 ] +[ div16u::rem#4 rem16u#16 div16u::rem#8 div16u::rem#5 div16u::rem#1 div16u::rem#2 div16u::rem#3 ] +[ div16u::dividend#2 div16u::dividend#1 div16u::dividend#0 ] +[ div16u::quotient#3 div16u::return#0 div16u::quotient#1 div16u::quotient#2 ] +[ div16u::i#2 div16u::i#1 ] +[ test_8u::i#10 test_8u::i#1 ] [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] [ div8u::remainder#8 ] [ div8u::rem#4 div8u::rem#8 div8u::rem#5 div8u::rem#1 div8u::rem#2 div8u::rem#3 ] @@ -3960,20 +4955,27 @@ Complete equivalence classes [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] [ div8u::i#2 div8u::i#1 ] [ test_8s::i#10 test_8s::i#1 ] -[ rem8s#18 rem8s#3 rem8s#30 rem8s#1 ] +[ rem8s#18 rem8s#3 rem8s#32 rem8s#1 ] [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] [ div8s::dividendb#3 div8s::dividendb#7 div8s::dividendb#8 ] [ div8s::divisorb#3 div8s::divisorb#4 div8s::divisorb#5 ] [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] [ div8s::return#2 div8s::return#6 div8s::return#0 ] [ print_cls::sc#2 print_cls::sc#1 ] +[ test_16u::dividend#0 ] +[ test_16u::divisor#0 ] +[ div16u::divisor#0 ] +[ div16u::return#2 ] +[ test_16u::res#0 ] +[ print_byte::$0 ] +[ print_byte::$2 ] +[ div16u::$1 ] +[ div16u::$2 ] [ test_8u::rem#0 ] [ test_8u::dividend#0 ] [ test_8u::divisor#0 ] [ div8u::return#3 ] [ test_8u::res#0 ] -[ print_byte::$0 ] -[ print_byte::$2 ] [ div8u::$1 ] [ test_8s::dividend#0 ] [ test_8s::divisor#0 ] @@ -3986,45 +4988,58 @@ Complete equivalence classes [ div8s::rem8u#0 ] [ div8u::return#2 ] [ div8s::resultb#0 ] -Allocated zp ZP_BYTE:2 [ test_8u::i#10 test_8u::i#1 ] -Allocated zp ZP_WORD:3 [ line_cursor#14 line_cursor#27 line_cursor#30 line_cursor#1 ] -Allocated zp ZP_BYTE:5 [ print_byte::b#5 print_byte::b#7 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 ] -Allocated zp ZP_BYTE:6 [ print_char::ch#3 print_char::ch#1 print_char::ch#2 ] -Allocated zp ZP_WORD:7 [ char_cursor#48 char_cursor#78 char_cursor#76 char_cursor#91 char_cursor#2 char_cursor#11 char_cursor#77 char_cursor#1 char_cursor#81 char_cursor#100 ] -Allocated zp ZP_WORD:9 [ print_str::str#7 print_str::str#9 print_str::str#0 ] -Allocated zp ZP_BYTE:11 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] -Allocated zp ZP_WORD:12 [ div8u::remainder#8 ] -Allocated zp ZP_BYTE:14 [ div8u::rem#4 div8u::rem#8 div8u::rem#5 div8u::rem#1 div8u::rem#2 div8u::rem#3 ] -Allocated zp ZP_BYTE:15 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] -Allocated zp ZP_BYTE:16 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] -Allocated zp ZP_BYTE:17 [ div8u::i#2 div8u::i#1 ] -Allocated zp ZP_BYTE:18 [ test_8s::i#10 test_8s::i#1 ] -Allocated zp ZP_BYTE:19 [ rem8s#18 rem8s#3 rem8s#30 rem8s#1 ] -Allocated zp ZP_BYTE:20 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] -Allocated zp ZP_BYTE:21 [ div8s::dividendb#3 div8s::dividendb#7 div8s::dividendb#8 ] -Allocated zp ZP_BYTE:22 [ div8s::divisorb#3 div8s::divisorb#4 div8s::divisorb#5 ] -Allocated zp ZP_BYTE:23 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] -Allocated zp ZP_BYTE:24 [ div8s::return#2 div8s::return#6 div8s::return#0 ] -Allocated zp ZP_WORD:25 [ print_cls::sc#2 print_cls::sc#1 ] -Allocated zp ZP_BYTE:27 [ test_8u::rem#0 ] -Allocated zp ZP_BYTE:28 [ test_8u::dividend#0 ] -Allocated zp ZP_BYTE:29 [ test_8u::divisor#0 ] -Allocated zp ZP_BYTE:30 [ div8u::return#3 ] -Allocated zp ZP_BYTE:31 [ test_8u::res#0 ] -Allocated zp ZP_BYTE:32 [ print_byte::$0 ] -Allocated zp ZP_BYTE:33 [ print_byte::$2 ] -Allocated zp ZP_BYTE:34 [ div8u::$1 ] -Allocated zp ZP_BYTE:35 [ test_8s::dividend#0 ] -Allocated zp ZP_BYTE:36 [ test_8s::divisor#0 ] -Allocated zp ZP_BYTE:37 [ div8s::dividend#0 ] -Allocated zp ZP_BYTE:38 [ div8s::divisor#0 ] -Allocated zp ZP_BYTE:39 [ div8s::return#3 ] -Allocated zp ZP_BYTE:40 [ test_8s::res#0 ] -Allocated zp ZP_BYTE:41 [ div8s::$2 ] -Allocated zp ZP_BYTE:42 [ div8s::$7 ] -Allocated zp ZP_BYTE:43 [ div8s::rem8u#0 ] -Allocated zp ZP_BYTE:44 [ div8u::return#2 ] -Allocated zp ZP_BYTE:45 [ div8s::resultb#0 ] +Allocated zp ZP_BYTE:2 [ test_16u::i#10 test_16u::i#1 ] +Allocated zp ZP_WORD:3 [ line_cursor#17 line_cursor#33 line_cursor#1 line_cursor#37 ] +Allocated zp ZP_WORD:5 [ print_word::w#4 print_word::w#0 print_word::w#1 print_word::w#2 print_word::w#3 ] +Allocated zp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] +Allocated zp ZP_BYTE:8 [ print_char::ch#3 print_char::ch#1 print_char::ch#2 ] +Allocated zp ZP_WORD:9 [ char_cursor#64 char_cursor#105 char_cursor#102 char_cursor#104 char_cursor#121 char_cursor#100 char_cursor#14 char_cursor#128 char_cursor#103 char_cursor#1 char_cursor#109 char_cursor#137 ] +Allocated zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 ] +Allocated zp ZP_WORD:13 [ div16u::rem#4 rem16u#16 div16u::rem#8 div16u::rem#5 div16u::rem#1 div16u::rem#2 div16u::rem#3 ] +Allocated zp ZP_WORD:15 [ div16u::dividend#2 div16u::dividend#1 div16u::dividend#0 ] +Allocated zp ZP_WORD:17 [ div16u::quotient#3 div16u::return#0 div16u::quotient#1 div16u::quotient#2 ] +Allocated zp ZP_BYTE:19 [ div16u::i#2 div16u::i#1 ] +Allocated zp ZP_BYTE:20 [ test_8u::i#10 test_8u::i#1 ] +Allocated zp ZP_BYTE:21 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] +Allocated zp ZP_WORD:22 [ div8u::remainder#8 ] +Allocated zp ZP_BYTE:24 [ div8u::rem#4 div8u::rem#8 div8u::rem#5 div8u::rem#1 div8u::rem#2 div8u::rem#3 ] +Allocated zp ZP_BYTE:25 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] +Allocated zp ZP_BYTE:26 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] +Allocated zp ZP_BYTE:27 [ div8u::i#2 div8u::i#1 ] +Allocated zp ZP_BYTE:28 [ test_8s::i#10 test_8s::i#1 ] +Allocated zp ZP_BYTE:29 [ rem8s#18 rem8s#3 rem8s#32 rem8s#1 ] +Allocated zp ZP_BYTE:30 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] +Allocated zp ZP_BYTE:31 [ div8s::dividendb#3 div8s::dividendb#7 div8s::dividendb#8 ] +Allocated zp ZP_BYTE:32 [ div8s::divisorb#3 div8s::divisorb#4 div8s::divisorb#5 ] +Allocated zp ZP_BYTE:33 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] +Allocated zp ZP_BYTE:34 [ div8s::return#2 div8s::return#6 div8s::return#0 ] +Allocated zp ZP_WORD:35 [ print_cls::sc#2 print_cls::sc#1 ] +Allocated zp ZP_WORD:37 [ test_16u::dividend#0 ] +Allocated zp ZP_WORD:39 [ test_16u::divisor#0 ] +Allocated zp ZP_WORD:41 [ div16u::divisor#0 ] +Allocated zp ZP_WORD:43 [ div16u::return#2 ] +Allocated zp ZP_WORD:45 [ test_16u::res#0 ] +Allocated zp ZP_BYTE:47 [ print_byte::$0 ] +Allocated zp ZP_BYTE:48 [ print_byte::$2 ] +Allocated zp ZP_BYTE:49 [ div16u::$1 ] +Allocated zp ZP_BYTE:50 [ div16u::$2 ] +Allocated zp ZP_BYTE:51 [ test_8u::rem#0 ] +Allocated zp ZP_BYTE:52 [ test_8u::dividend#0 ] +Allocated zp ZP_BYTE:53 [ test_8u::divisor#0 ] +Allocated zp ZP_BYTE:54 [ div8u::return#3 ] +Allocated zp ZP_BYTE:55 [ test_8u::res#0 ] +Allocated zp ZP_BYTE:56 [ div8u::$1 ] +Allocated zp ZP_BYTE:57 [ test_8s::dividend#0 ] +Allocated zp ZP_BYTE:58 [ test_8s::divisor#0 ] +Allocated zp ZP_BYTE:59 [ div8s::dividend#0 ] +Allocated zp ZP_BYTE:60 [ div8s::divisor#0 ] +Allocated zp ZP_BYTE:61 [ div8s::return#3 ] +Allocated zp ZP_BYTE:62 [ test_8s::res#0 ] +Allocated zp ZP_BYTE:63 [ div8s::$2 ] +Allocated zp ZP_BYTE:64 [ div8s::$7 ] +Allocated zp ZP_BYTE:65 [ div8s::rem8u#0 ] +Allocated zp ZP_BYTE:66 [ div8u::return#2 ] +Allocated zp ZP_BYTE:67 [ div8s::resultb#0 ] INITIAL ASM //SEG0 Basic Upstart @@ -4033,9 +5048,10 @@ INITIAL ASM .pc = $80d "Program" //SEG1 Global Constants & labels .label SCREEN = $400 - .label char_cursor = 7 + .label char_cursor = 9 .label line_cursor = 3 - .label rem8s = $13 + .label rem8s = $1d + .label rem16u = $d //SEG2 @begin bbegin: //SEG3 [1] phi from @begin to @15 [phi:@begin->@15] @@ -4055,7 +5071,7 @@ bend: //SEG9 main main: { //SEG10 [5] call print_cls param-assignment [ test_8u::rem#0 ] ( main:2 [ test_8u::rem#0 ] ) - //SEG11 [143] phi from main to print_cls [phi:main->print_cls] + //SEG11 [197] phi from main to print_cls [phi:main->print_cls] print_cls_from_main: jsr print_cls //SEG12 [6] phi from main to main::@1 [phi:main->main::@1] @@ -4064,7 +5080,7 @@ main: { //SEG13 main::@1 b1: //SEG14 [7] call test_8s param-assignment [ line_cursor#1 div8s::rem8u#0 ] ( main:2 [ line_cursor#1 div8s::rem8u#0 ] ) - //SEG15 [81] phi from main::@1 to test_8s [phi:main::@1->test_8s] + //SEG15 [135] phi from main::@1 to test_8s [phi:main::@1->test_8s] test_8s_from_b1: jsr test_8s //SEG16 [8] phi from main::@1 to main::@2 [phi:main::@1->main::@2] @@ -4072,202 +5088,229 @@ main: { jmp b2 //SEG17 main::@2 b2: - //SEG18 [9] call test_8u param-assignment [ ] ( main:2 [ ] ) + //SEG18 [9] call test_8u param-assignment [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) jsr test_8u + //SEG19 [10] phi from main::@2 to main::@3 [phi:main::@2->main::@3] + b3_from_b2: + jmp b3 + //SEG20 main::@3 + b3: + //SEG21 [11] call test_16u param-assignment [ ] ( main:2 [ ] ) + //SEG22 [13] phi from main::@3 to test_16u [phi:main::@3->test_16u] + test_16u_from_b3: + jsr test_16u jmp breturn - //SEG19 main::@return + //SEG23 main::@return breturn: - //SEG20 [10] return [ ] ( main:2 [ ] ) + //SEG24 [12] return [ ] ( main:2 [ ] ) rts } -//SEG21 test_8u -test_8u: { - .label rem = $1b - .label dividend = $1c - .label divisor = $1d - .label res = $1f +//SEG25 test_16u +test_16u: { + .label dividend = $25 + .label divisor = $27 + .label res = $2d .label i = 2 - //SEG22 [11] (byte) test_8u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=vbuc1 + //SEG26 [14] phi from test_16u to test_16u::@1 [phi:test_16u->test_16u::@1] + b1_from_test_16u: + //SEG27 [14] phi (word) rem16u#16 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_16u->test_16u::@1#0] -- vwuz1=vbuc1 lda #0 - sta rem - //SEG23 [12] phi from test_8u to test_8u::@1 [phi:test_8u->test_8u::@1] - b1_from_test_8u: - //SEG24 [12] phi (byte) test_8u::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8u->test_8u::@1#0] -- vbuz1=vbuc1 + sta rem16u + lda #0 + sta rem16u+1 + //SEG28 [14] phi (byte) test_16u::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_16u->test_16u::@1#1] -- vbuz1=vbuc1 lda #0 sta i jmp b1 - //SEG25 [12] phi from test_8u::@11 to test_8u::@1 [phi:test_8u::@11->test_8u::@1] + //SEG29 [14] phi from test_16u::@11 to test_16u::@1 [phi:test_16u::@11->test_16u::@1] b1_from_b11: - //SEG26 [12] phi (byte) test_8u::i#10 = (byte) test_8u::i#1 [phi:test_8u::@11->test_8u::@1#0] -- register_copy + //SEG30 [14] phi (word) rem16u#16 = (word) div16u::rem#8 [phi:test_16u::@11->test_16u::@1#0] -- register_copy + //SEG31 [14] phi (byte) test_16u::i#10 = (byte) test_16u::i#1 [phi:test_16u::@11->test_16u::@1#1] -- register_copy jmp b1 - //SEG27 test_8u::@1 + //SEG32 test_16u::@1 b1: - //SEG28 [13] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG33 [15] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) [ test_16u::i#10 test_16u::dividend#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 line_cursor#1 ] ) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend - //SEG29 [14] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + lda dividends+1,y + sta dividend+1 + //SEG34 [16] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 ] ) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda divisors,y sta divisor - //SEG30 [15] (byte) div8u::dividend#2 ← (byte) test_8u::dividend#0 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + lda divisors+1,y + sta divisor+1 + //SEG35 [17] (word) div16u::dividend#1 ← (word) test_16u::dividend#0 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 line_cursor#1 ] ) -- vwuz1=vwuz2 lda dividend - sta div8u.dividend - //SEG31 [16] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + sta div16u.dividend + lda dividend+1 + sta div16u.dividend+1 + //SEG36 [18] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 div16u::divisor#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 div16u::divisor#0 line_cursor#1 ] ) -- vwuz1=vwuz2 lda divisor - sta div8u.divisor - //SEG32 [17] call div8u param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 line_cursor#1 div8s::rem8u#0 ] ) - //SEG33 [64] phi from test_8u::@1 to div8u [phi:test_8u::@1->div8u] - div8u_from_b1: - //SEG34 [64] phi (byte*) div8u::remainder#8 = &(byte) test_8u::rem#0 [phi:test_8u::@1->div8u#0] -- pbuz1=pbuc1 - lda #rem - sta div8u.remainder+1 - //SEG35 [64] phi (byte) div8u::divisor#6 = (byte) div8u::divisor#1 [phi:test_8u::@1->div8u#1] -- register_copy - //SEG36 [64] phi (byte) div8u::dividend#5 = (byte) div8u::dividend#2 [phi:test_8u::@1->div8u#2] -- register_copy - jsr div8u - //SEG37 [18] (byte) div8u::return#3 ← (byte) div8u::return#0 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 - lda div8u.return - sta div8u.return_3 + sta div16u.divisor + lda divisor+1 + sta div16u.divisor+1 + //SEG37 [19] call div16u param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#0 line_cursor#1 ] ) + //SEG38 [72] phi from test_16u::@1 to div16u [phi:test_16u::@1->div16u] + div16u_from_b1: + jsr div16u + //SEG39 [20] (word) div16u::return#2 ← (word) div16u::return#0 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 line_cursor#1 ] ) -- vwuz1=vwuz2 + lda div16u.return + sta div16u.return_2 + lda div16u.return+1 + sta div16u.return_2+1 jmp b3 - //SEG38 test_8u::@3 + //SEG40 test_16u::@3 b3: - //SEG39 [19] (byte) test_8u::res#0 ← (byte) div8u::return#3 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 - lda div8u.return_3 + //SEG41 [21] (word) test_16u::res#0 ← (word) div16u::return#2 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 line_cursor#1 ] ) -- vwuz1=vwuz2 + lda div16u.return_2 sta res - //SEG40 [20] (byte) print_byte::b#1 ← (byte) test_8u::dividend#0 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + lda div16u.return_2+1 + sta res+1 + //SEG42 [22] (word) print_word::w#0 ← (word) test_16u::dividend#0 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 line_cursor#1 ] ) -- vwuz1=vwuz2 lda dividend - sta print_byte.b - //SEG41 [21] (byte*~) char_cursor#91 ← (byte*) line_cursor#1 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 char_cursor#91 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 char_cursor#91 line_cursor#1 div8s::rem8u#0 ] ) -- pbuz1=pbuz2 + sta print_word.w + lda dividend+1 + sta print_word.w+1 + //SEG43 [23] (byte*~) char_cursor#121 ← (byte*) line_cursor#1 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 char_cursor#121 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 char_cursor#121 line_cursor#1 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG42 [22] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - //SEG43 [45] phi from test_8u::@3 to print_byte [phi:test_8u::@3->print_byte] - print_byte_from_b3: - //SEG44 [45] phi (byte*) char_cursor#78 = (byte*~) char_cursor#91 [phi:test_8u::@3->print_byte#0] -- register_copy - //SEG45 [45] phi (byte) print_byte::b#5 = (byte) print_byte::b#1 [phi:test_8u::@3->print_byte#1] -- register_copy - jsr print_byte - //SEG46 [23] phi from test_8u::@3 to test_8u::@4 [phi:test_8u::@3->test_8u::@4] + //SEG44 [24] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] ) + //SEG45 [47] phi from test_16u::@3 to print_word [phi:test_16u::@3->print_word] + print_word_from_b3: + //SEG46 [47] phi (byte*) char_cursor#104 = (byte*~) char_cursor#121 [phi:test_16u::@3->print_word#0] -- register_copy + //SEG47 [47] phi (word) print_word::w#4 = (word) print_word::w#0 [phi:test_16u::@3->print_word#1] -- register_copy + jsr print_word + //SEG48 [25] phi from test_16u::@3 to test_16u::@4 [phi:test_16u::@3->test_16u::@4] b4_from_b3: jmp b4 - //SEG47 test_8u::@4 + //SEG49 test_16u::@4 b4: - //SEG48 [24] call print_str param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ) - //SEG49 [57] phi from test_8u::@4 to print_str [phi:test_8u::@4->print_str] + //SEG50 [26] call print_str param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] ) + //SEG51 [65] phi from test_16u::@4 to print_str [phi:test_16u::@4->print_str] print_str_from_b4: - //SEG50 [57] phi (byte*) print_str::str#9 = (const string) test_8u::str [phi:test_8u::@4->print_str#0] -- pbuz1=pbuc1 + //SEG52 [65] phi (byte*) print_str::str#12 = (const string) test_16u::str [phi:test_16u::@4->print_str#0] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str jmp b5 - //SEG51 test_8u::@5 + //SEG53 test_16u::@5 b5: - //SEG52 [25] (byte) print_byte::b#2 ← (byte) test_8u::divisor#0 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 print_byte::b#2 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 print_byte::b#2 char_cursor#2 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + //SEG54 [27] (word) print_word::w#1 ← (word) test_16u::divisor#0 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#1 char_cursor#100 ] ) -- vwuz1=vwuz2 lda divisor - sta print_byte.b - //SEG53 [26] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - //SEG54 [45] phi from test_8u::@5 to print_byte [phi:test_8u::@5->print_byte] - print_byte_from_b5: - //SEG55 [45] phi (byte*) char_cursor#78 = (byte*) char_cursor#2 [phi:test_8u::@5->print_byte#0] -- register_copy - //SEG56 [45] phi (byte) print_byte::b#5 = (byte) print_byte::b#2 [phi:test_8u::@5->print_byte#1] -- register_copy - jsr print_byte - //SEG57 [27] phi from test_8u::@5 to test_8u::@6 [phi:test_8u::@5->test_8u::@6] + sta print_word.w + lda divisor+1 + sta print_word.w+1 + //SEG55 [28] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] ) + //SEG56 [47] phi from test_16u::@5 to print_word [phi:test_16u::@5->print_word] + print_word_from_b5: + //SEG57 [47] phi (byte*) char_cursor#104 = (byte*) char_cursor#100 [phi:test_16u::@5->print_word#0] -- register_copy + //SEG58 [47] phi (word) print_word::w#4 = (word) print_word::w#1 [phi:test_16u::@5->print_word#1] -- register_copy + jsr print_word + //SEG59 [29] phi from test_16u::@5 to test_16u::@6 [phi:test_16u::@5->test_16u::@6] b6_from_b5: jmp b6 - //SEG58 test_8u::@6 + //SEG60 test_16u::@6 b6: - //SEG59 [28] call print_str param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ) - //SEG60 [57] phi from test_8u::@6 to print_str [phi:test_8u::@6->print_str] + //SEG61 [30] call print_str param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] ) + //SEG62 [65] phi from test_16u::@6 to print_str [phi:test_16u::@6->print_str] print_str_from_b6: - //SEG61 [57] phi (byte*) print_str::str#9 = (const string) test_8u::str1 [phi:test_8u::@6->print_str#0] -- pbuz1=pbuc1 + //SEG63 [65] phi (byte*) print_str::str#12 = (const string) test_16u::str1 [phi:test_16u::@6->print_str#0] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str jmp b7 - //SEG62 test_8u::@7 + //SEG64 test_16u::@7 b7: - //SEG63 [29] (byte) print_byte::b#3 ← (byte) test_8u::res#0 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#3 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#3 char_cursor#2 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + //SEG65 [31] (word) print_word::w#2 ← (word) test_16u::res#0 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#2 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#2 char_cursor#100 ] ) -- vwuz1=vwuz2 lda res - sta print_byte.b - //SEG64 [30] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - //SEG65 [45] phi from test_8u::@7 to print_byte [phi:test_8u::@7->print_byte] - print_byte_from_b7: - //SEG66 [45] phi (byte*) char_cursor#78 = (byte*) char_cursor#2 [phi:test_8u::@7->print_byte#0] -- register_copy - //SEG67 [45] phi (byte) print_byte::b#5 = (byte) print_byte::b#3 [phi:test_8u::@7->print_byte#1] -- register_copy - jsr print_byte - //SEG68 [31] phi from test_8u::@7 to test_8u::@8 [phi:test_8u::@7->test_8u::@8] + sta print_word.w + lda res+1 + sta print_word.w+1 + //SEG66 [32] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + //SEG67 [47] phi from test_16u::@7 to print_word [phi:test_16u::@7->print_word] + print_word_from_b7: + //SEG68 [47] phi (byte*) char_cursor#104 = (byte*) char_cursor#100 [phi:test_16u::@7->print_word#0] -- register_copy + //SEG69 [47] phi (word) print_word::w#4 = (word) print_word::w#2 [phi:test_16u::@7->print_word#1] -- register_copy + jsr print_word + //SEG70 [33] phi from test_16u::@7 to test_16u::@8 [phi:test_16u::@7->test_16u::@8] b8_from_b7: jmp b8 - //SEG69 test_8u::@8 + //SEG71 test_16u::@8 b8: - //SEG70 [32] call print_str param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ) - //SEG71 [57] phi from test_8u::@8 to print_str [phi:test_8u::@8->print_str] + //SEG72 [34] call print_str param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] ) + //SEG73 [65] phi from test_16u::@8 to print_str [phi:test_16u::@8->print_str] print_str_from_b8: - //SEG72 [57] phi (byte*) print_str::str#9 = (const string) test_8u::str2 [phi:test_8u::@8->print_str#0] -- pbuz1=pbuc1 + //SEG74 [65] phi (byte*) print_str::str#12 = (const string) test_16u::str2 [phi:test_16u::@8->print_str#0] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str jmp b9 - //SEG73 test_8u::@9 + //SEG75 test_16u::@9 b9: - //SEG74 [33] (byte) print_byte::b#4 ← (byte) test_8u::rem#0 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#4 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#4 char_cursor#2 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 - lda rem - sta print_byte.b - //SEG75 [34] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - //SEG76 [45] phi from test_8u::@9 to print_byte [phi:test_8u::@9->print_byte] - print_byte_from_b9: - //SEG77 [45] phi (byte*) char_cursor#78 = (byte*) char_cursor#2 [phi:test_8u::@9->print_byte#0] -- register_copy - //SEG78 [45] phi (byte) print_byte::b#5 = (byte) print_byte::b#4 [phi:test_8u::@9->print_byte#1] -- register_copy - jsr print_byte - //SEG79 [35] phi from test_8u::@9 to test_8u::@10 [phi:test_8u::@9->test_8u::@10] + //SEG76 [35] (word) print_word::w#3 ← (word) div16u::rem#8 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#3 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#3 char_cursor#100 ] ) -- vwuz1=vwuz2 + lda div16u.rem + sta print_word.w + lda div16u.rem+1 + sta print_word.w+1 + //SEG77 [36] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + //SEG78 [47] phi from test_16u::@9 to print_word [phi:test_16u::@9->print_word] + print_word_from_b9: + //SEG79 [47] phi (byte*) char_cursor#104 = (byte*) char_cursor#100 [phi:test_16u::@9->print_word#0] -- register_copy + //SEG80 [47] phi (word) print_word::w#4 = (word) print_word::w#3 [phi:test_16u::@9->print_word#1] -- register_copy + jsr print_word + //SEG81 [37] phi from test_16u::@9 to test_16u::@10 [phi:test_16u::@9->test_16u::@10] b10_from_b9: jmp b10 - //SEG80 test_8u::@10 + //SEG82 test_16u::@10 b10: - //SEG81 [36] call print_ln param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 ] ) - //SEG82 [40] phi from test_8u::@10 to print_ln [phi:test_8u::@10->print_ln] + //SEG83 [38] call print_ln param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 ] ) + //SEG84 [42] phi from test_16u::@10 to print_ln [phi:test_16u::@10->print_ln] print_ln_from_b10: - //SEG83 [40] phi (byte*) line_cursor#27 = (byte*) line_cursor#1 [phi:test_8u::@10->print_ln#0] -- register_copy + //SEG85 [42] phi (byte*) line_cursor#33 = (byte*) line_cursor#1 [phi:test_16u::@10->print_ln#0] -- register_copy jsr print_ln jmp b11 - //SEG84 test_8u::@11 + //SEG86 test_16u::@11 b11: - //SEG85 [37] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 - inc i - //SEG86 [38] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@1 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG87 [39] (byte) test_16u::i#1 ← (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ) -- vbuz1=vbuz1_plus_vbuc1 + lda #2 + clc + adc i + sta i + //SEG88 [40] if((byte) test_16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 12) goto test_16u::@1 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ) -- vbuz1_neq_vbuc1_then_la1 lda i - cmp #6 + cmp #$c bne b1_from_b11 jmp breturn - //SEG87 test_8u::@return + //SEG89 test_16u::@return breturn: - //SEG88 [39] return [ ] ( main:2::test_8u:9 [ ] ) + //SEG90 [41] return [ ] ( main:2::test_16u:11 [ ] ) rts str: .text " / @" str1: .text " = @" str2: .text " @" - dividends: .byte $ff, $ff, $ff, $ff, $ff, $ff - divisors: .byte 5, 7, $b, $d, $11, $13 + dividends: .word $ffff, $ffff, $ffff, $ffff, $ffff, $ffff + divisors: .word 5, 7, $b, $d, $11, $13 } -//SEG89 print_ln +//SEG91 print_ln print_ln: { - //SEG90 [41] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] + //SEG92 [43] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] b1_from_print_ln: b1_from_b1: - //SEG91 [41] phi (byte*) line_cursor#14 = (byte*) line_cursor#27 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy + //SEG93 [43] phi (byte*) line_cursor#17 = (byte*) line_cursor#33 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy jmp b1 - //SEG92 print_ln::@1 + //SEG94 print_ln::@1 b1: - //SEG93 [42] (byte*) line_cursor#1 ← (byte*) line_cursor#14 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#11 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] ) -- pbuz1=pbuz1_plus_vbuc1 + //SEG95 [44] (byte*) line_cursor#1 ← (byte*) line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] ) -- pbuz1=pbuz1_plus_vbuc1 lda line_cursor clc adc #$28 @@ -4275,7 +5318,7 @@ print_ln: { bcc !+ inc line_cursor+1 !: - //SEG94 [43] if((byte*) line_cursor#1<(byte*) char_cursor#11) goto print_ln::@1 [ line_cursor#1 char_cursor#11 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] ) -- pbuz1_lt_pbuz2_then_la1 + //SEG96 [45] if((byte*) line_cursor#1<(byte*) char_cursor#14) goto print_ln::@1 [ line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] ) -- pbuz1_lt_pbuz2_then_la1 lda line_cursor+1 cmp char_cursor+1 bcc b1_from_b1 @@ -4285,391 +5328,715 @@ print_ln: { bcc b1_from_b1 !: jmp breturn - //SEG95 print_ln::@return + //SEG97 print_ln::@return breturn: - //SEG96 [44] return [ line_cursor#1 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 ] ) + //SEG98 [46] return [ line_cursor#1 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 ] ) rts } -//SEG97 print_byte +//SEG99 print_word +print_word: { + .label w = 5 + //SEG100 [48] (byte) print_byte::b#1 ← > (word) print_word::w#4 [ print_word::w#4 char_cursor#104 print_byte::b#1 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] ) -- vbuz1=_hi_vwuz2 + lda w+1 + sta print_byte.b + //SEG101 [49] call print_byte param-assignment [ char_cursor#14 print_word::w#4 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_word::w#4 ] ) + //SEG102 [53] phi from print_word to print_byte [phi:print_word->print_byte] + print_byte_from_print_word: + //SEG103 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#104 [phi:print_word->print_byte#0] -- register_copy + //SEG104 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#1 [phi:print_word->print_byte#1] -- register_copy + jsr print_byte + jmp b1 + //SEG105 print_word::@1 + b1: + //SEG106 [50] (byte) print_byte::b#2 ← < (word) print_word::w#4 [ char_cursor#14 print_byte::b#2 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] ) -- vbuz1=_lo_vwuz2 + lda w + sta print_byte.b + //SEG107 [51] call print_byte param-assignment [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + //SEG108 [53] phi from print_word::@1 to print_byte [phi:print_word::@1->print_byte] + print_byte_from_b1: + //SEG109 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#14 [phi:print_word::@1->print_byte#0] -- register_copy + //SEG110 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#2 [phi:print_word::@1->print_byte#1] -- register_copy + jsr print_byte + jmp breturn + //SEG111 print_word::@return + breturn: + //SEG112 [52] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + rts +} +//SEG113 print_byte print_byte: { - .label _0 = $20 - .label _2 = $21 - .label b = 5 - //SEG98 [46] (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#5 char_cursor#78 print_byte::$0 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] ) -- vbuz1=vbuz2_ror_4 + .label _0 = $2f + .label _2 = $30 + .label b = 7 + //SEG114 [54] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 char_cursor#105 print_byte::$0 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] ) -- vbuz1=vbuz2_ror_4 lda b lsr lsr lsr lsr sta _0 - //SEG99 [47] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#78 print_char::ch#1 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG115 [55] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#7 char_cursor#105 print_char::ch#1 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _0 lda hextab,y sta print_char.ch - //SEG100 [48] call print_char param-assignment [ char_cursor#11 print_byte::b#5 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] ) - //SEG101 [53] phi from print_byte to print_char [phi:print_byte->print_char] + //SEG116 [56] call print_char param-assignment [ char_cursor#14 print_byte::b#7 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] ) + //SEG117 [61] phi from print_byte to print_char [phi:print_byte->print_char] print_char_from_print_byte: - //SEG102 [53] phi (byte*) char_cursor#48 = (byte*) char_cursor#78 [phi:print_byte->print_char#0] -- register_copy - //SEG103 [53] phi (byte) print_char::ch#3 = (byte) print_char::ch#1 [phi:print_byte->print_char#1] -- register_copy + //SEG118 [61] phi (byte*) char_cursor#64 = (byte*) char_cursor#105 [phi:print_byte->print_char#0] -- register_copy + //SEG119 [61] phi (byte) print_char::ch#3 = (byte) print_char::ch#1 [phi:print_byte->print_char#1] -- register_copy jsr print_char jmp b1 - //SEG104 print_byte::@1 + //SEG120 print_byte::@1 b1: - //SEG105 [49] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#11 print_byte::$2 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] ) -- vbuz1=vbuz2_band_vbuc1 + //SEG121 [57] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#14 print_byte::$2 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] ) -- vbuz1=vbuz2_band_vbuc1 lda #$f and b sta _2 - //SEG106 [50] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#11 print_char::ch#2 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG122 [58] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#14 print_char::ch#2 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _2 lda hextab,y sta print_char.ch - //SEG107 [51] call print_char param-assignment [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) - //SEG108 [53] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] + //SEG123 [59] call print_char param-assignment [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) + //SEG124 [61] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] print_char_from_b1: - //SEG109 [53] phi (byte*) char_cursor#48 = (byte*) char_cursor#11 [phi:print_byte::@1->print_char#0] -- register_copy - //SEG110 [53] phi (byte) print_char::ch#3 = (byte) print_char::ch#2 [phi:print_byte::@1->print_char#1] -- register_copy + //SEG125 [61] phi (byte*) char_cursor#64 = (byte*) char_cursor#14 [phi:print_byte::@1->print_char#0] -- register_copy + //SEG126 [61] phi (byte) print_char::ch#3 = (byte) print_char::ch#2 [phi:print_byte::@1->print_char#1] -- register_copy jsr print_char jmp breturn - //SEG111 print_byte::@return + //SEG127 print_byte::@return breturn: - //SEG112 [52] return [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + //SEG128 [60] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) rts hextab: .text "0123456789abcdef" } -//SEG113 print_char +//SEG129 print_char print_char: { - .label ch = 6 - //SEG114 [54] *((byte*) char_cursor#48) ← (byte) print_char::ch#3 [ char_cursor#48 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] ) -- _deref_pbuz1=vbuz2 + .label ch = 8 + //SEG130 [62] *((byte*) char_cursor#64) ← (byte) print_char::ch#3 [ char_cursor#64 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] ) -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (char_cursor),y - //SEG115 [55] (byte*) char_cursor#11 ← ++ (byte*) char_cursor#48 [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] ) -- pbuz1=_inc_pbuz1 + //SEG131 [63] (byte*) char_cursor#14 ← ++ (byte*) char_cursor#64 [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] ) -- pbuz1=_inc_pbuz1 inc char_cursor bne !+ inc char_cursor+1 !: jmp breturn - //SEG116 print_char::@return + //SEG132 print_char::@return breturn: - //SEG117 [56] return [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] ) + //SEG133 [64] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] ) rts } -//SEG118 print_str +//SEG134 print_str print_str: { - .label str = 9 - //SEG119 [58] phi from print_str print_str::@2 to print_str::@1 [phi:print_str/print_str::@2->print_str::@1] + .label str = $b + //SEG135 [66] phi from print_str print_str::@2 to print_str::@1 [phi:print_str/print_str::@2->print_str::@1] b1_from_print_str: b1_from_b2: - //SEG120 [58] phi (byte*) char_cursor#2 = (byte*) char_cursor#11 [phi:print_str/print_str::@2->print_str::@1#0] -- register_copy - //SEG121 [58] phi (byte*) print_str::str#7 = (byte*) print_str::str#9 [phi:print_str/print_str::@2->print_str::@1#1] -- register_copy + //SEG136 [66] phi (byte*) char_cursor#100 = (byte*) char_cursor#14 [phi:print_str/print_str::@2->print_str::@1#0] -- register_copy + //SEG137 [66] phi (byte*) print_str::str#10 = (byte*) print_str::str#12 [phi:print_str/print_str::@2->print_str::@1#1] -- register_copy jmp b1 - //SEG122 print_str::@1 + //SEG138 print_str::@1 b1: - //SEG123 [59] if(*((byte*) print_str::str#7)!=(byte) '@') goto print_str::@2 [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 + //SEG139 [67] if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 ldy #0 lda (str),y cmp #'@' bne b2 jmp breturn - //SEG124 print_str::@return + //SEG140 print_str::@return breturn: - //SEG125 [60] return [ char_cursor#2 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 ] ) + //SEG141 [68] return [ char_cursor#100 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 ] ) rts - //SEG126 print_str::@2 + //SEG142 print_str::@2 b2: - //SEG127 [61] *((byte*) char_cursor#2) ← *((byte*) print_str::str#7) [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) -- _deref_pbuz1=_deref_pbuz2 + //SEG143 [69] *((byte*) char_cursor#100) ← *((byte*) print_str::str#10) [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (char_cursor),y - //SEG128 [62] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#2 [ print_str::str#7 char_cursor#1 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG144 [70] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#100 [ print_str::str#10 char_cursor#1 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc char_cursor bne !+ inc char_cursor+1 !: - //SEG129 [63] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#7 [ print_str::str#0 char_cursor#1 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG145 [71] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#10 [ print_str::str#0 char_cursor#1 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 !: jmp b1_from_b2 } -//SEG130 div8u -div8u: { - .label _1 = $22 - .label rem = $e +//SEG146 div16u +div16u: { + .label _1 = $31 + .label _2 = $32 + .label rem = $d .label dividend = $f - .label quotient = $10 - .label i = $11 - .label return = $10 - .label divisor = $b - .label return_2 = $2c - .label return_3 = $1e - .label remainder = $c - //SEG131 [65] phi from div8u to div8u::@1 [phi:div8u->div8u::@1] - b1_from_div8u: - //SEG132 [65] phi (byte) div8u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#0] -- vbuz1=vbuc1 + .label quotient = $11 + .label i = $13 + .label return = $11 + .label divisor = $29 + .label return_2 = $2b + //SEG147 [73] phi from div16u to div16u::@1 [phi:div16u->div16u::@1] + b1_from_div16u: + //SEG148 [73] phi (byte) div16u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div16u->div16u::@1#0] -- vbuz1=vbuc1 lda #0 sta i - //SEG133 [65] phi (byte) div8u::quotient#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#1] -- vbuz1=vbuc1 + //SEG149 [73] phi (word) div16u::quotient#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div16u->div16u::@1#1] -- vwuz1=vbuc1 lda #0 sta quotient - //SEG134 [65] phi (byte) div8u::dividend#3 = (byte) div8u::dividend#5 [phi:div8u->div8u::@1#2] -- register_copy - //SEG135 [65] phi (byte) div8u::rem#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#3] -- vbuz1=vbuc1 + lda #0 + sta quotient+1 + //SEG150 [73] phi (word) div16u::dividend#2 = (word) div16u::dividend#1 [phi:div16u->div16u::@1#2] -- register_copy + //SEG151 [73] phi (word) div16u::rem#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div16u->div16u::@1#3] -- vwuz1=vbuc1 lda #0 sta rem + lda #0 + sta rem+1 jmp b1 - //SEG136 [65] phi from div8u::@3 to div8u::@1 [phi:div8u::@3->div8u::@1] + //SEG152 [73] phi from div16u::@3 to div16u::@1 [phi:div16u::@3->div16u::@1] b1_from_b3: - //SEG137 [65] phi (byte) div8u::i#2 = (byte) div8u::i#1 [phi:div8u::@3->div8u::@1#0] -- register_copy - //SEG138 [65] phi (byte) div8u::quotient#3 = (byte) div8u::return#0 [phi:div8u::@3->div8u::@1#1] -- register_copy - //SEG139 [65] phi (byte) div8u::dividend#3 = (byte) div8u::dividend#0 [phi:div8u::@3->div8u::@1#2] -- register_copy - //SEG140 [65] phi (byte) div8u::rem#4 = (byte) div8u::rem#8 [phi:div8u::@3->div8u::@1#3] -- register_copy + //SEG153 [73] phi (byte) div16u::i#2 = (byte) div16u::i#1 [phi:div16u::@3->div16u::@1#0] -- register_copy + //SEG154 [73] phi (word) div16u::quotient#3 = (word) div16u::return#0 [phi:div16u::@3->div16u::@1#1] -- register_copy + //SEG155 [73] phi (word) div16u::dividend#2 = (word) div16u::dividend#0 [phi:div16u::@3->div16u::@1#2] -- register_copy + //SEG156 [73] phi (word) div16u::rem#4 = (word) div16u::rem#8 [phi:div16u::@3->div16u::@1#3] -- register_copy jmp b1 - //SEG141 div8u::@1 + //SEG157 div16u::@1 b1: - //SEG142 [66] (byte) div8u::rem#1 ← (byte) div8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + //SEG158 [74] (word) div16u::rem#1 ← (word) div16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ) -- vwuz1=vwuz1_rol_1 asl rem - //SEG143 [67] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) -- vbuz1=vbuz2_band_vbuc1 - lda #$80 - and dividend + rol rem+1 + //SEG159 [75] (byte~) div16u::$1 ← > (word) div16u::dividend#2 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ) -- vbuz1=_hi_vwuz2 + lda dividend+1 sta _1 - //SEG144 [68] if((byte~) div8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8u::@2 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) -- vbuz1_eq_0_then_la1 - lda _1 + //SEG160 [76] (byte~) div16u::$2 ← (byte~) div16u::$1 & (byte/word/signed word/dword/signed dword) 128 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ) -- vbuz1=vbuz2_band_vbuc1 + lda #$80 + and _1 + sta _2 + //SEG161 [77] if((byte~) div16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div16u::@2 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ) -- vbuz1_eq_0_then_la1 + lda _2 beq b2_from_b1 jmp b4 - //SEG145 div8u::@4 + //SEG162 div16u::@4 b4: - //SEG146 [69] (byte) div8u::rem#2 ← ++ (byte) div8u::rem#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + //SEG163 [78] (word) div16u::rem#2 ← ++ (word) div16u::rem#1 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#2 ] ) -- vwuz1=_inc_vwuz1 inc rem - //SEG147 [70] phi from div8u::@1 div8u::@4 to div8u::@2 [phi:div8u::@1/div8u::@4->div8u::@2] + bne !+ + inc rem+1 + !: + //SEG164 [79] phi from div16u::@1 div16u::@4 to div16u::@2 [phi:div16u::@1/div16u::@4->div16u::@2] b2_from_b1: b2_from_b4: - //SEG148 [70] phi (byte) div8u::rem#5 = (byte) div8u::rem#1 [phi:div8u::@1/div8u::@4->div8u::@2#0] -- register_copy + //SEG165 [79] phi (word) div16u::rem#5 = (word) div16u::rem#1 [phi:div16u::@1/div16u::@4->div16u::@2#0] -- register_copy jmp b2 - //SEG149 div8u::@2 + //SEG166 div16u::@2 b2: - //SEG150 [71] (byte) div8u::dividend#0 ← (byte) div8u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + //SEG167 [80] (word) div16u::dividend#0 ← (word) div16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::quotient#3 div16u::i#2 div16u::dividend#0 div16u::rem#5 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::quotient#3 div16u::i#2 div16u::dividend#0 div16u::rem#5 ] ) -- vwuz1=vwuz1_rol_1 asl dividend - //SEG151 [72] (byte) div8u::quotient#1 ← (byte) div8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + rol dividend+1 + //SEG168 [81] (word) div16u::quotient#1 ← (word) div16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ) -- vwuz1=vwuz1_rol_1 asl quotient - //SEG152 [73] if((byte) div8u::rem#5<(byte) div8u::divisor#6) goto div8u::@3 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) -- vbuz1_lt_vbuz2_then_la1 + rol quotient+1 + //SEG169 [82] if((word) div16u::rem#5<(word) div16u::divisor#0) goto div16u::@3 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ) -- vwuz1_lt_vwuz2_then_la1 + lda rem+1 + cmp divisor+1 + bcc b3_from_b2 + bne !+ lda rem cmp divisor bcc b3_from_b2 + !: jmp b5 - //SEG153 div8u::@5 + //SEG170 div16u::@5 b5: - //SEG154 [74] (byte) div8u::quotient#2 ← ++ (byte) div8u::quotient#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + //SEG171 [83] (word) div16u::quotient#2 ← ++ (word) div16u::quotient#1 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#2 ] ) -- vwuz1=_inc_vwuz1 inc quotient - //SEG155 [75] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_minus_vbuz2 + bne !+ + inc quotient+1 + !: + //SEG172 [84] (word) div16u::rem#3 ← (word) div16u::rem#5 - (word) div16u::divisor#0 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ) -- vwuz1=vwuz1_minus_vwuz2 lda rem sec sbc divisor sta rem - //SEG156 [76] phi from div8u::@2 div8u::@5 to div8u::@3 [phi:div8u::@2/div8u::@5->div8u::@3] + lda rem+1 + sbc divisor+1 + sta rem+1 + //SEG173 [85] phi from div16u::@2 div16u::@5 to div16u::@3 [phi:div16u::@2/div16u::@5->div16u::@3] b3_from_b2: b3_from_b5: - //SEG157 [76] phi (byte) div8u::return#0 = (byte) div8u::quotient#1 [phi:div8u::@2/div8u::@5->div8u::@3#0] -- register_copy - //SEG158 [76] phi (byte) div8u::rem#8 = (byte) div8u::rem#5 [phi:div8u::@2/div8u::@5->div8u::@3#1] -- register_copy + //SEG174 [85] phi (word) div16u::return#0 = (word) div16u::quotient#1 [phi:div16u::@2/div16u::@5->div16u::@3#0] -- register_copy + //SEG175 [85] phi (word) div16u::rem#8 = (word) div16u::rem#5 [phi:div16u::@2/div16u::@5->div16u::@3#1] -- register_copy jmp b3 - //SEG159 div8u::@3 + //SEG176 div16u::@3 b3: - //SEG160 [77] (byte) div8u::i#1 ← ++ (byte) div8u::i#2 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + //SEG177 [86] (byte) div16u::i#1 ← ++ (byte) div16u::i#2 [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ) -- vbuz1=_inc_vbuz1 inc i - //SEG161 [78] if((byte) div8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto div8u::@1 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG178 [87] if((byte) div16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto div16u::@1 [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ) -- vbuz1_neq_vbuc1_then_la1 lda i - cmp #8 + cmp #$10 bne b1_from_b3 - jmp b6 - //SEG162 div8u::@6 - b6: - //SEG163 [79] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) -- _deref_pbuz1=vbuz2 - lda rem - ldy #0 - sta (remainder),y jmp breturn - //SEG164 div8u::@return + //SEG179 div16u::@return breturn: - //SEG165 [80] return [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) + //SEG180 [88] return [ div16u::rem#8 div16u::return#0 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::return#0 ] ) rts } -//SEG166 test_8s -test_8s: { - .label dividend = $23 - .label divisor = $24 - .label res = $28 - .label i = $12 - //SEG167 [82] phi from test_8s to test_8s::@1 [phi:test_8s->test_8s::@1] - b1_from_test_8s: - //SEG168 [82] phi (byte*) line_cursor#30 = (const byte*) SCREEN#0 [phi:test_8s->test_8s::@1#0] -- pbuz1=pbuc1 - lda #SCREEN - sta line_cursor+1 - //SEG169 [82] phi (byte*) char_cursor#81 = (const byte*) SCREEN#0 [phi:test_8s->test_8s::@1#1] -- pbuz1=pbuc1 - lda #SCREEN - sta char_cursor+1 - //SEG170 [82] phi (signed byte) rem8s#18 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8s->test_8s::@1#2] -- vbsz1=vbuc1 +//SEG181 test_8u +test_8u: { + .label rem = $33 + .label dividend = $34 + .label divisor = $35 + .label res = $37 + .label i = $14 + //SEG182 [89] (byte) test_8u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ line_cursor#1 test_8u::rem#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 div8s::rem8u#0 ] ) -- vbuz1=vbuc1 lda #0 - sta rem8s - //SEG171 [82] phi (byte) test_8s::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8s->test_8s::@1#3] -- vbuz1=vbuc1 + sta rem + //SEG183 [90] phi from test_8u to test_8u::@1 [phi:test_8u->test_8u::@1] + b1_from_test_8u: + //SEG184 [90] phi (byte) test_8u::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8u->test_8u::@1#0] -- vbuz1=vbuc1 lda #0 sta i jmp b1 - //SEG172 test_8s::@1 + //SEG185 [90] phi from test_8u::@11 to test_8u::@1 [phi:test_8u::@11->test_8u::@1] + b1_from_b11: + //SEG186 [90] phi (byte) test_8u::i#10 = (byte) test_8u::i#1 [phi:test_8u::@11->test_8u::@1#0] -- register_copy + jmp b1 + //SEG187 test_8u::@1 b1: - //SEG173 [83] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG188 [91] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 div8s::rem8u#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend - //SEG174 [84] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG189 [92] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda divisors,y sta divisor - //SEG175 [85] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ) -- vbsz1=vbsz2 + //SEG190 [93] (byte) div8u::dividend#2 ← (byte) test_8u::dividend#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 lda dividend - sta div8s.dividend - //SEG176 [86] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ) -- vbsz1=vbsz2 + sta div8u.dividend + //SEG191 [94] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 lda divisor - sta div8s.divisor - //SEG177 [87] call div8s param-assignment [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ) - jsr div8s - //SEG178 [88] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 - lda div8s.return - sta div8s.return_3 + sta div8u.divisor + //SEG192 [95] call div8u param-assignment [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 div8s::rem8u#0 ] ) + //SEG193 [118] phi from test_8u::@1 to div8u [phi:test_8u::@1->div8u] + div8u_from_b1: + //SEG194 [118] phi (byte*) div8u::remainder#8 = &(byte) test_8u::rem#0 [phi:test_8u::@1->div8u#0] -- pbuz1=pbuc1 + lda #rem + sta div8u.remainder+1 + //SEG195 [118] phi (byte) div8u::divisor#6 = (byte) div8u::divisor#1 [phi:test_8u::@1->div8u#1] -- register_copy + //SEG196 [118] phi (byte) div8u::dividend#5 = (byte) div8u::dividend#2 [phi:test_8u::@1->div8u#2] -- register_copy + jsr div8u + //SEG197 [96] (byte) div8u::return#3 ← (byte) div8u::return#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + lda div8u.return + sta div8u.return_3 jmp b3 - //SEG179 test_8s::@3 + //SEG198 test_8u::@3 b3: - //SEG180 [89] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 - lda div8s.return_3 + //SEG199 [97] (byte) test_8u::res#0 ← (byte) div8u::return#3 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + lda div8u.return_3 sta res - //SEG181 [90] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + //SEG200 [98] (byte) print_byte::b#3 ← (byte) test_8u::dividend#0 [ line_cursor#1 print_byte::b#3 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 print_byte::b#3 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 lda dividend - sta print_sbyte.b - //SEG182 [91] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) - //SEG183 [110] phi from test_8s::@3 to print_sbyte [phi:test_8s::@3->print_sbyte] - print_sbyte_from_b3: - //SEG184 [110] phi (byte*) char_cursor#77 = (byte*) char_cursor#81 [phi:test_8s::@3->print_sbyte#0] -- register_copy - //SEG185 [110] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#1 [phi:test_8s::@3->print_sbyte#1] -- register_copy - jsr print_sbyte - //SEG186 [92] phi from test_8s::@3 to test_8s::@4 [phi:test_8s::@3->test_8s::@4] + sta print_byte.b + //SEG201 [99] (byte*~) char_cursor#128 ← (byte*) line_cursor#1 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) -- pbuz1=pbuz2 + lda line_cursor + sta char_cursor + lda line_cursor+1 + sta char_cursor+1 + //SEG202 [100] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + //SEG203 [53] phi from test_8u::@3 to print_byte [phi:test_8u::@3->print_byte] + print_byte_from_b3: + //SEG204 [53] phi (byte*) char_cursor#105 = (byte*~) char_cursor#128 [phi:test_8u::@3->print_byte#0] -- register_copy + //SEG205 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#3 [phi:test_8u::@3->print_byte#1] -- register_copy + jsr print_byte + //SEG206 [101] phi from test_8u::@3 to test_8u::@4 [phi:test_8u::@3->test_8u::@4] b4_from_b3: jmp b4 - //SEG187 test_8s::@4 + //SEG207 test_8u::@4 b4: - //SEG188 [93] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) - //SEG189 [57] phi from test_8s::@4 to print_str [phi:test_8s::@4->print_str] + //SEG208 [102] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + //SEG209 [65] phi from test_8u::@4 to print_str [phi:test_8u::@4->print_str] print_str_from_b4: - //SEG190 [57] phi (byte*) print_str::str#9 = (const string) test_8s::str [phi:test_8s::@4->print_str#0] -- pbuz1=pbuc1 + //SEG210 [65] phi (byte*) print_str::str#12 = (const string) test_8u::str [phi:test_8u::@4->print_str#0] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str jmp b5 - //SEG191 test_8s::@5 + //SEG211 test_8u::@5 b5: - //SEG192 [94] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + //SEG212 [103] (byte) print_byte::b#4 ← (byte) test_8u::divisor#0 [ line_cursor#1 char_cursor#100 print_byte::b#4 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#4 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 lda divisor - sta print_sbyte.b - //SEG193 [95] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) - //SEG194 [110] phi from test_8s::@5 to print_sbyte [phi:test_8s::@5->print_sbyte] - print_sbyte_from_b5: - //SEG195 [110] phi (byte*) char_cursor#77 = (byte*) char_cursor#2 [phi:test_8s::@5->print_sbyte#0] -- register_copy - //SEG196 [110] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#2 [phi:test_8s::@5->print_sbyte#1] -- register_copy - jsr print_sbyte - //SEG197 [96] phi from test_8s::@5 to test_8s::@6 [phi:test_8s::@5->test_8s::@6] + sta print_byte.b + //SEG213 [104] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + //SEG214 [53] phi from test_8u::@5 to print_byte [phi:test_8u::@5->print_byte] + print_byte_from_b5: + //SEG215 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#100 [phi:test_8u::@5->print_byte#0] -- register_copy + //SEG216 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#4 [phi:test_8u::@5->print_byte#1] -- register_copy + jsr print_byte + //SEG217 [105] phi from test_8u::@5 to test_8u::@6 [phi:test_8u::@5->test_8u::@6] b6_from_b5: jmp b6 - //SEG198 test_8s::@6 + //SEG218 test_8u::@6 b6: - //SEG199 [97] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) - //SEG200 [57] phi from test_8s::@6 to print_str [phi:test_8s::@6->print_str] + //SEG219 [106] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + //SEG220 [65] phi from test_8u::@6 to print_str [phi:test_8u::@6->print_str] print_str_from_b6: - //SEG201 [57] phi (byte*) print_str::str#9 = (const string) test_8s::str1 [phi:test_8s::@6->print_str#0] -- pbuz1=pbuc1 + //SEG221 [65] phi (byte*) print_str::str#12 = (const string) test_8u::str1 [phi:test_8u::@6->print_str#0] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str jmp b7 - //SEG202 test_8s::@7 + //SEG222 test_8u::@7 b7: - //SEG203 [98] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + //SEG223 [107] (byte) print_byte::b#5 ← (byte) test_8u::res#0 [ line_cursor#1 char_cursor#100 print_byte::b#5 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#5 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 lda res - sta print_sbyte.b - //SEG204 [99] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - //SEG205 [110] phi from test_8s::@7 to print_sbyte [phi:test_8s::@7->print_sbyte] - print_sbyte_from_b7: - //SEG206 [110] phi (byte*) char_cursor#77 = (byte*) char_cursor#2 [phi:test_8s::@7->print_sbyte#0] -- register_copy - //SEG207 [110] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#3 [phi:test_8s::@7->print_sbyte#1] -- register_copy - jsr print_sbyte - //SEG208 [100] phi from test_8s::@7 to test_8s::@8 [phi:test_8s::@7->test_8s::@8] + sta print_byte.b + //SEG224 [108] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + //SEG225 [53] phi from test_8u::@7 to print_byte [phi:test_8u::@7->print_byte] + print_byte_from_b7: + //SEG226 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#100 [phi:test_8u::@7->print_byte#0] -- register_copy + //SEG227 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#5 [phi:test_8u::@7->print_byte#1] -- register_copy + jsr print_byte + //SEG228 [109] phi from test_8u::@7 to test_8u::@8 [phi:test_8u::@7->test_8u::@8] b8_from_b7: jmp b8 - //SEG209 test_8s::@8 + //SEG229 test_8u::@8 b8: - //SEG210 [101] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - //SEG211 [57] phi from test_8s::@8 to print_str [phi:test_8s::@8->print_str] + //SEG230 [110] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + //SEG231 [65] phi from test_8u::@8 to print_str [phi:test_8u::@8->print_str] print_str_from_b8: - //SEG212 [57] phi (byte*) print_str::str#9 = (const string) test_8s::str2 [phi:test_8s::@8->print_str#0] -- pbuz1=pbuc1 + //SEG232 [65] phi (byte*) print_str::str#12 = (const string) test_8u::str2 [phi:test_8u::@8->print_str#0] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str jmp b9 - //SEG213 test_8s::@9 + //SEG233 test_8u::@9 b9: - //SEG214 [102] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 - lda rem8s - sta print_sbyte.b - //SEG215 [103] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - //SEG216 [110] phi from test_8s::@9 to print_sbyte [phi:test_8s::@9->print_sbyte] - print_sbyte_from_b9: - //SEG217 [110] phi (byte*) char_cursor#77 = (byte*) char_cursor#2 [phi:test_8s::@9->print_sbyte#0] -- register_copy - //SEG218 [110] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#4 [phi:test_8s::@9->print_sbyte#1] -- register_copy - jsr print_sbyte - //SEG219 [104] phi from test_8s::@9 to test_8s::@10 [phi:test_8s::@9->test_8s::@10] + //SEG234 [111] (byte) print_byte::b#6 ← (byte) test_8u::rem#0 [ line_cursor#1 char_cursor#100 print_byte::b#6 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#6 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + lda rem + sta print_byte.b + //SEG235 [112] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + //SEG236 [53] phi from test_8u::@9 to print_byte [phi:test_8u::@9->print_byte] + print_byte_from_b9: + //SEG237 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#100 [phi:test_8u::@9->print_byte#0] -- register_copy + //SEG238 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#6 [phi:test_8u::@9->print_byte#1] -- register_copy + jsr print_byte + //SEG239 [113] phi from test_8u::@9 to test_8u::@10 [phi:test_8u::@9->test_8u::@10] b10_from_b9: jmp b10 - //SEG220 test_8s::@10 + //SEG240 test_8u::@10 b10: - //SEG221 [105] call print_ln param-assignment [ test_8u::rem#0 line_cursor#1 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - //SEG222 [40] phi from test_8s::@10 to print_ln [phi:test_8s::@10->print_ln] + //SEG241 [114] call print_ln param-assignment [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + //SEG242 [42] phi from test_8u::@10 to print_ln [phi:test_8u::@10->print_ln] print_ln_from_b10: - //SEG223 [40] phi (byte*) line_cursor#27 = (byte*) line_cursor#30 [phi:test_8s::@10->print_ln#0] -- register_copy + //SEG243 [42] phi (byte*) line_cursor#33 = (byte*) line_cursor#1 [phi:test_8u::@10->print_ln#0] -- register_copy jsr print_ln jmp b11 - //SEG224 test_8s::@11 + //SEG244 test_8u::@11 b11: - //SEG225 [106] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + //SEG245 [115] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 inc i - //SEG226 [107] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@12 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG246 [116] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@1 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda i + cmp #6 + bne b1_from_b11 + jmp breturn + //SEG247 test_8u::@return + breturn: + //SEG248 [117] return [ line_cursor#1 ] ( main:2::test_8u:9 [ line_cursor#1 ] ) + rts + str: .text " / @" + str1: .text " = @" + str2: .text " @" + dividends: .byte $ff, $ff, $ff, $ff, $ff, $ff + divisors: .byte 5, 7, $b, $d, $11, $13 +} +//SEG249 div8u +div8u: { + .label _1 = $38 + .label rem = $18 + .label dividend = $19 + .label quotient = $1a + .label i = $1b + .label return = $1a + .label divisor = $15 + .label return_2 = $42 + .label return_3 = $36 + .label remainder = $16 + //SEG250 [119] phi from div8u to div8u::@1 [phi:div8u->div8u::@1] + b1_from_div8u: + //SEG251 [119] phi (byte) div8u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#0] -- vbuz1=vbuc1 + lda #0 + sta i + //SEG252 [119] phi (byte) div8u::quotient#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#1] -- vbuz1=vbuc1 + lda #0 + sta quotient + //SEG253 [119] phi (byte) div8u::dividend#3 = (byte) div8u::dividend#5 [phi:div8u->div8u::@1#2] -- register_copy + //SEG254 [119] phi (byte) div8u::rem#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#3] -- vbuz1=vbuc1 + lda #0 + sta rem + jmp b1 + //SEG255 [119] phi from div8u::@3 to div8u::@1 [phi:div8u::@3->div8u::@1] + b1_from_b3: + //SEG256 [119] phi (byte) div8u::i#2 = (byte) div8u::i#1 [phi:div8u::@3->div8u::@1#0] -- register_copy + //SEG257 [119] phi (byte) div8u::quotient#3 = (byte) div8u::return#0 [phi:div8u::@3->div8u::@1#1] -- register_copy + //SEG258 [119] phi (byte) div8u::dividend#3 = (byte) div8u::dividend#0 [phi:div8u::@3->div8u::@1#2] -- register_copy + //SEG259 [119] phi (byte) div8u::rem#4 = (byte) div8u::rem#8 [phi:div8u::@3->div8u::@1#3] -- register_copy + jmp b1 + //SEG260 div8u::@1 + b1: + //SEG261 [120] (byte) div8u::rem#1 ← (byte) div8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + asl rem + //SEG262 [121] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) -- vbuz1=vbuz2_band_vbuc1 + lda #$80 + and dividend + sta _1 + //SEG263 [122] if((byte~) div8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8u::@2 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) -- vbuz1_eq_0_then_la1 + lda _1 + beq b2_from_b1 + jmp b4 + //SEG264 div8u::@4 + b4: + //SEG265 [123] (byte) div8u::rem#2 ← ++ (byte) div8u::rem#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + inc rem + //SEG266 [124] phi from div8u::@1 div8u::@4 to div8u::@2 [phi:div8u::@1/div8u::@4->div8u::@2] + b2_from_b1: + b2_from_b4: + //SEG267 [124] phi (byte) div8u::rem#5 = (byte) div8u::rem#1 [phi:div8u::@1/div8u::@4->div8u::@2#0] -- register_copy + jmp b2 + //SEG268 div8u::@2 + b2: + //SEG269 [125] (byte) div8u::dividend#0 ← (byte) div8u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + asl dividend + //SEG270 [126] (byte) div8u::quotient#1 ← (byte) div8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + asl quotient + //SEG271 [127] if((byte) div8u::rem#5<(byte) div8u::divisor#6) goto div8u::@3 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) -- vbuz1_lt_vbuz2_then_la1 + lda rem + cmp divisor + bcc b3_from_b2 + jmp b5 + //SEG272 div8u::@5 + b5: + //SEG273 [128] (byte) div8u::quotient#2 ← ++ (byte) div8u::quotient#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + inc quotient + //SEG274 [129] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_minus_vbuz2 + lda rem + sec + sbc divisor + sta rem + //SEG275 [130] phi from div8u::@2 div8u::@5 to div8u::@3 [phi:div8u::@2/div8u::@5->div8u::@3] + b3_from_b2: + b3_from_b5: + //SEG276 [130] phi (byte) div8u::return#0 = (byte) div8u::quotient#1 [phi:div8u::@2/div8u::@5->div8u::@3#0] -- register_copy + //SEG277 [130] phi (byte) div8u::rem#8 = (byte) div8u::rem#5 [phi:div8u::@2/div8u::@5->div8u::@3#1] -- register_copy + jmp b3 + //SEG278 div8u::@3 + b3: + //SEG279 [131] (byte) div8u::i#1 ← ++ (byte) div8u::i#2 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + inc i + //SEG280 [132] if((byte) div8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto div8u::@1 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda i + cmp #8 + bne b1_from_b3 + jmp b6 + //SEG281 div8u::@6 + b6: + //SEG282 [133] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) -- _deref_pbuz1=vbuz2 + lda rem + ldy #0 + sta (remainder),y + jmp breturn + //SEG283 div8u::@return + breturn: + //SEG284 [134] return [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) + rts +} +//SEG285 test_8s +test_8s: { + .label dividend = $39 + .label divisor = $3a + .label res = $3e + .label i = $1c + //SEG286 [136] phi from test_8s to test_8s::@1 [phi:test_8s->test_8s::@1] + b1_from_test_8s: + //SEG287 [136] phi (byte*) line_cursor#37 = (const byte*) SCREEN#0 [phi:test_8s->test_8s::@1#0] -- pbuz1=pbuc1 + lda #SCREEN + sta line_cursor+1 + //SEG288 [136] phi (byte*) char_cursor#109 = (const byte*) SCREEN#0 [phi:test_8s->test_8s::@1#1] -- pbuz1=pbuc1 + lda #SCREEN + sta char_cursor+1 + //SEG289 [136] phi (signed byte) rem8s#18 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8s->test_8s::@1#2] -- vbsz1=vbuc1 + lda #0 + sta rem8s + //SEG290 [136] phi (byte) test_8s::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8s->test_8s::@1#3] -- vbuz1=vbuc1 + lda #0 + sta i + jmp b1 + //SEG291 test_8s::@1 + b1: + //SEG292 [137] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ) -- vbsz1=pbsc1_derefidx_vbuz2 + ldy i + lda dividends,y + sta dividend + //SEG293 [138] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ) -- vbsz1=pbsc1_derefidx_vbuz2 + ldy i + lda divisors,y + sta divisor + //SEG294 [139] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ) -- vbsz1=vbsz2 + lda dividend + sta div8s.dividend + //SEG295 [140] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ) -- vbsz1=vbsz2 + lda divisor + sta div8s.divisor + //SEG296 [141] call div8s param-assignment [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ) + jsr div8s + //SEG297 [142] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + lda div8s.return + sta div8s.return_3 + jmp b3 + //SEG298 test_8s::@3 + b3: + //SEG299 [143] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + lda div8s.return_3 + sta res + //SEG300 [144] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + lda dividend + sta print_sbyte.b + //SEG301 [145] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + //SEG302 [164] phi from test_8s::@3 to print_sbyte [phi:test_8s::@3->print_sbyte] + print_sbyte_from_b3: + //SEG303 [164] phi (byte*) char_cursor#103 = (byte*) char_cursor#109 [phi:test_8s::@3->print_sbyte#0] -- register_copy + //SEG304 [164] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#1 [phi:test_8s::@3->print_sbyte#1] -- register_copy + jsr print_sbyte + //SEG305 [146] phi from test_8s::@3 to test_8s::@4 [phi:test_8s::@3->test_8s::@4] + b4_from_b3: + jmp b4 + //SEG306 test_8s::@4 + b4: + //SEG307 [147] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + //SEG308 [65] phi from test_8s::@4 to print_str [phi:test_8s::@4->print_str] + print_str_from_b4: + //SEG309 [65] phi (byte*) print_str::str#12 = (const string) test_8s::str [phi:test_8s::@4->print_str#0] -- pbuz1=pbuc1 + lda #str + sta print_str.str+1 + jsr print_str + jmp b5 + //SEG310 test_8s::@5 + b5: + //SEG311 [148] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + lda divisor + sta print_sbyte.b + //SEG312 [149] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) + //SEG313 [164] phi from test_8s::@5 to print_sbyte [phi:test_8s::@5->print_sbyte] + print_sbyte_from_b5: + //SEG314 [164] phi (byte*) char_cursor#103 = (byte*) char_cursor#100 [phi:test_8s::@5->print_sbyte#0] -- register_copy + //SEG315 [164] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#2 [phi:test_8s::@5->print_sbyte#1] -- register_copy + jsr print_sbyte + //SEG316 [150] phi from test_8s::@5 to test_8s::@6 [phi:test_8s::@5->test_8s::@6] + b6_from_b5: + jmp b6 + //SEG317 test_8s::@6 + b6: + //SEG318 [151] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) + //SEG319 [65] phi from test_8s::@6 to print_str [phi:test_8s::@6->print_str] + print_str_from_b6: + //SEG320 [65] phi (byte*) print_str::str#12 = (const string) test_8s::str1 [phi:test_8s::@6->print_str#0] -- pbuz1=pbuc1 + lda #str1 + sta print_str.str+1 + jsr print_str + jmp b7 + //SEG321 test_8s::@7 + b7: + //SEG322 [152] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + lda res + sta print_sbyte.b + //SEG323 [153] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + //SEG324 [164] phi from test_8s::@7 to print_sbyte [phi:test_8s::@7->print_sbyte] + print_sbyte_from_b7: + //SEG325 [164] phi (byte*) char_cursor#103 = (byte*) char_cursor#100 [phi:test_8s::@7->print_sbyte#0] -- register_copy + //SEG326 [164] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#3 [phi:test_8s::@7->print_sbyte#1] -- register_copy + jsr print_sbyte + //SEG327 [154] phi from test_8s::@7 to test_8s::@8 [phi:test_8s::@7->test_8s::@8] + b8_from_b7: + jmp b8 + //SEG328 test_8s::@8 + b8: + //SEG329 [155] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + //SEG330 [65] phi from test_8s::@8 to print_str [phi:test_8s::@8->print_str] + print_str_from_b8: + //SEG331 [65] phi (byte*) print_str::str#12 = (const string) test_8s::str2 [phi:test_8s::@8->print_str#0] -- pbuz1=pbuc1 + lda #str2 + sta print_str.str+1 + jsr print_str + jmp b9 + //SEG332 test_8s::@9 + b9: + //SEG333 [156] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + lda rem8s + sta print_sbyte.b + //SEG334 [157] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + //SEG335 [164] phi from test_8s::@9 to print_sbyte [phi:test_8s::@9->print_sbyte] + print_sbyte_from_b9: + //SEG336 [164] phi (byte*) char_cursor#103 = (byte*) char_cursor#100 [phi:test_8s::@9->print_sbyte#0] -- register_copy + //SEG337 [164] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#4 [phi:test_8s::@9->print_sbyte#1] -- register_copy + jsr print_sbyte + //SEG338 [158] phi from test_8s::@9 to test_8s::@10 [phi:test_8s::@9->test_8s::@10] + b10_from_b9: + jmp b10 + //SEG339 test_8s::@10 + b10: + //SEG340 [159] call print_ln param-assignment [ line_cursor#1 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + //SEG341 [42] phi from test_8s::@10 to print_ln [phi:test_8s::@10->print_ln] + print_ln_from_b10: + //SEG342 [42] phi (byte*) line_cursor#33 = (byte*) line_cursor#37 [phi:test_8s::@10->print_ln#0] -- register_copy + jsr print_ln + jmp b11 + //SEG343 test_8s::@11 + b11: + //SEG344 [160] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + inc i + //SEG345 [161] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@12 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 lda i cmp #6 bne b12 jmp breturn - //SEG227 test_8s::@return + //SEG346 test_8s::@return breturn: - //SEG228 [108] return [ line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 div8s::rem8u#0 ] ) + //SEG347 [162] return [ line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 div8s::rem8u#0 ] ) rts - //SEG229 test_8s::@12 + //SEG348 test_8s::@12 b12: - //SEG230 [109] (byte*~) char_cursor#100 ← (byte*) line_cursor#1 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ) -- pbuz1=pbuz2 + //SEG349 [163] (byte*~) char_cursor#137 ← (byte*) line_cursor#1 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG231 [82] phi from test_8s::@12 to test_8s::@1 [phi:test_8s::@12->test_8s::@1] + //SEG350 [136] phi from test_8s::@12 to test_8s::@1 [phi:test_8s::@12->test_8s::@1] b1_from_b12: - //SEG232 [82] phi (byte*) line_cursor#30 = (byte*) line_cursor#1 [phi:test_8s::@12->test_8s::@1#0] -- register_copy - //SEG233 [82] phi (byte*) char_cursor#81 = (byte*~) char_cursor#100 [phi:test_8s::@12->test_8s::@1#1] -- register_copy - //SEG234 [82] phi (signed byte) rem8s#18 = (signed byte) rem8s#3 [phi:test_8s::@12->test_8s::@1#2] -- register_copy - //SEG235 [82] phi (byte) test_8s::i#10 = (byte) test_8s::i#1 [phi:test_8s::@12->test_8s::@1#3] -- register_copy + //SEG351 [136] phi (byte*) line_cursor#37 = (byte*) line_cursor#1 [phi:test_8s::@12->test_8s::@1#0] -- register_copy + //SEG352 [136] phi (byte*) char_cursor#109 = (byte*~) char_cursor#137 [phi:test_8s::@12->test_8s::@1#1] -- register_copy + //SEG353 [136] phi (signed byte) rem8s#18 = (signed byte) rem8s#3 [phi:test_8s::@12->test_8s::@1#2] -- register_copy + //SEG354 [136] phi (byte) test_8s::i#10 = (byte) test_8s::i#1 [phi:test_8s::@12->test_8s::@1#3] -- register_copy jmp b1 str: .text " / @" str1: .text " = @" @@ -4677,236 +6044,236 @@ test_8s: { dividends: .byte $7f, -$7f, -$7f, $7f, $7f, $7f divisors: .byte 5, 7, -$b, -$d, $11, $13 } -//SEG236 print_sbyte +//SEG355 print_sbyte print_sbyte: { - .label b = $14 - //SEG237 [111] if((signed byte) print_sbyte::b#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#77 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] ) -- vbsz1_ge_0_then_la1 + .label b = $1e + //SEG356 [165] if((signed byte) print_sbyte::b#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#103 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] ) -- vbsz1_ge_0_then_la1 lda b cmp #0 bpl b1_from_print_sbyte - //SEG238 [112] phi from print_sbyte to print_sbyte::@2 [phi:print_sbyte->print_sbyte::@2] + //SEG357 [166] phi from print_sbyte to print_sbyte::@2 [phi:print_sbyte->print_sbyte::@2] b2_from_print_sbyte: jmp b2 - //SEG239 print_sbyte::@2 + //SEG358 print_sbyte::@2 b2: - //SEG240 [113] call print_char param-assignment [ char_cursor#11 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] ) - //SEG241 [53] phi from print_sbyte::@2 to print_char [phi:print_sbyte::@2->print_char] + //SEG359 [167] call print_char param-assignment [ char_cursor#14 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] ) + //SEG360 [61] phi from print_sbyte::@2 to print_char [phi:print_sbyte::@2->print_char] print_char_from_b2: - //SEG242 [53] phi (byte*) char_cursor#48 = (byte*) char_cursor#77 [phi:print_sbyte::@2->print_char#0] -- register_copy - //SEG243 [53] phi (byte) print_char::ch#3 = (byte) '-' [phi:print_sbyte::@2->print_char#1] -- vbuz1=vbuc1 + //SEG361 [61] phi (byte*) char_cursor#64 = (byte*) char_cursor#103 [phi:print_sbyte::@2->print_char#0] -- register_copy + //SEG362 [61] phi (byte) print_char::ch#3 = (byte) '-' [phi:print_sbyte::@2->print_char#1] -- vbuz1=vbuc1 lda #'-' sta print_char.ch jsr print_char jmp b4 - //SEG244 print_sbyte::@4 + //SEG363 print_sbyte::@4 b4: - //SEG245 [114] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#11 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] ) -- vbsz1=_neg_vbsz1 + //SEG364 [168] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#14 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] ) -- vbsz1=_neg_vbsz1 lda b eor #$ff clc adc #1 sta b - //SEG246 [115] phi from print_sbyte print_sbyte::@4 to print_sbyte::@1 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1] + //SEG365 [169] phi from print_sbyte print_sbyte::@4 to print_sbyte::@1 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1] b1_from_print_sbyte: b1_from_b4: - //SEG247 [115] phi (byte*) char_cursor#76 = (byte*) char_cursor#77 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#0] -- register_copy - //SEG248 [115] phi (signed byte) print_sbyte::b#6 = (signed byte) print_sbyte::b#5 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#1] -- register_copy + //SEG366 [169] phi (byte*) char_cursor#102 = (byte*) char_cursor#103 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#0] -- register_copy + //SEG367 [169] phi (signed byte) print_sbyte::b#6 = (signed byte) print_sbyte::b#5 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#1] -- register_copy jmp b1 - //SEG249 print_sbyte::@1 + //SEG368 print_sbyte::@1 b1: - //SEG250 [116] (byte~) print_byte::b#7 ← (byte)(signed byte) print_sbyte::b#6 [ print_byte::b#7 char_cursor#76 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] ) -- vbuz1=vbuz2 + //SEG369 [170] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#6 [ print_byte::b#9 char_cursor#102 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] ) -- vbuz1=vbuz2 lda b sta print_byte.b - //SEG251 [117] call print_byte param-assignment [ char_cursor#11 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) - //SEG252 [45] phi from print_sbyte::@1 to print_byte [phi:print_sbyte::@1->print_byte] + //SEG370 [171] call print_byte param-assignment [ char_cursor#14 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) + //SEG371 [53] phi from print_sbyte::@1 to print_byte [phi:print_sbyte::@1->print_byte] print_byte_from_b1: - //SEG253 [45] phi (byte*) char_cursor#78 = (byte*) char_cursor#76 [phi:print_sbyte::@1->print_byte#0] -- register_copy - //SEG254 [45] phi (byte) print_byte::b#5 = (byte~) print_byte::b#7 [phi:print_sbyte::@1->print_byte#1] -- register_copy + //SEG372 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#102 [phi:print_sbyte::@1->print_byte#0] -- register_copy + //SEG373 [53] phi (byte) print_byte::b#7 = (byte~) print_byte::b#9 [phi:print_sbyte::@1->print_byte#1] -- register_copy jsr print_byte jmp breturn - //SEG255 print_sbyte::@return + //SEG374 print_sbyte::@return breturn: - //SEG256 [118] return [ char_cursor#11 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + //SEG375 [172] return [ char_cursor#14 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) rts } -//SEG257 div8s +//SEG376 div8s div8s: { - .label _2 = $29 - .label _7 = $2a - .label neg = $17 - .label rem8u = $2b - .label resultb = $2d - .label return = $18 - .label dividend = $25 - .label divisor = $26 - .label return_3 = $27 - .label dividendb = $15 - .label divisorb = $16 - //SEG258 [119] if((signed byte) div8s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@16 [ test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ) -- vbsz1_ge_0_then_la1 + .label _2 = $3f + .label _7 = $40 + .label neg = $21 + .label rem8u = $41 + .label resultb = $43 + .label return = $22 + .label dividend = $3b + .label divisor = $3c + .label return_3 = $3d + .label dividendb = $1f + .label divisorb = $20 + //SEG377 [173] if((signed byte) div8s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@16 [ test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ) -- vbsz1_ge_0_then_la1 lda dividend cmp #0 bpl b16 jmp b7 - //SEG259 div8s::@7 + //SEG378 div8s::@7 b7: - //SEG260 [120] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) -- vbsz1=_neg_vbsz2 + //SEG379 [174] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) -- vbsz1=_neg_vbsz2 lda dividend eor #$ff clc adc #1 sta _2 - //SEG261 [121] (byte~) div8s::dividendb#8 ← (byte)(signed byte~) div8s::$2 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ) -- vbuz1=vbuz2 + //SEG380 [175] (byte~) div8s::dividendb#8 ← (byte)(signed byte~) div8s::$2 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ) -- vbuz1=vbuz2 lda _2 sta dividendb - //SEG262 [122] phi from div8s::@7 to div8s::@2 [phi:div8s::@7->div8s::@2] + //SEG381 [176] phi from div8s::@7 to div8s::@2 [phi:div8s::@7->div8s::@2] b2_from_b7: - //SEG263 [122] phi (byte) div8s::dividendb#3 = (byte~) div8s::dividendb#8 [phi:div8s::@7->div8s::@2#0] -- register_copy - //SEG264 [122] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:div8s::@7->div8s::@2#1] -- vbuz1=vbuc1 + //SEG382 [176] phi (byte) div8s::dividendb#3 = (byte~) div8s::dividendb#8 [phi:div8s::@7->div8s::@2#0] -- register_copy + //SEG383 [176] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:div8s::@7->div8s::@2#1] -- vbuz1=vbuc1 lda #1 sta neg jmp b2 - //SEG265 div8s::@2 + //SEG384 div8s::@2 b2: - //SEG266 [123] if((signed byte) div8s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@17 [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) -- vbsz1_ge_0_then_la1 + //SEG385 [177] if((signed byte) div8s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@17 [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) -- vbsz1_ge_0_then_la1 lda divisor cmp #0 bpl b17 jmp b9 - //SEG267 div8s::@9 + //SEG386 div8s::@9 b9: - //SEG268 [124] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) -- vbsz1=_neg_vbsz2 + //SEG387 [178] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) -- vbsz1=_neg_vbsz2 lda divisor eor #$ff clc adc #1 sta _7 - //SEG269 [125] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) -- vbuz1=vbuz1_bxor_vbuc1 + //SEG388 [179] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) -- vbuz1=vbuz1_bxor_vbuc1 lda neg eor #1 sta neg - //SEG270 [126] (byte~) div8s::divisorb#5 ← (byte)(signed byte~) div8s::$7 [ test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ) -- vbuz1=vbuz2 + //SEG389 [180] (byte~) div8s::divisorb#5 ← (byte)(signed byte~) div8s::$7 [ test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ) -- vbuz1=vbuz2 lda _7 sta divisorb - //SEG271 [127] phi from div8s::@17 div8s::@9 to div8s::@4 [phi:div8s::@17/div8s::@9->div8s::@4] + //SEG390 [181] phi from div8s::@17 div8s::@9 to div8s::@4 [phi:div8s::@17/div8s::@9->div8s::@4] b4_from_b17: b4_from_b9: - //SEG272 [127] phi (byte) div8s::neg#4 = (byte) div8s::neg#3 [phi:div8s::@17/div8s::@9->div8s::@4#0] -- register_copy - //SEG273 [127] phi (byte) div8s::divisorb#3 = (byte~) div8s::divisorb#4 [phi:div8s::@17/div8s::@9->div8s::@4#1] -- register_copy + //SEG391 [181] phi (byte) div8s::neg#4 = (byte) div8s::neg#3 [phi:div8s::@17/div8s::@9->div8s::@4#0] -- register_copy + //SEG392 [181] phi (byte) div8s::divisorb#3 = (byte~) div8s::divisorb#4 [phi:div8s::@17/div8s::@9->div8s::@4#1] -- register_copy jmp b4 - //SEG274 div8s::@4 + //SEG393 div8s::@4 b4: - //SEG275 [128] (byte) div8s::rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuc1 + //SEG394 [182] (byte) div8s::rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuc1 lda #0 sta rem8u - //SEG276 [129] (byte) div8u::dividend#1 ← (byte) div8s::dividendb#3 [ test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + //SEG395 [183] (byte) div8u::dividend#1 ← (byte) div8s::dividendb#3 [ test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 lda dividendb sta div8u.dividend - //SEG277 [130] (byte) div8u::divisor#0 ← (byte) div8s::divisorb#3 [ test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + //SEG396 [184] (byte) div8u::divisor#0 ← (byte) div8s::divisorb#3 [ test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 lda divisorb sta div8u.divisor - //SEG278 [131] call div8u param-assignment [ test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ) - //SEG279 [64] phi from div8s::@4 to div8u [phi:div8s::@4->div8u] + //SEG397 [185] call div8u param-assignment [ test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ) + //SEG398 [118] phi from div8s::@4 to div8u [phi:div8s::@4->div8u] div8u_from_b4: - //SEG280 [64] phi (byte*) div8u::remainder#8 = &(byte) div8s::rem8u#0 [phi:div8s::@4->div8u#0] -- pbuz1=pbuc1 + //SEG399 [118] phi (byte*) div8u::remainder#8 = &(byte) div8s::rem8u#0 [phi:div8s::@4->div8u#0] -- pbuz1=pbuc1 lda #rem8u sta div8u.remainder+1 - //SEG281 [64] phi (byte) div8u::divisor#6 = (byte) div8u::divisor#0 [phi:div8s::@4->div8u#1] -- register_copy - //SEG282 [64] phi (byte) div8u::dividend#5 = (byte) div8u::dividend#1 [phi:div8s::@4->div8u#2] -- register_copy + //SEG400 [118] phi (byte) div8u::divisor#6 = (byte) div8u::divisor#0 [phi:div8s::@4->div8u#1] -- register_copy + //SEG401 [118] phi (byte) div8u::dividend#5 = (byte) div8u::dividend#1 [phi:div8s::@4->div8u#2] -- register_copy jsr div8u - //SEG283 [132] (byte) div8u::return#2 ← (byte) div8u::return#0 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ) -- vbuz1=vbuz2 + //SEG402 [186] (byte) div8u::return#2 ← (byte) div8u::return#0 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ) -- vbuz1=vbuz2 lda div8u.return sta div8u.return_2 jmp b15 - //SEG284 div8s::@15 + //SEG403 div8s::@15 b15: - //SEG285 [133] (byte) div8s::resultb#0 ← (byte) div8u::return#2 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ) -- vbuz1=vbuz2 + //SEG404 [187] (byte) div8s::resultb#0 ← (byte) div8u::return#2 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ) -- vbuz1=vbuz2 lda div8u.return_2 sta resultb - //SEG286 [134] if((byte) div8s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@5 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ) -- vbuz1_neq_0_then_la1 + //SEG405 [188] if((byte) div8s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@5 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ) -- vbuz1_neq_0_then_la1 lda neg bne b5 jmp b18 - //SEG287 div8s::@18 + //SEG406 div8s::@18 b18: - //SEG288 [135] (signed byte~) div8s::return#6 ← (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ) -- vbsz1=vbsz2 + //SEG407 [189] (signed byte~) div8s::return#6 ← (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ) -- vbsz1=vbsz2 lda resultb sta return - //SEG289 [136] (signed byte~) rem8s#30 ← (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#30 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#30 ] ) -- vbsz1=vbsz2 + //SEG408 [190] (signed byte~) rem8s#32 ← (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#32 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#32 ] ) -- vbsz1=vbsz2 lda rem8u sta rem8s - //SEG290 [137] phi from div8s::@18 div8s::@5 to div8s::@return [phi:div8s::@18/div8s::@5->div8s::@return] + //SEG409 [191] phi from div8s::@18 div8s::@5 to div8s::@return [phi:div8s::@18/div8s::@5->div8s::@return] breturn_from_b18: breturn_from_b5: - //SEG291 [137] phi (signed byte) rem8s#3 = (signed byte~) rem8s#30 [phi:div8s::@18/div8s::@5->div8s::@return#0] -- register_copy - //SEG292 [137] phi (signed byte) div8s::return#2 = (signed byte~) div8s::return#6 [phi:div8s::@18/div8s::@5->div8s::@return#1] -- register_copy + //SEG410 [191] phi (signed byte) rem8s#3 = (signed byte~) rem8s#32 [phi:div8s::@18/div8s::@5->div8s::@return#0] -- register_copy + //SEG411 [191] phi (signed byte) div8s::return#2 = (signed byte~) div8s::return#6 [phi:div8s::@18/div8s::@5->div8s::@return#1] -- register_copy jmp breturn - //SEG293 div8s::@return + //SEG412 div8s::@return breturn: - //SEG294 [138] return [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) + //SEG413 [192] return [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) rts - //SEG295 div8s::@5 + //SEG414 div8s::@5 b5: - //SEG296 [139] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) -- vbsz1=_neg_vbsz2 + //SEG415 [193] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) -- vbsz1=_neg_vbsz2 lda rem8u eor #$ff clc adc #1 sta rem8s - //SEG297 [140] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) -- vbsz1=_neg_vbsz2 + //SEG416 [194] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) -- vbsz1=_neg_vbsz2 lda resultb eor #$ff clc adc #1 sta return jmp breturn_from_b5 - //SEG298 div8s::@17 + //SEG417 div8s::@17 b17: - //SEG299 [141] (byte~) div8s::divisorb#4 ← (byte)(signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ) -- vbuz1=vbuz2 + //SEG418 [195] (byte~) div8s::divisorb#4 ← (byte)(signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ) -- vbuz1=vbuz2 lda divisor sta divisorb jmp b4_from_b17 - //SEG300 div8s::@16 + //SEG419 div8s::@16 b16: - //SEG301 [142] (byte~) div8s::dividendb#7 ← (byte)(signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ) -- vbuz1=vbuz2 + //SEG420 [196] (byte~) div8s::dividendb#7 ← (byte)(signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ) -- vbuz1=vbuz2 lda dividend sta dividendb - //SEG302 [122] phi from div8s::@16 to div8s::@2 [phi:div8s::@16->div8s::@2] + //SEG421 [176] phi from div8s::@16 to div8s::@2 [phi:div8s::@16->div8s::@2] b2_from_b16: - //SEG303 [122] phi (byte) div8s::dividendb#3 = (byte~) div8s::dividendb#7 [phi:div8s::@16->div8s::@2#0] -- register_copy - //SEG304 [122] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8s::@16->div8s::@2#1] -- vbuz1=vbuc1 + //SEG422 [176] phi (byte) div8s::dividendb#3 = (byte~) div8s::dividendb#7 [phi:div8s::@16->div8s::@2#0] -- register_copy + //SEG423 [176] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8s::@16->div8s::@2#1] -- vbuz1=vbuc1 lda #0 sta neg jmp b2 } -//SEG305 print_cls +//SEG424 print_cls print_cls: { - .label sc = $19 - //SEG306 [144] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] + .label sc = $23 + //SEG425 [198] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] b1_from_print_cls: - //SEG307 [144] phi (byte*) print_cls::sc#2 = (const byte*) SCREEN#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 + //SEG426 [198] phi (byte*) print_cls::sc#2 = (const byte*) SCREEN#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 lda #SCREEN sta sc+1 jmp b1 - //SEG308 [144] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] + //SEG427 [198] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] b1_from_b1: - //SEG309 [144] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy + //SEG428 [198] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy jmp b1 - //SEG310 print_cls::@1 + //SEG429 print_cls::@1 b1: - //SEG311 [145] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 + //SEG430 [199] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG312 [146] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG431 [200] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 !: - //SEG313 [147] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) -- pbuz1_neq_pbuc1_then_la1 + //SEG432 [201] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) -- pbuz1_neq_pbuc1_then_la1 lda sc+1 cmp #>SCREEN+$3e8 bne b1_from_b1 @@ -4914,217 +6281,286 @@ print_cls: { cmp #> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#5 char_cursor#78 print_byte::$0 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:36 [ test_8s::divisor#0 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:40 [ test_8s::res#0 ] -Statement [49] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#11 print_byte::$2 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] ) always clobbers reg byte a -Statement [54] *((byte*) char_cursor#48) ← (byte) print_char::ch#3 [ char_cursor#48 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] ) always clobbers reg byte y -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:27 [ test_8u::rem#0 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:2 [ test_8u::i#10 test_8u::i#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:29 [ test_8u::divisor#0 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:31 [ test_8u::res#0 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:43 [ div8s::rem8u#0 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:5 [ print_byte::b#5 print_byte::b#7 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:18 [ test_8s::i#10 test_8s::i#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:19 [ rem8s#18 rem8s#3 rem8s#30 rem8s#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:36 [ test_8s::divisor#0 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:40 [ test_8s::res#0 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:20 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] -Statement [59] if(*((byte*) print_str::str#7)!=(byte) '@') goto print_str::@2 [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) always clobbers reg byte a reg byte y -Statement [61] *((byte*) char_cursor#2) ← *((byte*) print_str::str#7) [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) always clobbers reg byte a reg byte y -Statement [67] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:28 [ test_8u::dividend#0 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:11 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:15 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:16 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:17 [ div8u::i#2 div8u::i#1 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:14 [ div8u::rem#4 div8u::rem#8 div8u::rem#5 div8u::rem#1 div8u::rem#2 div8u::rem#3 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:35 [ test_8s::dividend#0 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:23 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] -Statement [75] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) always clobbers reg byte a -Statement [79] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) always clobbers reg byte a reg byte y -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:28 [ test_8u::dividend#0 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:16 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:35 [ test_8s::dividend#0 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:23 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] -Statement [83] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ) always clobbers reg byte a -Statement [84] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ) always clobbers reg byte a -Statement [109] (byte*~) char_cursor#100 ← (byte*) line_cursor#1 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ) always clobbers reg byte a -Statement [114] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#11 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [120] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:38 [ div8s::divisor#0 ] -Statement [124] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:21 [ div8s::dividendb#3 div8s::dividendb#7 div8s::dividendb#8 ] -Statement [125] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:42 [ div8s::$7 ] -Statement [139] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:45 [ div8s::resultb#0 ] -Statement [140] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) always clobbers reg byte a -Statement [145] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) always clobbers reg byte a reg byte y -Statement [147] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) always clobbers reg byte a -Statement [13] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 line_cursor#1 div8s::rem8u#0 ] ) always clobbers reg byte a -Statement [14] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 div8s::rem8u#0 ] ) always clobbers reg byte a -Statement [21] (byte*~) char_cursor#91 ← (byte*) line_cursor#1 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 char_cursor#91 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 char_cursor#91 line_cursor#1 div8s::rem8u#0 ] ) always clobbers reg byte a -Statement [42] (byte*) line_cursor#1 ← (byte*) line_cursor#14 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#11 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] ) always clobbers reg byte a -Statement [43] if((byte*) line_cursor#1<(byte*) char_cursor#11) goto print_ln::@1 [ line_cursor#1 char_cursor#11 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] ) always clobbers reg byte a -Statement [46] (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#5 char_cursor#78 print_byte::$0 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] ) always clobbers reg byte a -Statement [49] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#11 print_byte::$2 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] ) always clobbers reg byte a -Statement [54] *((byte*) char_cursor#48) ← (byte) print_char::ch#3 [ char_cursor#48 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] ) always clobbers reg byte y -Statement [59] if(*((byte*) print_str::str#7)!=(byte) '@') goto print_str::@2 [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) always clobbers reg byte a reg byte y -Statement [61] *((byte*) char_cursor#2) ← *((byte*) print_str::str#7) [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) always clobbers reg byte a reg byte y -Statement [67] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) always clobbers reg byte a -Statement [75] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) always clobbers reg byte a -Statement [79] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) always clobbers reg byte a reg byte y -Statement [83] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ) always clobbers reg byte a -Statement [84] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ) always clobbers reg byte a -Statement [109] (byte*~) char_cursor#100 ← (byte*) line_cursor#1 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ) always clobbers reg byte a -Statement [114] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#11 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [120] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) always clobbers reg byte a -Statement [124] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) always clobbers reg byte a -Statement [125] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) always clobbers reg byte a -Statement [139] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) always clobbers reg byte a -Statement [140] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) always clobbers reg byte a -Statement [145] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) always clobbers reg byte a reg byte y -Statement [147] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) always clobbers reg byte a -Potential registers zp ZP_BYTE:2 [ test_8u::i#10 test_8u::i#1 ] : zp ZP_BYTE:2 , reg byte x , -Potential registers zp ZP_WORD:3 [ line_cursor#14 line_cursor#27 line_cursor#30 line_cursor#1 ] : zp ZP_WORD:3 , -Potential registers zp ZP_BYTE:5 [ print_byte::b#5 print_byte::b#7 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 ] : zp ZP_BYTE:5 , reg byte x , -Potential registers zp ZP_BYTE:6 [ print_char::ch#3 print_char::ch#1 print_char::ch#2 ] : zp ZP_BYTE:6 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:7 [ char_cursor#48 char_cursor#78 char_cursor#76 char_cursor#91 char_cursor#2 char_cursor#11 char_cursor#77 char_cursor#1 char_cursor#81 char_cursor#100 ] : zp ZP_WORD:7 , -Potential registers zp ZP_WORD:9 [ print_str::str#7 print_str::str#9 print_str::str#0 ] : zp ZP_WORD:9 , -Potential registers zp ZP_BYTE:11 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] : zp ZP_BYTE:11 , reg byte x , reg byte y , -Potential registers zp ZP_WORD:12 [ div8u::remainder#8 ] : zp ZP_WORD:12 , -Potential registers zp ZP_BYTE:14 [ div8u::rem#4 div8u::rem#8 div8u::rem#5 div8u::rem#1 div8u::rem#2 div8u::rem#3 ] : zp ZP_BYTE:14 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:15 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] : zp ZP_BYTE:15 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:16 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] : zp ZP_BYTE:16 , reg byte x , -Potential registers zp ZP_BYTE:17 [ div8u::i#2 div8u::i#1 ] : zp ZP_BYTE:17 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:18 [ test_8s::i#10 test_8s::i#1 ] : zp ZP_BYTE:18 , reg byte x , -Potential registers zp ZP_BYTE:19 [ rem8s#18 rem8s#3 rem8s#30 rem8s#1 ] : zp ZP_BYTE:19 , reg byte x , -Potential registers zp ZP_BYTE:20 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] : zp ZP_BYTE:20 , reg byte a , reg byte x , -Potential registers zp ZP_BYTE:21 [ div8s::dividendb#3 div8s::dividendb#7 div8s::dividendb#8 ] : zp ZP_BYTE:21 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:22 [ div8s::divisorb#3 div8s::divisorb#4 div8s::divisorb#5 ] : zp ZP_BYTE:22 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:23 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] : zp ZP_BYTE:23 , reg byte x , -Potential registers zp ZP_BYTE:24 [ div8s::return#2 div8s::return#6 div8s::return#0 ] : zp ZP_BYTE:24 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:25 [ print_cls::sc#2 print_cls::sc#1 ] : zp ZP_WORD:25 , -Potential registers zp ZP_BYTE:27 [ test_8u::rem#0 ] : zp ZP_BYTE:27 , reg byte x , -Potential registers zp ZP_BYTE:28 [ test_8u::dividend#0 ] : zp ZP_BYTE:28 , reg byte x , -Potential registers zp ZP_BYTE:29 [ test_8u::divisor#0 ] : zp ZP_BYTE:29 , reg byte x , -Potential registers zp ZP_BYTE:30 [ div8u::return#3 ] : zp ZP_BYTE:30 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:31 [ test_8u::res#0 ] : zp ZP_BYTE:31 , reg byte x , -Potential registers zp ZP_BYTE:32 [ print_byte::$0 ] : zp ZP_BYTE:32 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:33 [ print_byte::$2 ] : zp ZP_BYTE:33 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:34 [ div8u::$1 ] : zp ZP_BYTE:34 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:35 [ test_8s::dividend#0 ] : zp ZP_BYTE:35 , reg byte x , -Potential registers zp ZP_BYTE:36 [ test_8s::divisor#0 ] : zp ZP_BYTE:36 , reg byte x , -Potential registers zp ZP_BYTE:37 [ div8s::dividend#0 ] : zp ZP_BYTE:37 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:38 [ div8s::divisor#0 ] : zp ZP_BYTE:38 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:39 [ div8s::return#3 ] : zp ZP_BYTE:39 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:40 [ test_8s::res#0 ] : zp ZP_BYTE:40 , reg byte x , -Potential registers zp ZP_BYTE:41 [ div8s::$2 ] : zp ZP_BYTE:41 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:42 [ div8s::$7 ] : zp ZP_BYTE:42 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:43 [ div8s::rem8u#0 ] : zp ZP_BYTE:43 , reg byte x , -Potential registers zp ZP_BYTE:44 [ div8u::return#2 ] : zp ZP_BYTE:44 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:45 [ div8s::resultb#0 ] : zp ZP_BYTE:45 , reg byte x , reg byte y , +Statement [15] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) [ test_16u::i#10 test_16u::dividend#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 line_cursor#1 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ test_16u::i#10 test_16u::i#1 ] +Statement [16] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [17] (word) div16u::dividend#1 ← (word) test_16u::dividend#0 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 line_cursor#1 ] ) always clobbers reg byte a +Statement [18] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 div16u::divisor#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 div16u::divisor#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [20] (word) div16u::return#2 ← (word) div16u::return#0 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 line_cursor#1 ] ) always clobbers reg byte a +Statement [21] (word) test_16u::res#0 ← (word) div16u::return#2 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [22] (word) print_word::w#0 ← (word) test_16u::dividend#0 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [23] (byte*~) char_cursor#121 ← (byte*) line_cursor#1 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 char_cursor#121 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 char_cursor#121 line_cursor#1 ] ) always clobbers reg byte a +Statement [27] (word) print_word::w#1 ← (word) test_16u::divisor#0 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#1 char_cursor#100 ] ) always clobbers reg byte a +Statement [31] (word) print_word::w#2 ← (word) test_16u::res#0 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#2 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#2 char_cursor#100 ] ) always clobbers reg byte a +Statement [35] (word) print_word::w#3 ← (word) div16u::rem#8 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#3 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#3 char_cursor#100 ] ) always clobbers reg byte a +Statement [39] (byte) test_16u::i#1 ← (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ) always clobbers reg byte a +Statement [44] (byte*) line_cursor#1 ← (byte*) line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:51 [ test_8u::rem#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:20 [ test_8u::i#10 test_8u::i#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:65 [ div8s::rem8u#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:28 [ test_8s::i#10 test_8s::i#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:29 [ rem8s#18 rem8s#3 rem8s#32 rem8s#1 ] +Statement [45] if((byte*) line_cursor#1<(byte*) char_cursor#14) goto print_ln::@1 [ line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] ) always clobbers reg byte a +Statement [48] (byte) print_byte::b#1 ← > (word) print_word::w#4 [ print_word::w#4 char_cursor#104 print_byte::b#1 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] ) always clobbers reg byte a +Statement [50] (byte) print_byte::b#2 ← < (word) print_word::w#4 [ char_cursor#14 print_byte::b#2 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] ) always clobbers reg byte a +Statement [57] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#14 print_byte::$2 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:53 [ test_8u::divisor#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:55 [ test_8u::res#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:58 [ test_8s::divisor#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:62 [ test_8s::res#0 ] +Statement [62] *((byte*) char_cursor#64) ← (byte) print_char::ch#3 [ char_cursor#64 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] ) always clobbers reg byte y +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:2 [ test_16u::i#10 test_16u::i#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:51 [ test_8u::rem#0 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:20 [ test_8u::i#10 test_8u::i#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:53 [ test_8u::divisor#0 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:55 [ test_8u::res#0 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:65 [ div8s::rem8u#0 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:28 [ test_8s::i#10 test_8s::i#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:29 [ rem8s#18 rem8s#3 rem8s#32 rem8s#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:58 [ test_8s::divisor#0 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:62 [ test_8s::res#0 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:30 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] +Statement [67] if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) always clobbers reg byte a reg byte y +Statement [69] *((byte*) char_cursor#100) ← *((byte*) print_str::str#10) [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) always clobbers reg byte a reg byte y +Statement [75] (byte~) div16u::$1 ← > (word) div16u::dividend#2 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:19 [ div16u::i#2 div16u::i#1 ] +Statement [76] (byte~) div16u::$2 ← (byte~) div16u::$1 & (byte/word/signed word/dword/signed dword) 128 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ) always clobbers reg byte a +Statement [82] if((word) div16u::rem#5<(word) div16u::divisor#0) goto div16u::@3 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ) always clobbers reg byte a +Statement [84] (word) div16u::rem#3 ← (word) div16u::rem#5 - (word) div16u::divisor#0 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ) always clobbers reg byte a +Statement [92] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:52 [ test_8u::dividend#0 ] +Statement [99] (byte*~) char_cursor#128 ← (byte*) line_cursor#1 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] +Statement [121] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:21 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:25 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:26 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:27 [ div8u::i#2 div8u::i#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:24 [ div8u::rem#4 div8u::rem#8 div8u::rem#5 div8u::rem#1 div8u::rem#2 div8u::rem#3 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:57 [ test_8s::dividend#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:33 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] +Statement [129] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) always clobbers reg byte a +Statement [133] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) always clobbers reg byte a reg byte y +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:52 [ test_8u::dividend#0 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:26 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:57 [ test_8s::dividend#0 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:33 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] +Statement [137] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ) always clobbers reg byte a +Statement [138] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ) always clobbers reg byte a +Statement [163] (byte*~) char_cursor#137 ← (byte*) line_cursor#1 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ) always clobbers reg byte a +Statement [168] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#14 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [174] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:60 [ div8s::divisor#0 ] +Statement [178] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:31 [ div8s::dividendb#3 div8s::dividendb#7 div8s::dividendb#8 ] +Statement [179] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:64 [ div8s::$7 ] +Statement [193] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:67 [ div8s::resultb#0 ] +Statement [194] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) always clobbers reg byte a +Statement [199] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [201] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) always clobbers reg byte a +Statement [15] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) [ test_16u::i#10 test_16u::dividend#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [16] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [17] (word) div16u::dividend#1 ← (word) test_16u::dividend#0 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 line_cursor#1 ] ) always clobbers reg byte a +Statement [18] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 div16u::divisor#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 div16u::divisor#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [20] (word) div16u::return#2 ← (word) div16u::return#0 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 line_cursor#1 ] ) always clobbers reg byte a +Statement [21] (word) test_16u::res#0 ← (word) div16u::return#2 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [22] (word) print_word::w#0 ← (word) test_16u::dividend#0 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [23] (byte*~) char_cursor#121 ← (byte*) line_cursor#1 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 char_cursor#121 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 char_cursor#121 line_cursor#1 ] ) always clobbers reg byte a +Statement [27] (word) print_word::w#1 ← (word) test_16u::divisor#0 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#1 char_cursor#100 ] ) always clobbers reg byte a +Statement [31] (word) print_word::w#2 ← (word) test_16u::res#0 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#2 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#2 char_cursor#100 ] ) always clobbers reg byte a +Statement [35] (word) print_word::w#3 ← (word) div16u::rem#8 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#3 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#3 char_cursor#100 ] ) always clobbers reg byte a +Statement [39] (byte) test_16u::i#1 ← (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ) always clobbers reg byte a +Statement [44] (byte*) line_cursor#1 ← (byte*) line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] ) always clobbers reg byte a +Statement [45] if((byte*) line_cursor#1<(byte*) char_cursor#14) goto print_ln::@1 [ line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] ) always clobbers reg byte a +Statement [48] (byte) print_byte::b#1 ← > (word) print_word::w#4 [ print_word::w#4 char_cursor#104 print_byte::b#1 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] ) always clobbers reg byte a +Statement [50] (byte) print_byte::b#2 ← < (word) print_word::w#4 [ char_cursor#14 print_byte::b#2 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] ) always clobbers reg byte a +Statement [54] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 char_cursor#105 print_byte::$0 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] ) always clobbers reg byte a +Statement [57] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#14 print_byte::$2 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] ) always clobbers reg byte a +Statement [62] *((byte*) char_cursor#64) ← (byte) print_char::ch#3 [ char_cursor#64 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] ) always clobbers reg byte y +Statement [67] if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) always clobbers reg byte a reg byte y +Statement [69] *((byte*) char_cursor#100) ← *((byte*) print_str::str#10) [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) always clobbers reg byte a reg byte y +Statement [75] (byte~) div16u::$1 ← > (word) div16u::dividend#2 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ) always clobbers reg byte a +Statement [76] (byte~) div16u::$2 ← (byte~) div16u::$1 & (byte/word/signed word/dword/signed dword) 128 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ) always clobbers reg byte a +Statement [82] if((word) div16u::rem#5<(word) div16u::divisor#0) goto div16u::@3 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ) always clobbers reg byte a +Statement [84] (word) div16u::rem#3 ← (word) div16u::rem#5 - (word) div16u::divisor#0 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ) always clobbers reg byte a +Statement [91] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 div8s::rem8u#0 ] ) always clobbers reg byte a +Statement [92] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ) always clobbers reg byte a +Statement [99] (byte*~) char_cursor#128 ← (byte*) line_cursor#1 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) always clobbers reg byte a +Statement [121] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) always clobbers reg byte a +Statement [129] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) always clobbers reg byte a +Statement [133] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) always clobbers reg byte a reg byte y +Statement [137] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ) always clobbers reg byte a +Statement [138] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ) always clobbers reg byte a +Statement [163] (byte*~) char_cursor#137 ← (byte*) line_cursor#1 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ) always clobbers reg byte a +Statement [168] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#14 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [174] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) always clobbers reg byte a +Statement [178] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) always clobbers reg byte a +Statement [179] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) always clobbers reg byte a +Statement [193] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) always clobbers reg byte a +Statement [194] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) always clobbers reg byte a +Statement [199] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [201] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) always clobbers reg byte a +Potential registers zp ZP_BYTE:2 [ test_16u::i#10 test_16u::i#1 ] : zp ZP_BYTE:2 , reg byte x , +Potential registers zp ZP_WORD:3 [ line_cursor#17 line_cursor#33 line_cursor#1 line_cursor#37 ] : zp ZP_WORD:3 , +Potential registers zp ZP_WORD:5 [ print_word::w#4 print_word::w#0 print_word::w#1 print_word::w#2 print_word::w#3 ] : zp ZP_WORD:5 , +Potential registers zp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] : zp ZP_BYTE:7 , reg byte x , +Potential registers zp ZP_BYTE:8 [ print_char::ch#3 print_char::ch#1 print_char::ch#2 ] : zp ZP_BYTE:8 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_WORD:9 [ char_cursor#64 char_cursor#105 char_cursor#102 char_cursor#104 char_cursor#121 char_cursor#100 char_cursor#14 char_cursor#128 char_cursor#103 char_cursor#1 char_cursor#109 char_cursor#137 ] : zp ZP_WORD:9 , +Potential registers zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 ] : zp ZP_WORD:11 , +Potential registers zp ZP_WORD:13 [ div16u::rem#4 rem16u#16 div16u::rem#8 div16u::rem#5 div16u::rem#1 div16u::rem#2 div16u::rem#3 ] : zp ZP_WORD:13 , +Potential registers zp ZP_WORD:15 [ div16u::dividend#2 div16u::dividend#1 div16u::dividend#0 ] : zp ZP_WORD:15 , +Potential registers zp ZP_WORD:17 [ div16u::quotient#3 div16u::return#0 div16u::quotient#1 div16u::quotient#2 ] : zp ZP_WORD:17 , +Potential registers zp ZP_BYTE:19 [ div16u::i#2 div16u::i#1 ] : zp ZP_BYTE:19 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:20 [ test_8u::i#10 test_8u::i#1 ] : zp ZP_BYTE:20 , reg byte x , +Potential registers zp ZP_BYTE:21 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] : zp ZP_BYTE:21 , reg byte x , reg byte y , +Potential registers zp ZP_WORD:22 [ div8u::remainder#8 ] : zp ZP_WORD:22 , +Potential registers zp ZP_BYTE:24 [ div8u::rem#4 div8u::rem#8 div8u::rem#5 div8u::rem#1 div8u::rem#2 div8u::rem#3 ] : zp ZP_BYTE:24 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:25 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] : zp ZP_BYTE:25 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:26 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] : zp ZP_BYTE:26 , reg byte x , +Potential registers zp ZP_BYTE:27 [ div8u::i#2 div8u::i#1 ] : zp ZP_BYTE:27 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:28 [ test_8s::i#10 test_8s::i#1 ] : zp ZP_BYTE:28 , reg byte x , +Potential registers zp ZP_BYTE:29 [ rem8s#18 rem8s#3 rem8s#32 rem8s#1 ] : zp ZP_BYTE:29 , reg byte x , +Potential registers zp ZP_BYTE:30 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] : zp ZP_BYTE:30 , reg byte a , reg byte x , +Potential registers zp ZP_BYTE:31 [ div8s::dividendb#3 div8s::dividendb#7 div8s::dividendb#8 ] : zp ZP_BYTE:31 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:32 [ div8s::divisorb#3 div8s::divisorb#4 div8s::divisorb#5 ] : zp ZP_BYTE:32 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:33 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] : zp ZP_BYTE:33 , reg byte x , +Potential registers zp ZP_BYTE:34 [ div8s::return#2 div8s::return#6 div8s::return#0 ] : zp ZP_BYTE:34 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_WORD:35 [ print_cls::sc#2 print_cls::sc#1 ] : zp ZP_WORD:35 , +Potential registers zp ZP_WORD:37 [ test_16u::dividend#0 ] : zp ZP_WORD:37 , +Potential registers zp ZP_WORD:39 [ test_16u::divisor#0 ] : zp ZP_WORD:39 , +Potential registers zp ZP_WORD:41 [ div16u::divisor#0 ] : zp ZP_WORD:41 , +Potential registers zp ZP_WORD:43 [ div16u::return#2 ] : zp ZP_WORD:43 , +Potential registers zp ZP_WORD:45 [ test_16u::res#0 ] : zp ZP_WORD:45 , +Potential registers zp ZP_BYTE:47 [ print_byte::$0 ] : zp ZP_BYTE:47 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:48 [ print_byte::$2 ] : zp ZP_BYTE:48 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:49 [ div16u::$1 ] : zp ZP_BYTE:49 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:50 [ div16u::$2 ] : zp ZP_BYTE:50 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:51 [ test_8u::rem#0 ] : zp ZP_BYTE:51 , reg byte x , +Potential registers zp ZP_BYTE:52 [ test_8u::dividend#0 ] : zp ZP_BYTE:52 , reg byte x , +Potential registers zp ZP_BYTE:53 [ test_8u::divisor#0 ] : zp ZP_BYTE:53 , reg byte x , +Potential registers zp ZP_BYTE:54 [ div8u::return#3 ] : zp ZP_BYTE:54 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:55 [ test_8u::res#0 ] : zp ZP_BYTE:55 , reg byte x , +Potential registers zp ZP_BYTE:56 [ div8u::$1 ] : zp ZP_BYTE:56 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:57 [ test_8s::dividend#0 ] : zp ZP_BYTE:57 , reg byte x , +Potential registers zp ZP_BYTE:58 [ test_8s::divisor#0 ] : zp ZP_BYTE:58 , reg byte x , +Potential registers zp ZP_BYTE:59 [ div8s::dividend#0 ] : zp ZP_BYTE:59 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:60 [ div8s::divisor#0 ] : zp ZP_BYTE:60 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:61 [ div8s::return#3 ] : zp ZP_BYTE:61 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:62 [ test_8s::res#0 ] : zp ZP_BYTE:62 , reg byte x , +Potential registers zp ZP_BYTE:63 [ div8s::$2 ] : zp ZP_BYTE:63 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:64 [ div8s::$7 ] : zp ZP_BYTE:64 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:65 [ div8s::rem8u#0 ] : zp ZP_BYTE:65 , reg byte x , +Potential registers zp ZP_BYTE:66 [ div8u::return#2 ] : zp ZP_BYTE:66 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:67 [ div8s::resultb#0 ] : zp ZP_BYTE:67 , reg byte x , reg byte y , REGISTER UPLIFT SCOPES -Uplift Scope [div8u] 909.67: zp ZP_BYTE:14 [ div8u::rem#4 div8u::rem#8 div8u::rem#5 div8u::rem#1 div8u::rem#2 div8u::rem#3 ] 326.5: zp ZP_BYTE:16 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] 202: zp ZP_BYTE:34 [ div8u::$1 ] 168.33: zp ZP_BYTE:17 [ div8u::i#2 div8u::i#1 ] 104.08: zp ZP_BYTE:15 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] 40.33: zp ZP_BYTE:11 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] 22: zp ZP_BYTE:30 [ div8u::return#3 ] 4: zp ZP_BYTE:44 [ div8u::return#2 ] 0.13: zp ZP_WORD:12 [ div8u::remainder#8 ] -Uplift Scope [] 238.09: zp ZP_WORD:3 [ line_cursor#14 line_cursor#27 line_cursor#30 line_cursor#1 ] 214.04: zp ZP_WORD:7 [ char_cursor#48 char_cursor#78 char_cursor#76 char_cursor#91 char_cursor#2 char_cursor#11 char_cursor#77 char_cursor#1 char_cursor#81 char_cursor#100 ] 117.08: zp ZP_BYTE:19 [ rem8s#18 rem8s#3 rem8s#30 rem8s#1 ] -Uplift Scope [print_str] 305.5: zp ZP_WORD:9 [ print_str::str#7 print_str::str#9 print_str::str#0 ] -Uplift Scope [print_sbyte] 108.5: zp ZP_BYTE:20 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] -Uplift Scope [print_byte] 93.5: zp ZP_BYTE:5 [ print_byte::b#5 print_byte::b#7 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 ] 4: zp ZP_BYTE:32 [ print_byte::$0 ] 4: zp ZP_BYTE:33 [ print_byte::$2 ] -Uplift Scope [div8s] 22: zp ZP_BYTE:39 [ div8s::return#3 ] 11: zp ZP_BYTE:24 [ div8s::return#2 div8s::return#6 div8s::return#0 ] 10: zp ZP_BYTE:22 [ div8s::divisorb#3 div8s::divisorb#4 div8s::divisorb#5 ] 8.75: zp ZP_BYTE:21 [ div8s::dividendb#3 div8s::dividendb#7 div8s::dividendb#8 ] 5: zp ZP_BYTE:37 [ div8s::dividend#0 ] 3.86: zp ZP_BYTE:23 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] 2.14: zp ZP_BYTE:38 [ div8s::divisor#0 ] 2: zp ZP_BYTE:41 [ div8s::$2 ] 1: zp ZP_BYTE:42 [ div8s::$7 ] 0.67: zp ZP_BYTE:45 [ div8s::resultb#0 ] 0.02: zp ZP_BYTE:43 [ div8s::rem8u#0 ] -Uplift Scope [print_cls] 33: zp ZP_WORD:25 [ print_cls::sc#2 print_cls::sc#1 ] -Uplift Scope [test_8u] 18.26: zp ZP_BYTE:2 [ test_8u::i#10 test_8u::i#1 ] 4.71: zp ZP_BYTE:28 [ test_8u::dividend#0 ] 3: zp ZP_BYTE:29 [ test_8u::divisor#0 ] 2.2: zp ZP_BYTE:31 [ test_8u::res#0 ] 0.13: zp ZP_BYTE:27 [ test_8u::rem#0 ] -Uplift Scope [test_8s] 12.83: zp ZP_BYTE:18 [ test_8s::i#10 test_8s::i#1 ] 4.71: zp ZP_BYTE:35 [ test_8s::dividend#0 ] 3.3: zp ZP_BYTE:36 [ test_8s::divisor#0 ] 2.44: zp ZP_BYTE:40 [ test_8s::res#0 ] -Uplift Scope [print_char] 14: zp ZP_BYTE:6 [ print_char::ch#3 print_char::ch#1 print_char::ch#2 ] +Uplift Scope [div16u] 905.25: zp ZP_WORD:13 [ div16u::rem#4 rem16u#16 div16u::rem#8 div16u::rem#5 div16u::rem#1 div16u::rem#2 div16u::rem#3 ] 340.55: zp ZP_WORD:17 [ div16u::quotient#3 div16u::return#0 div16u::quotient#1 div16u::quotient#2 ] 202: zp ZP_BYTE:49 [ div16u::$1 ] 202: zp ZP_BYTE:50 [ div16u::$2 ] 167.04: zp ZP_BYTE:19 [ div16u::i#2 div16u::i#1 ] 73.15: zp ZP_WORD:15 [ div16u::dividend#2 div16u::dividend#1 div16u::dividend#0 ] 22: zp ZP_WORD:43 [ div16u::return#2 ] 12.53: zp ZP_WORD:41 [ div16u::divisor#0 ] +Uplift Scope [div8u] 909.67: zp ZP_BYTE:24 [ div8u::rem#4 div8u::rem#8 div8u::rem#5 div8u::rem#1 div8u::rem#2 div8u::rem#3 ] 326.5: zp ZP_BYTE:26 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] 202: zp ZP_BYTE:56 [ div8u::$1 ] 168.33: zp ZP_BYTE:27 [ div8u::i#2 div8u::i#1 ] 104.08: zp ZP_BYTE:25 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] 40.33: zp ZP_BYTE:21 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] 22: zp ZP_BYTE:54 [ div8u::return#3 ] 4: zp ZP_BYTE:66 [ div8u::return#2 ] 0.13: zp ZP_WORD:22 [ div8u::remainder#8 ] +Uplift Scope [] 254.66: zp ZP_WORD:9 [ char_cursor#64 char_cursor#105 char_cursor#102 char_cursor#104 char_cursor#121 char_cursor#100 char_cursor#14 char_cursor#128 char_cursor#103 char_cursor#1 char_cursor#109 char_cursor#137 ] 245.3: zp ZP_WORD:3 [ line_cursor#17 line_cursor#33 line_cursor#1 line_cursor#37 ] 117.08: zp ZP_BYTE:29 [ rem8s#18 rem8s#3 rem8s#32 rem8s#1 ] +Uplift Scope [print_str] 305.5: zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 ] +Uplift Scope [print_byte] 102.5: zp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] 4: zp ZP_BYTE:47 [ print_byte::$0 ] 4: zp ZP_BYTE:48 [ print_byte::$2 ] +Uplift Scope [print_sbyte] 108.5: zp ZP_BYTE:30 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] +Uplift Scope [print_word] 93: zp ZP_WORD:5 [ print_word::w#4 print_word::w#0 print_word::w#1 print_word::w#2 print_word::w#3 ] +Uplift Scope [div8s] 22: zp ZP_BYTE:61 [ div8s::return#3 ] 11: zp ZP_BYTE:34 [ div8s::return#2 div8s::return#6 div8s::return#0 ] 10: zp ZP_BYTE:32 [ div8s::divisorb#3 div8s::divisorb#4 div8s::divisorb#5 ] 8.75: zp ZP_BYTE:31 [ div8s::dividendb#3 div8s::dividendb#7 div8s::dividendb#8 ] 5: zp ZP_BYTE:59 [ div8s::dividend#0 ] 3.86: zp ZP_BYTE:33 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] 2.14: zp ZP_BYTE:60 [ div8s::divisor#0 ] 2: zp ZP_BYTE:63 [ div8s::$2 ] 1: zp ZP_BYTE:64 [ div8s::$7 ] 0.67: zp ZP_BYTE:67 [ div8s::resultb#0 ] 0.02: zp ZP_BYTE:65 [ div8s::rem8u#0 ] +Uplift Scope [print_cls] 33: zp ZP_WORD:35 [ print_cls::sc#2 print_cls::sc#1 ] +Uplift Scope [test_8u] 18.26: zp ZP_BYTE:20 [ test_8u::i#10 test_8u::i#1 ] 4.71: zp ZP_BYTE:52 [ test_8u::dividend#0 ] 3: zp ZP_BYTE:53 [ test_8u::divisor#0 ] 2.2: zp ZP_BYTE:55 [ test_8u::res#0 ] 0.13: zp ZP_BYTE:51 [ test_8u::rem#0 ] +Uplift Scope [test_16u] 18.26: zp ZP_BYTE:2 [ test_16u::i#10 test_16u::i#1 ] 4.71: zp ZP_WORD:37 [ test_16u::dividend#0 ] 3: zp ZP_WORD:39 [ test_16u::divisor#0 ] 2.2: zp ZP_WORD:45 [ test_16u::res#0 ] +Uplift Scope [test_8s] 12.83: zp ZP_BYTE:28 [ test_8s::i#10 test_8s::i#1 ] 4.71: zp ZP_BYTE:57 [ test_8s::dividend#0 ] 3.3: zp ZP_BYTE:58 [ test_8s::divisor#0 ] 2.44: zp ZP_BYTE:62 [ test_8s::res#0 ] +Uplift Scope [print_char] 14: zp ZP_BYTE:8 [ print_char::ch#3 print_char::ch#1 print_char::ch#2 ] Uplift Scope [print_ln] Uplift Scope [main] +Uplifting [div16u] best 42589 combination zp ZP_WORD:13 [ div16u::rem#4 rem16u#16 div16u::rem#8 div16u::rem#5 div16u::rem#1 div16u::rem#2 div16u::rem#3 ] zp ZP_WORD:17 [ div16u::quotient#3 div16u::return#0 div16u::quotient#1 div16u::quotient#2 ] reg byte a [ div16u::$1 ] reg byte a [ div16u::$2 ] reg byte x [ div16u::i#2 div16u::i#1 ] zp ZP_WORD:15 [ div16u::dividend#2 div16u::dividend#1 div16u::dividend#0 ] zp ZP_WORD:43 [ div16u::return#2 ] zp ZP_WORD:41 [ div16u::divisor#0 ] Uplift attempts [div8u] 10000/10368 (limiting to 10000) -Uplifting [div8u] best 22714 combination reg byte y [ div8u::rem#4 div8u::rem#8 div8u::rem#5 div8u::rem#1 div8u::rem#2 div8u::rem#3 ] zp ZP_BYTE:16 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] reg byte a [ div8u::$1 ] reg byte x [ div8u::i#2 div8u::i#1 ] zp ZP_BYTE:15 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] zp ZP_BYTE:11 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] reg byte a [ div8u::return#3 ] reg byte a [ div8u::return#2 ] zp ZP_WORD:12 [ div8u::remainder#8 ] +Uplifting [div8u] best 40222 combination reg byte y [ div8u::rem#4 div8u::rem#8 div8u::rem#5 div8u::rem#1 div8u::rem#2 div8u::rem#3 ] zp ZP_BYTE:26 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] reg byte a [ div8u::$1 ] reg byte x [ div8u::i#2 div8u::i#1 ] zp ZP_BYTE:25 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] zp ZP_BYTE:21 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] reg byte a [ div8u::return#3 ] reg byte a [ div8u::return#2 ] zp ZP_WORD:22 [ div8u::remainder#8 ] Limited combination testing to 10000 combinations of 10368 possible. -Uplifting [] best 22670 combination zp ZP_WORD:3 [ line_cursor#14 line_cursor#27 line_cursor#30 line_cursor#1 ] zp ZP_WORD:7 [ char_cursor#48 char_cursor#78 char_cursor#76 char_cursor#91 char_cursor#2 char_cursor#11 char_cursor#77 char_cursor#1 char_cursor#81 char_cursor#100 ] reg byte x [ rem8s#18 rem8s#3 rem8s#30 rem8s#1 ] -Uplifting [print_str] best 22670 combination zp ZP_WORD:9 [ print_str::str#7 print_str::str#9 print_str::str#0 ] -Uplifting [print_sbyte] best 22670 combination zp ZP_BYTE:20 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] -Uplifting [print_byte] best 22662 combination zp ZP_BYTE:5 [ print_byte::b#5 print_byte::b#7 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 ] reg byte a [ print_byte::$0 ] reg byte a [ print_byte::$2 ] +Uplifting [] best 40178 combination zp ZP_WORD:9 [ char_cursor#64 char_cursor#105 char_cursor#102 char_cursor#104 char_cursor#121 char_cursor#100 char_cursor#14 char_cursor#128 char_cursor#103 char_cursor#1 char_cursor#109 char_cursor#137 ] zp ZP_WORD:3 [ line_cursor#17 line_cursor#33 line_cursor#1 line_cursor#37 ] reg byte x [ rem8s#18 rem8s#3 rem8s#32 rem8s#1 ] +Uplifting [print_str] best 40178 combination zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 ] +Uplifting [print_byte] best 40170 combination zp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] reg byte a [ print_byte::$0 ] reg byte a [ print_byte::$2 ] +Uplifting [print_sbyte] best 40170 combination zp ZP_BYTE:30 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] +Uplifting [print_word] best 40170 combination zp ZP_WORD:5 [ print_word::w#4 print_word::w#0 print_word::w#1 print_word::w#2 print_word::w#3 ] Uplift attempts [div8s] 10000/331776 (limiting to 10000) -Uplifting [div8s] best 22470 combination reg byte a [ div8s::return#3 ] reg byte a [ div8s::return#2 div8s::return#6 div8s::return#0 ] reg byte x [ div8s::divisorb#3 div8s::divisorb#4 div8s::divisorb#5 ] reg byte y [ div8s::dividendb#3 div8s::dividendb#7 div8s::dividendb#8 ] reg byte a [ div8s::dividend#0 ] zp ZP_BYTE:23 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] reg byte x [ div8s::divisor#0 ] reg byte a [ div8s::$2 ] zp ZP_BYTE:42 [ div8s::$7 ] zp ZP_BYTE:45 [ div8s::resultb#0 ] zp ZP_BYTE:43 [ div8s::rem8u#0 ] +Uplifting [div8s] best 39978 combination reg byte a [ div8s::return#3 ] reg byte a [ div8s::return#2 div8s::return#6 div8s::return#0 ] reg byte x [ div8s::divisorb#3 div8s::divisorb#4 div8s::divisorb#5 ] reg byte y [ div8s::dividendb#3 div8s::dividendb#7 div8s::dividendb#8 ] reg byte a [ div8s::dividend#0 ] zp ZP_BYTE:33 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] reg byte x [ div8s::divisor#0 ] reg byte a [ div8s::$2 ] zp ZP_BYTE:64 [ div8s::$7 ] zp ZP_BYTE:67 [ div8s::resultb#0 ] zp ZP_BYTE:65 [ div8s::rem8u#0 ] Limited combination testing to 10000 combinations of 331776 possible. -Uplifting [print_cls] best 22470 combination zp ZP_WORD:25 [ print_cls::sc#2 print_cls::sc#1 ] -Uplifting [test_8u] best 22430 combination zp ZP_BYTE:2 [ test_8u::i#10 test_8u::i#1 ] zp ZP_BYTE:28 [ test_8u::dividend#0 ] zp ZP_BYTE:29 [ test_8u::divisor#0 ] reg byte x [ test_8u::res#0 ] zp ZP_BYTE:27 [ test_8u::rem#0 ] -Uplifting [test_8s] best 22430 combination zp ZP_BYTE:18 [ test_8s::i#10 test_8s::i#1 ] zp ZP_BYTE:35 [ test_8s::dividend#0 ] zp ZP_BYTE:36 [ test_8s::divisor#0 ] zp ZP_BYTE:40 [ test_8s::res#0 ] -Uplifting [print_char] best 22418 combination reg byte a [ print_char::ch#3 print_char::ch#1 print_char::ch#2 ] -Uplifting [print_ln] best 22418 combination -Uplifting [main] best 22418 combination -Attempting to uplift remaining variables inzp ZP_BYTE:16 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] -Uplifting [div8u] best 22418 combination zp ZP_BYTE:16 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] -Attempting to uplift remaining variables inzp ZP_BYTE:20 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] -Uplifting [print_sbyte] best 22418 combination zp ZP_BYTE:20 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:15 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] -Uplifting [div8u] best 22418 combination zp ZP_BYTE:15 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:5 [ print_byte::b#5 print_byte::b#7 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 ] -Uplifting [print_byte] best 22418 combination zp ZP_BYTE:5 [ print_byte::b#5 print_byte::b#7 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 ] -Attempting to uplift remaining variables inzp ZP_BYTE:11 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] -Uplifting [div8u] best 22418 combination zp ZP_BYTE:11 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:2 [ test_8u::i#10 test_8u::i#1 ] -Uplifting [test_8u] best 22418 combination zp ZP_BYTE:2 [ test_8u::i#10 test_8u::i#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:18 [ test_8s::i#10 test_8s::i#1 ] -Uplifting [test_8s] best 22418 combination zp ZP_BYTE:18 [ test_8s::i#10 test_8s::i#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:28 [ test_8u::dividend#0 ] -Uplifting [test_8u] best 22418 combination zp ZP_BYTE:28 [ test_8u::dividend#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:35 [ test_8s::dividend#0 ] -Uplifting [test_8s] best 22418 combination zp ZP_BYTE:35 [ test_8s::dividend#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:23 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] -Uplifting [div8s] best 22418 combination zp ZP_BYTE:23 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] -Attempting to uplift remaining variables inzp ZP_BYTE:36 [ test_8s::divisor#0 ] -Uplifting [test_8s] best 22418 combination zp ZP_BYTE:36 [ test_8s::divisor#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:29 [ test_8u::divisor#0 ] -Uplifting [test_8u] best 22418 combination zp ZP_BYTE:29 [ test_8u::divisor#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:40 [ test_8s::res#0 ] -Uplifting [test_8s] best 22418 combination zp ZP_BYTE:40 [ test_8s::res#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:42 [ div8s::$7 ] -Uplifting [div8s] best 22414 combination reg byte x [ div8s::$7 ] -Attempting to uplift remaining variables inzp ZP_BYTE:45 [ div8s::resultb#0 ] -Uplifting [div8s] best 22411 combination reg byte y [ div8s::resultb#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:27 [ test_8u::rem#0 ] -Uplifting [test_8u] best 22411 combination zp ZP_BYTE:27 [ test_8u::rem#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:43 [ div8s::rem8u#0 ] -Uplifting [div8s] best 22411 combination zp ZP_BYTE:43 [ div8s::rem8u#0 ] -Coalescing zero page register [ zp ZP_BYTE:5 [ print_byte::b#5 print_byte::b#7 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 ] ] with [ zp ZP_BYTE:20 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:5 [ print_byte::b#5 print_byte::b#7 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] ] with [ zp ZP_BYTE:28 [ test_8u::dividend#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:5 [ print_byte::b#5 print_byte::b#7 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 test_8u::dividend#0 ] ] with [ zp ZP_BYTE:35 [ test_8s::dividend#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:11 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] ] with [ zp ZP_BYTE:29 [ test_8u::divisor#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:2 [ test_8u::i#10 test_8u::i#1 ] ] with [ zp ZP_BYTE:18 [ test_8s::i#10 test_8s::i#1 ] ] -Coalescing zero page register [ zp ZP_WORD:3 [ line_cursor#14 line_cursor#27 line_cursor#30 line_cursor#1 ] ] with [ zp ZP_WORD:25 [ print_cls::sc#2 print_cls::sc#1 ] ] -Coalescing zero page register [ zp ZP_WORD:9 [ print_str::str#7 print_str::str#9 print_str::str#0 ] ] with [ zp ZP_WORD:12 [ div8u::remainder#8 ] ] -Coalescing zero page register [ zp ZP_BYTE:11 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 test_8u::divisor#0 ] ] with [ zp ZP_BYTE:40 [ test_8s::res#0 ] ] -Allocated (was zp ZP_WORD:7) zp ZP_WORD:6 [ char_cursor#48 char_cursor#78 char_cursor#76 char_cursor#91 char_cursor#2 char_cursor#11 char_cursor#77 char_cursor#1 char_cursor#81 char_cursor#100 ] -Allocated (was zp ZP_WORD:9) zp ZP_WORD:8 [ print_str::str#7 print_str::str#9 print_str::str#0 div8u::remainder#8 ] -Allocated (was zp ZP_BYTE:11) zp ZP_BYTE:10 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 test_8u::divisor#0 test_8s::res#0 ] -Allocated (was zp ZP_BYTE:15) zp ZP_BYTE:11 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] -Allocated (was zp ZP_BYTE:16) zp ZP_BYTE:12 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] -Allocated (was zp ZP_BYTE:23) zp ZP_BYTE:13 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] -Allocated (was zp ZP_BYTE:27) zp ZP_BYTE:14 [ test_8u::rem#0 ] -Allocated (was zp ZP_BYTE:36) zp ZP_BYTE:15 [ test_8s::divisor#0 ] -Allocated (was zp ZP_BYTE:43) zp ZP_BYTE:16 [ div8s::rem8u#0 ] +Uplifting [print_cls] best 39978 combination zp ZP_WORD:35 [ print_cls::sc#2 print_cls::sc#1 ] +Uplifting [test_8u] best 39938 combination zp ZP_BYTE:20 [ test_8u::i#10 test_8u::i#1 ] zp ZP_BYTE:52 [ test_8u::dividend#0 ] zp ZP_BYTE:53 [ test_8u::divisor#0 ] reg byte x [ test_8u::res#0 ] zp ZP_BYTE:51 [ test_8u::rem#0 ] +Uplifting [test_16u] best 39938 combination zp ZP_BYTE:2 [ test_16u::i#10 test_16u::i#1 ] zp ZP_WORD:37 [ test_16u::dividend#0 ] zp ZP_WORD:39 [ test_16u::divisor#0 ] zp ZP_WORD:45 [ test_16u::res#0 ] +Uplifting [test_8s] best 39938 combination zp ZP_BYTE:28 [ test_8s::i#10 test_8s::i#1 ] zp ZP_BYTE:57 [ test_8s::dividend#0 ] zp ZP_BYTE:58 [ test_8s::divisor#0 ] zp ZP_BYTE:62 [ test_8s::res#0 ] +Uplifting [print_char] best 39926 combination reg byte a [ print_char::ch#3 print_char::ch#1 print_char::ch#2 ] +Uplifting [print_ln] best 39926 combination +Uplifting [main] best 39926 combination +Attempting to uplift remaining variables inzp ZP_BYTE:26 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] +Uplifting [div8u] best 39926 combination zp ZP_BYTE:26 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] +Attempting to uplift remaining variables inzp ZP_BYTE:30 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] +Uplifting [print_sbyte] best 39926 combination zp ZP_BYTE:30 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:25 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] +Uplifting [div8u] best 39926 combination zp ZP_BYTE:25 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] +Uplifting [print_byte] best 39926 combination zp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] +Attempting to uplift remaining variables inzp ZP_BYTE:21 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] +Uplifting [div8u] best 39926 combination zp ZP_BYTE:21 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:2 [ test_16u::i#10 test_16u::i#1 ] +Uplifting [test_16u] best 39926 combination zp ZP_BYTE:2 [ test_16u::i#10 test_16u::i#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:20 [ test_8u::i#10 test_8u::i#1 ] +Uplifting [test_8u] best 39926 combination zp ZP_BYTE:20 [ test_8u::i#10 test_8u::i#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:28 [ test_8s::i#10 test_8s::i#1 ] +Uplifting [test_8s] best 39926 combination zp ZP_BYTE:28 [ test_8s::i#10 test_8s::i#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:52 [ test_8u::dividend#0 ] +Uplifting [test_8u] best 39926 combination zp ZP_BYTE:52 [ test_8u::dividend#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:57 [ test_8s::dividend#0 ] +Uplifting [test_8s] best 39926 combination zp ZP_BYTE:57 [ test_8s::dividend#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:33 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] +Uplifting [div8s] best 39926 combination zp ZP_BYTE:33 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] +Attempting to uplift remaining variables inzp ZP_BYTE:58 [ test_8s::divisor#0 ] +Uplifting [test_8s] best 39926 combination zp ZP_BYTE:58 [ test_8s::divisor#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:53 [ test_8u::divisor#0 ] +Uplifting [test_8u] best 39926 combination zp ZP_BYTE:53 [ test_8u::divisor#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:62 [ test_8s::res#0 ] +Uplifting [test_8s] best 39926 combination zp ZP_BYTE:62 [ test_8s::res#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:64 [ div8s::$7 ] +Uplifting [div8s] best 39922 combination reg byte x [ div8s::$7 ] +Attempting to uplift remaining variables inzp ZP_BYTE:67 [ div8s::resultb#0 ] +Uplifting [div8s] best 39919 combination reg byte y [ div8s::resultb#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:51 [ test_8u::rem#0 ] +Uplifting [test_8u] best 39919 combination zp ZP_BYTE:51 [ test_8u::rem#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:65 [ div8s::rem8u#0 ] +Uplifting [div8s] best 39919 combination zp ZP_BYTE:65 [ div8s::rem8u#0 ] +Coalescing zero page register [ zp ZP_WORD:5 [ print_word::w#4 print_word::w#0 print_word::w#1 print_word::w#2 print_word::w#3 ] ] with [ zp ZP_WORD:37 [ test_16u::dividend#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] ] with [ zp ZP_BYTE:30 [ print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 ] ] with [ zp ZP_BYTE:52 [ test_8u::dividend#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:7 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 print_sbyte::b#6 print_sbyte::b#5 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 print_sbyte::b#0 test_8u::dividend#0 ] ] with [ zp ZP_BYTE:57 [ test_8s::dividend#0 ] ] +Coalescing zero page register [ zp ZP_WORD:17 [ div16u::quotient#3 div16u::return#0 div16u::quotient#1 div16u::quotient#2 ] ] with [ zp ZP_WORD:43 [ div16u::return#2 ] ] +Coalescing zero page register [ zp ZP_WORD:17 [ div16u::quotient#3 div16u::return#0 div16u::quotient#1 div16u::quotient#2 div16u::return#2 ] ] with [ zp ZP_WORD:45 [ test_16u::res#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:21 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 ] ] with [ zp ZP_BYTE:53 [ test_8u::divisor#0 ] ] +Coalescing zero page register [ zp ZP_WORD:39 [ test_16u::divisor#0 ] ] with [ zp ZP_WORD:41 [ div16u::divisor#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:2 [ test_16u::i#10 test_16u::i#1 ] ] with [ zp ZP_BYTE:20 [ test_8u::i#10 test_8u::i#1 ] ] +Coalescing zero page register [ zp ZP_BYTE:2 [ test_16u::i#10 test_16u::i#1 test_8u::i#10 test_8u::i#1 ] ] with [ zp ZP_BYTE:28 [ test_8s::i#10 test_8s::i#1 ] ] +Coalescing zero page register [ zp ZP_WORD:3 [ line_cursor#17 line_cursor#33 line_cursor#1 line_cursor#37 ] ] with [ zp ZP_WORD:35 [ print_cls::sc#2 print_cls::sc#1 ] ] +Coalescing zero page register [ zp ZP_WORD:5 [ print_word::w#4 print_word::w#0 print_word::w#1 print_word::w#2 print_word::w#3 test_16u::dividend#0 ] ] with [ zp ZP_WORD:11 [ print_str::str#10 print_str::str#12 print_str::str#0 ] ] +Coalescing zero page register [ zp ZP_WORD:5 [ print_word::w#4 print_word::w#0 print_word::w#1 print_word::w#2 print_word::w#3 test_16u::dividend#0 print_str::str#10 print_str::str#12 print_str::str#0 ] ] with [ zp ZP_WORD:22 [ div8u::remainder#8 ] ] +Coalescing zero page register [ zp ZP_WORD:9 [ char_cursor#64 char_cursor#105 char_cursor#102 char_cursor#104 char_cursor#121 char_cursor#100 char_cursor#14 char_cursor#128 char_cursor#103 char_cursor#1 char_cursor#109 char_cursor#137 ] ] with [ zp ZP_WORD:15 [ div16u::dividend#2 div16u::dividend#1 div16u::dividend#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:21 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 test_8u::divisor#0 ] ] with [ zp ZP_BYTE:62 [ test_8s::res#0 ] ] +Allocated (was zp ZP_WORD:9) zp ZP_WORD:8 [ char_cursor#64 char_cursor#105 char_cursor#102 char_cursor#104 char_cursor#121 char_cursor#100 char_cursor#14 char_cursor#128 char_cursor#103 char_cursor#1 char_cursor#109 char_cursor#137 div16u::dividend#2 div16u::dividend#1 div16u::dividend#0 ] +Allocated (was zp ZP_WORD:13) zp ZP_WORD:10 [ div16u::rem#4 rem16u#16 div16u::rem#8 div16u::rem#5 div16u::rem#1 div16u::rem#2 div16u::rem#3 ] +Allocated (was zp ZP_WORD:17) zp ZP_WORD:12 [ div16u::quotient#3 div16u::return#0 div16u::quotient#1 div16u::quotient#2 div16u::return#2 test_16u::res#0 ] +Allocated (was zp ZP_BYTE:21) zp ZP_BYTE:14 [ div8u::divisor#6 div8u::divisor#0 div8u::divisor#1 test_8u::divisor#0 test_8s::res#0 ] +Allocated (was zp ZP_BYTE:25) zp ZP_BYTE:15 [ div8u::dividend#3 div8u::dividend#5 div8u::dividend#1 div8u::dividend#2 div8u::dividend#0 ] +Allocated (was zp ZP_BYTE:26) zp ZP_BYTE:16 [ div8u::quotient#3 div8u::return#0 div8u::quotient#1 div8u::quotient#2 ] +Allocated (was zp ZP_BYTE:33) zp ZP_BYTE:17 [ div8s::neg#4 div8s::neg#3 div8s::neg#2 ] +Allocated (was zp ZP_WORD:39) zp ZP_WORD:18 [ test_16u::divisor#0 div16u::divisor#0 ] +Allocated (was zp ZP_BYTE:51) zp ZP_BYTE:20 [ test_8u::rem#0 ] +Allocated (was zp ZP_BYTE:58) zp ZP_BYTE:21 [ test_8s::divisor#0 ] +Allocated (was zp ZP_BYTE:65) zp ZP_BYTE:22 [ div8s::rem8u#0 ] ASSEMBLER BEFORE OPTIMIZATION //SEG0 Basic Upstart @@ -5133,8 +6569,9 @@ ASSEMBLER BEFORE OPTIMIZATION .pc = $80d "Program" //SEG1 Global Constants & labels .label SCREEN = $400 - .label char_cursor = 6 + .label char_cursor = 8 .label line_cursor = 3 + .label rem16u = $a //SEG2 @begin bbegin: //SEG3 [1] phi from @begin to @15 [phi:@begin->@15] @@ -5154,7 +6591,7 @@ bend: //SEG9 main main: { //SEG10 [5] call print_cls param-assignment [ test_8u::rem#0 ] ( main:2 [ test_8u::rem#0 ] ) - //SEG11 [143] phi from main to print_cls [phi:main->print_cls] + //SEG11 [197] phi from main to print_cls [phi:main->print_cls] print_cls_from_main: jsr print_cls //SEG12 [6] phi from main to main::@1 [phi:main->main::@1] @@ -5163,7 +6600,7 @@ main: { //SEG13 main::@1 b1: //SEG14 [7] call test_8s param-assignment [ line_cursor#1 div8s::rem8u#0 ] ( main:2 [ line_cursor#1 div8s::rem8u#0 ] ) - //SEG15 [81] phi from main::@1 to test_8s [phi:main::@1->test_8s] + //SEG15 [135] phi from main::@1 to test_8s [phi:main::@1->test_8s] test_8s_from_b1: jsr test_8s //SEG16 [8] phi from main::@1 to main::@2 [phi:main::@1->main::@2] @@ -5171,196 +6608,217 @@ main: { jmp b2 //SEG17 main::@2 b2: - //SEG18 [9] call test_8u param-assignment [ ] ( main:2 [ ] ) + //SEG18 [9] call test_8u param-assignment [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) jsr test_8u + //SEG19 [10] phi from main::@2 to main::@3 [phi:main::@2->main::@3] + b3_from_b2: + jmp b3 + //SEG20 main::@3 + b3: + //SEG21 [11] call test_16u param-assignment [ ] ( main:2 [ ] ) + //SEG22 [13] phi from main::@3 to test_16u [phi:main::@3->test_16u] + test_16u_from_b3: + jsr test_16u jmp breturn - //SEG19 main::@return + //SEG23 main::@return breturn: - //SEG20 [10] return [ ] ( main:2 [ ] ) + //SEG24 [12] return [ ] ( main:2 [ ] ) rts } -//SEG21 test_8u -test_8u: { - .label rem = $e +//SEG25 test_16u +test_16u: { .label dividend = 5 - .label divisor = $a + .label divisor = $12 + .label res = $c .label i = 2 - //SEG22 [11] (byte) test_8u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=vbuc1 + //SEG26 [14] phi from test_16u to test_16u::@1 [phi:test_16u->test_16u::@1] + b1_from_test_16u: + //SEG27 [14] phi (word) rem16u#16 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_16u->test_16u::@1#0] -- vwuz1=vbuc1 lda #0 - sta rem - //SEG23 [12] phi from test_8u to test_8u::@1 [phi:test_8u->test_8u::@1] - b1_from_test_8u: - //SEG24 [12] phi (byte) test_8u::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8u->test_8u::@1#0] -- vbuz1=vbuc1 + sta rem16u + lda #0 + sta rem16u+1 + //SEG28 [14] phi (byte) test_16u::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_16u->test_16u::@1#1] -- vbuz1=vbuc1 lda #0 sta i jmp b1 - //SEG25 [12] phi from test_8u::@11 to test_8u::@1 [phi:test_8u::@11->test_8u::@1] + //SEG29 [14] phi from test_16u::@11 to test_16u::@1 [phi:test_16u::@11->test_16u::@1] b1_from_b11: - //SEG26 [12] phi (byte) test_8u::i#10 = (byte) test_8u::i#1 [phi:test_8u::@11->test_8u::@1#0] -- register_copy + //SEG30 [14] phi (word) rem16u#16 = (word) div16u::rem#8 [phi:test_16u::@11->test_16u::@1#0] -- register_copy + //SEG31 [14] phi (byte) test_16u::i#10 = (byte) test_16u::i#1 [phi:test_16u::@11->test_16u::@1#1] -- register_copy jmp b1 - //SEG27 test_8u::@1 + //SEG32 test_16u::@1 b1: - //SEG28 [13] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG33 [15] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) [ test_16u::i#10 test_16u::dividend#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 line_cursor#1 ] ) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend - //SEG29 [14] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + lda dividends+1,y + sta dividend+1 + //SEG34 [16] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 ] ) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda divisors,y sta divisor - //SEG30 [15] (byte) div8u::dividend#2 ← (byte) test_8u::dividend#0 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + lda divisors+1,y + sta divisor+1 + //SEG35 [17] (word) div16u::dividend#1 ← (word) test_16u::dividend#0 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 line_cursor#1 ] ) -- vwuz1=vwuz2 lda dividend - sta div8u.dividend - //SEG31 [16] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 line_cursor#1 div8s::rem8u#0 ] ) - // (byte) div8u::divisor#1 = (byte) test_8u::divisor#0 // register copy zp ZP_BYTE:10 - //SEG32 [17] call div8u param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 line_cursor#1 div8s::rem8u#0 ] ) - //SEG33 [64] phi from test_8u::@1 to div8u [phi:test_8u::@1->div8u] - div8u_from_b1: - //SEG34 [64] phi (byte*) div8u::remainder#8 = &(byte) test_8u::rem#0 [phi:test_8u::@1->div8u#0] -- pbuz1=pbuc1 - lda #rem - sta div8u.remainder+1 - //SEG35 [64] phi (byte) div8u::divisor#6 = (byte) div8u::divisor#1 [phi:test_8u::@1->div8u#1] -- register_copy - //SEG36 [64] phi (byte) div8u::dividend#5 = (byte) div8u::dividend#2 [phi:test_8u::@1->div8u#2] -- register_copy - jsr div8u - //SEG37 [18] (byte) div8u::return#3 ← (byte) div8u::return#0 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 line_cursor#1 div8s::rem8u#0 ] ) -- vbuaa=vbuz1 - lda div8u.return + sta div16u.dividend + lda dividend+1 + sta div16u.dividend+1 + //SEG36 [18] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 div16u::divisor#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 div16u::divisor#0 line_cursor#1 ] ) + // (word) div16u::divisor#0 = (word) test_16u::divisor#0 // register copy zp ZP_WORD:18 + //SEG37 [19] call div16u param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#0 line_cursor#1 ] ) + //SEG38 [72] phi from test_16u::@1 to div16u [phi:test_16u::@1->div16u] + div16u_from_b1: + jsr div16u + //SEG39 [20] (word) div16u::return#2 ← (word) div16u::return#0 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 line_cursor#1 ] ) + // (word) div16u::return#2 = (word) div16u::return#0 // register copy zp ZP_WORD:12 jmp b3 - //SEG38 test_8u::@3 + //SEG40 test_16u::@3 b3: - //SEG39 [19] (byte) test_8u::res#0 ← (byte) div8u::return#3 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 ] ) -- vbuxx=vbuaa - tax - //SEG40 [20] (byte) print_byte::b#1 ← (byte) test_8u::dividend#0 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 line_cursor#1 div8s::rem8u#0 ] ) - // (byte) print_byte::b#1 = (byte) test_8u::dividend#0 // register copy zp ZP_BYTE:5 - //SEG41 [21] (byte*~) char_cursor#91 ← (byte*) line_cursor#1 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 char_cursor#91 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 char_cursor#91 line_cursor#1 div8s::rem8u#0 ] ) -- pbuz1=pbuz2 + //SEG41 [21] (word) test_16u::res#0 ← (word) div16u::return#2 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 line_cursor#1 ] ) + // (word) test_16u::res#0 = (word) div16u::return#2 // register copy zp ZP_WORD:12 + //SEG42 [22] (word) print_word::w#0 ← (word) test_16u::dividend#0 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 line_cursor#1 ] ) + // (word) print_word::w#0 = (word) test_16u::dividend#0 // register copy zp ZP_WORD:5 + //SEG43 [23] (byte*~) char_cursor#121 ← (byte*) line_cursor#1 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 char_cursor#121 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 char_cursor#121 line_cursor#1 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG42 [22] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - //SEG43 [45] phi from test_8u::@3 to print_byte [phi:test_8u::@3->print_byte] - print_byte_from_b3: - //SEG44 [45] phi (byte*) char_cursor#78 = (byte*~) char_cursor#91 [phi:test_8u::@3->print_byte#0] -- register_copy - //SEG45 [45] phi (byte) print_byte::b#5 = (byte) print_byte::b#1 [phi:test_8u::@3->print_byte#1] -- register_copy - jsr print_byte - //SEG46 [23] phi from test_8u::@3 to test_8u::@4 [phi:test_8u::@3->test_8u::@4] + //SEG44 [24] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] ) + //SEG45 [47] phi from test_16u::@3 to print_word [phi:test_16u::@3->print_word] + print_word_from_b3: + //SEG46 [47] phi (byte*) char_cursor#104 = (byte*~) char_cursor#121 [phi:test_16u::@3->print_word#0] -- register_copy + //SEG47 [47] phi (word) print_word::w#4 = (word) print_word::w#0 [phi:test_16u::@3->print_word#1] -- register_copy + jsr print_word + //SEG48 [25] phi from test_16u::@3 to test_16u::@4 [phi:test_16u::@3->test_16u::@4] b4_from_b3: jmp b4 - //SEG47 test_8u::@4 + //SEG49 test_16u::@4 b4: - //SEG48 [24] call print_str param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ) - //SEG49 [57] phi from test_8u::@4 to print_str [phi:test_8u::@4->print_str] + //SEG50 [26] call print_str param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] ) + //SEG51 [65] phi from test_16u::@4 to print_str [phi:test_16u::@4->print_str] print_str_from_b4: - //SEG50 [57] phi (byte*) print_str::str#9 = (const string) test_8u::str [phi:test_8u::@4->print_str#0] -- pbuz1=pbuc1 + //SEG52 [65] phi (byte*) print_str::str#12 = (const string) test_16u::str [phi:test_16u::@4->print_str#0] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str jmp b5 - //SEG51 test_8u::@5 + //SEG53 test_16u::@5 b5: - //SEG52 [25] (byte) print_byte::b#2 ← (byte) test_8u::divisor#0 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 print_byte::b#2 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 print_byte::b#2 char_cursor#2 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + //SEG54 [27] (word) print_word::w#1 ← (word) test_16u::divisor#0 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#1 char_cursor#100 ] ) -- vwuz1=vwuz2 lda divisor - sta print_byte.b - //SEG53 [26] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - //SEG54 [45] phi from test_8u::@5 to print_byte [phi:test_8u::@5->print_byte] - print_byte_from_b5: - //SEG55 [45] phi (byte*) char_cursor#78 = (byte*) char_cursor#2 [phi:test_8u::@5->print_byte#0] -- register_copy - //SEG56 [45] phi (byte) print_byte::b#5 = (byte) print_byte::b#2 [phi:test_8u::@5->print_byte#1] -- register_copy - jsr print_byte - //SEG57 [27] phi from test_8u::@5 to test_8u::@6 [phi:test_8u::@5->test_8u::@6] + sta print_word.w + lda divisor+1 + sta print_word.w+1 + //SEG55 [28] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] ) + //SEG56 [47] phi from test_16u::@5 to print_word [phi:test_16u::@5->print_word] + print_word_from_b5: + //SEG57 [47] phi (byte*) char_cursor#104 = (byte*) char_cursor#100 [phi:test_16u::@5->print_word#0] -- register_copy + //SEG58 [47] phi (word) print_word::w#4 = (word) print_word::w#1 [phi:test_16u::@5->print_word#1] -- register_copy + jsr print_word + //SEG59 [29] phi from test_16u::@5 to test_16u::@6 [phi:test_16u::@5->test_16u::@6] b6_from_b5: jmp b6 - //SEG58 test_8u::@6 + //SEG60 test_16u::@6 b6: - //SEG59 [28] call print_str param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ) - //SEG60 [57] phi from test_8u::@6 to print_str [phi:test_8u::@6->print_str] + //SEG61 [30] call print_str param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] ) + //SEG62 [65] phi from test_16u::@6 to print_str [phi:test_16u::@6->print_str] print_str_from_b6: - //SEG61 [57] phi (byte*) print_str::str#9 = (const string) test_8u::str1 [phi:test_8u::@6->print_str#0] -- pbuz1=pbuc1 + //SEG63 [65] phi (byte*) print_str::str#12 = (const string) test_16u::str1 [phi:test_16u::@6->print_str#0] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str jmp b7 - //SEG62 test_8u::@7 + //SEG64 test_16u::@7 b7: - //SEG63 [29] (byte) print_byte::b#3 ← (byte) test_8u::res#0 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#3 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#3 char_cursor#2 div8s::rem8u#0 ] ) -- vbuz1=vbuxx - stx print_byte.b - //SEG64 [30] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - //SEG65 [45] phi from test_8u::@7 to print_byte [phi:test_8u::@7->print_byte] - print_byte_from_b7: - //SEG66 [45] phi (byte*) char_cursor#78 = (byte*) char_cursor#2 [phi:test_8u::@7->print_byte#0] -- register_copy - //SEG67 [45] phi (byte) print_byte::b#5 = (byte) print_byte::b#3 [phi:test_8u::@7->print_byte#1] -- register_copy - jsr print_byte - //SEG68 [31] phi from test_8u::@7 to test_8u::@8 [phi:test_8u::@7->test_8u::@8] + //SEG65 [31] (word) print_word::w#2 ← (word) test_16u::res#0 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#2 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#2 char_cursor#100 ] ) -- vwuz1=vwuz2 + lda res + sta print_word.w + lda res+1 + sta print_word.w+1 + //SEG66 [32] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + //SEG67 [47] phi from test_16u::@7 to print_word [phi:test_16u::@7->print_word] + print_word_from_b7: + //SEG68 [47] phi (byte*) char_cursor#104 = (byte*) char_cursor#100 [phi:test_16u::@7->print_word#0] -- register_copy + //SEG69 [47] phi (word) print_word::w#4 = (word) print_word::w#2 [phi:test_16u::@7->print_word#1] -- register_copy + jsr print_word + //SEG70 [33] phi from test_16u::@7 to test_16u::@8 [phi:test_16u::@7->test_16u::@8] b8_from_b7: jmp b8 - //SEG69 test_8u::@8 + //SEG71 test_16u::@8 b8: - //SEG70 [32] call print_str param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ) - //SEG71 [57] phi from test_8u::@8 to print_str [phi:test_8u::@8->print_str] + //SEG72 [34] call print_str param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] ) + //SEG73 [65] phi from test_16u::@8 to print_str [phi:test_16u::@8->print_str] print_str_from_b8: - //SEG72 [57] phi (byte*) print_str::str#9 = (const string) test_8u::str2 [phi:test_8u::@8->print_str#0] -- pbuz1=pbuc1 + //SEG74 [65] phi (byte*) print_str::str#12 = (const string) test_16u::str2 [phi:test_16u::@8->print_str#0] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str jmp b9 - //SEG73 test_8u::@9 + //SEG75 test_16u::@9 b9: - //SEG74 [33] (byte) print_byte::b#4 ← (byte) test_8u::rem#0 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#4 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#4 char_cursor#2 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 - lda rem - sta print_byte.b - //SEG75 [34] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - //SEG76 [45] phi from test_8u::@9 to print_byte [phi:test_8u::@9->print_byte] - print_byte_from_b9: - //SEG77 [45] phi (byte*) char_cursor#78 = (byte*) char_cursor#2 [phi:test_8u::@9->print_byte#0] -- register_copy - //SEG78 [45] phi (byte) print_byte::b#5 = (byte) print_byte::b#4 [phi:test_8u::@9->print_byte#1] -- register_copy - jsr print_byte - //SEG79 [35] phi from test_8u::@9 to test_8u::@10 [phi:test_8u::@9->test_8u::@10] + //SEG76 [35] (word) print_word::w#3 ← (word) div16u::rem#8 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#3 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#3 char_cursor#100 ] ) -- vwuz1=vwuz2 + lda div16u.rem + sta print_word.w + lda div16u.rem+1 + sta print_word.w+1 + //SEG77 [36] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + //SEG78 [47] phi from test_16u::@9 to print_word [phi:test_16u::@9->print_word] + print_word_from_b9: + //SEG79 [47] phi (byte*) char_cursor#104 = (byte*) char_cursor#100 [phi:test_16u::@9->print_word#0] -- register_copy + //SEG80 [47] phi (word) print_word::w#4 = (word) print_word::w#3 [phi:test_16u::@9->print_word#1] -- register_copy + jsr print_word + //SEG81 [37] phi from test_16u::@9 to test_16u::@10 [phi:test_16u::@9->test_16u::@10] b10_from_b9: jmp b10 - //SEG80 test_8u::@10 + //SEG82 test_16u::@10 b10: - //SEG81 [36] call print_ln param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 ] ) - //SEG82 [40] phi from test_8u::@10 to print_ln [phi:test_8u::@10->print_ln] + //SEG83 [38] call print_ln param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 ] ) + //SEG84 [42] phi from test_16u::@10 to print_ln [phi:test_16u::@10->print_ln] print_ln_from_b10: - //SEG83 [40] phi (byte*) line_cursor#27 = (byte*) line_cursor#1 [phi:test_8u::@10->print_ln#0] -- register_copy + //SEG85 [42] phi (byte*) line_cursor#33 = (byte*) line_cursor#1 [phi:test_16u::@10->print_ln#0] -- register_copy jsr print_ln jmp b11 - //SEG84 test_8u::@11 + //SEG86 test_16u::@11 b11: - //SEG85 [37] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 - inc i - //SEG86 [38] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@1 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG87 [39] (byte) test_16u::i#1 ← (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ) -- vbuz1=vbuz1_plus_vbuc1 + lda #2 + clc + adc i + sta i + //SEG88 [40] if((byte) test_16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 12) goto test_16u::@1 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ) -- vbuz1_neq_vbuc1_then_la1 lda i - cmp #6 + cmp #$c bne b1_from_b11 jmp breturn - //SEG87 test_8u::@return + //SEG89 test_16u::@return breturn: - //SEG88 [39] return [ ] ( main:2::test_8u:9 [ ] ) + //SEG90 [41] return [ ] ( main:2::test_16u:11 [ ] ) rts str: .text " / @" str1: .text " = @" str2: .text " @" - dividends: .byte $ff, $ff, $ff, $ff, $ff, $ff - divisors: .byte 5, 7, $b, $d, $11, $13 + dividends: .word $ffff, $ffff, $ffff, $ffff, $ffff, $ffff + divisors: .word 5, 7, $b, $d, $11, $13 } -//SEG89 print_ln +//SEG91 print_ln print_ln: { - //SEG90 [41] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] + //SEG92 [43] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] b1_from_print_ln: b1_from_b1: - //SEG91 [41] phi (byte*) line_cursor#14 = (byte*) line_cursor#27 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy + //SEG93 [43] phi (byte*) line_cursor#17 = (byte*) line_cursor#33 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy jmp b1 - //SEG92 print_ln::@1 + //SEG94 print_ln::@1 b1: - //SEG93 [42] (byte*) line_cursor#1 ← (byte*) line_cursor#14 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#11 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] ) -- pbuz1=pbuz1_plus_vbuc1 + //SEG95 [44] (byte*) line_cursor#1 ← (byte*) line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] ) -- pbuz1=pbuz1_plus_vbuc1 lda line_cursor clc adc #$28 @@ -5368,7 +6826,7 @@ print_ln: { bcc !+ inc line_cursor+1 !: - //SEG94 [43] if((byte*) line_cursor#1<(byte*) char_cursor#11) goto print_ln::@1 [ line_cursor#1 char_cursor#11 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] ) -- pbuz1_lt_pbuz2_then_la1 + //SEG96 [45] if((byte*) line_cursor#1<(byte*) char_cursor#14) goto print_ln::@1 [ line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] ) -- pbuz1_lt_pbuz2_then_la1 lda line_cursor+1 cmp char_cursor+1 bcc b1_from_b1 @@ -5378,369 +6836,678 @@ print_ln: { bcc b1_from_b1 !: jmp breturn - //SEG95 print_ln::@return + //SEG97 print_ln::@return breturn: - //SEG96 [44] return [ line_cursor#1 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 ] ) + //SEG98 [46] return [ line_cursor#1 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 ] ) rts } -//SEG97 print_byte +//SEG99 print_word +print_word: { + .label w = 5 + //SEG100 [48] (byte) print_byte::b#1 ← > (word) print_word::w#4 [ print_word::w#4 char_cursor#104 print_byte::b#1 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] ) -- vbuz1=_hi_vwuz2 + lda w+1 + sta print_byte.b + //SEG101 [49] call print_byte param-assignment [ char_cursor#14 print_word::w#4 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_word::w#4 ] ) + //SEG102 [53] phi from print_word to print_byte [phi:print_word->print_byte] + print_byte_from_print_word: + //SEG103 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#104 [phi:print_word->print_byte#0] -- register_copy + //SEG104 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#1 [phi:print_word->print_byte#1] -- register_copy + jsr print_byte + jmp b1 + //SEG105 print_word::@1 + b1: + //SEG106 [50] (byte) print_byte::b#2 ← < (word) print_word::w#4 [ char_cursor#14 print_byte::b#2 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] ) -- vbuz1=_lo_vwuz2 + lda w + sta print_byte.b + //SEG107 [51] call print_byte param-assignment [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + //SEG108 [53] phi from print_word::@1 to print_byte [phi:print_word::@1->print_byte] + print_byte_from_b1: + //SEG109 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#14 [phi:print_word::@1->print_byte#0] -- register_copy + //SEG110 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#2 [phi:print_word::@1->print_byte#1] -- register_copy + jsr print_byte + jmp breturn + //SEG111 print_word::@return + breturn: + //SEG112 [52] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + rts +} +//SEG113 print_byte print_byte: { - .label b = 5 - //SEG98 [46] (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#5 char_cursor#78 print_byte::$0 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] ) -- vbuaa=vbuz1_ror_4 + .label b = 7 + //SEG114 [54] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 char_cursor#105 print_byte::$0 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] ) -- vbuaa=vbuz1_ror_4 lda b lsr lsr lsr lsr - //SEG99 [47] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#78 print_char::ch#1 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG115 [55] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#7 char_cursor#105 print_char::ch#1 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa tay lda hextab,y - //SEG100 [48] call print_char param-assignment [ char_cursor#11 print_byte::b#5 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] ) - //SEG101 [53] phi from print_byte to print_char [phi:print_byte->print_char] + //SEG116 [56] call print_char param-assignment [ char_cursor#14 print_byte::b#7 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] ) + //SEG117 [61] phi from print_byte to print_char [phi:print_byte->print_char] print_char_from_print_byte: - //SEG102 [53] phi (byte*) char_cursor#48 = (byte*) char_cursor#78 [phi:print_byte->print_char#0] -- register_copy - //SEG103 [53] phi (byte) print_char::ch#3 = (byte) print_char::ch#1 [phi:print_byte->print_char#1] -- register_copy + //SEG118 [61] phi (byte*) char_cursor#64 = (byte*) char_cursor#105 [phi:print_byte->print_char#0] -- register_copy + //SEG119 [61] phi (byte) print_char::ch#3 = (byte) print_char::ch#1 [phi:print_byte->print_char#1] -- register_copy jsr print_char jmp b1 - //SEG104 print_byte::@1 + //SEG120 print_byte::@1 b1: - //SEG105 [49] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#11 print_byte::$2 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] ) -- vbuaa=vbuz1_band_vbuc1 + //SEG121 [57] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#14 print_byte::$2 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] ) -- vbuaa=vbuz1_band_vbuc1 lda #$f and b - //SEG106 [50] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#11 print_char::ch#2 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG122 [58] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#14 print_char::ch#2 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa tay lda hextab,y - //SEG107 [51] call print_char param-assignment [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) - //SEG108 [53] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] + //SEG123 [59] call print_char param-assignment [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) + //SEG124 [61] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] print_char_from_b1: - //SEG109 [53] phi (byte*) char_cursor#48 = (byte*) char_cursor#11 [phi:print_byte::@1->print_char#0] -- register_copy - //SEG110 [53] phi (byte) print_char::ch#3 = (byte) print_char::ch#2 [phi:print_byte::@1->print_char#1] -- register_copy + //SEG125 [61] phi (byte*) char_cursor#64 = (byte*) char_cursor#14 [phi:print_byte::@1->print_char#0] -- register_copy + //SEG126 [61] phi (byte) print_char::ch#3 = (byte) print_char::ch#2 [phi:print_byte::@1->print_char#1] -- register_copy jsr print_char jmp breturn - //SEG111 print_byte::@return + //SEG127 print_byte::@return breturn: - //SEG112 [52] return [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + //SEG128 [60] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) rts hextab: .text "0123456789abcdef" } -//SEG113 print_char +//SEG129 print_char print_char: { - //SEG114 [54] *((byte*) char_cursor#48) ← (byte) print_char::ch#3 [ char_cursor#48 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] ) -- _deref_pbuz1=vbuaa + //SEG130 [62] *((byte*) char_cursor#64) ← (byte) print_char::ch#3 [ char_cursor#64 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (char_cursor),y - //SEG115 [55] (byte*) char_cursor#11 ← ++ (byte*) char_cursor#48 [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] ) -- pbuz1=_inc_pbuz1 + //SEG131 [63] (byte*) char_cursor#14 ← ++ (byte*) char_cursor#64 [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] ) -- pbuz1=_inc_pbuz1 inc char_cursor bne !+ inc char_cursor+1 !: jmp breturn - //SEG116 print_char::@return + //SEG132 print_char::@return breturn: - //SEG117 [56] return [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] ) + //SEG133 [64] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] ) rts } -//SEG118 print_str +//SEG134 print_str print_str: { - .label str = 8 - //SEG119 [58] phi from print_str print_str::@2 to print_str::@1 [phi:print_str/print_str::@2->print_str::@1] + .label str = 5 + //SEG135 [66] phi from print_str print_str::@2 to print_str::@1 [phi:print_str/print_str::@2->print_str::@1] b1_from_print_str: b1_from_b2: - //SEG120 [58] phi (byte*) char_cursor#2 = (byte*) char_cursor#11 [phi:print_str/print_str::@2->print_str::@1#0] -- register_copy - //SEG121 [58] phi (byte*) print_str::str#7 = (byte*) print_str::str#9 [phi:print_str/print_str::@2->print_str::@1#1] -- register_copy + //SEG136 [66] phi (byte*) char_cursor#100 = (byte*) char_cursor#14 [phi:print_str/print_str::@2->print_str::@1#0] -- register_copy + //SEG137 [66] phi (byte*) print_str::str#10 = (byte*) print_str::str#12 [phi:print_str/print_str::@2->print_str::@1#1] -- register_copy jmp b1 - //SEG122 print_str::@1 + //SEG138 print_str::@1 b1: - //SEG123 [59] if(*((byte*) print_str::str#7)!=(byte) '@') goto print_str::@2 [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 + //SEG139 [67] if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 ldy #0 lda (str),y cmp #'@' bne b2 jmp breturn - //SEG124 print_str::@return + //SEG140 print_str::@return breturn: - //SEG125 [60] return [ char_cursor#2 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 ] ) + //SEG141 [68] return [ char_cursor#100 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 ] ) rts - //SEG126 print_str::@2 + //SEG142 print_str::@2 b2: - //SEG127 [61] *((byte*) char_cursor#2) ← *((byte*) print_str::str#7) [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) -- _deref_pbuz1=_deref_pbuz2 + //SEG143 [69] *((byte*) char_cursor#100) ← *((byte*) print_str::str#10) [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (char_cursor),y - //SEG128 [62] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#2 [ print_str::str#7 char_cursor#1 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG144 [70] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#100 [ print_str::str#10 char_cursor#1 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc char_cursor bne !+ inc char_cursor+1 !: - //SEG129 [63] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#7 [ print_str::str#0 char_cursor#1 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG145 [71] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#10 [ print_str::str#0 char_cursor#1 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 !: jmp b1_from_b2 } -//SEG130 div8u -div8u: { - .label dividend = $b +//SEG146 div16u +div16u: { + .label rem = $a + .label dividend = 8 .label quotient = $c .label return = $c - .label divisor = $a - .label remainder = 8 - //SEG131 [65] phi from div8u to div8u::@1 [phi:div8u->div8u::@1] - b1_from_div8u: - //SEG132 [65] phi (byte) div8u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#0] -- vbuxx=vbuc1 + .label divisor = $12 + //SEG147 [73] phi from div16u to div16u::@1 [phi:div16u->div16u::@1] + b1_from_div16u: + //SEG148 [73] phi (byte) div16u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div16u->div16u::@1#0] -- vbuxx=vbuc1 ldx #0 - //SEG133 [65] phi (byte) div8u::quotient#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#1] -- vbuz1=vbuc1 + //SEG149 [73] phi (word) div16u::quotient#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div16u->div16u::@1#1] -- vwuz1=vbuc1 lda #0 sta quotient - //SEG134 [65] phi (byte) div8u::dividend#3 = (byte) div8u::dividend#5 [phi:div8u->div8u::@1#2] -- register_copy - //SEG135 [65] phi (byte) div8u::rem#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#3] -- vbuyy=vbuc1 - ldy #0 + lda #0 + sta quotient+1 + //SEG150 [73] phi (word) div16u::dividend#2 = (word) div16u::dividend#1 [phi:div16u->div16u::@1#2] -- register_copy + //SEG151 [73] phi (word) div16u::rem#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div16u->div16u::@1#3] -- vwuz1=vbuc1 + lda #0 + sta rem + lda #0 + sta rem+1 jmp b1 - //SEG136 [65] phi from div8u::@3 to div8u::@1 [phi:div8u::@3->div8u::@1] + //SEG152 [73] phi from div16u::@3 to div16u::@1 [phi:div16u::@3->div16u::@1] b1_from_b3: - //SEG137 [65] phi (byte) div8u::i#2 = (byte) div8u::i#1 [phi:div8u::@3->div8u::@1#0] -- register_copy - //SEG138 [65] phi (byte) div8u::quotient#3 = (byte) div8u::return#0 [phi:div8u::@3->div8u::@1#1] -- register_copy - //SEG139 [65] phi (byte) div8u::dividend#3 = (byte) div8u::dividend#0 [phi:div8u::@3->div8u::@1#2] -- register_copy - //SEG140 [65] phi (byte) div8u::rem#4 = (byte) div8u::rem#8 [phi:div8u::@3->div8u::@1#3] -- register_copy + //SEG153 [73] phi (byte) div16u::i#2 = (byte) div16u::i#1 [phi:div16u::@3->div16u::@1#0] -- register_copy + //SEG154 [73] phi (word) div16u::quotient#3 = (word) div16u::return#0 [phi:div16u::@3->div16u::@1#1] -- register_copy + //SEG155 [73] phi (word) div16u::dividend#2 = (word) div16u::dividend#0 [phi:div16u::@3->div16u::@1#2] -- register_copy + //SEG156 [73] phi (word) div16u::rem#4 = (word) div16u::rem#8 [phi:div16u::@3->div16u::@1#3] -- register_copy jmp b1 - //SEG141 div8u::@1 + //SEG157 div16u::@1 b1: - //SEG142 [66] (byte) div8u::rem#1 ← (byte) div8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) -- vbuyy=vbuyy_rol_1 - tya - asl - tay - //SEG143 [67] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) -- vbuaa=vbuz1_band_vbuc1 - lda #$80 - and dividend - //SEG144 [68] if((byte~) div8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8u::@2 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) -- vbuaa_eq_0_then_la1 + //SEG158 [74] (word) div16u::rem#1 ← (word) div16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ) -- vwuz1=vwuz1_rol_1 + asl rem + rol rem+1 + //SEG159 [75] (byte~) div16u::$1 ← > (word) div16u::dividend#2 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ) -- vbuaa=_hi_vwuz1 + lda dividend+1 + //SEG160 [76] (byte~) div16u::$2 ← (byte~) div16u::$1 & (byte/word/signed word/dword/signed dword) 128 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ) -- vbuaa=vbuaa_band_vbuc1 + and #$80 + //SEG161 [77] if((byte~) div16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div16u::@2 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ) -- vbuaa_eq_0_then_la1 cmp #0 beq b2_from_b1 jmp b4 - //SEG145 div8u::@4 + //SEG162 div16u::@4 b4: - //SEG146 [69] (byte) div8u::rem#2 ← ++ (byte) div8u::rem#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ) -- vbuyy=_inc_vbuyy - iny - //SEG147 [70] phi from div8u::@1 div8u::@4 to div8u::@2 [phi:div8u::@1/div8u::@4->div8u::@2] + //SEG163 [78] (word) div16u::rem#2 ← ++ (word) div16u::rem#1 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#2 ] ) -- vwuz1=_inc_vwuz1 + inc rem + bne !+ + inc rem+1 + !: + //SEG164 [79] phi from div16u::@1 div16u::@4 to div16u::@2 [phi:div16u::@1/div16u::@4->div16u::@2] b2_from_b1: b2_from_b4: - //SEG148 [70] phi (byte) div8u::rem#5 = (byte) div8u::rem#1 [phi:div8u::@1/div8u::@4->div8u::@2#0] -- register_copy + //SEG165 [79] phi (word) div16u::rem#5 = (word) div16u::rem#1 [phi:div16u::@1/div16u::@4->div16u::@2#0] -- register_copy jmp b2 - //SEG149 div8u::@2 + //SEG166 div16u::@2 b2: - //SEG150 [71] (byte) div8u::dividend#0 ← (byte) div8u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + //SEG167 [80] (word) div16u::dividend#0 ← (word) div16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::quotient#3 div16u::i#2 div16u::dividend#0 div16u::rem#5 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::quotient#3 div16u::i#2 div16u::dividend#0 div16u::rem#5 ] ) -- vwuz1=vwuz1_rol_1 asl dividend - //SEG151 [72] (byte) div8u::quotient#1 ← (byte) div8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + rol dividend+1 + //SEG168 [81] (word) div16u::quotient#1 ← (word) div16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ) -- vwuz1=vwuz1_rol_1 asl quotient - //SEG152 [73] if((byte) div8u::rem#5<(byte) div8u::divisor#6) goto div8u::@3 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) -- vbuyy_lt_vbuz1_then_la1 - cpy divisor + rol quotient+1 + //SEG169 [82] if((word) div16u::rem#5<(word) div16u::divisor#0) goto div16u::@3 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ) -- vwuz1_lt_vwuz2_then_la1 + lda rem+1 + cmp divisor+1 bcc b3_from_b2 + bne !+ + lda rem + cmp divisor + bcc b3_from_b2 + !: jmp b5 - //SEG153 div8u::@5 + //SEG170 div16u::@5 b5: - //SEG154 [74] (byte) div8u::quotient#2 ← ++ (byte) div8u::quotient#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + //SEG171 [83] (word) div16u::quotient#2 ← ++ (word) div16u::quotient#1 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#2 ] ) -- vwuz1=_inc_vwuz1 inc quotient - //SEG155 [75] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) -- vbuyy=vbuyy_minus_vbuz1 - tya + bne !+ + inc quotient+1 + !: + //SEG172 [84] (word) div16u::rem#3 ← (word) div16u::rem#5 - (word) div16u::divisor#0 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ) -- vwuz1=vwuz1_minus_vwuz2 + lda rem sec sbc divisor - tay - //SEG156 [76] phi from div8u::@2 div8u::@5 to div8u::@3 [phi:div8u::@2/div8u::@5->div8u::@3] + sta rem + lda rem+1 + sbc divisor+1 + sta rem+1 + //SEG173 [85] phi from div16u::@2 div16u::@5 to div16u::@3 [phi:div16u::@2/div16u::@5->div16u::@3] b3_from_b2: b3_from_b5: - //SEG157 [76] phi (byte) div8u::return#0 = (byte) div8u::quotient#1 [phi:div8u::@2/div8u::@5->div8u::@3#0] -- register_copy - //SEG158 [76] phi (byte) div8u::rem#8 = (byte) div8u::rem#5 [phi:div8u::@2/div8u::@5->div8u::@3#1] -- register_copy + //SEG174 [85] phi (word) div16u::return#0 = (word) div16u::quotient#1 [phi:div16u::@2/div16u::@5->div16u::@3#0] -- register_copy + //SEG175 [85] phi (word) div16u::rem#8 = (word) div16u::rem#5 [phi:div16u::@2/div16u::@5->div16u::@3#1] -- register_copy jmp b3 - //SEG159 div8u::@3 + //SEG176 div16u::@3 b3: - //SEG160 [77] (byte) div8u::i#1 ← ++ (byte) div8u::i#2 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) -- vbuxx=_inc_vbuxx + //SEG177 [86] (byte) div16u::i#1 ← ++ (byte) div16u::i#2 [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ) -- vbuxx=_inc_vbuxx inx - //SEG161 [78] if((byte) div8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto div8u::@1 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) -- vbuxx_neq_vbuc1_then_la1 - cpx #8 + //SEG178 [87] if((byte) div16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto div16u::@1 [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ) -- vbuxx_neq_vbuc1_then_la1 + cpx #$10 bne b1_from_b3 - jmp b6 - //SEG162 div8u::@6 - b6: - //SEG163 [79] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) -- _deref_pbuz1=vbuyy - tya - ldy #0 - sta (remainder),y jmp breturn - //SEG164 div8u::@return + //SEG179 div16u::@return breturn: - //SEG165 [80] return [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) + //SEG180 [88] return [ div16u::rem#8 div16u::return#0 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::return#0 ] ) rts } -//SEG166 test_8s -test_8s: { - .label dividend = 5 - .label divisor = $f - .label res = $a +//SEG181 test_8u +test_8u: { + .label rem = $14 + .label dividend = 7 + .label divisor = $e .label i = 2 - //SEG167 [82] phi from test_8s to test_8s::@1 [phi:test_8s->test_8s::@1] - b1_from_test_8s: - //SEG168 [82] phi (byte*) line_cursor#30 = (const byte*) SCREEN#0 [phi:test_8s->test_8s::@1#0] -- pbuz1=pbuc1 - lda #SCREEN - sta line_cursor+1 - //SEG169 [82] phi (byte*) char_cursor#81 = (const byte*) SCREEN#0 [phi:test_8s->test_8s::@1#1] -- pbuz1=pbuc1 - lda #SCREEN - sta char_cursor+1 - //SEG170 [82] phi (signed byte) rem8s#18 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8s->test_8s::@1#2] -- vbsxx=vbuc1 + //SEG182 [89] (byte) test_8u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ line_cursor#1 test_8u::rem#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 div8s::rem8u#0 ] ) -- vbuz1=vbuc1 lda #0 - tax - //SEG171 [82] phi (byte) test_8s::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8s->test_8s::@1#3] -- vbuz1=vbuc1 + sta rem + //SEG183 [90] phi from test_8u to test_8u::@1 [phi:test_8u->test_8u::@1] + b1_from_test_8u: + //SEG184 [90] phi (byte) test_8u::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8u->test_8u::@1#0] -- vbuz1=vbuc1 lda #0 sta i jmp b1 - //SEG172 test_8s::@1 + //SEG185 [90] phi from test_8u::@11 to test_8u::@1 [phi:test_8u::@11->test_8u::@1] + b1_from_b11: + //SEG186 [90] phi (byte) test_8u::i#10 = (byte) test_8u::i#1 [phi:test_8u::@11->test_8u::@1#0] -- register_copy + jmp b1 + //SEG187 test_8u::@1 b1: - //SEG173 [83] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG188 [91] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 div8s::rem8u#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend - //SEG174 [84] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG189 [92] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda divisors,y sta divisor - //SEG175 [85] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ) -- vbsaa=vbsz1 + //SEG190 [93] (byte) div8u::dividend#2 ← (byte) test_8u::dividend#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 lda dividend - //SEG176 [86] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ) -- vbsxx=vbsz1 - ldx divisor - //SEG177 [87] call div8s param-assignment [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ) - jsr div8s - //SEG178 [88] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ) - // (signed byte) div8s::return#3 = (signed byte) div8s::return#2 // register copy reg byte a + sta div8u.dividend + //SEG191 [94] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 div8s::rem8u#0 ] ) + // (byte) div8u::divisor#1 = (byte) test_8u::divisor#0 // register copy zp ZP_BYTE:14 + //SEG192 [95] call div8u param-assignment [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 div8s::rem8u#0 ] ) + //SEG193 [118] phi from test_8u::@1 to div8u [phi:test_8u::@1->div8u] + div8u_from_b1: + //SEG194 [118] phi (byte*) div8u::remainder#8 = &(byte) test_8u::rem#0 [phi:test_8u::@1->div8u#0] -- pbuz1=pbuc1 + lda #rem + sta div8u.remainder+1 + //SEG195 [118] phi (byte) div8u::divisor#6 = (byte) div8u::divisor#1 [phi:test_8u::@1->div8u#1] -- register_copy + //SEG196 [118] phi (byte) div8u::dividend#5 = (byte) div8u::dividend#2 [phi:test_8u::@1->div8u#2] -- register_copy + jsr div8u + //SEG197 [96] (byte) div8u::return#3 ← (byte) div8u::return#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 div8s::rem8u#0 ] ) -- vbuaa=vbuz1 + lda div8u.return jmp b3 - //SEG179 test_8s::@3 + //SEG198 test_8u::@3 b3: - //SEG180 [89] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) -- vbsz1=vbsaa - sta res - //SEG181 [90] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ) - // (signed byte) print_sbyte::b#1 = (signed byte) test_8s::dividend#0 // register copy zp ZP_BYTE:5 - //SEG182 [91] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) - //SEG183 [110] phi from test_8s::@3 to print_sbyte [phi:test_8s::@3->print_sbyte] - print_sbyte_from_b3: - //SEG184 [110] phi (byte*) char_cursor#77 = (byte*) char_cursor#81 [phi:test_8s::@3->print_sbyte#0] -- register_copy - //SEG185 [110] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#1 [phi:test_8s::@3->print_sbyte#1] -- register_copy - jsr print_sbyte - //SEG186 [92] phi from test_8s::@3 to test_8s::@4 [phi:test_8s::@3->test_8s::@4] + //SEG199 [97] (byte) test_8u::res#0 ← (byte) div8u::return#3 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) -- vbuxx=vbuaa + tax + //SEG200 [98] (byte) print_byte::b#3 ← (byte) test_8u::dividend#0 [ line_cursor#1 print_byte::b#3 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 print_byte::b#3 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + // (byte) print_byte::b#3 = (byte) test_8u::dividend#0 // register copy zp ZP_BYTE:7 + //SEG201 [99] (byte*~) char_cursor#128 ← (byte*) line_cursor#1 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) -- pbuz1=pbuz2 + lda line_cursor + sta char_cursor + lda line_cursor+1 + sta char_cursor+1 + //SEG202 [100] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + //SEG203 [53] phi from test_8u::@3 to print_byte [phi:test_8u::@3->print_byte] + print_byte_from_b3: + //SEG204 [53] phi (byte*) char_cursor#105 = (byte*~) char_cursor#128 [phi:test_8u::@3->print_byte#0] -- register_copy + //SEG205 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#3 [phi:test_8u::@3->print_byte#1] -- register_copy + jsr print_byte + //SEG206 [101] phi from test_8u::@3 to test_8u::@4 [phi:test_8u::@3->test_8u::@4] b4_from_b3: jmp b4 - //SEG187 test_8s::@4 + //SEG207 test_8u::@4 b4: - //SEG188 [93] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) - //SEG189 [57] phi from test_8s::@4 to print_str [phi:test_8s::@4->print_str] + //SEG208 [102] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + //SEG209 [65] phi from test_8u::@4 to print_str [phi:test_8u::@4->print_str] print_str_from_b4: - //SEG190 [57] phi (byte*) print_str::str#9 = (const string) test_8s::str [phi:test_8s::@4->print_str#0] -- pbuz1=pbuc1 + //SEG210 [65] phi (byte*) print_str::str#12 = (const string) test_8u::str [phi:test_8u::@4->print_str#0] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str jmp b5 - //SEG191 test_8s::@5 + //SEG211 test_8u::@5 b5: - //SEG192 [94] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + //SEG212 [103] (byte) print_byte::b#4 ← (byte) test_8u::divisor#0 [ line_cursor#1 char_cursor#100 print_byte::b#4 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#4 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 lda divisor - sta print_sbyte.b - //SEG193 [95] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) - //SEG194 [110] phi from test_8s::@5 to print_sbyte [phi:test_8s::@5->print_sbyte] - print_sbyte_from_b5: - //SEG195 [110] phi (byte*) char_cursor#77 = (byte*) char_cursor#2 [phi:test_8s::@5->print_sbyte#0] -- register_copy - //SEG196 [110] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#2 [phi:test_8s::@5->print_sbyte#1] -- register_copy - jsr print_sbyte - //SEG197 [96] phi from test_8s::@5 to test_8s::@6 [phi:test_8s::@5->test_8s::@6] + sta print_byte.b + //SEG213 [104] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + //SEG214 [53] phi from test_8u::@5 to print_byte [phi:test_8u::@5->print_byte] + print_byte_from_b5: + //SEG215 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#100 [phi:test_8u::@5->print_byte#0] -- register_copy + //SEG216 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#4 [phi:test_8u::@5->print_byte#1] -- register_copy + jsr print_byte + //SEG217 [105] phi from test_8u::@5 to test_8u::@6 [phi:test_8u::@5->test_8u::@6] b6_from_b5: jmp b6 - //SEG198 test_8s::@6 + //SEG218 test_8u::@6 b6: - //SEG199 [97] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) - //SEG200 [57] phi from test_8s::@6 to print_str [phi:test_8s::@6->print_str] + //SEG219 [106] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + //SEG220 [65] phi from test_8u::@6 to print_str [phi:test_8u::@6->print_str] print_str_from_b6: - //SEG201 [57] phi (byte*) print_str::str#9 = (const string) test_8s::str1 [phi:test_8s::@6->print_str#0] -- pbuz1=pbuc1 + //SEG221 [65] phi (byte*) print_str::str#12 = (const string) test_8u::str1 [phi:test_8u::@6->print_str#0] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str jmp b7 - //SEG202 test_8s::@7 + //SEG222 test_8u::@7 b7: - //SEG203 [98] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 - lda res - sta print_sbyte.b - //SEG204 [99] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - //SEG205 [110] phi from test_8s::@7 to print_sbyte [phi:test_8s::@7->print_sbyte] - print_sbyte_from_b7: - //SEG206 [110] phi (byte*) char_cursor#77 = (byte*) char_cursor#2 [phi:test_8s::@7->print_sbyte#0] -- register_copy - //SEG207 [110] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#3 [phi:test_8s::@7->print_sbyte#1] -- register_copy - jsr print_sbyte - //SEG208 [100] phi from test_8s::@7 to test_8s::@8 [phi:test_8s::@7->test_8s::@8] + //SEG223 [107] (byte) print_byte::b#5 ← (byte) test_8u::res#0 [ line_cursor#1 char_cursor#100 print_byte::b#5 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#5 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) -- vbuz1=vbuxx + stx print_byte.b + //SEG224 [108] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + //SEG225 [53] phi from test_8u::@7 to print_byte [phi:test_8u::@7->print_byte] + print_byte_from_b7: + //SEG226 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#100 [phi:test_8u::@7->print_byte#0] -- register_copy + //SEG227 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#5 [phi:test_8u::@7->print_byte#1] -- register_copy + jsr print_byte + //SEG228 [109] phi from test_8u::@7 to test_8u::@8 [phi:test_8u::@7->test_8u::@8] b8_from_b7: jmp b8 - //SEG209 test_8s::@8 + //SEG229 test_8u::@8 b8: - //SEG210 [101] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - //SEG211 [57] phi from test_8s::@8 to print_str [phi:test_8s::@8->print_str] + //SEG230 [110] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + //SEG231 [65] phi from test_8u::@8 to print_str [phi:test_8u::@8->print_str] print_str_from_b8: - //SEG212 [57] phi (byte*) print_str::str#9 = (const string) test_8s::str2 [phi:test_8s::@8->print_str#0] -- pbuz1=pbuc1 + //SEG232 [65] phi (byte*) print_str::str#12 = (const string) test_8u::str2 [phi:test_8u::@8->print_str#0] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str jmp b9 - //SEG213 test_8s::@9 + //SEG233 test_8u::@9 b9: - //SEG214 [102] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ) -- vbsz1=vbsxx - stx print_sbyte.b - //SEG215 [103] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - //SEG216 [110] phi from test_8s::@9 to print_sbyte [phi:test_8s::@9->print_sbyte] - print_sbyte_from_b9: - //SEG217 [110] phi (byte*) char_cursor#77 = (byte*) char_cursor#2 [phi:test_8s::@9->print_sbyte#0] -- register_copy - //SEG218 [110] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#4 [phi:test_8s::@9->print_sbyte#1] -- register_copy - jsr print_sbyte - //SEG219 [104] phi from test_8s::@9 to test_8s::@10 [phi:test_8s::@9->test_8s::@10] + //SEG234 [111] (byte) print_byte::b#6 ← (byte) test_8u::rem#0 [ line_cursor#1 char_cursor#100 print_byte::b#6 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#6 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + lda rem + sta print_byte.b + //SEG235 [112] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + //SEG236 [53] phi from test_8u::@9 to print_byte [phi:test_8u::@9->print_byte] + print_byte_from_b9: + //SEG237 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#100 [phi:test_8u::@9->print_byte#0] -- register_copy + //SEG238 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#6 [phi:test_8u::@9->print_byte#1] -- register_copy + jsr print_byte + //SEG239 [113] phi from test_8u::@9 to test_8u::@10 [phi:test_8u::@9->test_8u::@10] b10_from_b9: jmp b10 - //SEG220 test_8s::@10 + //SEG240 test_8u::@10 b10: - //SEG221 [105] call print_ln param-assignment [ test_8u::rem#0 line_cursor#1 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - //SEG222 [40] phi from test_8s::@10 to print_ln [phi:test_8s::@10->print_ln] + //SEG241 [114] call print_ln param-assignment [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + //SEG242 [42] phi from test_8u::@10 to print_ln [phi:test_8u::@10->print_ln] print_ln_from_b10: - //SEG223 [40] phi (byte*) line_cursor#27 = (byte*) line_cursor#30 [phi:test_8s::@10->print_ln#0] -- register_copy + //SEG243 [42] phi (byte*) line_cursor#33 = (byte*) line_cursor#1 [phi:test_8u::@10->print_ln#0] -- register_copy jsr print_ln jmp b11 - //SEG224 test_8s::@11 + //SEG244 test_8u::@11 b11: - //SEG225 [106] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + //SEG245 [115] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 inc i - //SEG226 [107] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@12 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG246 [116] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@1 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda i + cmp #6 + bne b1_from_b11 + jmp breturn + //SEG247 test_8u::@return + breturn: + //SEG248 [117] return [ line_cursor#1 ] ( main:2::test_8u:9 [ line_cursor#1 ] ) + rts + str: .text " / @" + str1: .text " = @" + str2: .text " @" + dividends: .byte $ff, $ff, $ff, $ff, $ff, $ff + divisors: .byte 5, 7, $b, $d, $11, $13 +} +//SEG249 div8u +div8u: { + .label dividend = $f + .label quotient = $10 + .label return = $10 + .label divisor = $e + .label remainder = 5 + //SEG250 [119] phi from div8u to div8u::@1 [phi:div8u->div8u::@1] + b1_from_div8u: + //SEG251 [119] phi (byte) div8u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#0] -- vbuxx=vbuc1 + ldx #0 + //SEG252 [119] phi (byte) div8u::quotient#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#1] -- vbuz1=vbuc1 + lda #0 + sta quotient + //SEG253 [119] phi (byte) div8u::dividend#3 = (byte) div8u::dividend#5 [phi:div8u->div8u::@1#2] -- register_copy + //SEG254 [119] phi (byte) div8u::rem#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#3] -- vbuyy=vbuc1 + ldy #0 + jmp b1 + //SEG255 [119] phi from div8u::@3 to div8u::@1 [phi:div8u::@3->div8u::@1] + b1_from_b3: + //SEG256 [119] phi (byte) div8u::i#2 = (byte) div8u::i#1 [phi:div8u::@3->div8u::@1#0] -- register_copy + //SEG257 [119] phi (byte) div8u::quotient#3 = (byte) div8u::return#0 [phi:div8u::@3->div8u::@1#1] -- register_copy + //SEG258 [119] phi (byte) div8u::dividend#3 = (byte) div8u::dividend#0 [phi:div8u::@3->div8u::@1#2] -- register_copy + //SEG259 [119] phi (byte) div8u::rem#4 = (byte) div8u::rem#8 [phi:div8u::@3->div8u::@1#3] -- register_copy + jmp b1 + //SEG260 div8u::@1 + b1: + //SEG261 [120] (byte) div8u::rem#1 ← (byte) div8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) -- vbuyy=vbuyy_rol_1 + tya + asl + tay + //SEG262 [121] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) -- vbuaa=vbuz1_band_vbuc1 + lda #$80 + and dividend + //SEG263 [122] if((byte~) div8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8u::@2 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b2_from_b1 + jmp b4 + //SEG264 div8u::@4 + b4: + //SEG265 [123] (byte) div8u::rem#2 ← ++ (byte) div8u::rem#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ) -- vbuyy=_inc_vbuyy + iny + //SEG266 [124] phi from div8u::@1 div8u::@4 to div8u::@2 [phi:div8u::@1/div8u::@4->div8u::@2] + b2_from_b1: + b2_from_b4: + //SEG267 [124] phi (byte) div8u::rem#5 = (byte) div8u::rem#1 [phi:div8u::@1/div8u::@4->div8u::@2#0] -- register_copy + jmp b2 + //SEG268 div8u::@2 + b2: + //SEG269 [125] (byte) div8u::dividend#0 ← (byte) div8u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + asl dividend + //SEG270 [126] (byte) div8u::quotient#1 ← (byte) div8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + asl quotient + //SEG271 [127] if((byte) div8u::rem#5<(byte) div8u::divisor#6) goto div8u::@3 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) -- vbuyy_lt_vbuz1_then_la1 + cpy divisor + bcc b3_from_b2 + jmp b5 + //SEG272 div8u::@5 + b5: + //SEG273 [128] (byte) div8u::quotient#2 ← ++ (byte) div8u::quotient#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + inc quotient + //SEG274 [129] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) -- vbuyy=vbuyy_minus_vbuz1 + tya + sec + sbc divisor + tay + //SEG275 [130] phi from div8u::@2 div8u::@5 to div8u::@3 [phi:div8u::@2/div8u::@5->div8u::@3] + b3_from_b2: + b3_from_b5: + //SEG276 [130] phi (byte) div8u::return#0 = (byte) div8u::quotient#1 [phi:div8u::@2/div8u::@5->div8u::@3#0] -- register_copy + //SEG277 [130] phi (byte) div8u::rem#8 = (byte) div8u::rem#5 [phi:div8u::@2/div8u::@5->div8u::@3#1] -- register_copy + jmp b3 + //SEG278 div8u::@3 + b3: + //SEG279 [131] (byte) div8u::i#1 ← ++ (byte) div8u::i#2 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) -- vbuxx=_inc_vbuxx + inx + //SEG280 [132] if((byte) div8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto div8u::@1 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) -- vbuxx_neq_vbuc1_then_la1 + cpx #8 + bne b1_from_b3 + jmp b6 + //SEG281 div8u::@6 + b6: + //SEG282 [133] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) -- _deref_pbuz1=vbuyy + tya + ldy #0 + sta (remainder),y + jmp breturn + //SEG283 div8u::@return + breturn: + //SEG284 [134] return [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) + rts +} +//SEG285 test_8s +test_8s: { + .label dividend = 7 + .label divisor = $15 + .label res = $e + .label i = 2 + //SEG286 [136] phi from test_8s to test_8s::@1 [phi:test_8s->test_8s::@1] + b1_from_test_8s: + //SEG287 [136] phi (byte*) line_cursor#37 = (const byte*) SCREEN#0 [phi:test_8s->test_8s::@1#0] -- pbuz1=pbuc1 + lda #SCREEN + sta line_cursor+1 + //SEG288 [136] phi (byte*) char_cursor#109 = (const byte*) SCREEN#0 [phi:test_8s->test_8s::@1#1] -- pbuz1=pbuc1 + lda #SCREEN + sta char_cursor+1 + //SEG289 [136] phi (signed byte) rem8s#18 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8s->test_8s::@1#2] -- vbsxx=vbuc1 + lda #0 + tax + //SEG290 [136] phi (byte) test_8s::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8s->test_8s::@1#3] -- vbuz1=vbuc1 + lda #0 + sta i + jmp b1 + //SEG291 test_8s::@1 + b1: + //SEG292 [137] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ) -- vbsz1=pbsc1_derefidx_vbuz2 + ldy i + lda dividends,y + sta dividend + //SEG293 [138] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ) -- vbsz1=pbsc1_derefidx_vbuz2 + ldy i + lda divisors,y + sta divisor + //SEG294 [139] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ) -- vbsaa=vbsz1 + lda dividend + //SEG295 [140] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ) -- vbsxx=vbsz1 + ldx divisor + //SEG296 [141] call div8s param-assignment [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ) + jsr div8s + //SEG297 [142] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ) + // (signed byte) div8s::return#3 = (signed byte) div8s::return#2 // register copy reg byte a + jmp b3 + //SEG298 test_8s::@3 + b3: + //SEG299 [143] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) -- vbsz1=vbsaa + sta res + //SEG300 [144] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ) + // (signed byte) print_sbyte::b#1 = (signed byte) test_8s::dividend#0 // register copy zp ZP_BYTE:7 + //SEG301 [145] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + //SEG302 [164] phi from test_8s::@3 to print_sbyte [phi:test_8s::@3->print_sbyte] + print_sbyte_from_b3: + //SEG303 [164] phi (byte*) char_cursor#103 = (byte*) char_cursor#109 [phi:test_8s::@3->print_sbyte#0] -- register_copy + //SEG304 [164] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#1 [phi:test_8s::@3->print_sbyte#1] -- register_copy + jsr print_sbyte + //SEG305 [146] phi from test_8s::@3 to test_8s::@4 [phi:test_8s::@3->test_8s::@4] + b4_from_b3: + jmp b4 + //SEG306 test_8s::@4 + b4: + //SEG307 [147] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + //SEG308 [65] phi from test_8s::@4 to print_str [phi:test_8s::@4->print_str] + print_str_from_b4: + //SEG309 [65] phi (byte*) print_str::str#12 = (const string) test_8s::str [phi:test_8s::@4->print_str#0] -- pbuz1=pbuc1 + lda #str + sta print_str.str+1 + jsr print_str + jmp b5 + //SEG310 test_8s::@5 + b5: + //SEG311 [148] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + lda divisor + sta print_sbyte.b + //SEG312 [149] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) + //SEG313 [164] phi from test_8s::@5 to print_sbyte [phi:test_8s::@5->print_sbyte] + print_sbyte_from_b5: + //SEG314 [164] phi (byte*) char_cursor#103 = (byte*) char_cursor#100 [phi:test_8s::@5->print_sbyte#0] -- register_copy + //SEG315 [164] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#2 [phi:test_8s::@5->print_sbyte#1] -- register_copy + jsr print_sbyte + //SEG316 [150] phi from test_8s::@5 to test_8s::@6 [phi:test_8s::@5->test_8s::@6] + b6_from_b5: + jmp b6 + //SEG317 test_8s::@6 + b6: + //SEG318 [151] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) + //SEG319 [65] phi from test_8s::@6 to print_str [phi:test_8s::@6->print_str] + print_str_from_b6: + //SEG320 [65] phi (byte*) print_str::str#12 = (const string) test_8s::str1 [phi:test_8s::@6->print_str#0] -- pbuz1=pbuc1 + lda #str1 + sta print_str.str+1 + jsr print_str + jmp b7 + //SEG321 test_8s::@7 + b7: + //SEG322 [152] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + lda res + sta print_sbyte.b + //SEG323 [153] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + //SEG324 [164] phi from test_8s::@7 to print_sbyte [phi:test_8s::@7->print_sbyte] + print_sbyte_from_b7: + //SEG325 [164] phi (byte*) char_cursor#103 = (byte*) char_cursor#100 [phi:test_8s::@7->print_sbyte#0] -- register_copy + //SEG326 [164] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#3 [phi:test_8s::@7->print_sbyte#1] -- register_copy + jsr print_sbyte + //SEG327 [154] phi from test_8s::@7 to test_8s::@8 [phi:test_8s::@7->test_8s::@8] + b8_from_b7: + jmp b8 + //SEG328 test_8s::@8 + b8: + //SEG329 [155] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + //SEG330 [65] phi from test_8s::@8 to print_str [phi:test_8s::@8->print_str] + print_str_from_b8: + //SEG331 [65] phi (byte*) print_str::str#12 = (const string) test_8s::str2 [phi:test_8s::@8->print_str#0] -- pbuz1=pbuc1 + lda #str2 + sta print_str.str+1 + jsr print_str + jmp b9 + //SEG332 test_8s::@9 + b9: + //SEG333 [156] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ) -- vbsz1=vbsxx + stx print_sbyte.b + //SEG334 [157] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + //SEG335 [164] phi from test_8s::@9 to print_sbyte [phi:test_8s::@9->print_sbyte] + print_sbyte_from_b9: + //SEG336 [164] phi (byte*) char_cursor#103 = (byte*) char_cursor#100 [phi:test_8s::@9->print_sbyte#0] -- register_copy + //SEG337 [164] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#4 [phi:test_8s::@9->print_sbyte#1] -- register_copy + jsr print_sbyte + //SEG338 [158] phi from test_8s::@9 to test_8s::@10 [phi:test_8s::@9->test_8s::@10] + b10_from_b9: + jmp b10 + //SEG339 test_8s::@10 + b10: + //SEG340 [159] call print_ln param-assignment [ line_cursor#1 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + //SEG341 [42] phi from test_8s::@10 to print_ln [phi:test_8s::@10->print_ln] + print_ln_from_b10: + //SEG342 [42] phi (byte*) line_cursor#33 = (byte*) line_cursor#37 [phi:test_8s::@10->print_ln#0] -- register_copy + jsr print_ln + jmp b11 + //SEG343 test_8s::@11 + b11: + //SEG344 [160] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + inc i + //SEG345 [161] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@12 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 lda i cmp #6 bne b12 jmp breturn - //SEG227 test_8s::@return + //SEG346 test_8s::@return breturn: - //SEG228 [108] return [ line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 div8s::rem8u#0 ] ) + //SEG347 [162] return [ line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 div8s::rem8u#0 ] ) rts - //SEG229 test_8s::@12 + //SEG348 test_8s::@12 b12: - //SEG230 [109] (byte*~) char_cursor#100 ← (byte*) line_cursor#1 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ) -- pbuz1=pbuz2 + //SEG349 [163] (byte*~) char_cursor#137 ← (byte*) line_cursor#1 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG231 [82] phi from test_8s::@12 to test_8s::@1 [phi:test_8s::@12->test_8s::@1] + //SEG350 [136] phi from test_8s::@12 to test_8s::@1 [phi:test_8s::@12->test_8s::@1] b1_from_b12: - //SEG232 [82] phi (byte*) line_cursor#30 = (byte*) line_cursor#1 [phi:test_8s::@12->test_8s::@1#0] -- register_copy - //SEG233 [82] phi (byte*) char_cursor#81 = (byte*~) char_cursor#100 [phi:test_8s::@12->test_8s::@1#1] -- register_copy - //SEG234 [82] phi (signed byte) rem8s#18 = (signed byte) rem8s#3 [phi:test_8s::@12->test_8s::@1#2] -- register_copy - //SEG235 [82] phi (byte) test_8s::i#10 = (byte) test_8s::i#1 [phi:test_8s::@12->test_8s::@1#3] -- register_copy + //SEG351 [136] phi (byte*) line_cursor#37 = (byte*) line_cursor#1 [phi:test_8s::@12->test_8s::@1#0] -- register_copy + //SEG352 [136] phi (byte*) char_cursor#109 = (byte*~) char_cursor#137 [phi:test_8s::@12->test_8s::@1#1] -- register_copy + //SEG353 [136] phi (signed byte) rem8s#18 = (signed byte) rem8s#3 [phi:test_8s::@12->test_8s::@1#2] -- register_copy + //SEG354 [136] phi (byte) test_8s::i#10 = (byte) test_8s::i#1 [phi:test_8s::@12->test_8s::@1#3] -- register_copy jmp b1 str: .text " / @" str1: .text " = @" @@ -5748,210 +7515,210 @@ test_8s: { dividends: .byte $7f, -$7f, -$7f, $7f, $7f, $7f divisors: .byte 5, 7, -$b, -$d, $11, $13 } -//SEG236 print_sbyte +//SEG355 print_sbyte print_sbyte: { - .label b = 5 - //SEG237 [111] if((signed byte) print_sbyte::b#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#77 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] ) -- vbsz1_ge_0_then_la1 + .label b = 7 + //SEG356 [165] if((signed byte) print_sbyte::b#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#103 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] ) -- vbsz1_ge_0_then_la1 lda b cmp #0 bpl b1_from_print_sbyte - //SEG238 [112] phi from print_sbyte to print_sbyte::@2 [phi:print_sbyte->print_sbyte::@2] + //SEG357 [166] phi from print_sbyte to print_sbyte::@2 [phi:print_sbyte->print_sbyte::@2] b2_from_print_sbyte: jmp b2 - //SEG239 print_sbyte::@2 + //SEG358 print_sbyte::@2 b2: - //SEG240 [113] call print_char param-assignment [ char_cursor#11 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] ) - //SEG241 [53] phi from print_sbyte::@2 to print_char [phi:print_sbyte::@2->print_char] + //SEG359 [167] call print_char param-assignment [ char_cursor#14 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] ) + //SEG360 [61] phi from print_sbyte::@2 to print_char [phi:print_sbyte::@2->print_char] print_char_from_b2: - //SEG242 [53] phi (byte*) char_cursor#48 = (byte*) char_cursor#77 [phi:print_sbyte::@2->print_char#0] -- register_copy - //SEG243 [53] phi (byte) print_char::ch#3 = (byte) '-' [phi:print_sbyte::@2->print_char#1] -- vbuaa=vbuc1 + //SEG361 [61] phi (byte*) char_cursor#64 = (byte*) char_cursor#103 [phi:print_sbyte::@2->print_char#0] -- register_copy + //SEG362 [61] phi (byte) print_char::ch#3 = (byte) '-' [phi:print_sbyte::@2->print_char#1] -- vbuaa=vbuc1 lda #'-' jsr print_char jmp b4 - //SEG244 print_sbyte::@4 + //SEG363 print_sbyte::@4 b4: - //SEG245 [114] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#11 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] ) -- vbsz1=_neg_vbsz1 + //SEG364 [168] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#14 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] ) -- vbsz1=_neg_vbsz1 lda b eor #$ff clc adc #1 sta b - //SEG246 [115] phi from print_sbyte print_sbyte::@4 to print_sbyte::@1 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1] + //SEG365 [169] phi from print_sbyte print_sbyte::@4 to print_sbyte::@1 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1] b1_from_print_sbyte: b1_from_b4: - //SEG247 [115] phi (byte*) char_cursor#76 = (byte*) char_cursor#77 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#0] -- register_copy - //SEG248 [115] phi (signed byte) print_sbyte::b#6 = (signed byte) print_sbyte::b#5 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#1] -- register_copy + //SEG366 [169] phi (byte*) char_cursor#102 = (byte*) char_cursor#103 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#0] -- register_copy + //SEG367 [169] phi (signed byte) print_sbyte::b#6 = (signed byte) print_sbyte::b#5 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#1] -- register_copy jmp b1 - //SEG249 print_sbyte::@1 + //SEG368 print_sbyte::@1 b1: - //SEG250 [116] (byte~) print_byte::b#7 ← (byte)(signed byte) print_sbyte::b#6 [ print_byte::b#7 char_cursor#76 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] ) - // (byte~) print_byte::b#7 = (byte)(signed byte) print_sbyte::b#6 // register copy zp ZP_BYTE:5 - //SEG251 [117] call print_byte param-assignment [ char_cursor#11 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) - //SEG252 [45] phi from print_sbyte::@1 to print_byte [phi:print_sbyte::@1->print_byte] + //SEG369 [170] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#6 [ print_byte::b#9 char_cursor#102 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] ) + // (byte~) print_byte::b#9 = (byte)(signed byte) print_sbyte::b#6 // register copy zp ZP_BYTE:7 + //SEG370 [171] call print_byte param-assignment [ char_cursor#14 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) + //SEG371 [53] phi from print_sbyte::@1 to print_byte [phi:print_sbyte::@1->print_byte] print_byte_from_b1: - //SEG253 [45] phi (byte*) char_cursor#78 = (byte*) char_cursor#76 [phi:print_sbyte::@1->print_byte#0] -- register_copy - //SEG254 [45] phi (byte) print_byte::b#5 = (byte~) print_byte::b#7 [phi:print_sbyte::@1->print_byte#1] -- register_copy + //SEG372 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#102 [phi:print_sbyte::@1->print_byte#0] -- register_copy + //SEG373 [53] phi (byte) print_byte::b#7 = (byte~) print_byte::b#9 [phi:print_sbyte::@1->print_byte#1] -- register_copy jsr print_byte jmp breturn - //SEG255 print_sbyte::@return + //SEG374 print_sbyte::@return breturn: - //SEG256 [118] return [ char_cursor#11 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + //SEG375 [172] return [ char_cursor#14 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) rts } -//SEG257 div8s +//SEG376 div8s div8s: { - .label neg = $d - .label rem8u = $10 - //SEG258 [119] if((signed byte) div8s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@16 [ test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ) -- vbsaa_ge_0_then_la1 + .label neg = $11 + .label rem8u = $16 + //SEG377 [173] if((signed byte) div8s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@16 [ test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ) -- vbsaa_ge_0_then_la1 cmp #0 bpl b16 jmp b7 - //SEG259 div8s::@7 + //SEG378 div8s::@7 b7: - //SEG260 [120] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) -- vbsaa=_neg_vbsaa + //SEG379 [174] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) -- vbsaa=_neg_vbsaa eor #$ff clc adc #1 - //SEG261 [121] (byte~) div8s::dividendb#8 ← (byte)(signed byte~) div8s::$2 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ) -- vbuyy=vbuaa + //SEG380 [175] (byte~) div8s::dividendb#8 ← (byte)(signed byte~) div8s::$2 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ) -- vbuyy=vbuaa tay - //SEG262 [122] phi from div8s::@7 to div8s::@2 [phi:div8s::@7->div8s::@2] + //SEG381 [176] phi from div8s::@7 to div8s::@2 [phi:div8s::@7->div8s::@2] b2_from_b7: - //SEG263 [122] phi (byte) div8s::dividendb#3 = (byte~) div8s::dividendb#8 [phi:div8s::@7->div8s::@2#0] -- register_copy - //SEG264 [122] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:div8s::@7->div8s::@2#1] -- vbuz1=vbuc1 + //SEG382 [176] phi (byte) div8s::dividendb#3 = (byte~) div8s::dividendb#8 [phi:div8s::@7->div8s::@2#0] -- register_copy + //SEG383 [176] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:div8s::@7->div8s::@2#1] -- vbuz1=vbuc1 lda #1 sta neg jmp b2 - //SEG265 div8s::@2 + //SEG384 div8s::@2 b2: - //SEG266 [123] if((signed byte) div8s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@17 [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) -- vbsxx_ge_0_then_la1 + //SEG385 [177] if((signed byte) div8s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@17 [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) -- vbsxx_ge_0_then_la1 cpx #0 bpl b17 jmp b9 - //SEG267 div8s::@9 + //SEG386 div8s::@9 b9: - //SEG268 [124] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) -- vbsxx=_neg_vbsxx + //SEG387 [178] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) -- vbsxx=_neg_vbsxx txa eor #$ff clc adc #1 tax - //SEG269 [125] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) -- vbuz1=vbuz1_bxor_vbuc1 + //SEG388 [179] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) -- vbuz1=vbuz1_bxor_vbuc1 lda neg eor #1 sta neg - //SEG270 [126] (byte~) div8s::divisorb#5 ← (byte)(signed byte~) div8s::$7 [ test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ) + //SEG389 [180] (byte~) div8s::divisorb#5 ← (byte)(signed byte~) div8s::$7 [ test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ) // (byte~) div8s::divisorb#5 = (byte)(signed byte~) div8s::$7 // register copy reg byte x - //SEG271 [127] phi from div8s::@17 div8s::@9 to div8s::@4 [phi:div8s::@17/div8s::@9->div8s::@4] + //SEG390 [181] phi from div8s::@17 div8s::@9 to div8s::@4 [phi:div8s::@17/div8s::@9->div8s::@4] b4_from_b17: b4_from_b9: - //SEG272 [127] phi (byte) div8s::neg#4 = (byte) div8s::neg#3 [phi:div8s::@17/div8s::@9->div8s::@4#0] -- register_copy - //SEG273 [127] phi (byte) div8s::divisorb#3 = (byte~) div8s::divisorb#4 [phi:div8s::@17/div8s::@9->div8s::@4#1] -- register_copy + //SEG391 [181] phi (byte) div8s::neg#4 = (byte) div8s::neg#3 [phi:div8s::@17/div8s::@9->div8s::@4#0] -- register_copy + //SEG392 [181] phi (byte) div8s::divisorb#3 = (byte~) div8s::divisorb#4 [phi:div8s::@17/div8s::@9->div8s::@4#1] -- register_copy jmp b4 - //SEG274 div8s::@4 + //SEG393 div8s::@4 b4: - //SEG275 [128] (byte) div8s::rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuc1 + //SEG394 [182] (byte) div8s::rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuc1 lda #0 sta rem8u - //SEG276 [129] (byte) div8u::dividend#1 ← (byte) div8s::dividendb#3 [ test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuyy + //SEG395 [183] (byte) div8u::dividend#1 ← (byte) div8s::dividendb#3 [ test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuyy sty div8u.dividend - //SEG277 [130] (byte) div8u::divisor#0 ← (byte) div8s::divisorb#3 [ test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuxx + //SEG396 [184] (byte) div8u::divisor#0 ← (byte) div8s::divisorb#3 [ test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuxx stx div8u.divisor - //SEG278 [131] call div8u param-assignment [ test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ) - //SEG279 [64] phi from div8s::@4 to div8u [phi:div8s::@4->div8u] + //SEG397 [185] call div8u param-assignment [ test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ) + //SEG398 [118] phi from div8s::@4 to div8u [phi:div8s::@4->div8u] div8u_from_b4: - //SEG280 [64] phi (byte*) div8u::remainder#8 = &(byte) div8s::rem8u#0 [phi:div8s::@4->div8u#0] -- pbuz1=pbuc1 + //SEG399 [118] phi (byte*) div8u::remainder#8 = &(byte) div8s::rem8u#0 [phi:div8s::@4->div8u#0] -- pbuz1=pbuc1 lda #rem8u sta div8u.remainder+1 - //SEG281 [64] phi (byte) div8u::divisor#6 = (byte) div8u::divisor#0 [phi:div8s::@4->div8u#1] -- register_copy - //SEG282 [64] phi (byte) div8u::dividend#5 = (byte) div8u::dividend#1 [phi:div8s::@4->div8u#2] -- register_copy + //SEG400 [118] phi (byte) div8u::divisor#6 = (byte) div8u::divisor#0 [phi:div8s::@4->div8u#1] -- register_copy + //SEG401 [118] phi (byte) div8u::dividend#5 = (byte) div8u::dividend#1 [phi:div8s::@4->div8u#2] -- register_copy jsr div8u - //SEG283 [132] (byte) div8u::return#2 ← (byte) div8u::return#0 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ) -- vbuaa=vbuz1 + //SEG402 [186] (byte) div8u::return#2 ← (byte) div8u::return#0 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ) -- vbuaa=vbuz1 lda div8u.return jmp b15 - //SEG284 div8s::@15 + //SEG403 div8s::@15 b15: - //SEG285 [133] (byte) div8s::resultb#0 ← (byte) div8u::return#2 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ) -- vbuyy=vbuaa + //SEG404 [187] (byte) div8s::resultb#0 ← (byte) div8u::return#2 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ) -- vbuyy=vbuaa tay - //SEG286 [134] if((byte) div8s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@5 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ) -- vbuz1_neq_0_then_la1 + //SEG405 [188] if((byte) div8s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@5 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ) -- vbuz1_neq_0_then_la1 lda neg bne b5 jmp b18 - //SEG287 div8s::@18 + //SEG406 div8s::@18 b18: - //SEG288 [135] (signed byte~) div8s::return#6 ← (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ) -- vbsaa=vbsyy + //SEG407 [189] (signed byte~) div8s::return#6 ← (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ) -- vbsaa=vbsyy tya - //SEG289 [136] (signed byte~) rem8s#30 ← (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#30 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#30 ] ) -- vbsxx=vbsz1 + //SEG408 [190] (signed byte~) rem8s#32 ← (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#32 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#32 ] ) -- vbsxx=vbsz1 ldx rem8u - //SEG290 [137] phi from div8s::@18 div8s::@5 to div8s::@return [phi:div8s::@18/div8s::@5->div8s::@return] + //SEG409 [191] phi from div8s::@18 div8s::@5 to div8s::@return [phi:div8s::@18/div8s::@5->div8s::@return] breturn_from_b18: breturn_from_b5: - //SEG291 [137] phi (signed byte) rem8s#3 = (signed byte~) rem8s#30 [phi:div8s::@18/div8s::@5->div8s::@return#0] -- register_copy - //SEG292 [137] phi (signed byte) div8s::return#2 = (signed byte~) div8s::return#6 [phi:div8s::@18/div8s::@5->div8s::@return#1] -- register_copy + //SEG410 [191] phi (signed byte) rem8s#3 = (signed byte~) rem8s#32 [phi:div8s::@18/div8s::@5->div8s::@return#0] -- register_copy + //SEG411 [191] phi (signed byte) div8s::return#2 = (signed byte~) div8s::return#6 [phi:div8s::@18/div8s::@5->div8s::@return#1] -- register_copy jmp breturn - //SEG293 div8s::@return + //SEG412 div8s::@return breturn: - //SEG294 [138] return [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) + //SEG413 [192] return [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) rts - //SEG295 div8s::@5 + //SEG414 div8s::@5 b5: - //SEG296 [139] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) -- vbsxx=_neg_vbsz1 + //SEG415 [193] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) -- vbsxx=_neg_vbsz1 lda rem8u eor #$ff clc adc #1 tax - //SEG297 [140] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) -- vbsaa=_neg_vbsyy + //SEG416 [194] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) -- vbsaa=_neg_vbsyy tya eor #$ff clc adc #1 jmp breturn_from_b5 - //SEG298 div8s::@17 + //SEG417 div8s::@17 b17: - //SEG299 [141] (byte~) div8s::divisorb#4 ← (byte)(signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ) + //SEG418 [195] (byte~) div8s::divisorb#4 ← (byte)(signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ) // (byte~) div8s::divisorb#4 = (byte)(signed byte) div8s::divisor#0 // register copy reg byte x jmp b4_from_b17 - //SEG300 div8s::@16 + //SEG419 div8s::@16 b16: - //SEG301 [142] (byte~) div8s::dividendb#7 ← (byte)(signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ) -- vbuyy=vbuaa + //SEG420 [196] (byte~) div8s::dividendb#7 ← (byte)(signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ) -- vbuyy=vbuaa tay - //SEG302 [122] phi from div8s::@16 to div8s::@2 [phi:div8s::@16->div8s::@2] + //SEG421 [176] phi from div8s::@16 to div8s::@2 [phi:div8s::@16->div8s::@2] b2_from_b16: - //SEG303 [122] phi (byte) div8s::dividendb#3 = (byte~) div8s::dividendb#7 [phi:div8s::@16->div8s::@2#0] -- register_copy - //SEG304 [122] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8s::@16->div8s::@2#1] -- vbuz1=vbuc1 + //SEG422 [176] phi (byte) div8s::dividendb#3 = (byte~) div8s::dividendb#7 [phi:div8s::@16->div8s::@2#0] -- register_copy + //SEG423 [176] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8s::@16->div8s::@2#1] -- vbuz1=vbuc1 lda #0 sta neg jmp b2 } -//SEG305 print_cls +//SEG424 print_cls print_cls: { .label sc = 3 - //SEG306 [144] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] + //SEG425 [198] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] b1_from_print_cls: - //SEG307 [144] phi (byte*) print_cls::sc#2 = (const byte*) SCREEN#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 + //SEG426 [198] phi (byte*) print_cls::sc#2 = (const byte*) SCREEN#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 lda #SCREEN sta sc+1 jmp b1 - //SEG308 [144] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] + //SEG427 [198] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] b1_from_b1: - //SEG309 [144] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy + //SEG428 [198] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy jmp b1 - //SEG310 print_cls::@1 + //SEG429 print_cls::@1 b1: - //SEG311 [145] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 + //SEG430 [199] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG312 [146] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG431 [200] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 !: - //SEG313 [147] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) -- pbuz1_neq_pbuc1_then_la1 + //SEG432 [201] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) -- pbuz1_neq_pbuc1_then_la1 lda sc+1 cmp #>SCREEN+$3e8 bne b1_from_b1 @@ -5959,9 +7726,9 @@ print_cls: { cmp #@15] //SEG4 @15 @@ -6433,161 +8360,178 @@ Score: 17998 //SEG9 main main: { //SEG10 [5] call print_cls param-assignment [ test_8u::rem#0 ] ( main:2 [ test_8u::rem#0 ] ) - //SEG11 [143] phi from main to print_cls [phi:main->print_cls] + //SEG11 [197] phi from main to print_cls [phi:main->print_cls] jsr print_cls //SEG12 [6] phi from main to main::@1 [phi:main->main::@1] //SEG13 main::@1 //SEG14 [7] call test_8s param-assignment [ line_cursor#1 div8s::rem8u#0 ] ( main:2 [ line_cursor#1 div8s::rem8u#0 ] ) - //SEG15 [81] phi from main::@1 to test_8s [phi:main::@1->test_8s] + //SEG15 [135] phi from main::@1 to test_8s [phi:main::@1->test_8s] jsr test_8s //SEG16 [8] phi from main::@1 to main::@2 [phi:main::@1->main::@2] //SEG17 main::@2 - //SEG18 [9] call test_8u param-assignment [ ] ( main:2 [ ] ) + //SEG18 [9] call test_8u param-assignment [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) jsr test_8u - //SEG19 main::@return - //SEG20 [10] return [ ] ( main:2 [ ] ) + //SEG19 [10] phi from main::@2 to main::@3 [phi:main::@2->main::@3] + //SEG20 main::@3 + //SEG21 [11] call test_16u param-assignment [ ] ( main:2 [ ] ) + //SEG22 [13] phi from main::@3 to test_16u [phi:main::@3->test_16u] + jsr test_16u + //SEG23 main::@return + //SEG24 [12] return [ ] ( main:2 [ ] ) rts } -//SEG21 test_8u -test_8u: { - .label rem = $e +//SEG25 test_16u +test_16u: { .label dividend = 5 - .label divisor = $a + .label divisor = $12 + .label res = $c .label i = 2 - //SEG22 [11] (byte) test_8u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=vbuc1 + //SEG26 [14] phi from test_16u to test_16u::@1 [phi:test_16u->test_16u::@1] + //SEG27 [14] phi (word) rem16u#16 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_16u->test_16u::@1#0] -- vwuz1=vbuc1 lda #0 - sta rem - //SEG23 [12] phi from test_8u to test_8u::@1 [phi:test_8u->test_8u::@1] - //SEG24 [12] phi (byte) test_8u::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8u->test_8u::@1#0] -- vbuz1=vbuc1 + sta rem16u + sta rem16u+1 + //SEG28 [14] phi (byte) test_16u::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_16u->test_16u::@1#1] -- vbuz1=vbuc1 sta i - //SEG25 [12] phi from test_8u::@11 to test_8u::@1 [phi:test_8u::@11->test_8u::@1] - //SEG26 [12] phi (byte) test_8u::i#10 = (byte) test_8u::i#1 [phi:test_8u::@11->test_8u::@1#0] -- register_copy - //SEG27 test_8u::@1 + //SEG29 [14] phi from test_16u::@11 to test_16u::@1 [phi:test_16u::@11->test_16u::@1] + //SEG30 [14] phi (word) rem16u#16 = (word) div16u::rem#8 [phi:test_16u::@11->test_16u::@1#0] -- register_copy + //SEG31 [14] phi (byte) test_16u::i#10 = (byte) test_16u::i#1 [phi:test_16u::@11->test_16u::@1#1] -- register_copy + //SEG32 test_16u::@1 b1: - //SEG28 [13] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG33 [15] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) [ test_16u::i#10 test_16u::dividend#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 line_cursor#1 ] ) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend - //SEG29 [14] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + lda dividends+1,y + sta dividend+1 + //SEG34 [16] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 ] ) -- vwuz1=pwuc1_derefidx_vbuz2 lda divisors,y sta divisor - //SEG30 [15] (byte) div8u::dividend#2 ← (byte) test_8u::dividend#0 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + lda divisors+1,y + sta divisor+1 + //SEG35 [17] (word) div16u::dividend#1 ← (word) test_16u::dividend#0 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 line_cursor#1 ] ) -- vwuz1=vwuz2 lda dividend - sta div8u.dividend - //SEG31 [16] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 line_cursor#1 div8s::rem8u#0 ] ) - // (byte) div8u::divisor#1 = (byte) test_8u::divisor#0 // register copy zp ZP_BYTE:10 - //SEG32 [17] call div8u param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 line_cursor#1 div8s::rem8u#0 ] ) - //SEG33 [64] phi from test_8u::@1 to div8u [phi:test_8u::@1->div8u] - //SEG34 [64] phi (byte*) div8u::remainder#8 = &(byte) test_8u::rem#0 [phi:test_8u::@1->div8u#0] -- pbuz1=pbuc1 - lda #rem - sta div8u.remainder+1 - //SEG35 [64] phi (byte) div8u::divisor#6 = (byte) div8u::divisor#1 [phi:test_8u::@1->div8u#1] -- register_copy - //SEG36 [64] phi (byte) div8u::dividend#5 = (byte) div8u::dividend#2 [phi:test_8u::@1->div8u#2] -- register_copy - jsr div8u - //SEG37 [18] (byte) div8u::return#3 ← (byte) div8u::return#0 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 line_cursor#1 div8s::rem8u#0 ] ) -- vbuaa=vbuz1 - lda div8u.return - //SEG38 test_8u::@3 - //SEG39 [19] (byte) test_8u::res#0 ← (byte) div8u::return#3 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 ] ) -- vbuxx=vbuaa - tax - //SEG40 [20] (byte) print_byte::b#1 ← (byte) test_8u::dividend#0 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 line_cursor#1 div8s::rem8u#0 ] ) - // (byte) print_byte::b#1 = (byte) test_8u::dividend#0 // register copy zp ZP_BYTE:5 - //SEG41 [21] (byte*~) char_cursor#91 ← (byte*) line_cursor#1 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 char_cursor#91 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#1 char_cursor#91 line_cursor#1 div8s::rem8u#0 ] ) -- pbuz1=pbuz2 + sta div16u.dividend + lda dividend+1 + sta div16u.dividend+1 + //SEG36 [18] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 div16u::divisor#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#1 div16u::divisor#0 line_cursor#1 ] ) + // (word) div16u::divisor#0 = (word) test_16u::divisor#0 // register copy zp ZP_WORD:18 + //SEG37 [19] call div16u param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#0 line_cursor#1 ] ) + //SEG38 [72] phi from test_16u::@1 to div16u [phi:test_16u::@1->div16u] + jsr div16u + //SEG39 [20] (word) div16u::return#2 ← (word) div16u::return#0 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 line_cursor#1 ] ) + // (word) div16u::return#2 = (word) div16u::return#0 // register copy zp ZP_WORD:12 + //SEG40 test_16u::@3 + //SEG41 [21] (word) test_16u::res#0 ← (word) div16u::return#2 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 line_cursor#1 ] ) + // (word) test_16u::res#0 = (word) div16u::return#2 // register copy zp ZP_WORD:12 + //SEG42 [22] (word) print_word::w#0 ← (word) test_16u::dividend#0 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 line_cursor#1 ] ) + // (word) print_word::w#0 = (word) test_16u::dividend#0 // register copy zp ZP_WORD:5 + //SEG43 [23] (byte*~) char_cursor#121 ← (byte*) line_cursor#1 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 char_cursor#121 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 print_word::w#0 char_cursor#121 line_cursor#1 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG42 [22] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - //SEG43 [45] phi from test_8u::@3 to print_byte [phi:test_8u::@3->print_byte] - //SEG44 [45] phi (byte*) char_cursor#78 = (byte*~) char_cursor#91 [phi:test_8u::@3->print_byte#0] -- register_copy - //SEG45 [45] phi (byte) print_byte::b#5 = (byte) print_byte::b#1 [phi:test_8u::@3->print_byte#1] -- register_copy - jsr print_byte - //SEG46 [23] phi from test_8u::@3 to test_8u::@4 [phi:test_8u::@3->test_8u::@4] - //SEG47 test_8u::@4 - //SEG48 [24] call print_str param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ) - //SEG49 [57] phi from test_8u::@4 to print_str [phi:test_8u::@4->print_str] - //SEG50 [57] phi (byte*) print_str::str#9 = (const string) test_8u::str [phi:test_8u::@4->print_str#0] -- pbuz1=pbuc1 + //SEG44 [24] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] ) + //SEG45 [47] phi from test_16u::@3 to print_word [phi:test_16u::@3->print_word] + //SEG46 [47] phi (byte*) char_cursor#104 = (byte*~) char_cursor#121 [phi:test_16u::@3->print_word#0] -- register_copy + //SEG47 [47] phi (word) print_word::w#4 = (word) print_word::w#0 [phi:test_16u::@3->print_word#1] -- register_copy + jsr print_word + //SEG48 [25] phi from test_16u::@3 to test_16u::@4 [phi:test_16u::@3->test_16u::@4] + //SEG49 test_16u::@4 + //SEG50 [26] call print_str param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] ) + //SEG51 [65] phi from test_16u::@4 to print_str [phi:test_16u::@4->print_str] + //SEG52 [65] phi (byte*) print_str::str#12 = (const string) test_16u::str [phi:test_16u::@4->print_str#0] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str - //SEG51 test_8u::@5 - //SEG52 [25] (byte) print_byte::b#2 ← (byte) test_8u::divisor#0 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 print_byte::b#2 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 print_byte::b#2 char_cursor#2 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + //SEG53 test_16u::@5 + //SEG54 [27] (word) print_word::w#1 ← (word) test_16u::divisor#0 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#1 char_cursor#100 ] ) -- vwuz1=vwuz2 lda divisor - sta print_byte.b - //SEG53 [26] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - //SEG54 [45] phi from test_8u::@5 to print_byte [phi:test_8u::@5->print_byte] - //SEG55 [45] phi (byte*) char_cursor#78 = (byte*) char_cursor#2 [phi:test_8u::@5->print_byte#0] -- register_copy - //SEG56 [45] phi (byte) print_byte::b#5 = (byte) print_byte::b#2 [phi:test_8u::@5->print_byte#1] -- register_copy - jsr print_byte - //SEG57 [27] phi from test_8u::@5 to test_8u::@6 [phi:test_8u::@5->test_8u::@6] - //SEG58 test_8u::@6 - //SEG59 [28] call print_str param-assignment [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ) - //SEG60 [57] phi from test_8u::@6 to print_str [phi:test_8u::@6->print_str] - //SEG61 [57] phi (byte*) print_str::str#9 = (const string) test_8u::str1 [phi:test_8u::@6->print_str#0] -- pbuz1=pbuc1 + sta print_word.w + lda divisor+1 + sta print_word.w+1 + //SEG55 [28] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] ) + //SEG56 [47] phi from test_16u::@5 to print_word [phi:test_16u::@5->print_word] + //SEG57 [47] phi (byte*) char_cursor#104 = (byte*) char_cursor#100 [phi:test_16u::@5->print_word#0] -- register_copy + //SEG58 [47] phi (word) print_word::w#4 = (word) print_word::w#1 [phi:test_16u::@5->print_word#1] -- register_copy + jsr print_word + //SEG59 [29] phi from test_16u::@5 to test_16u::@6 [phi:test_16u::@5->test_16u::@6] + //SEG60 test_16u::@6 + //SEG61 [30] call print_str param-assignment [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] ) + //SEG62 [65] phi from test_16u::@6 to print_str [phi:test_16u::@6->print_str] + //SEG63 [65] phi (byte*) print_str::str#12 = (const string) test_16u::str1 [phi:test_16u::@6->print_str#0] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str - //SEG62 test_8u::@7 - //SEG63 [29] (byte) print_byte::b#3 ← (byte) test_8u::res#0 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#3 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#3 char_cursor#2 div8s::rem8u#0 ] ) -- vbuz1=vbuxx - stx print_byte.b - //SEG64 [30] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - //SEG65 [45] phi from test_8u::@7 to print_byte [phi:test_8u::@7->print_byte] - //SEG66 [45] phi (byte*) char_cursor#78 = (byte*) char_cursor#2 [phi:test_8u::@7->print_byte#0] -- register_copy - //SEG67 [45] phi (byte) print_byte::b#5 = (byte) print_byte::b#3 [phi:test_8u::@7->print_byte#1] -- register_copy - jsr print_byte - //SEG68 [31] phi from test_8u::@7 to test_8u::@8 [phi:test_8u::@7->test_8u::@8] - //SEG69 test_8u::@8 - //SEG70 [32] call print_str param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#2 div8s::rem8u#0 ] ) - //SEG71 [57] phi from test_8u::@8 to print_str [phi:test_8u::@8->print_str] - //SEG72 [57] phi (byte*) print_str::str#9 = (const string) test_8u::str2 [phi:test_8u::@8->print_str#0] -- pbuz1=pbuc1 + //SEG64 test_16u::@7 + //SEG65 [31] (word) print_word::w#2 ← (word) test_16u::res#0 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#2 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#2 char_cursor#100 ] ) -- vwuz1=vwuz2 + lda res + sta print_word.w + lda res+1 + sta print_word.w+1 + //SEG66 [32] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + //SEG67 [47] phi from test_16u::@7 to print_word [phi:test_16u::@7->print_word] + //SEG68 [47] phi (byte*) char_cursor#104 = (byte*) char_cursor#100 [phi:test_16u::@7->print_word#0] -- register_copy + //SEG69 [47] phi (word) print_word::w#4 = (word) print_word::w#2 [phi:test_16u::@7->print_word#1] -- register_copy + jsr print_word + //SEG70 [33] phi from test_16u::@7 to test_16u::@8 [phi:test_16u::@7->test_16u::@8] + //SEG71 test_16u::@8 + //SEG72 [34] call print_str param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] ) + //SEG73 [65] phi from test_16u::@8 to print_str [phi:test_16u::@8->print_str] + //SEG74 [65] phi (byte*) print_str::str#12 = (const string) test_16u::str2 [phi:test_16u::@8->print_str#0] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str - //SEG73 test_8u::@9 - //SEG74 [33] (byte) print_byte::b#4 ← (byte) test_8u::rem#0 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#4 char_cursor#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 print_byte::b#4 char_cursor#2 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 - lda rem - sta print_byte.b - //SEG75 [34] call print_byte param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 char_cursor#11 div8s::rem8u#0 ] ) - //SEG76 [45] phi from test_8u::@9 to print_byte [phi:test_8u::@9->print_byte] - //SEG77 [45] phi (byte*) char_cursor#78 = (byte*) char_cursor#2 [phi:test_8u::@9->print_byte#0] -- register_copy - //SEG78 [45] phi (byte) print_byte::b#5 = (byte) print_byte::b#4 [phi:test_8u::@9->print_byte#1] -- register_copy - jsr print_byte - //SEG79 [35] phi from test_8u::@9 to test_8u::@10 [phi:test_8u::@9->test_8u::@10] - //SEG80 test_8u::@10 - //SEG81 [36] call print_ln param-assignment [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 ] ) - //SEG82 [40] phi from test_8u::@10 to print_ln [phi:test_8u::@10->print_ln] - //SEG83 [40] phi (byte*) line_cursor#27 = (byte*) line_cursor#1 [phi:test_8u::@10->print_ln#0] -- register_copy + //SEG75 test_16u::@9 + //SEG76 [35] (word) print_word::w#3 ← (word) div16u::rem#8 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#3 char_cursor#100 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#3 char_cursor#100 ] ) -- vwuz1=vwuz2 + lda div16u.rem + sta print_word.w + lda div16u.rem+1 + sta print_word.w+1 + //SEG77 [36] call print_word param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + //SEG78 [47] phi from test_16u::@9 to print_word [phi:test_16u::@9->print_word] + //SEG79 [47] phi (byte*) char_cursor#104 = (byte*) char_cursor#100 [phi:test_16u::@9->print_word#0] -- register_copy + //SEG80 [47] phi (word) print_word::w#4 = (word) print_word::w#3 [phi:test_16u::@9->print_word#1] -- register_copy + jsr print_word + //SEG81 [37] phi from test_16u::@9 to test_16u::@10 [phi:test_16u::@9->test_16u::@10] + //SEG82 test_16u::@10 + //SEG83 [38] call print_ln param-assignment [ test_16u::i#10 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#10 div16u::rem#8 line_cursor#1 ] ) + //SEG84 [42] phi from test_16u::@10 to print_ln [phi:test_16u::@10->print_ln] + //SEG85 [42] phi (byte*) line_cursor#33 = (byte*) line_cursor#1 [phi:test_16u::@10->print_ln#0] -- register_copy jsr print_ln - //SEG84 test_8u::@11 - //SEG85 [37] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 - inc i - //SEG86 [38] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@1 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ test_8u::rem#0 test_8u::i#1 line_cursor#1 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 - lda i - cmp #6 - bne b1 - //SEG87 test_8u::@return - //SEG88 [39] return [ ] ( main:2::test_8u:9 [ ] ) + //SEG86 test_16u::@11 + //SEG87 [39] (byte) test_16u::i#1 ← (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ) -- vbuz1=vbuz1_plus_vbuc1 + lda #2 + clc + adc i + sta i + //SEG88 [40] if((byte) test_16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 12) goto test_16u::@1 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ( main:2::test_16u:11 [ test_16u::i#1 div16u::rem#8 line_cursor#1 ] ) -- vbuz1_neq_vbuc1_then_la1 + cmp #$c + beq !b1+ + jmp b1 + !b1: + //SEG89 test_16u::@return + //SEG90 [41] return [ ] ( main:2::test_16u:11 [ ] ) rts str: .text " / @" str1: .text " = @" str2: .text " @" - dividends: .byte $ff, $ff, $ff, $ff, $ff, $ff - divisors: .byte 5, 7, $b, $d, $11, $13 + dividends: .word $ffff, $ffff, $ffff, $ffff, $ffff, $ffff + divisors: .word 5, 7, $b, $d, $11, $13 } -//SEG89 print_ln +//SEG91 print_ln print_ln: { - //SEG90 [41] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] - //SEG91 [41] phi (byte*) line_cursor#14 = (byte*) line_cursor#27 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy - //SEG92 print_ln::@1 + //SEG92 [43] phi from print_ln print_ln::@1 to print_ln::@1 [phi:print_ln/print_ln::@1->print_ln::@1] + //SEG93 [43] phi (byte*) line_cursor#17 = (byte*) line_cursor#33 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy + //SEG94 print_ln::@1 b1: - //SEG93 [42] (byte*) line_cursor#1 ← (byte*) line_cursor#14 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#11 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] ) -- pbuz1=pbuz1_plus_vbuc1 + //SEG95 [44] (byte*) line_cursor#1 ← (byte*) line_cursor#17 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] ) -- pbuz1=pbuz1_plus_vbuc1 lda line_cursor clc adc #$28 @@ -6595,7 +8539,7 @@ print_ln: { bcc !+ inc line_cursor+1 !: - //SEG94 [43] if((byte*) line_cursor#1<(byte*) char_cursor#11) goto print_ln::@1 [ line_cursor#1 char_cursor#11 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#11 ] ) -- pbuz1_lt_pbuz2_then_la1 + //SEG96 [45] if((byte*) line_cursor#1<(byte*) char_cursor#14) goto print_ln::@1 [ line_cursor#1 char_cursor#14 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 char_cursor#14 ] ) -- pbuz1_lt_pbuz2_then_la1 lda line_cursor+1 cmp char_cursor+1 bcc b1 @@ -6604,299 +8548,544 @@ print_ln: { cmp char_cursor bcc b1 !: - //SEG95 print_ln::@return - //SEG96 [44] return [ line_cursor#1 ] ( main:2::test_8u:9::print_ln:36 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 ] main:2::test_8s:7::print_ln:105 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 ] ) + //SEG97 print_ln::@return + //SEG98 [46] return [ line_cursor#1 ] ( main:2::test_16u:11::print_ln:38 [ test_16u::i#10 div16u::rem#8 line_cursor#1 ] main:2::test_8u:9::print_ln:114 [ test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 line_cursor#1 ] main:2::test_8s:7::print_ln:159 [ test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 line_cursor#1 ] ) rts } -//SEG97 print_byte +//SEG99 print_word +print_word: { + .label w = 5 + //SEG100 [48] (byte) print_byte::b#1 ← > (word) print_word::w#4 [ print_word::w#4 char_cursor#104 print_byte::b#1 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#104 print_byte::b#1 ] ) -- vbuz1=_hi_vwuz2 + lda w+1 + sta print_byte.b + //SEG101 [49] call print_byte param-assignment [ char_cursor#14 print_word::w#4 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_word::w#4 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_word::w#4 ] ) + //SEG102 [53] phi from print_word to print_byte [phi:print_word->print_byte] + //SEG103 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#104 [phi:print_word->print_byte#0] -- register_copy + //SEG104 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#1 [phi:print_word->print_byte#1] -- register_copy + jsr print_byte + //SEG105 print_word::@1 + //SEG106 [50] (byte) print_byte::b#2 ← < (word) print_word::w#4 [ char_cursor#14 print_byte::b#2 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#2 ] ) -- vbuz1=_lo_vwuz2 + lda w + sta print_byte.b + //SEG107 [51] call print_byte param-assignment [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + //SEG108 [53] phi from print_word::@1 to print_byte [phi:print_word::@1->print_byte] + //SEG109 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#14 [phi:print_word::@1->print_byte#0] -- register_copy + //SEG110 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#2 [phi:print_word::@1->print_byte#1] -- register_copy + jsr print_byte + //SEG111 print_word::@return + //SEG112 [52] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] ) + rts +} +//SEG113 print_byte print_byte: { - .label b = 5 - //SEG98 [46] (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#5 char_cursor#78 print_byte::$0 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_byte::$0 ] ) -- vbuaa=vbuz1_ror_4 + .label b = 7 + //SEG114 [54] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 char_cursor#105 print_byte::$0 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_byte::$0 ] ) -- vbuaa=vbuz1_ror_4 lda b lsr lsr lsr lsr - //SEG99 [47] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#78 print_char::ch#1 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#78 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG115 [55] (byte) print_char::ch#1 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#7 char_cursor#105 print_char::ch#1 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#105 print_char::ch#1 ] ) -- vbuaa=pbuc1_derefidx_vbuaa tay lda hextab,y - //SEG100 [48] call print_char param-assignment [ char_cursor#11 print_byte::b#5 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::b#5 ] ) - //SEG101 [53] phi from print_byte to print_char [phi:print_byte->print_char] - //SEG102 [53] phi (byte*) char_cursor#48 = (byte*) char_cursor#78 [phi:print_byte->print_char#0] -- register_copy - //SEG103 [53] phi (byte) print_char::ch#3 = (byte) print_char::ch#1 [phi:print_byte->print_char#1] -- register_copy + //SEG116 [56] call print_char param-assignment [ char_cursor#14 print_byte::b#7 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::b#7 ] ) + //SEG117 [61] phi from print_byte to print_char [phi:print_byte->print_char] + //SEG118 [61] phi (byte*) char_cursor#64 = (byte*) char_cursor#105 [phi:print_byte->print_char#0] -- register_copy + //SEG119 [61] phi (byte) print_char::ch#3 = (byte) print_char::ch#1 [phi:print_byte->print_char#1] -- register_copy jsr print_char - //SEG104 print_byte::@1 - //SEG105 [49] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#11 print_byte::$2 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_byte::$2 ] ) -- vbuaa=vbuz1_band_vbuc1 + //SEG120 print_byte::@1 + //SEG121 [57] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#14 print_byte::$2 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_byte::$2 ] ) -- vbuaa=vbuz1_band_vbuc1 lda #$f and b - //SEG106 [50] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#11 print_char::ch#2 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG122 [58] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#14 print_char::ch#2 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa tay lda hextab,y - //SEG107 [51] call print_char param-assignment [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) - //SEG108 [53] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] - //SEG109 [53] phi (byte*) char_cursor#48 = (byte*) char_cursor#11 [phi:print_byte::@1->print_char#0] -- register_copy - //SEG110 [53] phi (byte) print_char::ch#3 = (byte) print_char::ch#2 [phi:print_byte::@1->print_char#1] -- register_copy + //SEG123 [59] call print_char param-assignment [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) + //SEG124 [61] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] + //SEG125 [61] phi (byte*) char_cursor#64 = (byte*) char_cursor#14 [phi:print_byte::@1->print_char#0] -- register_copy + //SEG126 [61] phi (byte) print_char::ch#3 = (byte) print_char::ch#2 [phi:print_byte::@1->print_char#1] -- register_copy jsr print_char - //SEG111 print_byte::@return - //SEG112 [52] return [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + //SEG127 print_byte::@return + //SEG128 [60] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) rts hextab: .text "0123456789abcdef" } -//SEG113 print_char +//SEG129 print_char print_char: { - //SEG114 [54] *((byte*) char_cursor#48) ← (byte) print_char::ch#3 [ char_cursor#48 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#48 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#48 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#48 ] ) -- _deref_pbuz1=vbuaa + //SEG130 [62] *((byte*) char_cursor#64) ← (byte) print_char::ch#3 [ char_cursor#64 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#64 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#64 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#64 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#64 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (char_cursor),y - //SEG115 [55] (byte*) char_cursor#11 ← ++ (byte*) char_cursor#48 [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] ) -- pbuz1=_inc_pbuz1 + //SEG131 [63] (byte*) char_cursor#14 ← ++ (byte*) char_cursor#64 [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] ) -- pbuz1=_inc_pbuz1 inc char_cursor bne !+ inc char_cursor+1 !: - //SEG116 print_char::@return - //SEG117 [56] return [ char_cursor#11 ] ( main:2::test_8u:9::print_byte:22::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:48 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:48 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:48 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#5 char_cursor#11 ] main:2::test_8u:9::print_byte:22::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:26::print_char:51 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:30::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8u:9::print_byte:34::print_char:51 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_byte:117::print_char:51 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:91::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103::print_char:113 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#11 ] ) + //SEG132 print_char::@return + //SEG133 [64] return [ char_cursor#14 ] ( main:2::test_16u:11::print_word:24::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:56 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:56 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:56 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:49::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_word::w#4 char_cursor#14 ] main:2::test_16u:11::print_word:24::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:28::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:32::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_16u:11::print_word:36::print_byte:51::print_char:59 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#14 ] main:2::test_8u:9::print_byte:100::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:104::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:108::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8u:9::print_byte:112::print_char:59 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_byte:171::print_char:59 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:145::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157::print_char:167 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_sbyte::b#5 char_cursor#14 ] ) rts } -//SEG118 print_str +//SEG134 print_str print_str: { - .label str = 8 - //SEG119 [58] phi from print_str print_str::@2 to print_str::@1 [phi:print_str/print_str::@2->print_str::@1] - //SEG120 [58] phi (byte*) char_cursor#2 = (byte*) char_cursor#11 [phi:print_str/print_str::@2->print_str::@1#0] -- register_copy - //SEG121 [58] phi (byte*) print_str::str#7 = (byte*) print_str::str#9 [phi:print_str/print_str::@2->print_str::@1#1] -- register_copy - //SEG122 print_str::@1 + .label str = 5 + //SEG135 [66] phi from print_str print_str::@2 to print_str::@1 [phi:print_str/print_str::@2->print_str::@1] + //SEG136 [66] phi (byte*) char_cursor#100 = (byte*) char_cursor#14 [phi:print_str/print_str::@2->print_str::@1#0] -- register_copy + //SEG137 [66] phi (byte*) print_str::str#10 = (byte*) print_str::str#12 [phi:print_str/print_str::@2->print_str::@1#1] -- register_copy + //SEG138 print_str::@1 b1: - //SEG123 [59] if(*((byte*) print_str::str#7)!=(byte) '@') goto print_str::@2 [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 + //SEG139 [67] if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 ldy #0 lda (str),y cmp #'@' bne b2 - //SEG124 print_str::@return - //SEG125 [60] return [ char_cursor#2 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 ] ) + //SEG140 print_str::@return + //SEG141 [68] return [ char_cursor#100 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 ] ) rts - //SEG126 print_str::@2 + //SEG142 print_str::@2 b2: - //SEG127 [61] *((byte*) char_cursor#2) ← *((byte*) print_str::str#7) [ char_cursor#2 print_str::str#7 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#2 print_str::str#7 ] ) -- _deref_pbuz1=_deref_pbuz2 + //SEG143 [69] *((byte*) char_cursor#100) ← *((byte*) print_str::str#10) [ char_cursor#100 print_str::str#10 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#100 print_str::str#10 ] ) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y sta (char_cursor),y - //SEG128 [62] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#2 [ print_str::str#7 char_cursor#1 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#7 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG144 [70] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#100 [ print_str::str#10 char_cursor#1 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#10 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc char_cursor bne !+ inc char_cursor+1 !: - //SEG129 [63] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#7 [ print_str::str#0 char_cursor#1 ] ( main:2::test_8u:9::print_str:24 [ test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:28 [ test_8u::rem#0 test_8u::i#10 test_8u::res#0 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:32 [ test_8u::rem#0 test_8u::i#10 line_cursor#1 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:93 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:97 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:101 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG145 [71] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#10 [ print_str::str#0 char_cursor#1 ] ( main:2::test_16u:11::print_str:26 [ test_16u::i#10 div16u::rem#8 test_16u::divisor#0 test_16u::res#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_16u:11::print_str:30 [ test_16u::i#10 div16u::rem#8 test_16u::res#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_16u:11::print_str:34 [ test_16u::i#10 div16u::rem#8 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:102 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:106 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8u:9::print_str:110 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:147 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:151 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] main:2::test_8s:7::print_str:155 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_str::str#0 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 !: jmp b1 } -//SEG130 div8u -div8u: { - .label dividend = $b +//SEG146 div16u +div16u: { + .label rem = $a + .label dividend = 8 .label quotient = $c .label return = $c - .label divisor = $a - .label remainder = 8 - //SEG131 [65] phi from div8u to div8u::@1 [phi:div8u->div8u::@1] - //SEG132 [65] phi (byte) div8u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#0] -- vbuxx=vbuc1 + .label divisor = $12 + //SEG147 [73] phi from div16u to div16u::@1 [phi:div16u->div16u::@1] + //SEG148 [73] phi (byte) div16u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div16u->div16u::@1#0] -- vbuxx=vbuc1 ldx #0 - //SEG133 [65] phi (byte) div8u::quotient#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#1] -- vbuz1=vbuc1 + //SEG149 [73] phi (word) div16u::quotient#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div16u->div16u::@1#1] -- vwuz1=vbuc1 txa sta quotient - //SEG134 [65] phi (byte) div8u::dividend#3 = (byte) div8u::dividend#5 [phi:div8u->div8u::@1#2] -- register_copy - //SEG135 [65] phi (byte) div8u::rem#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#3] -- vbuyy=vbuc1 - tay - //SEG136 [65] phi from div8u::@3 to div8u::@1 [phi:div8u::@3->div8u::@1] - //SEG137 [65] phi (byte) div8u::i#2 = (byte) div8u::i#1 [phi:div8u::@3->div8u::@1#0] -- register_copy - //SEG138 [65] phi (byte) div8u::quotient#3 = (byte) div8u::return#0 [phi:div8u::@3->div8u::@1#1] -- register_copy - //SEG139 [65] phi (byte) div8u::dividend#3 = (byte) div8u::dividend#0 [phi:div8u::@3->div8u::@1#2] -- register_copy - //SEG140 [65] phi (byte) div8u::rem#4 = (byte) div8u::rem#8 [phi:div8u::@3->div8u::@1#3] -- register_copy - //SEG141 div8u::@1 + sta quotient+1 + //SEG150 [73] phi (word) div16u::dividend#2 = (word) div16u::dividend#1 [phi:div16u->div16u::@1#2] -- register_copy + //SEG151 [73] phi (word) div16u::rem#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div16u->div16u::@1#3] -- vwuz1=vbuc1 + sta rem + sta rem+1 + //SEG152 [73] phi from div16u::@3 to div16u::@1 [phi:div16u::@3->div16u::@1] + //SEG153 [73] phi (byte) div16u::i#2 = (byte) div16u::i#1 [phi:div16u::@3->div16u::@1#0] -- register_copy + //SEG154 [73] phi (word) div16u::quotient#3 = (word) div16u::return#0 [phi:div16u::@3->div16u::@1#1] -- register_copy + //SEG155 [73] phi (word) div16u::dividend#2 = (word) div16u::dividend#0 [phi:div16u::@3->div16u::@1#2] -- register_copy + //SEG156 [73] phi (word) div16u::rem#4 = (word) div16u::rem#8 [phi:div16u::@3->div16u::@1#3] -- register_copy + //SEG157 div16u::@1 b1: - //SEG142 [66] (byte) div8u::rem#1 ← (byte) div8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) -- vbuyy=vbuyy_rol_1 - tya - asl - tay - //SEG143 [67] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) -- vbuaa=vbuz1_band_vbuc1 - lda #$80 - and dividend - //SEG144 [68] if((byte~) div8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8u::@2 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) -- vbuaa_eq_0_then_la1 + //SEG158 [74] (word) div16u::rem#1 ← (word) div16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ) -- vwuz1=vwuz1_rol_1 + asl rem + rol rem+1 + //SEG159 [75] (byte~) div16u::$1 ← > (word) div16u::dividend#2 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$1 ] ) -- vbuaa=_hi_vwuz1 + lda dividend+1 + //SEG160 [76] (byte~) div16u::$2 ← (byte~) div16u::$1 & (byte/word/signed word/dword/signed dword) 128 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 div16u::$2 ] ) -- vbuaa=vbuaa_band_vbuc1 + and #$80 + //SEG161 [77] if((byte~) div16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div16u::@2 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#1 ] ) -- vbuaa_eq_0_then_la1 cmp #0 beq b2 - //SEG145 div8u::@4 - //SEG146 [69] (byte) div8u::rem#2 ← ++ (byte) div8u::rem#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ) -- vbuyy=_inc_vbuyy - iny - //SEG147 [70] phi from div8u::@1 div8u::@4 to div8u::@2 [phi:div8u::@1/div8u::@4->div8u::@2] - //SEG148 [70] phi (byte) div8u::rem#5 = (byte) div8u::rem#1 [phi:div8u::@1/div8u::@4->div8u::@2#0] -- register_copy - //SEG149 div8u::@2 + //SEG162 div16u::@4 + //SEG163 [78] (word) div16u::rem#2 ← ++ (word) div16u::rem#1 [ div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::dividend#2 div16u::quotient#3 div16u::i#2 div16u::rem#2 ] ) -- vwuz1=_inc_vwuz1 + inc rem + bne !+ + inc rem+1 + !: + //SEG164 [79] phi from div16u::@1 div16u::@4 to div16u::@2 [phi:div16u::@1/div16u::@4->div16u::@2] + //SEG165 [79] phi (word) div16u::rem#5 = (word) div16u::rem#1 [phi:div16u::@1/div16u::@4->div16u::@2#0] -- register_copy + //SEG166 div16u::@2 b2: - //SEG150 [71] (byte) div8u::dividend#0 ← (byte) div8u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + //SEG167 [80] (word) div16u::dividend#0 ← (word) div16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::quotient#3 div16u::i#2 div16u::dividend#0 div16u::rem#5 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::quotient#3 div16u::i#2 div16u::dividend#0 div16u::rem#5 ] ) -- vwuz1=vwuz1_rol_1 asl dividend - //SEG151 [72] (byte) div8u::quotient#1 ← (byte) div8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + rol dividend+1 + //SEG168 [81] (word) div16u::quotient#1 ← (word) div16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ) -- vwuz1=vwuz1_rol_1 asl quotient - //SEG152 [73] if((byte) div8u::rem#5<(byte) div8u::divisor#6) goto div8u::@3 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) -- vbuyy_lt_vbuz1_then_la1 - cpy divisor + rol quotient+1 + //SEG169 [82] if((word) div16u::rem#5<(word) div16u::divisor#0) goto div16u::@3 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#1 ] ) -- vwuz1_lt_vwuz2_then_la1 + lda rem+1 + cmp divisor+1 bcc b3 - //SEG153 div8u::@5 - //SEG154 [74] (byte) div8u::quotient#2 ← ++ (byte) div8u::quotient#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + bne !+ + lda rem + cmp divisor + bcc b3 + !: + //SEG170 div16u::@5 + //SEG171 [83] (word) div16u::quotient#2 ← ++ (word) div16u::quotient#1 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#2 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::rem#5 div16u::quotient#2 ] ) -- vwuz1=_inc_vwuz1 inc quotient - //SEG155 [75] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) -- vbuyy=vbuyy_minus_vbuz1 - tya + bne !+ + inc quotient+1 + !: + //SEG172 [84] (word) div16u::rem#3 ← (word) div16u::rem#5 - (word) div16u::divisor#0 [ div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::divisor#0 div16u::i#2 div16u::dividend#0 div16u::quotient#2 div16u::rem#3 ] ) -- vwuz1=vwuz1_minus_vwuz2 + lda rem sec sbc divisor - tay - //SEG156 [76] phi from div8u::@2 div8u::@5 to div8u::@3 [phi:div8u::@2/div8u::@5->div8u::@3] - //SEG157 [76] phi (byte) div8u::return#0 = (byte) div8u::quotient#1 [phi:div8u::@2/div8u::@5->div8u::@3#0] -- register_copy - //SEG158 [76] phi (byte) div8u::rem#8 = (byte) div8u::rem#5 [phi:div8u::@2/div8u::@5->div8u::@3#1] -- register_copy - //SEG159 div8u::@3 + sta rem + lda rem+1 + sbc divisor+1 + sta rem+1 + //SEG173 [85] phi from div16u::@2 div16u::@5 to div16u::@3 [phi:div16u::@2/div16u::@5->div16u::@3] + //SEG174 [85] phi (word) div16u::return#0 = (word) div16u::quotient#1 [phi:div16u::@2/div16u::@5->div16u::@3#0] -- register_copy + //SEG175 [85] phi (word) div16u::rem#8 = (word) div16u::rem#5 [phi:div16u::@2/div16u::@5->div16u::@3#1] -- register_copy + //SEG176 div16u::@3 b3: - //SEG160 [77] (byte) div8u::i#1 ← ++ (byte) div8u::i#2 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) -- vbuxx=_inc_vbuxx + //SEG177 [86] (byte) div16u::i#1 ← ++ (byte) div16u::i#2 [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ) -- vbuxx=_inc_vbuxx inx - //SEG161 [78] if((byte) div8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto div8u::@1 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) -- vbuxx_neq_vbuc1_then_la1 - cpx #8 + //SEG178 [87] if((byte) div16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 16) goto div16u::@1 [ div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::divisor#0 div16u::return#0 div16u::dividend#0 div16u::i#1 ] ) -- vbuxx_neq_vbuc1_then_la1 + cpx #$10 bne b1 - //SEG162 div8u::@6 - //SEG163 [79] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) -- _deref_pbuz1=vbuyy - tya - ldy #0 - sta (remainder),y - //SEG164 div8u::@return - //SEG165 [80] return [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:17 [ test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 line_cursor#1 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:87::div8u:131 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) + //SEG179 div16u::@return + //SEG180 [88] return [ div16u::rem#8 div16u::return#0 ] ( main:2::test_16u:11::div16u:19 [ test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 line_cursor#1 div16u::rem#8 div16u::return#0 ] ) rts } -//SEG166 test_8s -test_8s: { - .label dividend = 5 - .label divisor = $f - .label res = $a +//SEG181 test_8u +test_8u: { + .label rem = $14 + .label dividend = 7 + .label divisor = $e .label i = 2 - //SEG167 [82] phi from test_8s to test_8s::@1 [phi:test_8s->test_8s::@1] - //SEG168 [82] phi (byte*) line_cursor#30 = (const byte*) SCREEN#0 [phi:test_8s->test_8s::@1#0] -- pbuz1=pbuc1 - lda #SCREEN - sta line_cursor+1 - //SEG169 [82] phi (byte*) char_cursor#81 = (const byte*) SCREEN#0 [phi:test_8s->test_8s::@1#1] -- pbuz1=pbuc1 - lda #SCREEN - sta char_cursor+1 - //SEG170 [82] phi (signed byte) rem8s#18 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8s->test_8s::@1#2] -- vbsxx=vbuc1 + //SEG182 [89] (byte) test_8u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ line_cursor#1 test_8u::rem#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 div8s::rem8u#0 ] ) -- vbuz1=vbuc1 lda #0 - tax - //SEG171 [82] phi (byte) test_8s::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8s->test_8s::@1#3] -- vbuz1=vbuc1 + sta rem + //SEG183 [90] phi from test_8u to test_8u::@1 [phi:test_8u->test_8u::@1] + //SEG184 [90] phi (byte) test_8u::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8u->test_8u::@1#0] -- vbuz1=vbuc1 sta i - //SEG172 test_8s::@1 + //SEG185 [90] phi from test_8u::@11 to test_8u::@1 [phi:test_8u::@11->test_8u::@1] + //SEG186 [90] phi (byte) test_8u::i#10 = (byte) test_8u::i#1 [phi:test_8u::@11->test_8u::@1#0] -- register_copy + //SEG187 test_8u::@1 b1: - //SEG173 [83] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 ] ) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG188 [91] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 div8s::rem8u#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend - //SEG174 [84] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 ] ) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG189 [92] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8s::rem8u#0 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 lda divisors,y sta divisor - //SEG175 [85] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ) -- vbsaa=vbsz1 + //SEG190 [93] (byte) div8u::dividend#2 ← (byte) test_8u::dividend#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 lda dividend - //SEG176 [86] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ) -- vbsxx=vbsz1 - ldx divisor - //SEG177 [87] call div8s param-assignment [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ) - jsr div8s - //SEG178 [88] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ) - // (signed byte) div8s::return#3 = (signed byte) div8s::return#2 // register copy reg byte a - //SEG179 test_8s::@3 - //SEG180 [89] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) -- vbsz1=vbsaa - sta res - //SEG181 [90] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 char_cursor#81 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ) - // (signed byte) print_sbyte::b#1 = (signed byte) test_8s::dividend#0 // register copy zp ZP_BYTE:5 - //SEG182 [91] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) - //SEG183 [110] phi from test_8s::@3 to print_sbyte [phi:test_8s::@3->print_sbyte] - //SEG184 [110] phi (byte*) char_cursor#77 = (byte*) char_cursor#81 [phi:test_8s::@3->print_sbyte#0] -- register_copy - //SEG185 [110] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#1 [phi:test_8s::@3->print_sbyte#1] -- register_copy - jsr print_sbyte - //SEG186 [92] phi from test_8s::@3 to test_8s::@4 [phi:test_8s::@3->test_8s::@4] - //SEG187 test_8s::@4 - //SEG188 [93] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) - //SEG189 [57] phi from test_8s::@4 to print_str [phi:test_8s::@4->print_str] - //SEG190 [57] phi (byte*) print_str::str#9 = (const string) test_8s::str [phi:test_8s::@4->print_str#0] -- pbuz1=pbuc1 + sta div8u.dividend + //SEG191 [94] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::dividend#2 div8u::divisor#1 div8s::rem8u#0 ] ) + // (byte) div8u::divisor#1 = (byte) test_8u::divisor#0 // register copy zp ZP_BYTE:14 + //SEG192 [95] call div8u param-assignment [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#0 div8s::rem8u#0 ] ) + //SEG193 [118] phi from test_8u::@1 to div8u [phi:test_8u::@1->div8u] + //SEG194 [118] phi (byte*) div8u::remainder#8 = &(byte) test_8u::rem#0 [phi:test_8u::@1->div8u#0] -- pbuz1=pbuc1 + lda #rem + sta div8u.remainder+1 + //SEG195 [118] phi (byte) div8u::divisor#6 = (byte) div8u::divisor#1 [phi:test_8u::@1->div8u#1] -- register_copy + //SEG196 [118] phi (byte) div8u::dividend#5 = (byte) div8u::dividend#2 [phi:test_8u::@1->div8u#2] -- register_copy + jsr div8u + //SEG197 [96] (byte) div8u::return#3 ← (byte) div8u::return#0 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 div8u::return#3 div8s::rem8u#0 ] ) -- vbuaa=vbuz1 + lda div8u.return + //SEG198 test_8u::@3 + //SEG199 [97] (byte) test_8u::res#0 ← (byte) div8u::return#3 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) -- vbuxx=vbuaa + tax + //SEG200 [98] (byte) print_byte::b#3 ← (byte) test_8u::dividend#0 [ line_cursor#1 print_byte::b#3 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 print_byte::b#3 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + // (byte) print_byte::b#3 = (byte) test_8u::dividend#0 // register copy zp ZP_BYTE:7 + //SEG201 [99] (byte*~) char_cursor#128 ← (byte*) line_cursor#1 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 print_byte::b#3 char_cursor#128 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) -- pbuz1=pbuz2 + lda line_cursor + sta char_cursor + lda line_cursor+1 + sta char_cursor+1 + //SEG202 [100] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + //SEG203 [53] phi from test_8u::@3 to print_byte [phi:test_8u::@3->print_byte] + //SEG204 [53] phi (byte*) char_cursor#105 = (byte*~) char_cursor#128 [phi:test_8u::@3->print_byte#0] -- register_copy + //SEG205 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#3 [phi:test_8u::@3->print_byte#1] -- register_copy + jsr print_byte + //SEG206 [101] phi from test_8u::@3 to test_8u::@4 [phi:test_8u::@3->test_8u::@4] + //SEG207 test_8u::@4 + //SEG208 [102] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 div8s::rem8u#0 ] ) + //SEG209 [65] phi from test_8u::@4 to print_str [phi:test_8u::@4->print_str] + //SEG210 [65] phi (byte*) print_str::str#12 = (const string) test_8u::str [phi:test_8u::@4->print_str#0] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str - //SEG191 test_8s::@5 - //SEG192 [94] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + //SEG211 test_8u::@5 + //SEG212 [103] (byte) print_byte::b#4 ← (byte) test_8u::divisor#0 [ line_cursor#1 char_cursor#100 print_byte::b#4 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#4 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 lda divisor - sta print_sbyte.b - //SEG193 [95] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) - //SEG194 [110] phi from test_8s::@5 to print_sbyte [phi:test_8s::@5->print_sbyte] - //SEG195 [110] phi (byte*) char_cursor#77 = (byte*) char_cursor#2 [phi:test_8s::@5->print_sbyte#0] -- register_copy - //SEG196 [110] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#2 [phi:test_8s::@5->print_sbyte#1] -- register_copy - jsr print_sbyte - //SEG197 [96] phi from test_8s::@5 to test_8s::@6 [phi:test_8s::@5->test_8s::@6] - //SEG198 test_8s::@6 - //SEG199 [97] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) - //SEG200 [57] phi from test_8s::@6 to print_str [phi:test_8s::@6->print_str] - //SEG201 [57] phi (byte*) print_str::str#9 = (const string) test_8s::str1 [phi:test_8s::@6->print_str#0] -- pbuz1=pbuc1 + sta print_byte.b + //SEG213 [104] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + //SEG214 [53] phi from test_8u::@5 to print_byte [phi:test_8u::@5->print_byte] + //SEG215 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#100 [phi:test_8u::@5->print_byte#0] -- register_copy + //SEG216 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#4 [phi:test_8u::@5->print_byte#1] -- register_copy + jsr print_byte + //SEG217 [105] phi from test_8u::@5 to test_8u::@6 [phi:test_8u::@5->test_8u::@6] + //SEG218 test_8u::@6 + //SEG219 [106] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 test_8u::res#0 div8s::rem8u#0 ] ) + //SEG220 [65] phi from test_8u::@6 to print_str [phi:test_8u::@6->print_str] + //SEG221 [65] phi (byte*) print_str::str#12 = (const string) test_8u::str1 [phi:test_8u::@6->print_str#0] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str - //SEG202 test_8s::@7 - //SEG203 [98] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 - lda res - sta print_sbyte.b - //SEG204 [99] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - //SEG205 [110] phi from test_8s::@7 to print_sbyte [phi:test_8s::@7->print_sbyte] - //SEG206 [110] phi (byte*) char_cursor#77 = (byte*) char_cursor#2 [phi:test_8s::@7->print_sbyte#0] -- register_copy - //SEG207 [110] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#3 [phi:test_8s::@7->print_sbyte#1] -- register_copy - jsr print_sbyte - //SEG208 [100] phi from test_8s::@7 to test_8s::@8 [phi:test_8s::@7->test_8s::@8] - //SEG209 test_8s::@8 - //SEG210 [101] call print_str param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - //SEG211 [57] phi from test_8s::@8 to print_str [phi:test_8s::@8->print_str] - //SEG212 [57] phi (byte*) print_str::str#9 = (const string) test_8s::str2 [phi:test_8s::@8->print_str#0] -- pbuz1=pbuc1 + //SEG222 test_8u::@7 + //SEG223 [107] (byte) print_byte::b#5 ← (byte) test_8u::res#0 [ line_cursor#1 char_cursor#100 print_byte::b#5 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#5 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) -- vbuz1=vbuxx + stx print_byte.b + //SEG224 [108] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + //SEG225 [53] phi from test_8u::@7 to print_byte [phi:test_8u::@7->print_byte] + //SEG226 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#100 [phi:test_8u::@7->print_byte#0] -- register_copy + //SEG227 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#5 [phi:test_8u::@7->print_byte#1] -- register_copy + jsr print_byte + //SEG228 [109] phi from test_8u::@7 to test_8u::@8 [phi:test_8u::@7->test_8u::@8] + //SEG229 test_8u::@8 + //SEG230 [110] call print_str param-assignment [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + //SEG231 [65] phi from test_8u::@8 to print_str [phi:test_8u::@8->print_str] + //SEG232 [65] phi (byte*) print_str::str#12 = (const string) test_8u::str2 [phi:test_8u::@8->print_str#0] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str - //SEG213 test_8s::@9 - //SEG214 [102] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#2 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ) -- vbsz1=vbsxx - stx print_sbyte.b - //SEG215 [103] call print_sbyte param-assignment [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#30 char_cursor#11 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - //SEG216 [110] phi from test_8s::@9 to print_sbyte [phi:test_8s::@9->print_sbyte] - //SEG217 [110] phi (byte*) char_cursor#77 = (byte*) char_cursor#2 [phi:test_8s::@9->print_sbyte#0] -- register_copy - //SEG218 [110] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#4 [phi:test_8s::@9->print_sbyte#1] -- register_copy - jsr print_sbyte - //SEG219 [104] phi from test_8s::@9 to test_8s::@10 [phi:test_8s::@9->test_8s::@10] - //SEG220 test_8s::@10 - //SEG221 [105] call print_ln param-assignment [ test_8u::rem#0 line_cursor#1 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) - //SEG222 [40] phi from test_8s::@10 to print_ln [phi:test_8s::@10->print_ln] - //SEG223 [40] phi (byte*) line_cursor#27 = (byte*) line_cursor#30 [phi:test_8s::@10->print_ln#0] -- register_copy + //SEG233 test_8u::@9 + //SEG234 [111] (byte) print_byte::b#6 ← (byte) test_8u::rem#0 [ line_cursor#1 char_cursor#100 print_byte::b#6 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#100 print_byte::b#6 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) -- vbuz1=vbuz2 + lda rem + sta print_byte.b + //SEG235 [112] call print_byte param-assignment [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 char_cursor#14 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + //SEG236 [53] phi from test_8u::@9 to print_byte [phi:test_8u::@9->print_byte] + //SEG237 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#100 [phi:test_8u::@9->print_byte#0] -- register_copy + //SEG238 [53] phi (byte) print_byte::b#7 = (byte) print_byte::b#6 [phi:test_8u::@9->print_byte#1] -- register_copy + jsr print_byte + //SEG239 [113] phi from test_8u::@9 to test_8u::@10 [phi:test_8u::@9->test_8u::@10] + //SEG240 test_8u::@10 + //SEG241 [114] call print_ln param-assignment [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#10 div8s::rem8u#0 ] ) + //SEG242 [42] phi from test_8u::@10 to print_ln [phi:test_8u::@10->print_ln] + //SEG243 [42] phi (byte*) line_cursor#33 = (byte*) line_cursor#1 [phi:test_8u::@10->print_ln#0] -- register_copy jsr print_ln - //SEG224 test_8s::@11 - //SEG225 [106] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + //SEG244 test_8u::@11 + //SEG245 [115] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 inc i - //SEG226 [107] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@12 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 + //SEG246 [116] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@1 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9 [ line_cursor#1 test_8u::rem#0 test_8u::i#1 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 + lda i + cmp #6 + bne b1 + //SEG247 test_8u::@return + //SEG248 [117] return [ line_cursor#1 ] ( main:2::test_8u:9 [ line_cursor#1 ] ) + rts + str: .text " / @" + str1: .text " = @" + str2: .text " @" + dividends: .byte $ff, $ff, $ff, $ff, $ff, $ff + divisors: .byte 5, 7, $b, $d, $11, $13 +} +//SEG249 div8u +div8u: { + .label dividend = $f + .label quotient = $10 + .label return = $10 + .label divisor = $e + .label remainder = 5 + //SEG250 [119] phi from div8u to div8u::@1 [phi:div8u->div8u::@1] + //SEG251 [119] phi (byte) div8u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#0] -- vbuxx=vbuc1 + ldx #0 + //SEG252 [119] phi (byte) div8u::quotient#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#1] -- vbuz1=vbuc1 + txa + sta quotient + //SEG253 [119] phi (byte) div8u::dividend#3 = (byte) div8u::dividend#5 [phi:div8u->div8u::@1#2] -- register_copy + //SEG254 [119] phi (byte) div8u::rem#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8u->div8u::@1#3] -- vbuyy=vbuc1 + tay + //SEG255 [119] phi from div8u::@3 to div8u::@1 [phi:div8u::@3->div8u::@1] + //SEG256 [119] phi (byte) div8u::i#2 = (byte) div8u::i#1 [phi:div8u::@3->div8u::@1#0] -- register_copy + //SEG257 [119] phi (byte) div8u::quotient#3 = (byte) div8u::return#0 [phi:div8u::@3->div8u::@1#1] -- register_copy + //SEG258 [119] phi (byte) div8u::dividend#3 = (byte) div8u::dividend#0 [phi:div8u::@3->div8u::@1#2] -- register_copy + //SEG259 [119] phi (byte) div8u::rem#4 = (byte) div8u::rem#8 [phi:div8u::@3->div8u::@1#3] -- register_copy + //SEG260 div8u::@1 + b1: + //SEG261 [120] (byte) div8u::rem#1 ← (byte) div8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) -- vbuyy=vbuyy_rol_1 + tya + asl + tay + //SEG262 [121] (byte~) div8u::$1 ← (byte) div8u::dividend#3 & (byte/word/signed word/dword/signed dword) 128 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8u::$1 div8s::rem8u#0 ] ) -- vbuaa=vbuz1_band_vbuc1 + lda #$80 + and dividend + //SEG263 [122] if((byte~) div8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8u::@2 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#1 div8s::rem8u#0 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b2 + //SEG264 div8u::@4 + //SEG265 [123] (byte) div8u::rem#2 ← ++ (byte) div8u::rem#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::dividend#3 div8u::quotient#3 div8u::i#2 div8u::rem#2 div8s::rem8u#0 ] ) -- vbuyy=_inc_vbuyy + iny + //SEG266 [124] phi from div8u::@1 div8u::@4 to div8u::@2 [phi:div8u::@1/div8u::@4->div8u::@2] + //SEG267 [124] phi (byte) div8u::rem#5 = (byte) div8u::rem#1 [phi:div8u::@1/div8u::@4->div8u::@2#0] -- register_copy + //SEG268 div8u::@2 + b2: + //SEG269 [125] (byte) div8u::dividend#0 ← (byte) div8u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::quotient#3 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + asl dividend + //SEG270 [126] (byte) div8u::quotient#1 ← (byte) div8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) -- vbuz1=vbuz1_rol_1 + asl quotient + //SEG271 [127] if((byte) div8u::rem#5<(byte) div8u::divisor#6) goto div8u::@3 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#1 div8s::rem8u#0 ] ) -- vbuyy_lt_vbuz1_then_la1 + cpy divisor + bcc b3 + //SEG272 div8u::@5 + //SEG273 [128] (byte) div8u::quotient#2 ← ++ (byte) div8u::quotient#1 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::rem#5 div8u::quotient#2 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + inc quotient + //SEG274 [129] (byte) div8u::rem#3 ← (byte) div8u::rem#5 - (byte) div8u::divisor#6 [ test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::divisor#6 div8u::remainder#8 div8u::i#2 div8u::dividend#0 div8u::quotient#2 div8u::rem#3 div8s::rem8u#0 ] ) -- vbuyy=vbuyy_minus_vbuz1 + tya + sec + sbc divisor + tay + //SEG275 [130] phi from div8u::@2 div8u::@5 to div8u::@3 [phi:div8u::@2/div8u::@5->div8u::@3] + //SEG276 [130] phi (byte) div8u::return#0 = (byte) div8u::quotient#1 [phi:div8u::@2/div8u::@5->div8u::@3#0] -- register_copy + //SEG277 [130] phi (byte) div8u::rem#8 = (byte) div8u::rem#5 [phi:div8u::@2/div8u::@5->div8u::@3#1] -- register_copy + //SEG278 div8u::@3 + b3: + //SEG279 [131] (byte) div8u::i#1 ← ++ (byte) div8u::i#2 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) -- vbuxx=_inc_vbuxx + inx + //SEG280 [132] if((byte) div8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto div8u::@1 [ test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8u::divisor#6 div8u::remainder#8 div8u::rem#8 div8u::dividend#0 div8u::i#1 div8s::rem8u#0 ] ) -- vbuxx_neq_vbuc1_then_la1 + cpx #8 + bne b1 + //SEG281 div8u::@6 + //SEG282 [133] *((byte*) div8u::remainder#8) ← (byte) div8u::rem#8 [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) -- _deref_pbuz1=vbuyy + tya + ldy #0 + sta (remainder),y + //SEG283 div8u::@return + //SEG284 [134] return [ test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ( main:2::test_8u:9::div8u:95 [ line_cursor#1 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] main:2::test_8s:7::div8s:141::div8u:185 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 test_8u::rem#0 div8u::return#0 div8s::rem8u#0 ] ) + rts +} +//SEG285 test_8s +test_8s: { + .label dividend = 7 + .label divisor = $15 + .label res = $e + .label i = 2 + //SEG286 [136] phi from test_8s to test_8s::@1 [phi:test_8s->test_8s::@1] + //SEG287 [136] phi (byte*) line_cursor#37 = (const byte*) SCREEN#0 [phi:test_8s->test_8s::@1#0] -- pbuz1=pbuc1 + lda #SCREEN + sta line_cursor+1 + //SEG288 [136] phi (byte*) char_cursor#109 = (const byte*) SCREEN#0 [phi:test_8s->test_8s::@1#1] -- pbuz1=pbuc1 + lda #SCREEN + sta char_cursor+1 + //SEG289 [136] phi (signed byte) rem8s#18 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8s->test_8s::@1#2] -- vbsxx=vbuc1 + lda #0 + tax + //SEG290 [136] phi (byte) test_8s::i#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:test_8s->test_8s::@1#3] -- vbuz1=vbuc1 + sta i + //SEG291 test_8s::@1 + b1: + //SEG292 [137] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 ] ) -- vbsz1=pbsc1_derefidx_vbuz2 + ldy i + lda dividends,y + sta dividend + //SEG293 [138] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 ] ) -- vbsz1=pbsc1_derefidx_vbuz2 + lda divisors,y + sta divisor + //SEG294 [139] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 ] ) -- vbsaa=vbsz1 + lda dividend + //SEG295 [140] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 div8s::dividend#0 div8s::divisor#0 ] ) -- vbsxx=vbsz1 + ldx divisor + //SEG296 [141] call div8s param-assignment [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#2 div8s::rem8u#0 ] ) + jsr div8s + //SEG297 [142] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 div8s::return#3 div8s::rem8u#0 ] ) + // (signed byte) div8s::return#3 = (signed byte) div8s::return#2 // register copy reg byte a + //SEG298 test_8s::@3 + //SEG299 [143] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::dividend#0 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) -- vbsz1=vbsaa + sta res + //SEG300 [144] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 char_cursor#109 rem8s#3 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 div8s::rem8u#0 ] ) + // (signed byte) print_sbyte::b#1 = (signed byte) test_8s::dividend#0 // register copy zp ZP_BYTE:7 + //SEG301 [145] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + //SEG302 [164] phi from test_8s::@3 to print_sbyte [phi:test_8s::@3->print_sbyte] + //SEG303 [164] phi (byte*) char_cursor#103 = (byte*) char_cursor#109 [phi:test_8s::@3->print_sbyte#0] -- register_copy + //SEG304 [164] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#1 [phi:test_8s::@3->print_sbyte#1] -- register_copy + jsr print_sbyte + //SEG305 [146] phi from test_8s::@3 to test_8s::@4 [phi:test_8s::@3->test_8s::@4] + //SEG306 test_8s::@4 + //SEG307 [147] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 ] ) + //SEG308 [65] phi from test_8s::@4 to print_str [phi:test_8s::@4->print_str] + //SEG309 [65] phi (byte*) print_str::str#12 = (const string) test_8s::str [phi:test_8s::@4->print_str#0] -- pbuz1=pbuc1 + lda #str + sta print_str.str+1 + jsr print_str + //SEG310 test_8s::@5 + //SEG311 [148] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 print_sbyte::b#2 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + lda divisor + sta print_sbyte.b + //SEG312 [149] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) + //SEG313 [164] phi from test_8s::@5 to print_sbyte [phi:test_8s::@5->print_sbyte] + //SEG314 [164] phi (byte*) char_cursor#103 = (byte*) char_cursor#100 [phi:test_8s::@5->print_sbyte#0] -- register_copy + //SEG315 [164] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#2 [phi:test_8s::@5->print_sbyte#1] -- register_copy + jsr print_sbyte + //SEG316 [150] phi from test_8s::@5 to test_8s::@6 [phi:test_8s::@5->test_8s::@6] + //SEG317 test_8s::@6 + //SEG318 [151] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 ] ) + //SEG319 [65] phi from test_8s::@6 to print_str [phi:test_8s::@6->print_str] + //SEG320 [65] phi (byte*) print_str::str#12 = (const string) test_8s::str1 [phi:test_8s::@6->print_str#0] -- pbuz1=pbuc1 + lda #str1 + sta print_str.str+1 + jsr print_str + //SEG321 test_8s::@7 + //SEG322 [152] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#3 div8s::rem8u#0 ] ) -- vbsz1=vbsz2 + lda res + sta print_sbyte.b + //SEG323 [153] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + //SEG324 [164] phi from test_8s::@7 to print_sbyte [phi:test_8s::@7->print_sbyte] + //SEG325 [164] phi (byte*) char_cursor#103 = (byte*) char_cursor#100 [phi:test_8s::@7->print_sbyte#0] -- register_copy + //SEG326 [164] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#3 [phi:test_8s::@7->print_sbyte#1] -- register_copy + jsr print_sbyte + //SEG327 [154] phi from test_8s::@7 to test_8s::@8 [phi:test_8s::@7->test_8s::@8] + //SEG328 test_8s::@8 + //SEG329 [155] call print_str param-assignment [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + //SEG330 [65] phi from test_8s::@8 to print_str [phi:test_8s::@8->print_str] + //SEG331 [65] phi (byte*) print_str::str#12 = (const string) test_8s::str2 [phi:test_8s::@8->print_str#0] -- pbuz1=pbuc1 + lda #str2 + sta print_str.str+1 + jsr print_str + //SEG332 test_8s::@9 + //SEG333 [156] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#100 test_8u::rem#0 test_8s::i#10 rem8s#3 print_sbyte::b#4 div8s::rem8u#0 ] ) -- vbsz1=vbsxx + stx print_sbyte.b + //SEG334 [157] call print_sbyte param-assignment [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#37 char_cursor#14 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + //SEG335 [164] phi from test_8s::@9 to print_sbyte [phi:test_8s::@9->print_sbyte] + //SEG336 [164] phi (byte*) char_cursor#103 = (byte*) char_cursor#100 [phi:test_8s::@9->print_sbyte#0] -- register_copy + //SEG337 [164] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#4 [phi:test_8s::@9->print_sbyte#1] -- register_copy + jsr print_sbyte + //SEG338 [158] phi from test_8s::@9 to test_8s::@10 [phi:test_8s::@9->test_8s::@10] + //SEG339 test_8s::@10 + //SEG340 [159] call print_ln param-assignment [ line_cursor#1 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 ] ) + //SEG341 [42] phi from test_8s::@10 to print_ln [phi:test_8s::@10->print_ln] + //SEG342 [42] phi (byte*) line_cursor#33 = (byte*) line_cursor#37 [phi:test_8s::@10->print_ln#0] -- register_copy + jsr print_ln + //SEG343 test_8s::@11 + //SEG344 [160] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) -- vbuz1=_inc_vbuz1 + inc i + //SEG345 [161] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@12 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 div8s::rem8u#0 ] ) -- vbuz1_neq_vbuc1_then_la1 lda i cmp #6 bne b12 - //SEG227 test_8s::@return - //SEG228 [108] return [ line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 div8s::rem8u#0 ] ) + //SEG346 test_8s::@return + //SEG347 [162] return [ line_cursor#1 div8s::rem8u#0 ] ( main:2::test_8s:7 [ line_cursor#1 div8s::rem8u#0 ] ) rts - //SEG229 test_8s::@12 + //SEG348 test_8s::@12 b12: - //SEG230 [109] (byte*~) char_cursor#100 ← (byte*) line_cursor#1 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ( main:2::test_8s:7 [ test_8u::rem#0 line_cursor#1 test_8s::i#1 rem8s#3 char_cursor#100 ] ) -- pbuz1=pbuz2 + //SEG349 [163] (byte*~) char_cursor#137 ← (byte*) line_cursor#1 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ( main:2::test_8s:7 [ line_cursor#1 test_8u::rem#0 test_8s::i#1 rem8s#3 char_cursor#137 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG231 [82] phi from test_8s::@12 to test_8s::@1 [phi:test_8s::@12->test_8s::@1] - //SEG232 [82] phi (byte*) line_cursor#30 = (byte*) line_cursor#1 [phi:test_8s::@12->test_8s::@1#0] -- register_copy - //SEG233 [82] phi (byte*) char_cursor#81 = (byte*~) char_cursor#100 [phi:test_8s::@12->test_8s::@1#1] -- register_copy - //SEG234 [82] phi (signed byte) rem8s#18 = (signed byte) rem8s#3 [phi:test_8s::@12->test_8s::@1#2] -- register_copy - //SEG235 [82] phi (byte) test_8s::i#10 = (byte) test_8s::i#1 [phi:test_8s::@12->test_8s::@1#3] -- register_copy + //SEG350 [136] phi from test_8s::@12 to test_8s::@1 [phi:test_8s::@12->test_8s::@1] + //SEG351 [136] phi (byte*) line_cursor#37 = (byte*) line_cursor#1 [phi:test_8s::@12->test_8s::@1#0] -- register_copy + //SEG352 [136] phi (byte*) char_cursor#109 = (byte*~) char_cursor#137 [phi:test_8s::@12->test_8s::@1#1] -- register_copy + //SEG353 [136] phi (signed byte) rem8s#18 = (signed byte) rem8s#3 [phi:test_8s::@12->test_8s::@1#2] -- register_copy + //SEG354 [136] phi (byte) test_8s::i#10 = (byte) test_8s::i#1 [phi:test_8s::@12->test_8s::@1#3] -- register_copy jmp b1 str: .text " / @" str1: .text " = @" @@ -6904,182 +9093,182 @@ test_8s: { dividends: .byte $7f, -$7f, -$7f, $7f, $7f, $7f divisors: .byte 5, 7, -$b, -$d, $11, $13 } -//SEG236 print_sbyte +//SEG355 print_sbyte print_sbyte: { - .label b = 5 - //SEG237 [111] if((signed byte) print_sbyte::b#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#77 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#77 print_sbyte::b#5 ] ) -- vbsz1_ge_0_then_la1 + .label b = 7 + //SEG356 [165] if((signed byte) print_sbyte::b#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#103 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#103 print_sbyte::b#5 ] ) -- vbsz1_ge_0_then_la1 lda b cmp #0 bpl b1 - //SEG238 [112] phi from print_sbyte to print_sbyte::@2 [phi:print_sbyte->print_sbyte::@2] - //SEG239 print_sbyte::@2 - //SEG240 [113] call print_char param-assignment [ char_cursor#11 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#5 ] ) - //SEG241 [53] phi from print_sbyte::@2 to print_char [phi:print_sbyte::@2->print_char] - //SEG242 [53] phi (byte*) char_cursor#48 = (byte*) char_cursor#77 [phi:print_sbyte::@2->print_char#0] -- register_copy - //SEG243 [53] phi (byte) print_char::ch#3 = (byte) '-' [phi:print_sbyte::@2->print_char#1] -- vbuaa=vbuc1 + //SEG357 [166] phi from print_sbyte to print_sbyte::@2 [phi:print_sbyte->print_sbyte::@2] + //SEG358 print_sbyte::@2 + //SEG359 [167] call print_char param-assignment [ char_cursor#14 print_sbyte::b#5 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#5 ] ) + //SEG360 [61] phi from print_sbyte::@2 to print_char [phi:print_sbyte::@2->print_char] + //SEG361 [61] phi (byte*) char_cursor#64 = (byte*) char_cursor#103 [phi:print_sbyte::@2->print_char#0] -- register_copy + //SEG362 [61] phi (byte) print_char::ch#3 = (byte) '-' [phi:print_sbyte::@2->print_char#1] -- vbuaa=vbuc1 lda #'-' jsr print_char - //SEG244 print_sbyte::@4 - //SEG245 [114] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#11 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 print_sbyte::b#0 ] ) -- vbsz1=_neg_vbsz1 + //SEG363 print_sbyte::@4 + //SEG364 [168] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#5 [ char_cursor#14 print_sbyte::b#0 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 print_sbyte::b#0 ] ) -- vbsz1=_neg_vbsz1 lda b eor #$ff clc adc #1 sta b - //SEG246 [115] phi from print_sbyte print_sbyte::@4 to print_sbyte::@1 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1] - //SEG247 [115] phi (byte*) char_cursor#76 = (byte*) char_cursor#77 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#0] -- register_copy - //SEG248 [115] phi (signed byte) print_sbyte::b#6 = (signed byte) print_sbyte::b#5 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#1] -- register_copy - //SEG249 print_sbyte::@1 + //SEG365 [169] phi from print_sbyte print_sbyte::@4 to print_sbyte::@1 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1] + //SEG366 [169] phi (byte*) char_cursor#102 = (byte*) char_cursor#103 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#0] -- register_copy + //SEG367 [169] phi (signed byte) print_sbyte::b#6 = (signed byte) print_sbyte::b#5 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#1] -- register_copy + //SEG368 print_sbyte::@1 b1: - //SEG250 [116] (byte~) print_byte::b#7 ← (byte)(signed byte) print_sbyte::b#6 [ print_byte::b#7 char_cursor#76 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#7 char_cursor#76 ] ) - // (byte~) print_byte::b#7 = (byte)(signed byte) print_sbyte::b#6 // register copy zp ZP_BYTE:5 - //SEG251 [117] call print_byte param-assignment [ char_cursor#11 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) - //SEG252 [45] phi from print_sbyte::@1 to print_byte [phi:print_sbyte::@1->print_byte] - //SEG253 [45] phi (byte*) char_cursor#78 = (byte*) char_cursor#76 [phi:print_sbyte::@1->print_byte#0] -- register_copy - //SEG254 [45] phi (byte) print_byte::b#5 = (byte~) print_byte::b#7 [phi:print_sbyte::@1->print_byte#1] -- register_copy + //SEG369 [170] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#6 [ print_byte::b#9 char_cursor#102 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 print_byte::b#9 char_cursor#102 ] ) + // (byte~) print_byte::b#9 = (byte)(signed byte) print_sbyte::b#6 // register copy zp ZP_BYTE:7 + //SEG370 [171] call print_byte param-assignment [ char_cursor#14 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) + //SEG371 [53] phi from print_sbyte::@1 to print_byte [phi:print_sbyte::@1->print_byte] + //SEG372 [53] phi (byte*) char_cursor#105 = (byte*) char_cursor#102 [phi:print_sbyte::@1->print_byte#0] -- register_copy + //SEG373 [53] phi (byte) print_byte::b#7 = (byte~) print_byte::b#9 [phi:print_sbyte::@1->print_byte#1] -- register_copy jsr print_byte - //SEG255 print_sbyte::@return - //SEG256 [118] return [ char_cursor#11 ] ( main:2::test_8s:7::print_sbyte:91 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:95 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:99 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] main:2::test_8s:7::print_sbyte:103 [ test_8u::rem#0 line_cursor#30 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#11 ] ) + //SEG374 print_sbyte::@return + //SEG375 [172] return [ char_cursor#14 ] ( main:2::test_8s:7::print_sbyte:145 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::divisor#0 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:149 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 test_8s::res#0 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:153 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] main:2::test_8s:7::print_sbyte:157 [ line_cursor#37 test_8u::rem#0 test_8s::i#10 rem8s#3 div8s::rem8u#0 char_cursor#14 ] ) rts } -//SEG257 div8s +//SEG376 div8s div8s: { - .label neg = $d - .label rem8u = $10 - //SEG258 [119] if((signed byte) div8s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@16 [ test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ) -- vbsaa_ge_0_then_la1 + .label neg = $11 + .label rem8u = $16 + //SEG377 [173] if((signed byte) div8s::dividend#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@16 [ test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividend#0 div8s::divisor#0 ] ) -- vbsaa_ge_0_then_la1 cmp #0 bpl b16 - //SEG259 div8s::@7 - //SEG260 [120] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) -- vbsaa=_neg_vbsaa + //SEG378 div8s::@7 + //SEG379 [174] (signed byte~) div8s::$2 ← - (signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::$2 ] ) -- vbsaa=_neg_vbsaa eor #$ff clc adc #1 - //SEG261 [121] (byte~) div8s::dividendb#8 ← (byte)(signed byte~) div8s::$2 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ) -- vbuyy=vbuaa + //SEG380 [175] (byte~) div8s::dividendb#8 ← (byte)(signed byte~) div8s::$2 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#8 ] ) -- vbuyy=vbuaa tay - //SEG262 [122] phi from div8s::@7 to div8s::@2 [phi:div8s::@7->div8s::@2] - //SEG263 [122] phi (byte) div8s::dividendb#3 = (byte~) div8s::dividendb#8 [phi:div8s::@7->div8s::@2#0] -- register_copy - //SEG264 [122] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:div8s::@7->div8s::@2#1] -- vbuz1=vbuc1 + //SEG381 [176] phi from div8s::@7 to div8s::@2 [phi:div8s::@7->div8s::@2] + //SEG382 [176] phi (byte) div8s::dividendb#3 = (byte~) div8s::dividendb#8 [phi:div8s::@7->div8s::@2#0] -- register_copy + //SEG383 [176] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:div8s::@7->div8s::@2#1] -- vbuz1=vbuc1 lda #1 sta neg - //SEG265 div8s::@2 + //SEG384 div8s::@2 b2: - //SEG266 [123] if((signed byte) div8s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@17 [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) -- vbsxx_ge_0_then_la1 + //SEG385 [177] if((signed byte) div8s::divisor#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@17 [ test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::neg#3 div8s::dividendb#3 ] ) -- vbsxx_ge_0_then_la1 cpx #0 bpl b4 - //SEG267 div8s::@9 - //SEG268 [124] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) -- vbsxx=_neg_vbsxx + //SEG386 div8s::@9 + //SEG387 [178] (signed byte~) div8s::$7 ← - (signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::$7 ] ) -- vbsxx=_neg_vbsxx txa eor #$ff clc adc #1 tax - //SEG269 [125] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) -- vbuz1=vbuz1_bxor_vbuc1 + //SEG388 [179] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::$7 div8s::neg#2 ] ) -- vbuz1=vbuz1_bxor_vbuc1 lda neg eor #1 sta neg - //SEG270 [126] (byte~) div8s::divisorb#5 ← (byte)(signed byte~) div8s::$7 [ test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ) + //SEG389 [180] (byte~) div8s::divisorb#5 ← (byte)(signed byte~) div8s::$7 [ test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::neg#2 div8s::divisorb#5 ] ) // (byte~) div8s::divisorb#5 = (byte)(signed byte~) div8s::$7 // register copy reg byte x - //SEG271 [127] phi from div8s::@17 div8s::@9 to div8s::@4 [phi:div8s::@17/div8s::@9->div8s::@4] - //SEG272 [127] phi (byte) div8s::neg#4 = (byte) div8s::neg#3 [phi:div8s::@17/div8s::@9->div8s::@4#0] -- register_copy - //SEG273 [127] phi (byte) div8s::divisorb#3 = (byte~) div8s::divisorb#4 [phi:div8s::@17/div8s::@9->div8s::@4#1] -- register_copy - //SEG274 div8s::@4 + //SEG390 [181] phi from div8s::@17 div8s::@9 to div8s::@4 [phi:div8s::@17/div8s::@9->div8s::@4] + //SEG391 [181] phi (byte) div8s::neg#4 = (byte) div8s::neg#3 [phi:div8s::@17/div8s::@9->div8s::@4#0] -- register_copy + //SEG392 [181] phi (byte) div8s::divisorb#3 = (byte~) div8s::divisorb#4 [phi:div8s::@17/div8s::@9->div8s::@4#1] -- register_copy + //SEG393 div8s::@4 b4: - //SEG275 [128] (byte) div8s::rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuc1 + //SEG394 [182] (byte) div8s::rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::dividendb#3 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuc1 lda #0 sta rem8u - //SEG276 [129] (byte) div8u::dividend#1 ← (byte) div8s::dividendb#3 [ test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuyy + //SEG395 [183] (byte) div8u::dividend#1 ← (byte) div8s::dividendb#3 [ test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8s::divisorb#3 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuyy sty div8u.dividend - //SEG277 [130] (byte) div8u::divisor#0 ← (byte) div8s::divisorb#3 [ test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuxx + //SEG396 [184] (byte) div8u::divisor#0 ← (byte) div8s::divisorb#3 [ test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::dividend#1 div8u::divisor#0 div8s::neg#4 div8s::rem8u#0 ] ) -- vbuz1=vbuxx stx div8u.divisor - //SEG278 [131] call div8u param-assignment [ test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ) - //SEG279 [64] phi from div8s::@4 to div8u [phi:div8s::@4->div8u] - //SEG280 [64] phi (byte*) div8u::remainder#8 = &(byte) div8s::rem8u#0 [phi:div8s::@4->div8u#0] -- pbuz1=pbuc1 + //SEG397 [185] call div8u param-assignment [ test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8u::return#0 div8s::neg#4 div8s::rem8u#0 ] ) + //SEG398 [118] phi from div8s::@4 to div8u [phi:div8s::@4->div8u] + //SEG399 [118] phi (byte*) div8u::remainder#8 = &(byte) div8s::rem8u#0 [phi:div8s::@4->div8u#0] -- pbuz1=pbuc1 lda #rem8u sta div8u.remainder+1 - //SEG281 [64] phi (byte) div8u::divisor#6 = (byte) div8u::divisor#0 [phi:div8s::@4->div8u#1] -- register_copy - //SEG282 [64] phi (byte) div8u::dividend#5 = (byte) div8u::dividend#1 [phi:div8s::@4->div8u#2] -- register_copy + //SEG400 [118] phi (byte) div8u::divisor#6 = (byte) div8u::divisor#0 [phi:div8s::@4->div8u#1] -- register_copy + //SEG401 [118] phi (byte) div8u::dividend#5 = (byte) div8u::dividend#1 [phi:div8s::@4->div8u#2] -- register_copy jsr div8u - //SEG283 [132] (byte) div8u::return#2 ← (byte) div8u::return#0 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ) -- vbuaa=vbuz1 + //SEG402 [186] (byte) div8u::return#2 ← (byte) div8u::return#0 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8u::return#2 ] ) -- vbuaa=vbuz1 lda div8u.return - //SEG284 div8s::@15 - //SEG285 [133] (byte) div8s::resultb#0 ← (byte) div8u::return#2 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ) -- vbuyy=vbuaa + //SEG403 div8s::@15 + //SEG404 [187] (byte) div8s::resultb#0 ← (byte) div8u::return#2 [ test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#4 div8s::rem8u#0 div8s::resultb#0 ] ) -- vbuyy=vbuaa tay - //SEG286 [134] if((byte) div8s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@5 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ) -- vbuz1_neq_0_then_la1 + //SEG405 [188] if((byte) div8s::neg#4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@5 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 ] ) -- vbuz1_neq_0_then_la1 lda neg bne b5 - //SEG287 div8s::@18 - //SEG288 [135] (signed byte~) div8s::return#6 ← (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ) -- vbsaa=vbsyy + //SEG406 div8s::@18 + //SEG407 [189] (signed byte~) div8s::return#6 ← (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 ] ) -- vbsaa=vbsyy tya - //SEG289 [136] (signed byte~) rem8s#30 ← (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#30 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#30 ] ) -- vbsxx=vbsz1 + //SEG408 [190] (signed byte~) rem8s#32 ← (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#32 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#6 rem8s#32 ] ) -- vbsxx=vbsz1 ldx rem8u - //SEG290 [137] phi from div8s::@18 div8s::@5 to div8s::@return [phi:div8s::@18/div8s::@5->div8s::@return] - //SEG291 [137] phi (signed byte) rem8s#3 = (signed byte~) rem8s#30 [phi:div8s::@18/div8s::@5->div8s::@return#0] -- register_copy - //SEG292 [137] phi (signed byte) div8s::return#2 = (signed byte~) div8s::return#6 [phi:div8s::@18/div8s::@5->div8s::@return#1] -- register_copy - //SEG293 div8s::@return + //SEG409 [191] phi from div8s::@18 div8s::@5 to div8s::@return [phi:div8s::@18/div8s::@5->div8s::@return] + //SEG410 [191] phi (signed byte) rem8s#3 = (signed byte~) rem8s#32 [phi:div8s::@18/div8s::@5->div8s::@return#0] -- register_copy + //SEG411 [191] phi (signed byte) div8s::return#2 = (signed byte~) div8s::return#6 [phi:div8s::@18/div8s::@5->div8s::@return#1] -- register_copy + //SEG412 div8s::@return breturn: - //SEG294 [138] return [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) + //SEG413 [192] return [ test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 rem8s#3 div8s::return#2 div8s::rem8u#0 ] ) rts - //SEG295 div8s::@5 + //SEG414 div8s::@5 b5: - //SEG296 [139] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) -- vbsxx=_neg_vbsz1 + //SEG415 [193] (signed byte) rem8s#1 ← - (signed byte)(byte) div8s::rem8u#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::resultb#0 rem8s#1 ] ) -- vbsxx=_neg_vbsz1 lda rem8u eor #$ff clc adc #1 tax - //SEG297 [140] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) -- vbsaa=_neg_vbsyy + //SEG416 [194] (signed byte) div8s::return#0 ← - (signed byte)(byte) div8s::resultb#0 [ test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::rem8u#0 div8s::return#0 rem8s#1 ] ) -- vbsaa=_neg_vbsyy tya eor #$ff clc adc #1 jmp breturn - //SEG298 div8s::@17 - //SEG299 [141] (byte~) div8s::divisorb#4 ← (byte)(signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ) + //SEG417 div8s::@17 + //SEG418 [195] (byte~) div8s::divisorb#4 ← (byte)(signed byte) div8s::divisor#0 [ test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::neg#3 div8s::dividendb#3 div8s::divisorb#4 ] ) // (byte~) div8s::divisorb#4 = (byte)(signed byte) div8s::divisor#0 // register copy reg byte x - //SEG300 div8s::@16 + //SEG419 div8s::@16 b16: - //SEG301 [142] (byte~) div8s::dividendb#7 ← (byte)(signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ( main:2::test_8s:7::div8s:87 [ line_cursor#30 test_8s::i#10 char_cursor#81 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ) -- vbuyy=vbuaa + //SEG420 [196] (byte~) div8s::dividendb#7 ← (byte)(signed byte) div8s::dividend#0 [ test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ( main:2::test_8s:7::div8s:141 [ line_cursor#37 test_8s::i#10 char_cursor#109 test_8s::dividend#0 test_8s::divisor#0 test_8u::rem#0 div8s::divisor#0 div8s::dividendb#7 ] ) -- vbuyy=vbuaa tay - //SEG302 [122] phi from div8s::@16 to div8s::@2 [phi:div8s::@16->div8s::@2] - //SEG303 [122] phi (byte) div8s::dividendb#3 = (byte~) div8s::dividendb#7 [phi:div8s::@16->div8s::@2#0] -- register_copy - //SEG304 [122] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8s::@16->div8s::@2#1] -- vbuz1=vbuc1 + //SEG421 [176] phi from div8s::@16 to div8s::@2 [phi:div8s::@16->div8s::@2] + //SEG422 [176] phi (byte) div8s::dividendb#3 = (byte~) div8s::dividendb#7 [phi:div8s::@16->div8s::@2#0] -- register_copy + //SEG423 [176] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8s::@16->div8s::@2#1] -- vbuz1=vbuc1 lda #0 sta neg jmp b2 } -//SEG305 print_cls +//SEG424 print_cls print_cls: { .label sc = 3 - //SEG306 [144] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] - //SEG307 [144] phi (byte*) print_cls::sc#2 = (const byte*) SCREEN#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 + //SEG425 [198] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] + //SEG426 [198] phi (byte*) print_cls::sc#2 = (const byte*) SCREEN#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 lda #SCREEN sta sc+1 - //SEG308 [144] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] - //SEG309 [144] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy - //SEG310 print_cls::@1 + //SEG427 [198] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] + //SEG428 [198] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy + //SEG429 print_cls::@1 b1: - //SEG311 [145] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 + //SEG430 [199] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG312 [146] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG431 [200] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 !: - //SEG313 [147] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) -- pbuz1_neq_pbuc1_then_la1 + //SEG432 [201] if((byte*) print_cls::sc#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ test_8u::rem#0 print_cls::sc#1 ] ) -- pbuz1_neq_pbuc1_then_la1 lda sc+1 cmp #>SCREEN+$3e8 bne b1 lda sc cmp #