diff --git a/src/test/java/dk/camelot64/kickc/test/kc/multiply.kc b/src/test/java/dk/camelot64/kickc/test/kc/multiply.kc new file mode 100644 index 000000000..51ba85b63 --- /dev/null +++ b/src/test/java/dk/camelot64/kickc/test/kc/multiply.kc @@ -0,0 +1,16 @@ +// Simple binary multiplication implementation + +// Perform binary multiplication of two unsigned 8-bit bytes into a 16-bit unsigned word +word mul8u(byte a, byte b) { + word res = 0; + word mb = b; + while(a!=0) { + if( (a&1) != 0) { + res = res + mb; + } + a = a>>1; + mb = mb<<1; + } + return res; +} + diff --git a/src/test/java/dk/camelot64/kickc/test/kc/test-multiply.kc b/src/test/java/dk/camelot64/kickc/test/kc/test-multiply.kc index 76c9b4de3..04828e83c 100644 --- a/src/test/java/dk/camelot64/kickc/test/kc/test-multiply.kc +++ b/src/test/java/dk/camelot64/kickc/test/kc/test-multiply.kc @@ -1,5 +1,6 @@ // Test the fast multiplication library import "print.kc" +import "multiply.kc" import "fastmultiply.kc" byte* BGCOL = $d021; @@ -9,9 +10,9 @@ void main() { print_cls(); mulf_init(); mulf_init_asm(); - multiply_tables_compare(); - multiply_results_compare(); - signed_multiply_results_compare(); + mulf_tables_cmp(); + mul8u_slowfast_compare(); + mul8s_slowfast_compare(); } // Slow multiplication of unsigned bytes @@ -104,7 +105,7 @@ void mulf_init_asm() { // Compare the ASM-based mul tables with the KC-based mul tables // Red screen on failure - green on success -void multiply_tables_compare() { +void mulf_tables_cmp() { byte* asm_sqr = mula_sqr1_lo; for( byte* kc_sqr=mulf_sqr1_lo; kc_sqrstr @@ -411,9 +432,19 @@ multiply_error: { lda #>str3 sta print_str.str+1 jsr print_str - lda ma + lda mn sta print_word.w - lda ma+1 + lda mn+1 + sta print_word.w+1 + jsr print_word + lda #str4 + sta print_str.str+1 + jsr print_str + lda mf + sta print_word.w + lda mf+1 sta print_word.w+1 jsr print_word jsr print_ln @@ -421,7 +452,41 @@ multiply_error: { str: .text "multiply mismatch @" str1: .text "*@" str2: .text " slow:@" - str3: .text " / fast asm:@" + str3: .text " / normal:@" + str4: .text " / fast:@" +} +mul8u: { + .label mb = 6 + .label res = $e + .label return = $e + sta mb + lda #0 + sta mb+1 + sta res + sta res+1 + b1: + cpx #0 + bne b2 + rts + b2: + txa + and #1 + cmp #0 + beq b4 + lda res + clc + adc mb + sta res + lda res+1 + adc mb+1 + sta res+1 + b4: + txa + lsr + tax + asl mb + rol mb+1 + jmp b1 } muls8u: { .label return = 8 @@ -452,7 +517,7 @@ muls8u: { b1: rts } -multiply_tables_compare: { +mulf_tables_cmp: { .label asm_sqr = 8 .label kc_sqr = 4 lda #=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#122 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#122 print_sword::w#3 ] ) + [77] (signed word) print_sword::w#3 ← phi( signed_multiply_error::@5/(signed word) print_sword::w#1 signed_multiply_error::@7/(signed word) print_sword::w#2 ) [ char_cursor#126 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#126 print_sword::w#3 ] ) + [78] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#126 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#126 print_sword::w#3 ] ) to:print_sword::@2 print_sword::@2: scope:[print_sword] from print_sword - [79] phi() [ char_cursor#122 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#122 print_sword::w#3 ] ) - [80] call print_char param-assignment [ char_cursor#17 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#3 ] ) + [79] phi() [ char_cursor#126 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#126 print_sword::w#3 ] ) + [80] call print_char param-assignment [ char_cursor#17 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#3 ] ) to:print_sword::@4 print_sword::@4: scope:[print_sword] from print_sword::@2 - [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) + [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) to:print_sword::@1 print_sword::@1: scope:[print_sword] from print_sword print_sword::@4 - [82] (byte*) char_cursor#124 ← phi( print_sword/(byte*) char_cursor#122 print_sword::@4/(byte*) char_cursor#17 ) [ print_sword::w#4 char_cursor#124 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#4 char_cursor#124 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 print_sword::w#4 char_cursor#124 ] ) - [82] (signed word) print_sword::w#4 ← phi( print_sword/(signed word) print_sword::w#3 print_sword::@4/(signed word) print_sword::w#0 ) [ print_sword::w#4 char_cursor#124 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#4 char_cursor#124 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 print_sword::w#4 char_cursor#124 ] ) - [83] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 [ char_cursor#124 print_word::w#11 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#124 print_word::w#11 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#124 print_word::w#11 ] ) - [84] call print_word param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) + [82] (byte*) char_cursor#128 ← phi( print_sword/(byte*) char_cursor#126 print_sword::@4/(byte*) char_cursor#17 ) [ print_sword::w#4 char_cursor#128 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#4 char_cursor#128 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 print_sword::w#4 char_cursor#128 ] ) + [82] (signed word) print_sword::w#4 ← phi( print_sword/(signed word) print_sword::w#3 print_sword::@4/(signed word) print_sword::w#0 ) [ print_sword::w#4 char_cursor#128 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#4 char_cursor#128 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 print_sword::w#4 char_cursor#128 ] ) + [83] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#4 [ char_cursor#128 print_word::w#13 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#128 print_word::w#13 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#128 print_word::w#13 ] ) + [84] call print_word param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) to:print_sword::@return print_sword::@return: scope:[print_sword] from print_sword::@1 - [85] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) + [85] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) to:@return -print_word: scope:[print_word] from multiply_error::@5 multiply_error::@7 multiply_tables_compare::@6 multiply_tables_compare::@8 print_sword::@1 - [86] (byte*) char_cursor#128 ← phi( multiply_error::@5/(byte*) char_cursor#122 multiply_error::@7/(byte*) char_cursor#122 multiply_tables_compare::@6/(byte*) char_cursor#122 multiply_tables_compare::@8/(byte*) char_cursor#122 print_sword::@1/(byte*) char_cursor#124 ) [ print_word::w#5 char_cursor#128 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#128 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#5 char_cursor#128 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#128 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 print_word::w#5 char_cursor#128 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#128 ] main:2::multiply_tables_compare:11::print_word:212 [ print_word::w#5 char_cursor#128 ] ) - [86] (word) print_word::w#5 ← phi( multiply_error::@5/(word) print_word::w#3 multiply_error::@7/(word) print_word::w#4 multiply_tables_compare::@6/(word~) print_word::w#9 multiply_tables_compare::@8/(word~) print_word::w#10 print_sword::@1/(word~) print_word::w#11 ) [ print_word::w#5 char_cursor#128 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#128 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#5 char_cursor#128 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#128 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 print_word::w#5 char_cursor#128 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#128 ] main:2::multiply_tables_compare:11::print_word:212 [ print_word::w#5 char_cursor#128 ] ) - [87] (byte) print_byte::b#1 ← > (word) print_word::w#5 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:212 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ) - [88] call print_byte param-assignment [ char_cursor#17 print_word::w#5 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_word::w#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_word::w#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_word::w#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 print_word::w#5 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_word::w#5 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 print_word::w#5 ] ) +print_word: scope:[print_word] from mulf_tables_cmp::@6 mulf_tables_cmp::@8 multiply_error::@5 multiply_error::@7 multiply_error::@9 print_sword::@1 + [86] (byte*) char_cursor#132 ← phi( mulf_tables_cmp::@6/(byte*) char_cursor#126 mulf_tables_cmp::@8/(byte*) char_cursor#126 multiply_error::@5/(byte*) char_cursor#126 multiply_error::@7/(byte*) char_cursor#126 multiply_error::@9/(byte*) char_cursor#126 print_sword::@1/(byte*) char_cursor#128 ) [ print_word::w#6 char_cursor#132 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#132 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#6 char_cursor#132 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#132 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#132 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 print_word::w#6 char_cursor#132 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#132 ] main:2::mulf_tables_cmp:11::print_word:238 [ print_word::w#6 char_cursor#132 ] ) + [86] (word) print_word::w#6 ← phi( mulf_tables_cmp::@6/(word~) print_word::w#8 mulf_tables_cmp::@8/(word~) print_word::w#9 multiply_error::@5/(word) print_word::w#3 multiply_error::@7/(word) print_word::w#4 multiply_error::@9/(word) print_word::w#5 print_sword::@1/(word~) print_word::w#13 ) [ print_word::w#6 char_cursor#132 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#132 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#6 char_cursor#132 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#132 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#132 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 print_word::w#6 char_cursor#132 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#132 ] main:2::mulf_tables_cmp:11::print_word:238 [ print_word::w#6 char_cursor#132 ] ) + [87] (byte) print_byte::b#1 ← > (word) print_word::w#6 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:238 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ) + [88] call print_byte param-assignment [ char_cursor#17 print_word::w#6 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_word::w#6 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 print_word::w#6 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_word::w#6 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 print_word::w#6 ] ) to:print_word::@1 print_word::@1: scope:[print_word] from print_word - [89] (byte) print_byte::b#2 ← < (word) print_word::w#5 [ char_cursor#17 print_byte::b#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 print_byte::b#2 ] ) - [90] call print_byte param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 ] ) + [89] (byte) print_byte::b#2 ← < (word) print_word::w#6 [ char_cursor#17 print_byte::b#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 print_byte::b#2 ] ) + [90] call print_byte param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 ] ) to:print_word::@return print_word::@return: scope:[print_word] from print_word::@1 - [91] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 ] ) + [91] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 ] ) to:@return print_byte: scope:[print_byte] from multiply_error::@1 multiply_error::@3 print_sbyte::@1 print_word print_word::@1 - [92] (byte*) char_cursor#129 ← phi( multiply_error::@1/(byte*) char_cursor#122 multiply_error::@3/(byte*) char_cursor#122 print_sbyte::@1/(byte*) char_cursor#126 print_word/(byte*) char_cursor#128 print_word::@1/(byte*) char_cursor#17 ) [ print_byte::b#5 char_cursor#129 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 ] ) - [92] (byte) print_byte::b#5 ← phi( multiply_error::@1/(byte) print_byte::b#3 multiply_error::@3/(byte) print_byte::b#4 print_sbyte::@1/(byte~) print_byte::b#9 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 ) [ print_byte::b#5 char_cursor#129 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 ] ) - [93] (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#129 print_byte::$0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] ) - [94] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#129 print_char::ch#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] ) - [95] call print_char param-assignment [ char_cursor#17 print_byte::b#5 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] ) + [92] (byte*) char_cursor#133 ← phi( multiply_error::@1/(byte*) char_cursor#126 multiply_error::@3/(byte*) char_cursor#126 print_sbyte::@1/(byte*) char_cursor#130 print_word/(byte*) char_cursor#132 print_word::@1/(byte*) char_cursor#17 ) [ print_byte::b#5 char_cursor#133 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] ) + [92] (byte) print_byte::b#5 ← phi( multiply_error::@1/(byte) print_byte::b#3 multiply_error::@3/(byte) print_byte::b#4 print_sbyte::@1/(byte~) print_byte::b#9 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 ) [ print_byte::b#5 char_cursor#133 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] ) + [93] (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#133 print_byte::$0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] ) + [94] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#133 print_char::ch#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] ) + [95] call print_char param-assignment [ char_cursor#17 print_byte::b#5 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] ) to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] ) - [97] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#17 print_char::ch#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] ) - [98] call print_char param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] ) + [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] ) + [97] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#17 print_char::ch#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] ) + [98] call print_char param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] ) to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@1 - [99] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] ) + [99] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] ) to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@2 print_sword::@2 - [100] (byte*) char_cursor#78 ← phi( print_byte/(byte*) char_cursor#129 print_byte::@1/(byte*) char_cursor#17 print_sbyte::@2/(byte*) char_cursor#122 print_sword::@2/(byte*) char_cursor#122 ) [ print_char::ch#4 char_cursor#78 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#78 ] ) - [100] (byte) print_char::ch#4 ← phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@2/(byte) '-' print_sword::@2/(byte) '-' ) [ print_char::ch#4 char_cursor#78 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#78 ] ) - [101] *((byte*) char_cursor#78) ← (byte) print_char::ch#4 [ char_cursor#78 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] ) - [102] (byte*) char_cursor#17 ← ++ (byte*) char_cursor#78 [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) + [100] (byte*) char_cursor#80 ← phi( print_byte/(byte*) char_cursor#133 print_byte::@1/(byte*) char_cursor#17 print_sbyte::@2/(byte*) char_cursor#126 print_sword::@2/(byte*) char_cursor#126 ) [ print_char::ch#4 char_cursor#80 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#80 ] ) + [100] (byte) print_char::ch#4 ← phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@2/(byte) '-' print_sword::@2/(byte) '-' ) [ print_char::ch#4 char_cursor#80 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#80 ] ) + [101] *((byte*) char_cursor#80) ← (byte) print_char::ch#4 [ char_cursor#80 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] ) + [102] (byte*) char_cursor#17 ← ++ (byte*) char_cursor#80 [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) to:print_char::@return print_char::@return: scope:[print_char] from print_char - [103] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) + [103] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) to:@return print_sbyte: scope:[print_sbyte] from signed_multiply_error::@1 signed_multiply_error::@3 - [104] (signed byte) print_sbyte::b#3 ← phi( signed_multiply_error::@1/(signed byte) print_sbyte::b#1 signed_multiply_error::@3/(signed byte) print_sbyte::b#2 ) [ char_cursor#122 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] ) - [105] if((signed byte) print_sbyte::b#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#122 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] ) + [104] (signed byte) print_sbyte::b#3 ← phi( signed_multiply_error::@1/(signed byte) print_sbyte::b#1 signed_multiply_error::@3/(signed byte) print_sbyte::b#2 ) [ char_cursor#126 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] ) + [105] if((signed byte) print_sbyte::b#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#126 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] ) to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte - [106] phi() [ char_cursor#122 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] ) - [107] call print_char param-assignment [ char_cursor#17 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] ) + [106] phi() [ char_cursor#126 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] ) + [107] call print_char param-assignment [ char_cursor#17 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] ) to:print_sbyte::@4 print_sbyte::@4: scope:[print_sbyte] from print_sbyte::@2 - [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) + [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) to:print_sbyte::@1 print_sbyte::@1: scope:[print_sbyte] from print_sbyte print_sbyte::@4 - [109] (byte*) char_cursor#126 ← phi( print_sbyte/(byte*) char_cursor#122 print_sbyte::@4/(byte*) char_cursor#17 ) [ char_cursor#126 print_sbyte::b#4 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#4 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#4 ] ) - [109] (signed byte) print_sbyte::b#4 ← phi( print_sbyte/(signed byte) print_sbyte::b#3 print_sbyte::@4/(signed byte) print_sbyte::b#0 ) [ char_cursor#126 print_sbyte::b#4 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#4 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#4 ] ) - [110] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#4 [ print_byte::b#9 char_cursor#126 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#126 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#126 ] ) - [111] call print_byte param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + [109] (byte*) char_cursor#130 ← phi( print_sbyte/(byte*) char_cursor#126 print_sbyte::@4/(byte*) char_cursor#17 ) [ char_cursor#130 print_sbyte::b#4 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#130 print_sbyte::b#4 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#130 print_sbyte::b#4 ] ) + [109] (signed byte) print_sbyte::b#4 ← phi( print_sbyte/(signed byte) print_sbyte::b#3 print_sbyte::@4/(signed byte) print_sbyte::b#0 ) [ char_cursor#130 print_sbyte::b#4 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#130 print_sbyte::b#4 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#130 print_sbyte::b#4 ] ) + [110] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#4 [ print_byte::b#9 char_cursor#130 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#130 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#130 ] ) + [111] call print_byte param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@1 - [112] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + [112] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) to:@return -mulf8s: scope:[mulf8s] from signed_multiply_results_compare::@8 - [113] (byte~) mulf8u::a#3 ← (byte)(signed byte) mulf8s::a#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 ] ) - [114] (byte~) mulf8u::b#3 ← (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 mulf8u::b#3 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 mulf8u::b#3 ] ) - [115] call mulf8u param-assignment [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ) - [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) +mulf8s: scope:[mulf8s] from mul8s_slowfast_compare::@8 + [113] (byte~) mulf8u::a#4 ← (byte)(signed byte) mulf8s::a#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 ] ) + [114] (byte~) mulf8u::b#4 ← (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 mulf8u::b#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 mulf8u::b#4 ] ) + [115] call mulf8u param-assignment [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ) + [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) to:mulf8s::@6 mulf8s::@6: scope:[mulf8s] from mulf8s - [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) - [118] if((signed byte) mulf8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@1 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) + [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) + [118] if((signed byte) mulf8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@1 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) to:mulf8s::@3 mulf8s::@3: scope:[mulf8s] from mulf8s::@6 - [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) - [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) - [121] (word) mulf8s::m#1 ← (word) mulf8s::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ) + [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) + [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) + [121] (word) mulf8s::m#1 ← (word) mulf8s::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ) to:mulf8s::@1 mulf8s::@1: scope:[mulf8s] from mulf8s::@3 mulf8s::@6 - [122] (word) mulf8s::m#5 ← phi( mulf8s::@3/(word) mulf8s::m#1 mulf8s::@6/(word) mulf8s::m#0 ) [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#5 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#5 ] ) - [123] if((signed byte) mulf8s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@2 [ mulf8s::a#0 mulf8s::m#5 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 ] ) + [122] (word) mulf8s::m#5 ← phi( mulf8s::@3/(word) mulf8s::m#1 mulf8s::@6/(word) mulf8s::m#0 ) [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#5 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#5 ] ) + [123] if((signed byte) mulf8s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@2 [ mulf8s::a#0 mulf8s::m#5 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 ] ) to:mulf8s::@4 mulf8s::@4: scope:[mulf8s] from mulf8s::@1 - [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) - [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) - [126] (word) mulf8s::m#2 ← (word) mulf8s::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 [ mulf8s::m#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#2 ] ) + [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) + [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) + [126] (word) mulf8s::m#2 ← (word) mulf8s::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 [ mulf8s::m#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#2 ] ) to:mulf8s::@2 mulf8s::@2: scope:[mulf8s] from mulf8s::@1 mulf8s::@4 - [127] (word) mulf8s::m#4 ← phi( mulf8s::@1/(word) mulf8s::m#5 mulf8s::@4/(word) mulf8s::m#2 ) [ mulf8s::m#4 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) + [127] (word) mulf8s::m#4 ← phi( mulf8s::@1/(word) mulf8s::m#5 mulf8s::@4/(word) mulf8s::m#2 ) [ mulf8s::m#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) to:mulf8s::@return mulf8s::@return: scope:[mulf8s] from mulf8s::@2 - [128] return [ mulf8s::m#4 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) + [128] return [ mulf8s::m#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) to:@return -mulf8u: scope:[mulf8u] from mulf8s multiply_results_compare::@8 - [129] (byte) mulf8u::b#2 ← phi( mulf8s/(byte~) mulf8u::b#3 multiply_results_compare::@8/(byte) mulf8u::b#1 ) [ mulf8u::a#2 mulf8u::b#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#2 mulf8u::b#2 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::a#2 mulf8u::b#2 ] ) - [129] (byte) mulf8u::a#2 ← phi( mulf8s/(byte~) mulf8u::a#3 multiply_results_compare::@8/(byte) mulf8u::a#1 ) [ mulf8u::a#2 mulf8u::b#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#2 mulf8u::b#2 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::a#2 mulf8u::b#2 ] ) - [130] *((const byte*) mulf8u::memA#0) ← (byte) mulf8u::a#2 [ mulf8u::b#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::b#2 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::b#2 ] ) - [131] *((const byte*) mulf8u::memB#0) ← (byte) mulf8u::b#2 [ ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) +mulf8u: scope:[mulf8u] from mul8u_slowfast_compare::@12 mulf8s + [129] (byte) mulf8u::b#2 ← phi( mul8u_slowfast_compare::@12/(byte) mulf8u::b#1 mulf8s/(byte~) mulf8u::b#4 ) [ mulf8u::a#2 mulf8u::b#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#2 mulf8u::b#2 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::a#2 mulf8u::b#2 ] ) + [129] (byte) mulf8u::a#2 ← phi( mul8u_slowfast_compare::@12/(byte) mulf8u::a#1 mulf8s/(byte~) mulf8u::a#4 ) [ mulf8u::a#2 mulf8u::b#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#2 mulf8u::b#2 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::a#2 mulf8u::b#2 ] ) + [130] *((const byte*) mulf8u::memA#0) ← (byte) mulf8u::a#2 [ mulf8u::b#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::b#2 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::b#2 ] ) + [131] *((const byte*) mulf8u::memB#0) ← (byte) mulf8u::b#2 [ ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) asm { ldamemA stasm1+1 stasm3+1 eor#$ff stasm2+1 stasm4+1 ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x stamemA sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } - [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#0 ] ) + [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#0 ] ) to:mulf8u::@return mulf8u::@return: scope:[mulf8u] from mulf8u - [134] return [ mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#0 ] ) + [134] return [ mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#0 ] ) to:@return -muls8s: scope:[muls8s] from signed_multiply_results_compare::@2 - [135] if((signed byte) muls8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@1 [ muls8s::a#0 muls8s::b#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) +muls8s: scope:[muls8s] from mul8s_slowfast_compare::@2 + [135] if((signed byte) muls8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@1 [ muls8s::a#0 muls8s::b#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) to:muls8s::@2 muls8s::@2: scope:[muls8s] from muls8s muls8s::@2 - [136] (signed byte) muls8s::i#2 ← phi( muls8s::@2/(signed byte) muls8s::i#1 muls8s/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ) - [136] (signed word) muls8s::m#3 ← phi( muls8s::@2/(signed word) muls8s::m#1 muls8s/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ) - [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) - [138] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) - [139] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) + [136] (signed byte) muls8s::i#2 ← phi( muls8s::@2/(signed byte) muls8s::i#1 muls8s/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ) + [136] (signed word) muls8s::m#3 ← phi( muls8s::@2/(signed word) muls8s::m#1 muls8s/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ) + [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) + [138] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) + [139] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) to:muls8s::@3 muls8s::@3: scope:[muls8s] from muls8s::@1 muls8s::@2 muls8s::@5 - [140] (signed word) muls8s::return#0 ← phi( muls8s::@2/(signed word) muls8s::m#1 muls8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@5/(signed word) muls8s::m#2 ) [ muls8s::return#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::return#0 ] ) + [140] (signed word) muls8s::return#0 ← phi( muls8s::@2/(signed word) muls8s::m#1 muls8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@5/(signed word) muls8s::m#2 ) [ muls8s::return#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::return#0 ] ) to:muls8s::@return muls8s::@return: scope:[muls8s] from muls8s::@3 - [141] return [ muls8s::return#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::return#0 ] ) + [141] return [ muls8s::return#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::return#0 ] ) to:@return muls8s::@1: scope:[muls8s] from muls8s - [142] if((signed byte) muls8s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@3 [ muls8s::a#0 muls8s::b#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) + [142] if((signed byte) muls8s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@3 [ muls8s::a#0 muls8s::b#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) to:muls8s::@5 muls8s::@5: scope:[muls8s] from muls8s::@1 muls8s::@5 - [143] (signed byte) muls8s::j#2 ← phi( muls8s::@5/(signed byte) muls8s::j#1 muls8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ) - [143] (signed word) muls8s::m#5 ← phi( muls8s::@5/(signed word) muls8s::m#2 muls8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ) - [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) - [145] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) - [146] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@5 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) + [143] (signed byte) muls8s::j#2 ← phi( muls8s::@5/(signed byte) muls8s::j#1 muls8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ) + [143] (signed word) muls8s::m#5 ← phi( muls8s::@5/(signed word) muls8s::m#2 muls8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ) + [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) + [145] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) + [146] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@5 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) to:muls8s::@3 -multiply_results_compare: scope:[multiply_results_compare] from main::@4 - [147] phi() [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 ] ) - to:multiply_results_compare::@1 -multiply_results_compare::@1: scope:[multiply_results_compare] from multiply_results_compare multiply_results_compare::@6 - [148] (byte) multiply_results_compare::a#6 ← phi( multiply_results_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 multiply_results_compare::@6/(byte) multiply_results_compare::a#1 ) [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 ] ) - to:multiply_results_compare::@2 -multiply_results_compare::@2: scope:[multiply_results_compare] from multiply_results_compare::@1 multiply_results_compare::@3 - [149] (byte) multiply_results_compare::b#2 ← phi( multiply_results_compare::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 multiply_results_compare::@3/(byte) multiply_results_compare::b#1 ) [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 ] ) - [150] (byte) muls8u::a#0 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 ] ) - [151] (byte) muls8u::b#0 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ) - [152] call muls8u param-assignment [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ) - [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ) - to:multiply_results_compare::@8 -multiply_results_compare::@8: scope:[multiply_results_compare] from multiply_results_compare::@2 - [154] (word) multiply_results_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - [155] (byte) mulf8u::a#1 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 mulf8u::a#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - [156] (byte) mulf8u::b#1 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - [157] call mulf8u param-assignment [ line_cursor#10 char_cursor#30 mulf8u::return#0 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::return#0 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ) - to:multiply_results_compare::@9 -multiply_results_compare::@9: scope:[multiply_results_compare] from multiply_results_compare::@8 - [159] (word) multiply_results_compare::ma#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) - [160] if((word) multiply_results_compare::ms#0==(word) multiply_results_compare::ma#0) goto multiply_results_compare::@3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) - to:multiply_results_compare::@4 -multiply_results_compare::@4: scope:[multiply_results_compare] from multiply_results_compare::@9 - [161] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) - [162] (byte) multiply_error::a#0 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 ] ) - [163] (byte) multiply_error::b#0 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 ] ) - [164] (word) multiply_error::ms#0 ← (word) multiply_results_compare::ms#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) - [165] (word) multiply_error::ma#0 ← (word) multiply_results_compare::ma#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - [166] call multiply_error param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) - to:multiply_results_compare::@return -multiply_results_compare::@return: scope:[multiply_results_compare] from multiply_results_compare::@11 multiply_results_compare::@4 - [167] return [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) +mul8u_slowfast_compare: scope:[mul8u_slowfast_compare] from main::@4 + [147] phi() [ line_cursor#10 char_cursor#30 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 ] ) + to:mul8u_slowfast_compare::@1 +mul8u_slowfast_compare::@1: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare mul8u_slowfast_compare::@10 + [148] (byte) mul8u_slowfast_compare::a#7 ← phi( mul8u_slowfast_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u_slowfast_compare::@10/(byte) mul8u_slowfast_compare::a#1 ) [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 ] ) + to:mul8u_slowfast_compare::@2 +mul8u_slowfast_compare::@2: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@1 mul8u_slowfast_compare::@5 + [149] (byte) mul8u_slowfast_compare::b#10 ← phi( mul8u_slowfast_compare::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u_slowfast_compare::@5/(byte) mul8u_slowfast_compare::b#1 ) [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 ] ) + [150] (byte) muls8u::a#0 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 ] ) + [151] (byte) muls8u::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ) + [152] call muls8u param-assignment [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ) + [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ) + to:mul8u_slowfast_compare::@12 +mul8u_slowfast_compare::@12: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@2 + [154] (word) mul8u_slowfast_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + [155] (byte) mulf8u::a#1 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + [156] (byte) mulf8u::b#1 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + [157] call mulf8u param-assignment [ line_cursor#10 char_cursor#30 mulf8u::return#0 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::return#0 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ) + to:mul8u_slowfast_compare::@13 +mul8u_slowfast_compare::@13: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@12 + [159] (word) mul8u_slowfast_compare::mf#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ) + [160] (byte) mul8u::a#1 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 ] ) + [161] (byte) mul8u::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::b#0 ] ) + [162] call mul8u param-assignment [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ) + [163] (word) mul8u::return#2 ← (word) mul8u::res#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ) + to:mul8u_slowfast_compare::@14 +mul8u_slowfast_compare::@14: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@13 + [164] (word) mul8u_slowfast_compare::mn#0 ← (word) mul8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) + [165] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mf#0) goto mul8u_slowfast_compare::@3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) + to:mul8u_slowfast_compare::@6 +mul8u_slowfast_compare::@6: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@14 + [166] phi() [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) + to:mul8u_slowfast_compare::@3 +mul8u_slowfast_compare::@3: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 + [167] (byte) mul8u_slowfast_compare::ok#4 ← phi( mul8u_slowfast_compare::@14/(byte/signed byte/word/signed word/dword/signed dword) 1 mul8u_slowfast_compare::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ) + [168] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mn#0) goto mul8u_slowfast_compare::@20 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ) + to:mul8u_slowfast_compare::@4 +mul8u_slowfast_compare::@4: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@20 mul8u_slowfast_compare::@3 + [169] (byte) mul8u_slowfast_compare::ok#3 ← phi( mul8u_slowfast_compare::@20/(byte) mul8u_slowfast_compare::ok#4 mul8u_slowfast_compare::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#3 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#3 ] ) + [170] if((byte) mul8u_slowfast_compare::ok#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@5 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) + to:mul8u_slowfast_compare::@8 +mul8u_slowfast_compare::@8: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@4 + [171] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) + [172] (byte) multiply_error::a#0 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 ] ) + [173] (byte) multiply_error::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 ] ) + [174] (word) multiply_error::ms#0 ← (word) mul8u_slowfast_compare::ms#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) + [175] (word) multiply_error::mn#0 ← (word) mul8u_slowfast_compare::mn#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ) + [176] (word) multiply_error::mf#0 ← (word) mul8u_slowfast_compare::mf#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + [177] call multiply_error param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) + to:mul8u_slowfast_compare::@return +mul8u_slowfast_compare::@return: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@16 mul8u_slowfast_compare::@8 + [178] return [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) to:@return -multiply_results_compare::@3: scope:[multiply_results_compare] from multiply_results_compare::@9 - [168] (byte) multiply_results_compare::b#1 ← ++ (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ) - [169] if((byte) multiply_results_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto multiply_results_compare::@2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ) - to:multiply_results_compare::@6 -multiply_results_compare::@6: scope:[multiply_results_compare] from multiply_results_compare::@3 - [170] (byte) multiply_results_compare::a#1 ← ++ (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ) - [171] if((byte) multiply_results_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto multiply_results_compare::@1 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ) - to:multiply_results_compare::@7 -multiply_results_compare::@7: scope:[multiply_results_compare] from multiply_results_compare::@6 - [172] phi() [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 ] ) - [173] call print_str param-assignment [ char_cursor#122 line_cursor#10 ] ( main:2::multiply_results_compare:13 [ char_cursor#122 line_cursor#10 ] ) - to:multiply_results_compare::@11 -multiply_results_compare::@11: scope:[multiply_results_compare] from multiply_results_compare::@7 - [174] phi() [ char_cursor#122 line_cursor#10 ] ( main:2::multiply_results_compare:13 [ char_cursor#122 line_cursor#10 ] ) - [175] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) - to:multiply_results_compare::@return -multiply_error: scope:[multiply_error] from multiply_results_compare::@4 - [176] phi() [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - [177] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) +mul8u_slowfast_compare::@5: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@4 + [179] (byte) mul8u_slowfast_compare::b#1 ← ++ (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ) + [180] if((byte) mul8u_slowfast_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ) + to:mul8u_slowfast_compare::@10 +mul8u_slowfast_compare::@10: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@5 + [181] (byte) mul8u_slowfast_compare::a#1 ← ++ (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ) + [182] if((byte) mul8u_slowfast_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@1 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ) + to:mul8u_slowfast_compare::@11 +mul8u_slowfast_compare::@11: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@10 + [183] phi() [ line_cursor#10 char_cursor#30 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 ] ) + [184] call print_str param-assignment [ char_cursor#126 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13 [ char_cursor#126 line_cursor#10 ] ) + to:mul8u_slowfast_compare::@16 +mul8u_slowfast_compare::@16: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@11 + [185] phi() [ char_cursor#126 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13 [ char_cursor#126 line_cursor#10 ] ) + [186] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) + to:mul8u_slowfast_compare::@return +mul8u_slowfast_compare::@20: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@3 + [187] phi() [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ) + to:mul8u_slowfast_compare::@4 +multiply_error: scope:[multiply_error] from mul8u_slowfast_compare::@8 + [188] phi() [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + [189] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@1 multiply_error::@1: scope:[multiply_error] from multiply_error - [178] (byte) print_byte::b#3 ← (byte) multiply_error::a#0 [ char_cursor#122 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - [179] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) + [190] (byte) print_byte::b#3 ← (byte) multiply_error::a#0 [ char_cursor#126 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + [191] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@2 multiply_error::@2: scope:[multiply_error] from multiply_error::@1 - [180] phi() [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - [181] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) + [192] phi() [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + [193] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@3 multiply_error::@3: scope:[multiply_error] from multiply_error::@2 - [182] (byte) print_byte::b#4 ← (byte) multiply_error::b#0 [ char_cursor#122 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::ma#0 ] ) - [183] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ) + [194] (byte) print_byte::b#4 ← (byte) multiply_error::b#0 [ char_cursor#126 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + [195] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@4 multiply_error::@4: scope:[multiply_error] from multiply_error::@3 - [184] phi() [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ) - [185] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ) + [196] phi() [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + [197] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@5 multiply_error::@5: scope:[multiply_error] from multiply_error::@4 - [186] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ) - [187] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ) + [198] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ) + [199] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@6 multiply_error::@6: scope:[multiply_error] from multiply_error::@5 - [188] phi() [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ) - [189] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::ma#0 ] ) + [200] phi() [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ) + [201] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@7 multiply_error::@7: scope:[multiply_error] from multiply_error::@6 - [190] (word) print_word::w#4 ← (word) multiply_error::ma#0 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ) - [191] call print_word param-assignment [ char_cursor#17 line_cursor#10 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 ] ) + [202] (word) print_word::w#4 ← (word) multiply_error::mn#0 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ) + [203] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ) to:multiply_error::@8 multiply_error::@8: scope:[multiply_error] from multiply_error::@7 - [192] phi() [ char_cursor#17 line_cursor#10 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 ] ) - [193] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ line_cursor#1 ] ) + [204] phi() [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ) + [205] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::mf#0 ] ) + to:multiply_error::@9 +multiply_error::@9: scope:[multiply_error] from multiply_error::@8 + [206] (word) print_word::w#5 ← (word) multiply_error::mf#0 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ) + [207] call print_word param-assignment [ char_cursor#17 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 ] ) + to:multiply_error::@10 +multiply_error::@10: scope:[multiply_error] from multiply_error::@9 + [208] phi() [ char_cursor#17 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 ] ) + [209] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ line_cursor#1 ] ) to:multiply_error::@return -multiply_error::@return: scope:[multiply_error] from multiply_error::@8 - [194] return [ line_cursor#1 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ line_cursor#1 ] ) +multiply_error::@return: scope:[multiply_error] from multiply_error::@10 + [210] return [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ line_cursor#1 ] ) to:@return -muls8u: scope:[muls8u] from multiply_results_compare::@2 - [195] if((byte) muls8u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8u::@1 [ muls8u::a#0 muls8u::b#0 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ) +mul8u: scope:[mul8u] from mul8u_slowfast_compare::@13 + [211] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::mb#0 ] ) + to:mul8u::@1 +mul8u::@1: scope:[mul8u] from mul8u mul8u::@4 + [212] (word) mul8u::mb#2 ← phi( mul8u/(word) mul8u::mb#0 mul8u::@4/(word) mul8u::mb#1 ) [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) + [212] (word) mul8u::res#2 ← phi( mul8u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u::@4/(word) mul8u::res#6 ) [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) + [212] (byte) mul8u::a#2 ← phi( mul8u/(byte) mul8u::a#1 mul8u::@4/(byte) mul8u::a#0 ) [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) + [213] if((byte) mul8u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@2 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) + to:mul8u::@return +mul8u::@return: scope:[mul8u] from mul8u::@1 + [214] return [ mul8u::res#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ) + to:@return +mul8u::@2: scope:[mul8u] from mul8u::@1 + [215] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) + [216] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@4 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) + to:mul8u::@7 +mul8u::@7: scope:[mul8u] from mul8u::@2 + [217] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) + to:mul8u::@4 +mul8u::@4: scope:[mul8u] from mul8u::@2 mul8u::@7 + [218] (word) mul8u::res#6 ← phi( mul8u::@2/(word) mul8u::res#2 mul8u::@7/(word) mul8u::res#1 ) [ mul8u::a#2 mul8u::mb#2 mul8u::res#6 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#2 mul8u::mb#2 mul8u::res#6 ] ) + [219] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::mb#2 mul8u::a#0 mul8u::res#6 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::mb#2 mul8u::a#0 mul8u::res#6 ] ) + [220] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::a#0 mul8u::res#6 mul8u::mb#1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#0 mul8u::res#6 mul8u::mb#1 ] ) + to:mul8u::@1 +muls8u: scope:[muls8u] from mul8u_slowfast_compare::@2 + [221] if((byte) muls8u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8u::@1 [ muls8u::a#0 muls8u::b#0 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ) to:muls8u::@2 muls8u::@2: scope:[muls8u] from muls8u muls8u::@2 - [196] (byte) muls8u::i#2 ← phi( muls8u::@2/(byte) muls8u::i#1 muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ) - [196] (word) muls8u::m#3 ← phi( muls8u::@2/(word) muls8u::m#1 muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ) - [197] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) - [198] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) - [199] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) + [222] (byte) muls8u::i#2 ← phi( muls8u::@2/(byte) muls8u::i#1 muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ) + [222] (word) muls8u::m#3 ← phi( muls8u::@2/(word) muls8u::m#1 muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ) + [223] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) + [224] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) + [225] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) to:muls8u::@1 muls8u::@1: scope:[muls8u] from muls8u muls8u::@2 - [200] (word) muls8u::return#0 ← phi( muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8u::@2/(word) muls8u::m#1 ) [ muls8u::return#0 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ) + [226] (word) muls8u::return#0 ← phi( muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8u::@2/(word) muls8u::m#1 ) [ muls8u::return#0 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ) to:muls8u::@return muls8u::@return: scope:[muls8u] from muls8u::@1 - [201] return [ muls8u::return#0 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ) + [227] return [ muls8u::return#0 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ) to:@return -multiply_tables_compare: scope:[multiply_tables_compare] from main::@3 - [202] phi() [ ] ( main:2::multiply_tables_compare:11 [ ] ) - to:multiply_tables_compare::@1 -multiply_tables_compare::@1: scope:[multiply_tables_compare] from multiply_tables_compare multiply_tables_compare::@2 - [203] (byte*) multiply_tables_compare::asm_sqr#2 ← phi( multiply_tables_compare/(const byte[512]) mula_sqr1_lo#0 multiply_tables_compare::@2/(byte*) multiply_tables_compare::asm_sqr#1 ) [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - [203] (byte*) multiply_tables_compare::kc_sqr#2 ← phi( multiply_tables_compare/(const byte[512]) mulf_sqr1_lo#0 multiply_tables_compare::@2/(byte*) multiply_tables_compare::kc_sqr#1 ) [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - [204] if(*((byte*) multiply_tables_compare::kc_sqr#2)==*((byte*) multiply_tables_compare::asm_sqr#2)) goto multiply_tables_compare::@2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - to:multiply_tables_compare::@3 -multiply_tables_compare::@3: scope:[multiply_tables_compare] from multiply_tables_compare::@1 - [205] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - [206] call print_str param-assignment [ char_cursor#122 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - to:multiply_tables_compare::@6 -multiply_tables_compare::@6: scope:[multiply_tables_compare] from multiply_tables_compare::@3 - [207] (word~) print_word::w#9 ← (word)(byte*) multiply_tables_compare::asm_sqr#2 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ) - [208] call print_word param-assignment [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ) - to:multiply_tables_compare::@7 -multiply_tables_compare::@7: scope:[multiply_tables_compare] from multiply_tables_compare::@6 - [209] phi() [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ) - [210] call print_str param-assignment [ char_cursor#122 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 multiply_tables_compare::kc_sqr#2 ] ) - to:multiply_tables_compare::@8 -multiply_tables_compare::@8: scope:[multiply_tables_compare] from multiply_tables_compare::@7 - [211] (word~) print_word::w#10 ← (word)(byte*) multiply_tables_compare::kc_sqr#2 [ char_cursor#122 print_word::w#10 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#10 ] ) - [212] call print_word param-assignment [ char_cursor#17 ] ( main:2::multiply_tables_compare:11 [ char_cursor#17 ] ) - to:multiply_tables_compare::@return -multiply_tables_compare::@return: scope:[multiply_tables_compare] from multiply_tables_compare::@10 multiply_tables_compare::@8 - [213] (byte*) line_cursor#10 ← phi( multiply_tables_compare::@10/(byte*) line_cursor#1 multiply_tables_compare::@8/(const byte*) SCREEN#0 ) [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_tables_compare:11 [ line_cursor#10 char_cursor#30 ] ) - [213] (byte*) char_cursor#30 ← phi( multiply_tables_compare::@10/(byte*~) char_cursor#201 multiply_tables_compare::@8/(byte*) char_cursor#17 ) [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_tables_compare:11 [ line_cursor#10 char_cursor#30 ] ) - [214] return [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_tables_compare:11 [ line_cursor#10 char_cursor#30 ] ) +mulf_tables_cmp: scope:[mulf_tables_cmp] from main::@3 + [228] phi() [ ] ( main:2::mulf_tables_cmp:11 [ ] ) + to:mulf_tables_cmp::@1 +mulf_tables_cmp::@1: scope:[mulf_tables_cmp] from mulf_tables_cmp mulf_tables_cmp::@2 + [229] (byte*) mulf_tables_cmp::asm_sqr#2 ← phi( mulf_tables_cmp/(const byte[512]) mula_sqr1_lo#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::asm_sqr#1 ) [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + [229] (byte*) mulf_tables_cmp::kc_sqr#2 ← phi( mulf_tables_cmp/(const byte[512]) mulf_sqr1_lo#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::kc_sqr#1 ) [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + [230] if(*((byte*) mulf_tables_cmp::kc_sqr#2)==*((byte*) mulf_tables_cmp::asm_sqr#2)) goto mulf_tables_cmp::@2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + to:mulf_tables_cmp::@3 +mulf_tables_cmp::@3: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1 + [231] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + [232] call print_str param-assignment [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + to:mulf_tables_cmp::@6 +mulf_tables_cmp::@6: scope:[mulf_tables_cmp] from mulf_tables_cmp::@3 + [233] (word~) print_word::w#8 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ) + [234] call print_word param-assignment [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ) + to:mulf_tables_cmp::@7 +mulf_tables_cmp::@7: scope:[mulf_tables_cmp] from mulf_tables_cmp::@6 + [235] phi() [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ) + [236] call print_str param-assignment [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 ] ) + to:mulf_tables_cmp::@8 +mulf_tables_cmp::@8: scope:[mulf_tables_cmp] from mulf_tables_cmp::@7 + [237] (word~) print_word::w#9 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 [ char_cursor#126 print_word::w#9 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#9 ] ) + [238] call print_word param-assignment [ char_cursor#17 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#17 ] ) + to:mulf_tables_cmp::@return +mulf_tables_cmp::@return: scope:[mulf_tables_cmp] from mulf_tables_cmp::@10 mulf_tables_cmp::@8 + [239] (byte*) line_cursor#10 ← phi( mulf_tables_cmp::@10/(byte*) line_cursor#1 mulf_tables_cmp::@8/(const byte*) SCREEN#0 ) [ line_cursor#10 char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#10 char_cursor#30 ] ) + [239] (byte*) char_cursor#30 ← phi( mulf_tables_cmp::@10/(byte*~) char_cursor#212 mulf_tables_cmp::@8/(byte*) char_cursor#17 ) [ line_cursor#10 char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#10 char_cursor#30 ] ) + [240] return [ line_cursor#10 char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#10 char_cursor#30 ] ) to:@return -multiply_tables_compare::@2: scope:[multiply_tables_compare] from multiply_tables_compare::@1 - [215] (byte*) multiply_tables_compare::asm_sqr#1 ← ++ (byte*) multiply_tables_compare::asm_sqr#2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#1 ] ) - [216] (byte*) multiply_tables_compare::kc_sqr#1 ← ++ (byte*) multiply_tables_compare::kc_sqr#2 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ) - [217] if((byte*) multiply_tables_compare::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto multiply_tables_compare::@1 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ) - to:multiply_tables_compare::@5 -multiply_tables_compare::@5: scope:[multiply_tables_compare] from multiply_tables_compare::@2 - [218] phi() [ ] ( main:2::multiply_tables_compare:11 [ ] ) - [219] call print_str param-assignment [ char_cursor#122 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 ] ) - to:multiply_tables_compare::@10 -multiply_tables_compare::@10: scope:[multiply_tables_compare] from multiply_tables_compare::@5 - [220] phi() [ char_cursor#122 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 ] ) - [221] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_tables_compare:11 [ line_cursor#1 ] ) - [222] (byte*~) char_cursor#201 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#201 ] ( main:2::multiply_tables_compare:11 [ line_cursor#1 char_cursor#201 ] ) - to:multiply_tables_compare::@return +mulf_tables_cmp::@2: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1 + [241] (byte*) mulf_tables_cmp::asm_sqr#1 ← ++ (byte*) mulf_tables_cmp::asm_sqr#2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#1 ] ) + [242] (byte*) mulf_tables_cmp::kc_sqr#1 ← ++ (byte*) mulf_tables_cmp::kc_sqr#2 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) + [243] if((byte*) mulf_tables_cmp::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto mulf_tables_cmp::@1 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) + to:mulf_tables_cmp::@5 +mulf_tables_cmp::@5: scope:[mulf_tables_cmp] from mulf_tables_cmp::@2 + [244] phi() [ ] ( main:2::mulf_tables_cmp:11 [ ] ) + [245] call print_str param-assignment [ char_cursor#126 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 ] ) + to:mulf_tables_cmp::@10 +mulf_tables_cmp::@10: scope:[mulf_tables_cmp] from mulf_tables_cmp::@5 + [246] phi() [ char_cursor#126 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 ] ) + [247] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#1 ] ) + [248] (byte*~) char_cursor#212 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#212 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#1 char_cursor#212 ] ) + to:mulf_tables_cmp::@return mulf_init_asm: scope:[mulf_init_asm] from main::@2 asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } - [224] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) - [225] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) - [226] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) - [227] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) + [250] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) + [251] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) + [252] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) + [253] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) to:mulf_init_asm::@return mulf_init_asm::@return: scope:[mulf_init_asm] from mulf_init_asm - [228] return [ ] ( main:2::mulf_init_asm:9 [ ] ) + [254] return [ ] ( main:2::mulf_init_asm:9 [ ] ) to:@return mulf_init: scope:[mulf_init] from main::@1 - [229] phi() [ ] ( main:2::mulf_init:7 [ ] ) + [255] phi() [ ] ( main:2::mulf_init:7 [ ] ) to:mulf_init::@1 mulf_init::@1: scope:[mulf_init] from mulf_init mulf_init::@2 - [230] (byte) mulf_init::x_2#3 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::x_2#2 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) - [230] (byte*) mulf_init::sqr1_hi#2 ← phi( mulf_init/(const byte[512]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_hi#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) - [230] (byte*) mulf_init::sqr1_lo#2 ← phi( mulf_init/(const byte[512]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_lo#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) - [230] (word) mulf_init::sqr#4 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(word) mulf_init::sqr#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) - [230] (byte) mulf_init::c#2 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::c#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) - [231] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) - [232] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) - [233] if((byte~) mulf_init::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) + [256] (byte) mulf_init::x_2#3 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::x_2#2 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) + [256] (byte*) mulf_init::sqr1_hi#2 ← phi( mulf_init/(const byte[512]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_hi#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) + [256] (byte*) mulf_init::sqr1_lo#2 ← phi( mulf_init/(const byte[512]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_lo#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) + [256] (word) mulf_init::sqr#4 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(word) mulf_init::sqr#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) + [256] (byte) mulf_init::c#2 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::c#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) + [257] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) + [258] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) + [259] if((byte~) mulf_init::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) to:mulf_init::@5 mulf_init::@5: scope:[mulf_init] from mulf_init::@1 - [234] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ) - [235] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ) + [260] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ) + [261] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ) to:mulf_init::@2 mulf_init::@2: scope:[mulf_init] from mulf_init::@1 mulf_init::@5 - [236] (byte) mulf_init::x_2#2 ← phi( mulf_init::@1/(byte) mulf_init::x_2#3 mulf_init::@5/(byte) mulf_init::x_2#1 ) [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) - [236] (word) mulf_init::sqr#3 ← phi( mulf_init::@1/(word) mulf_init::sqr#4 mulf_init::@5/(word) mulf_init::sqr#2 ) [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) - [237] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) - [238] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) - [239] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) - [240] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) - [241] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) - [242] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) - [243] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) - [244] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) + [262] (byte) mulf_init::x_2#2 ← phi( mulf_init::@1/(byte) mulf_init::x_2#3 mulf_init::@5/(byte) mulf_init::x_2#1 ) [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) + [262] (word) mulf_init::sqr#3 ← phi( mulf_init::@1/(word) mulf_init::sqr#4 mulf_init::@5/(word) mulf_init::sqr#2 ) [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) + [263] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) + [264] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) + [265] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) + [266] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) + [267] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) + [268] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) + [269] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) + [270] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) to:mulf_init::@3 mulf_init::@3: scope:[mulf_init] from mulf_init::@2 mulf_init::@4 - [245] (byte) mulf_init::dir#2 ← phi( mulf_init::@4/(byte) mulf_init::dir#3 mulf_init::@2/(byte/word/signed word/dword/signed dword) 255 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) - [245] (byte*) mulf_init::sqr2_hi#2 ← phi( mulf_init::@4/(byte*) mulf_init::sqr2_hi#1 mulf_init::@2/(const byte[512]) mulf_sqr2_hi#0 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) - [245] (byte*) mulf_init::sqr2_lo#2 ← phi( mulf_init::@4/(byte*) mulf_init::sqr2_lo#1 mulf_init::@2/(const byte[512]) mulf_sqr2_lo#0 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) - [245] (byte) mulf_init::x_255#2 ← phi( mulf_init::@4/(byte) mulf_init::x_255#1 mulf_init::@2/((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) - [246] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) - [247] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) - [248] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ) - [249] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) - [250] if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@12 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) + [271] (byte) mulf_init::dir#2 ← phi( mulf_init::@4/(byte) mulf_init::dir#3 mulf_init::@2/(byte/word/signed word/dword/signed dword) 255 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) + [271] (byte*) mulf_init::sqr2_hi#2 ← phi( mulf_init::@4/(byte*) mulf_init::sqr2_hi#1 mulf_init::@2/(const byte[512]) mulf_sqr2_hi#0 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) + [271] (byte*) mulf_init::sqr2_lo#2 ← phi( mulf_init::@4/(byte*) mulf_init::sqr2_lo#1 mulf_init::@2/(const byte[512]) mulf_sqr2_lo#0 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) + [271] (byte) mulf_init::x_255#2 ← phi( mulf_init::@4/(byte) mulf_init::x_255#1 mulf_init::@2/((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) + [272] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) + [273] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) + [274] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ) + [275] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) + [276] if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@12 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) to:mulf_init::@4 mulf_init::@4: scope:[mulf_init] from mulf_init::@12 mulf_init::@3 - [251] (byte) mulf_init::dir#3 ← phi( mulf_init::@12/(byte) mulf_init::dir#2 mulf_init::@3/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ mulf_init::sqr2_lo#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) - [252] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) - [253] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) + [277] (byte) mulf_init::dir#3 ← phi( mulf_init::@12/(byte) mulf_init::dir#2 mulf_init::@3/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ mulf_init::sqr2_lo#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) + [278] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) + [279] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) to:mulf_init::@8 mulf_init::@8: scope:[mulf_init] from mulf_init::@4 - [254] *((const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) - [255] *((const byte[512]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) + [280] *((const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) + [281] *((const byte[512]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) to:mulf_init::@return mulf_init::@return: scope:[mulf_init] from mulf_init::@8 - [256] return [ ] ( main:2::mulf_init:7 [ ] ) + [282] return [ ] ( main:2::mulf_init:7 [ ] ) to:@return mulf_init::@12: scope:[mulf_init] from mulf_init::@3 - [257] phi() [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) + [283] phi() [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) to:mulf_init::@4 print_cls: scope:[print_cls] from main - [258] phi() [ ] ( main:2::print_cls:5 [ ] ) + [284] phi() [ ] ( main:2::print_cls:5 [ ] ) to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [259] (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 [ print_cls::sc#2 ] ) - [260] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) - [261] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) - [262] 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 [ print_cls::sc#1 ] ) + [285] (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 [ print_cls::sc#2 ] ) + [286] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) + [287] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) + [288] 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 [ print_cls::sc#1 ] ) to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 - [263] return [ ] ( main:2::print_cls:5 [ ] ) + [289] return [ ] ( main:2::print_cls:5 [ ] ) to:@return diff --git a/src/test/java/dk/camelot64/kickc/test/ref/test-multiply.log b/src/test/java/dk/camelot64/kickc/test/ref/test-multiply.log index 95933cd2c..b622a7fc9 100644 --- a/src/test/java/dk/camelot64/kickc/test/ref/test-multiply.log +++ b/src/test/java/dk/camelot64/kickc/test/ref/test-multiply.log @@ -1,6 +1,7 @@ PARSING src/test/java/dk/camelot64/kickc/test/kc/test-multiply.kc // Test the fast multiplication library import "print.kc" +import "multiply.kc" import "fastmultiply.kc" byte* BGCOL = $d021; @@ -10,9 +11,9 @@ void main() { print_cls(); mulf_init(); mulf_init_asm(); - multiply_tables_compare(); - multiply_results_compare(); - signed_multiply_results_compare(); + mulf_tables_cmp(); + mul8u_slowfast_compare(); + mul8s_slowfast_compare(); } // Slow multiplication of unsigned bytes @@ -105,7 +106,7 @@ void mulf_init_asm() { // Compare the ASM-based mul tables with the KC-based mul tables // Red screen on failure - green on success -void multiply_tables_compare() { +void mulf_tables_cmp() { byte* asm_sqr = mula_sqr1_lo; for( byte* kc_sqr=mulf_sqr1_lo; kc_sqr>1; + mb = mb<<1; + } + return res; +} + + Importing fastmultiply.kc PARSING src/test/java/dk/camelot64/kickc/test/kc/fastmultiply.kc // Library Implementation of the Seriously Fast Multiplication @@ -357,10 +387,10 @@ Adding pre/post-modifier (byte*) mulf_init::sqr2_lo ← ++ (byte*) mulf_init::sq Adding pre/post-modifier (byte) muls8u::i ← ++ (byte) muls8u::i Adding pre/post-modifier (signed byte) muls8s::i ← -- (signed byte) muls8s::i Adding pre/post-modifier (signed byte) muls8s::j ← ++ (signed byte) muls8s::j -Adding pre/post-modifier (byte*) multiply_tables_compare::asm_sqr ← ++ (byte*) multiply_tables_compare::asm_sqr -Adding pre/post-modifier (byte*) multiply_tables_compare::kc_sqr ← ++ (byte*) multiply_tables_compare::kc_sqr -Adding pre/post-modifier (signed byte) signed_multiply_results_compare::b ← ++ (signed byte) signed_multiply_results_compare::b -Adding pre/post-modifier (signed byte) signed_multiply_results_compare::a ← ++ (signed byte) signed_multiply_results_compare::a +Adding pre/post-modifier (byte*) mulf_tables_cmp::asm_sqr ← ++ (byte*) mulf_tables_cmp::asm_sqr +Adding pre/post-modifier (byte*) mulf_tables_cmp::kc_sqr ← ++ (byte*) mulf_tables_cmp::kc_sqr +Adding pre/post-modifier (signed byte) mul8s_slowfast_compare::b ← ++ (signed byte) mul8s_slowfast_compare::b +Adding pre/post-modifier (signed byte) mul8s_slowfast_compare::a ← ++ (signed byte) mul8s_slowfast_compare::a STATEMENTS (byte*) SCREEN ← (word/signed word/dword/signed dword) 1024 @@ -452,6 +482,33 @@ print_cls::@1: print_cls::@return: return endproc // print_cls() +proc (word()) mul8u((byte) mul8u::a , (byte) mul8u::b) + (word) mul8u::res ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) mul8u::mb ← (byte) mul8u::b +mul8u::@1: + (boolean~) mul8u::$0 ← (byte) mul8u::a != (byte/signed byte/word/signed word/dword/signed dword) 0 + if((boolean~) mul8u::$0) goto mul8u::@2 + goto mul8u::@3 +mul8u::@2: + (byte~) mul8u::$1 ← (byte) mul8u::a & (byte/signed byte/word/signed word/dword/signed dword) 1 + (boolean~) mul8u::$2 ← (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (boolean~) mul8u::$3 ← ! (boolean~) mul8u::$2 + if((boolean~) mul8u::$3) goto mul8u::@4 + (word~) mul8u::$4 ← (word) mul8u::res + (word) mul8u::mb + (word) mul8u::res ← (word~) mul8u::$4 +mul8u::@4: + (byte~) mul8u::$5 ← (byte) mul8u::a >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mul8u::a ← (byte~) mul8u::$5 + (word~) mul8u::$6 ← (word) mul8u::mb << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul8u::mb ← (word~) mul8u::$6 + goto mul8u::@1 +mul8u::@3: + (word) mul8u::return ← (word) mul8u::res + goto mul8u::@return +mul8u::@return: + (word) mul8u::return ← (word) mul8u::return + return (word) mul8u::return +endproc // mul8u() (byte[512]) mulf_sqr1_lo ← { fill( 512, 0) } (byte[512]) mulf_sqr1_hi ← { fill( 512, 0) } (byte[512]) mulf_sqr2_lo ← { fill( 512, 0) } @@ -562,9 +619,9 @@ proc (void()) main() (void~) main::$0 ← call print_cls (void~) main::$1 ← call mulf_init (void~) main::$2 ← call mulf_init_asm - (void~) main::$3 ← call multiply_tables_compare - (void~) main::$4 ← call multiply_results_compare - (void~) main::$5 ← call signed_multiply_results_compare + (void~) main::$3 ← call mulf_tables_cmp + (void~) main::$4 ← call mul8u_slowfast_compare + (void~) main::$5 ← call mul8s_slowfast_compare main::@return: return endproc // main() @@ -633,104 +690,119 @@ proc (void()) mulf_init_asm() mulf_init_asm::@return: return endproc // mulf_init_asm() -proc (void()) multiply_tables_compare() - (byte*) multiply_tables_compare::asm_sqr ← (byte[512]) mula_sqr1_lo - (byte*) multiply_tables_compare::kc_sqr ← (byte[512]) mulf_sqr1_lo -multiply_tables_compare::@1: - (boolean~) multiply_tables_compare::$0 ← *((byte*) multiply_tables_compare::kc_sqr) != *((byte*) multiply_tables_compare::asm_sqr) - (boolean~) multiply_tables_compare::$1 ← ! (boolean~) multiply_tables_compare::$0 - if((boolean~) multiply_tables_compare::$1) goto multiply_tables_compare::@2 +proc (void()) mulf_tables_cmp() + (byte*) mulf_tables_cmp::asm_sqr ← (byte[512]) mula_sqr1_lo + (byte*) mulf_tables_cmp::kc_sqr ← (byte[512]) mulf_sqr1_lo +mulf_tables_cmp::@1: + (boolean~) mulf_tables_cmp::$0 ← *((byte*) mulf_tables_cmp::kc_sqr) != *((byte*) mulf_tables_cmp::asm_sqr) + (boolean~) mulf_tables_cmp::$1 ← ! (boolean~) mulf_tables_cmp::$0 + if((boolean~) mulf_tables_cmp::$1) goto mulf_tables_cmp::@2 *((byte*) BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2 - (void~) multiply_tables_compare::$2 ← call print_str (string) "multiply table mismatch at @" - (word~) multiply_tables_compare::$3 ← ((word)) (byte*) multiply_tables_compare::asm_sqr - (void~) multiply_tables_compare::$4 ← call print_word (word~) multiply_tables_compare::$3 - (void~) multiply_tables_compare::$5 ← call print_str (string) " / @" - (word~) multiply_tables_compare::$6 ← ((word)) (byte*) multiply_tables_compare::kc_sqr - (void~) multiply_tables_compare::$7 ← call print_word (word~) multiply_tables_compare::$6 - goto multiply_tables_compare::@return -multiply_tables_compare::@2: - (byte*) multiply_tables_compare::asm_sqr ← ++ (byte*) multiply_tables_compare::asm_sqr - (byte*) multiply_tables_compare::kc_sqr ← ++ (byte*) multiply_tables_compare::kc_sqr - (word/signed word/dword/signed dword~) multiply_tables_compare::$8 ← (word/signed word/dword/signed dword) 512 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*~) multiply_tables_compare::$9 ← (byte[512]) mulf_sqr1_lo + (word/signed word/dword/signed dword~) multiply_tables_compare::$8 - (boolean~) multiply_tables_compare::$10 ← (byte*) multiply_tables_compare::kc_sqr < (byte*~) multiply_tables_compare::$9 - if((boolean~) multiply_tables_compare::$10) goto multiply_tables_compare::@1 - (void~) multiply_tables_compare::$11 ← call print_str (string) "multiply tables match!@" - (void~) multiply_tables_compare::$12 ← call print_ln -multiply_tables_compare::@return: + (void~) mulf_tables_cmp::$2 ← call print_str (string) "multiply table mismatch at @" + (word~) mulf_tables_cmp::$3 ← ((word)) (byte*) mulf_tables_cmp::asm_sqr + (void~) mulf_tables_cmp::$4 ← call print_word (word~) mulf_tables_cmp::$3 + (void~) mulf_tables_cmp::$5 ← call print_str (string) " / @" + (word~) mulf_tables_cmp::$6 ← ((word)) (byte*) mulf_tables_cmp::kc_sqr + (void~) mulf_tables_cmp::$7 ← call print_word (word~) mulf_tables_cmp::$6 + goto mulf_tables_cmp::@return +mulf_tables_cmp::@2: + (byte*) mulf_tables_cmp::asm_sqr ← ++ (byte*) mulf_tables_cmp::asm_sqr + (byte*) mulf_tables_cmp::kc_sqr ← ++ (byte*) mulf_tables_cmp::kc_sqr + (word/signed word/dword/signed dword~) mulf_tables_cmp::$8 ← (word/signed word/dword/signed dword) 512 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte*~) mulf_tables_cmp::$9 ← (byte[512]) mulf_sqr1_lo + (word/signed word/dword/signed dword~) mulf_tables_cmp::$8 + (boolean~) mulf_tables_cmp::$10 ← (byte*) mulf_tables_cmp::kc_sqr < (byte*~) mulf_tables_cmp::$9 + if((boolean~) mulf_tables_cmp::$10) goto mulf_tables_cmp::@1 + (void~) mulf_tables_cmp::$11 ← call print_str (string) "multiply tables match!@" + (void~) mulf_tables_cmp::$12 ← call print_ln +mulf_tables_cmp::@return: return -endproc // multiply_tables_compare() -proc (void()) multiply_results_compare() - (byte) multiply_results_compare::a ← (byte/signed byte/word/signed word/dword/signed dword) 0 -multiply_results_compare::@1: - (byte) multiply_results_compare::b ← (byte/signed byte/word/signed word/dword/signed dword) 0 -multiply_results_compare::@2: - (word~) multiply_results_compare::$0 ← call muls8u (byte) multiply_results_compare::a (byte) multiply_results_compare::b - (word) multiply_results_compare::ms ← (word~) multiply_results_compare::$0 - (word~) multiply_results_compare::$1 ← call mulf8u (byte) multiply_results_compare::a (byte) multiply_results_compare::b - (word) multiply_results_compare::ma ← (word~) multiply_results_compare::$1 - (boolean~) multiply_results_compare::$2 ← (word) multiply_results_compare::ms != (word) multiply_results_compare::ma - (boolean~) multiply_results_compare::$3 ← ! (boolean~) multiply_results_compare::$2 - if((boolean~) multiply_results_compare::$3) goto multiply_results_compare::@3 +endproc // mulf_tables_cmp() +proc (void()) mul8u_slowfast_compare() + (byte) mul8u_slowfast_compare::a ← (byte/signed byte/word/signed word/dword/signed dword) 0 +mul8u_slowfast_compare::@1: + (byte) mul8u_slowfast_compare::b ← (byte/signed byte/word/signed word/dword/signed dword) 0 +mul8u_slowfast_compare::@2: + (word~) mul8u_slowfast_compare::$0 ← call muls8u (byte) mul8u_slowfast_compare::a (byte) mul8u_slowfast_compare::b + (word) mul8u_slowfast_compare::ms ← (word~) mul8u_slowfast_compare::$0 + (word~) mul8u_slowfast_compare::$1 ← call mulf8u (byte) mul8u_slowfast_compare::a (byte) mul8u_slowfast_compare::b + (word) mul8u_slowfast_compare::mf ← (word~) mul8u_slowfast_compare::$1 + (word~) mul8u_slowfast_compare::$2 ← call mul8u (byte) mul8u_slowfast_compare::a (byte) mul8u_slowfast_compare::b + (word) mul8u_slowfast_compare::mn ← (word~) mul8u_slowfast_compare::$2 + (byte) mul8u_slowfast_compare::ok ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (boolean~) mul8u_slowfast_compare::$3 ← (word) mul8u_slowfast_compare::ms != (word) mul8u_slowfast_compare::mf + (boolean~) mul8u_slowfast_compare::$4 ← ! (boolean~) mul8u_slowfast_compare::$3 + if((boolean~) mul8u_slowfast_compare::$4) goto mul8u_slowfast_compare::@3 + (byte) mul8u_slowfast_compare::ok ← (byte/signed byte/word/signed word/dword/signed dword) 0 +mul8u_slowfast_compare::@3: + (boolean~) mul8u_slowfast_compare::$5 ← (word) mul8u_slowfast_compare::ms != (word) mul8u_slowfast_compare::mn + (boolean~) mul8u_slowfast_compare::$6 ← ! (boolean~) mul8u_slowfast_compare::$5 + if((boolean~) mul8u_slowfast_compare::$6) goto mul8u_slowfast_compare::@4 + (byte) mul8u_slowfast_compare::ok ← (byte/signed byte/word/signed word/dword/signed dword) 0 +mul8u_slowfast_compare::@4: + (boolean~) mul8u_slowfast_compare::$7 ← (byte) mul8u_slowfast_compare::ok == (byte/signed byte/word/signed word/dword/signed dword) 0 + (boolean~) mul8u_slowfast_compare::$8 ← ! (boolean~) mul8u_slowfast_compare::$7 + if((boolean~) mul8u_slowfast_compare::$8) goto mul8u_slowfast_compare::@5 *((byte*) BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2 - (void~) multiply_results_compare::$4 ← call multiply_error (byte) multiply_results_compare::a (byte) multiply_results_compare::b (word) multiply_results_compare::ms (word) multiply_results_compare::ma - goto multiply_results_compare::@return -multiply_results_compare::@3: - (byte) multiply_results_compare::b ← ++ (byte) multiply_results_compare::b - (boolean~) multiply_results_compare::$5 ← (byte) multiply_results_compare::b != (byte/signed byte/word/signed word/dword/signed dword) 0 - if((boolean~) multiply_results_compare::$5) goto multiply_results_compare::@2 - (byte) multiply_results_compare::a ← ++ (byte) multiply_results_compare::a - (boolean~) multiply_results_compare::$6 ← (byte) multiply_results_compare::a != (byte/signed byte/word/signed word/dword/signed dword) 0 - if((boolean~) multiply_results_compare::$6) goto multiply_results_compare::@1 - (void~) multiply_results_compare::$7 ← call print_str (string) "multiply results match!@" - (void~) multiply_results_compare::$8 ← call print_ln -multiply_results_compare::@return: + (void~) mul8u_slowfast_compare::$9 ← call multiply_error (byte) mul8u_slowfast_compare::a (byte) mul8u_slowfast_compare::b (word) mul8u_slowfast_compare::ms (word) mul8u_slowfast_compare::mn (word) mul8u_slowfast_compare::mf + goto mul8u_slowfast_compare::@return +mul8u_slowfast_compare::@5: + (byte) mul8u_slowfast_compare::b ← ++ (byte) mul8u_slowfast_compare::b + (boolean~) mul8u_slowfast_compare::$10 ← (byte) mul8u_slowfast_compare::b != (byte/signed byte/word/signed word/dword/signed dword) 0 + if((boolean~) mul8u_slowfast_compare::$10) goto mul8u_slowfast_compare::@2 + (byte) mul8u_slowfast_compare::a ← ++ (byte) mul8u_slowfast_compare::a + (boolean~) mul8u_slowfast_compare::$11 ← (byte) mul8u_slowfast_compare::a != (byte/signed byte/word/signed word/dword/signed dword) 0 + if((boolean~) mul8u_slowfast_compare::$11) goto mul8u_slowfast_compare::@1 + (void~) mul8u_slowfast_compare::$12 ← call print_str (string) "multiply results match!@" + (void~) mul8u_slowfast_compare::$13 ← call print_ln +mul8u_slowfast_compare::@return: return -endproc // multiply_results_compare() -proc (void()) multiply_error((byte) multiply_error::a , (byte) multiply_error::b , (word) multiply_error::ms , (word) multiply_error::ma) +endproc // mul8u_slowfast_compare() +proc (void()) multiply_error((byte) multiply_error::a , (byte) multiply_error::b , (word) multiply_error::ms , (word) multiply_error::mn , (word) multiply_error::mf) (void~) multiply_error::$0 ← call print_str (string) "multiply mismatch @" (void~) multiply_error::$1 ← call print_byte (byte) multiply_error::a (void~) multiply_error::$2 ← call print_str (string) "*@" (void~) multiply_error::$3 ← call print_byte (byte) multiply_error::b (void~) multiply_error::$4 ← call print_str (string) " slow:@" (void~) multiply_error::$5 ← call print_word (word) multiply_error::ms - (void~) multiply_error::$6 ← call print_str (string) " / fast asm:@" - (void~) multiply_error::$7 ← call print_word (word) multiply_error::ma - (void~) multiply_error::$8 ← call print_ln + (void~) multiply_error::$6 ← call print_str (string) " / normal:@" + (void~) multiply_error::$7 ← call print_word (word) multiply_error::mn + (void~) multiply_error::$8 ← call print_str (string) " / fast:@" + (void~) multiply_error::$9 ← call print_word (word) multiply_error::mf + (void~) multiply_error::$10 ← call print_ln multiply_error::@return: return endproc // multiply_error() -proc (void()) signed_multiply_results_compare() - (signed byte/signed word/signed dword~) signed_multiply_results_compare::$0 ← - (byte/word/signed word/dword/signed dword) 128 - (signed byte) signed_multiply_results_compare::a ← (signed byte/signed word/signed dword~) signed_multiply_results_compare::$0 -signed_multiply_results_compare::@1: - (signed byte/signed word/signed dword~) signed_multiply_results_compare::$1 ← - (byte/word/signed word/dword/signed dword) 128 - (signed byte) signed_multiply_results_compare::b ← (signed byte/signed word/signed dword~) signed_multiply_results_compare::$1 -signed_multiply_results_compare::@2: - (signed word~) signed_multiply_results_compare::$2 ← call muls8s (signed byte) signed_multiply_results_compare::a (signed byte) signed_multiply_results_compare::b - (signed word) signed_multiply_results_compare::ms ← (signed word~) signed_multiply_results_compare::$2 - (signed word~) signed_multiply_results_compare::$3 ← call mulf8s (signed byte) signed_multiply_results_compare::a (signed byte) signed_multiply_results_compare::b - (signed word) signed_multiply_results_compare::ma ← (signed word~) signed_multiply_results_compare::$3 - (boolean~) signed_multiply_results_compare::$4 ← (signed word) signed_multiply_results_compare::ms != (signed word) signed_multiply_results_compare::ma - (boolean~) signed_multiply_results_compare::$5 ← ! (boolean~) signed_multiply_results_compare::$4 - if((boolean~) signed_multiply_results_compare::$5) goto signed_multiply_results_compare::@3 +proc (void()) mul8s_slowfast_compare() + (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$0 ← - (byte/word/signed word/dword/signed dword) 128 + (signed byte) mul8s_slowfast_compare::a ← (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$0 +mul8s_slowfast_compare::@1: + (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$1 ← - (byte/word/signed word/dword/signed dword) 128 + (signed byte) mul8s_slowfast_compare::b ← (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$1 +mul8s_slowfast_compare::@2: + (signed word~) mul8s_slowfast_compare::$2 ← call muls8s (signed byte) mul8s_slowfast_compare::a (signed byte) mul8s_slowfast_compare::b + (signed word) mul8s_slowfast_compare::ms ← (signed word~) mul8s_slowfast_compare::$2 + (signed word~) mul8s_slowfast_compare::$3 ← call mulf8s (signed byte) mul8s_slowfast_compare::a (signed byte) mul8s_slowfast_compare::b + (signed word) mul8s_slowfast_compare::ma ← (signed word~) mul8s_slowfast_compare::$3 + (boolean~) mul8s_slowfast_compare::$4 ← (signed word) mul8s_slowfast_compare::ms != (signed word) mul8s_slowfast_compare::ma + (boolean~) mul8s_slowfast_compare::$5 ← ! (boolean~) mul8s_slowfast_compare::$4 + if((boolean~) mul8s_slowfast_compare::$5) goto mul8s_slowfast_compare::@3 *((byte*) BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2 - (void~) signed_multiply_results_compare::$6 ← call signed_multiply_error (signed byte) signed_multiply_results_compare::a (signed byte) signed_multiply_results_compare::b (signed word) signed_multiply_results_compare::ms (signed word) signed_multiply_results_compare::ma - goto signed_multiply_results_compare::@return -signed_multiply_results_compare::@3: - (signed byte) signed_multiply_results_compare::b ← ++ (signed byte) signed_multiply_results_compare::b - (signed byte/signed word/signed dword~) signed_multiply_results_compare::$7 ← - (byte/word/signed word/dword/signed dword) 128 - (boolean~) signed_multiply_results_compare::$8 ← (signed byte) signed_multiply_results_compare::b != (signed byte/signed word/signed dword~) signed_multiply_results_compare::$7 - if((boolean~) signed_multiply_results_compare::$8) goto signed_multiply_results_compare::@2 - (signed byte) signed_multiply_results_compare::a ← ++ (signed byte) signed_multiply_results_compare::a - (signed byte/signed word/signed dword~) signed_multiply_results_compare::$9 ← - (byte/word/signed word/dword/signed dword) 128 - (boolean~) signed_multiply_results_compare::$10 ← (signed byte) signed_multiply_results_compare::a != (signed byte/signed word/signed dword~) signed_multiply_results_compare::$9 - if((boolean~) signed_multiply_results_compare::$10) goto signed_multiply_results_compare::@1 - (void~) signed_multiply_results_compare::$11 ← call print_str (string) "signed multiply results match!@" - (void~) signed_multiply_results_compare::$12 ← call print_ln -signed_multiply_results_compare::@return: + (void~) mul8s_slowfast_compare::$6 ← call signed_multiply_error (signed byte) mul8s_slowfast_compare::a (signed byte) mul8s_slowfast_compare::b (signed word) mul8s_slowfast_compare::ms (signed word) mul8s_slowfast_compare::ma + goto mul8s_slowfast_compare::@return +mul8s_slowfast_compare::@3: + (signed byte) mul8s_slowfast_compare::b ← ++ (signed byte) mul8s_slowfast_compare::b + (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$7 ← - (byte/word/signed word/dword/signed dword) 128 + (boolean~) mul8s_slowfast_compare::$8 ← (signed byte) mul8s_slowfast_compare::b != (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$7 + if((boolean~) mul8s_slowfast_compare::$8) goto mul8s_slowfast_compare::@2 + (signed byte) mul8s_slowfast_compare::a ← ++ (signed byte) mul8s_slowfast_compare::a + (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$9 ← - (byte/word/signed word/dword/signed dword) 128 + (boolean~) mul8s_slowfast_compare::$10 ← (signed byte) mul8s_slowfast_compare::a != (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$9 + if((boolean~) mul8s_slowfast_compare::$10) goto mul8s_slowfast_compare::@1 + (void~) mul8s_slowfast_compare::$11 ← call print_str (string) "signed multiply results match!@" + (void~) mul8s_slowfast_compare::$12 ← call print_ln +mul8s_slowfast_compare::@return: return -endproc // signed_multiply_results_compare() +endproc // mul8s_slowfast_compare() proc (void()) signed_multiply_error((signed byte) signed_multiply_error::a , (signed byte) signed_multiply_error::b , (signed word) signed_multiply_error::ms , (signed word) signed_multiply_error::ma) (void~) signed_multiply_error::$0 ← call print_str (string) "signed multiply mismatch @" (void~) signed_multiply_error::$1 ← call print_sbyte (signed byte) signed_multiply_error::a @@ -759,6 +831,73 @@ SYMBOLS (void~) main::$4 (void~) main::$5 (label) main::@return +(void()) mul8s_slowfast_compare() +(signed byte/signed word/signed dword~) mul8s_slowfast_compare::$0 +(signed byte/signed word/signed dword~) mul8s_slowfast_compare::$1 +(boolean~) mul8s_slowfast_compare::$10 +(void~) mul8s_slowfast_compare::$11 +(void~) mul8s_slowfast_compare::$12 +(signed word~) mul8s_slowfast_compare::$2 +(signed word~) mul8s_slowfast_compare::$3 +(boolean~) mul8s_slowfast_compare::$4 +(boolean~) mul8s_slowfast_compare::$5 +(void~) mul8s_slowfast_compare::$6 +(signed byte/signed word/signed dword~) mul8s_slowfast_compare::$7 +(boolean~) mul8s_slowfast_compare::$8 +(signed byte/signed word/signed dword~) mul8s_slowfast_compare::$9 +(label) mul8s_slowfast_compare::@1 +(label) mul8s_slowfast_compare::@2 +(label) mul8s_slowfast_compare::@3 +(label) mul8s_slowfast_compare::@return +(signed byte) mul8s_slowfast_compare::a +(signed byte) mul8s_slowfast_compare::b +(signed word) mul8s_slowfast_compare::ma +(signed word) mul8s_slowfast_compare::ms +(word()) mul8u((byte) mul8u::a , (byte) mul8u::b) +(boolean~) mul8u::$0 +(byte~) mul8u::$1 +(boolean~) mul8u::$2 +(boolean~) mul8u::$3 +(word~) mul8u::$4 +(byte~) mul8u::$5 +(word~) mul8u::$6 +(label) mul8u::@1 +(label) mul8u::@2 +(label) mul8u::@3 +(label) mul8u::@4 +(label) mul8u::@return +(byte) mul8u::a +(byte) mul8u::b +(word) mul8u::mb +(word) mul8u::res +(word) mul8u::return +(void()) mul8u_slowfast_compare() +(word~) mul8u_slowfast_compare::$0 +(word~) mul8u_slowfast_compare::$1 +(boolean~) mul8u_slowfast_compare::$10 +(boolean~) mul8u_slowfast_compare::$11 +(void~) mul8u_slowfast_compare::$12 +(void~) mul8u_slowfast_compare::$13 +(word~) mul8u_slowfast_compare::$2 +(boolean~) mul8u_slowfast_compare::$3 +(boolean~) mul8u_slowfast_compare::$4 +(boolean~) mul8u_slowfast_compare::$5 +(boolean~) mul8u_slowfast_compare::$6 +(boolean~) mul8u_slowfast_compare::$7 +(boolean~) mul8u_slowfast_compare::$8 +(void~) mul8u_slowfast_compare::$9 +(label) mul8u_slowfast_compare::@1 +(label) mul8u_slowfast_compare::@2 +(label) mul8u_slowfast_compare::@3 +(label) mul8u_slowfast_compare::@4 +(label) mul8u_slowfast_compare::@5 +(label) mul8u_slowfast_compare::@return +(byte) mul8u_slowfast_compare::a +(byte) mul8u_slowfast_compare::b +(word) mul8u_slowfast_compare::mf +(word) mul8u_slowfast_compare::mn +(word) mul8u_slowfast_compare::ms +(byte) mul8u_slowfast_compare::ok (byte[512]) mula_sqr1_hi (byte[512]) mula_sqr1_lo (byte[512]) mula_sqr2_hi @@ -837,6 +976,25 @@ SYMBOLS (byte[512]) mulf_sqr1_lo (byte[512]) mulf_sqr2_hi (byte[512]) mulf_sqr2_lo +(void()) mulf_tables_cmp() +(boolean~) mulf_tables_cmp::$0 +(boolean~) mulf_tables_cmp::$1 +(boolean~) mulf_tables_cmp::$10 +(void~) mulf_tables_cmp::$11 +(void~) mulf_tables_cmp::$12 +(void~) mulf_tables_cmp::$2 +(word~) mulf_tables_cmp::$3 +(void~) mulf_tables_cmp::$4 +(void~) mulf_tables_cmp::$5 +(word~) mulf_tables_cmp::$6 +(void~) mulf_tables_cmp::$7 +(word/signed word/dword/signed dword~) mulf_tables_cmp::$8 +(byte*~) mulf_tables_cmp::$9 +(label) mulf_tables_cmp::@1 +(label) mulf_tables_cmp::@2 +(label) mulf_tables_cmp::@return +(byte*) mulf_tables_cmp::asm_sqr +(byte*) mulf_tables_cmp::kc_sqr (signed word()) muls8s((signed byte) muls8s::a , (signed byte) muls8s::b) (boolean~) muls8s::$0 (boolean~) muls8s::$1 @@ -871,9 +1029,10 @@ SYMBOLS (byte) muls8u::i (word) muls8u::m (word) muls8u::return -(void()) multiply_error((byte) multiply_error::a , (byte) multiply_error::b , (word) multiply_error::ms , (word) multiply_error::ma) +(void()) multiply_error((byte) multiply_error::a , (byte) multiply_error::b , (word) multiply_error::ms , (word) multiply_error::mn , (word) multiply_error::mf) (void~) multiply_error::$0 (void~) multiply_error::$1 +(void~) multiply_error::$10 (void~) multiply_error::$2 (void~) multiply_error::$3 (void~) multiply_error::$4 @@ -881,48 +1040,13 @@ SYMBOLS (void~) multiply_error::$6 (void~) multiply_error::$7 (void~) multiply_error::$8 +(void~) multiply_error::$9 (label) multiply_error::@return (byte) multiply_error::a (byte) multiply_error::b -(word) multiply_error::ma +(word) multiply_error::mf +(word) multiply_error::mn (word) multiply_error::ms -(void()) multiply_results_compare() -(word~) multiply_results_compare::$0 -(word~) multiply_results_compare::$1 -(boolean~) multiply_results_compare::$2 -(boolean~) multiply_results_compare::$3 -(void~) multiply_results_compare::$4 -(boolean~) multiply_results_compare::$5 -(boolean~) multiply_results_compare::$6 -(void~) multiply_results_compare::$7 -(void~) multiply_results_compare::$8 -(label) multiply_results_compare::@1 -(label) multiply_results_compare::@2 -(label) multiply_results_compare::@3 -(label) multiply_results_compare::@return -(byte) multiply_results_compare::a -(byte) multiply_results_compare::b -(word) multiply_results_compare::ma -(word) multiply_results_compare::ms -(void()) multiply_tables_compare() -(boolean~) multiply_tables_compare::$0 -(boolean~) multiply_tables_compare::$1 -(boolean~) multiply_tables_compare::$10 -(void~) multiply_tables_compare::$11 -(void~) multiply_tables_compare::$12 -(void~) multiply_tables_compare::$2 -(word~) multiply_tables_compare::$3 -(void~) multiply_tables_compare::$4 -(void~) multiply_tables_compare::$5 -(word~) multiply_tables_compare::$6 -(void~) multiply_tables_compare::$7 -(word/signed word/dword/signed dword~) multiply_tables_compare::$8 -(byte*~) multiply_tables_compare::$9 -(label) multiply_tables_compare::@1 -(label) multiply_tables_compare::@2 -(label) multiply_tables_compare::@return -(byte*) multiply_tables_compare::asm_sqr -(byte*) multiply_tables_compare::kc_sqr (void()) print_byte((byte) print_byte::b) (byte~) print_byte::$0 (void~) print_byte::$1 @@ -994,32 +1118,11 @@ SYMBOLS (signed byte) signed_multiply_error::b (signed word) signed_multiply_error::ma (signed word) signed_multiply_error::ms -(void()) signed_multiply_results_compare() -(signed byte/signed word/signed dword~) signed_multiply_results_compare::$0 -(signed byte/signed word/signed dword~) signed_multiply_results_compare::$1 -(boolean~) signed_multiply_results_compare::$10 -(void~) signed_multiply_results_compare::$11 -(void~) signed_multiply_results_compare::$12 -(signed word~) signed_multiply_results_compare::$2 -(signed word~) signed_multiply_results_compare::$3 -(boolean~) signed_multiply_results_compare::$4 -(boolean~) signed_multiply_results_compare::$5 -(void~) signed_multiply_results_compare::$6 -(signed byte/signed word/signed dword~) signed_multiply_results_compare::$7 -(boolean~) signed_multiply_results_compare::$8 -(signed byte/signed word/signed dword~) signed_multiply_results_compare::$9 -(label) signed_multiply_results_compare::@1 -(label) signed_multiply_results_compare::@2 -(label) signed_multiply_results_compare::@3 -(label) signed_multiply_results_compare::@return -(signed byte) signed_multiply_results_compare::a -(signed byte) signed_multiply_results_compare::b -(signed word) signed_multiply_results_compare::ma -(signed word) signed_multiply_results_compare::ms Fixing lo/hi-lvalue with new tmpVar mulf8s::$16 mulf8s::$16 ← mulf8s::$8 Fixing lo/hi-lvalue with new tmpVar mulf8s::$17 mulf8s::$17 ← mulf8s::$14 Promoting word/signed word/dword/signed dword to byte* in SCREEN ← ((byte*)) 1024 +Promoting byte to word in mul8u::mb ← ((word)) mul8u::b Promoting byte/word/signed word/dword/signed dword to byte* in mulf8u::memA ← ((byte*)) 254 Promoting byte/word/signed word/dword/signed dword to byte* in mulf8u::memB ← ((byte*)) 255 Promoting word/dword/signed dword to byte* in BGCOL ← ((byte*)) 53281 @@ -1158,11 +1261,52 @@ print_cls::@return: scope:[print_cls] from print_cls::@2 return to:@return @8: scope:[] from @7 + to:@9 +mul8u: scope:[mul8u] from + (word) mul8u::res ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) mul8u::mb ← ((word)) (byte) mul8u::b + to:mul8u::@1 +mul8u::@1: scope:[mul8u] from mul8u mul8u::@4 + (boolean~) mul8u::$0 ← (byte) mul8u::a != (byte/signed byte/word/signed word/dword/signed dword) 0 + if((boolean~) mul8u::$0) goto mul8u::@2 + to:mul8u::@5 +mul8u::@2: scope:[mul8u] from mul8u::@1 mul8u::@6 + (byte~) mul8u::$1 ← (byte) mul8u::a & (byte/signed byte/word/signed word/dword/signed dword) 1 + (boolean~) mul8u::$2 ← (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (boolean~) mul8u::$3 ← ! (boolean~) mul8u::$2 + if((boolean~) mul8u::$3) goto mul8u::@4 + to:mul8u::@7 +mul8u::@5: scope:[mul8u] from mul8u::@1 + to:mul8u::@3 +mul8u::@3: scope:[mul8u] from mul8u::@5 mul8u::@8 + (word) mul8u::return ← (word) mul8u::res + to:mul8u::@return +mul8u::@6: scope:[mul8u] from + to:mul8u::@2 +mul8u::@4: scope:[mul8u] from mul8u::@2 mul8u::@7 + (byte~) mul8u::$5 ← (byte) mul8u::a >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mul8u::a ← (byte~) mul8u::$5 + (word~) mul8u::$6 ← (word) mul8u::mb << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul8u::mb ← (word~) mul8u::$6 + to:mul8u::@1 +mul8u::@7: scope:[mul8u] from mul8u::@2 + (word~) mul8u::$4 ← (word) mul8u::res + (word) mul8u::mb + (word) mul8u::res ← (word~) mul8u::$4 + to:mul8u::@4 +mul8u::@8: scope:[mul8u] from + to:mul8u::@3 +mul8u::@return: scope:[mul8u] from mul8u::@3 mul8u::@9 + (word) mul8u::return ← (word) mul8u::return + return (word) mul8u::return + to:@return +mul8u::@9: scope:[mul8u] from + to:mul8u::@return +@9: scope:[] from @8 (byte[512]) mulf_sqr1_lo ← { fill( 512, 0) } (byte[512]) mulf_sqr1_hi ← { fill( 512, 0) } (byte[512]) mulf_sqr2_lo ← { fill( 512, 0) } (byte[512]) mulf_sqr2_hi ← { fill( 512, 0) } - to:@9 + to:@10 mulf_init: scope:[mulf_init] from (word) mulf_init::sqr ← (byte/signed byte/word/signed word/dword/signed dword) 0 (byte) mulf_init::x_2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -1234,8 +1378,8 @@ mulf_init::@8: scope:[mulf_init] from mulf_init::@4 mulf_init::@return: scope:[mulf_init] from mulf_init::@8 return to:@return -@9: scope:[] from @8 - to:@10 +@10: scope:[] from @9 + to:@11 mulf8u: scope:[mulf8u] from (byte*) mulf8u::memA ← ((byte*)) (byte/word/signed word/dword/signed dword) 254 (byte*) mulf8u::memB ← ((byte*)) (byte/word/signed word/dword/signed dword) 255 @@ -1250,8 +1394,8 @@ mulf8u::@return: scope:[mulf8u] from mulf8u mulf8u::@1 to:@return mulf8u::@1: scope:[mulf8u] from to:mulf8u::@return -@10: scope:[] from @9 - to:@11 +@11: scope:[] from @10 + to:@12 mulf8s: scope:[mulf8s] from (byte~) mulf8s::$0 ← ((byte)) (signed byte) mulf8s::a (byte~) mulf8s::$1 ← ((byte)) (signed byte) mulf8s::b @@ -1292,23 +1436,23 @@ mulf8s::@return: scope:[mulf8s] from mulf8s::@2 mulf8s::@5 to:@return mulf8s::@5: scope:[mulf8s] from to:mulf8s::@return -@11: scope:[] from @10 +@12: scope:[] from @11 (byte*) BGCOL ← ((byte*)) (word/dword/signed dword) 53281 - to:@12 + to:@13 main: scope:[main] from *((byte*) BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 5 (void~) main::$0 ← call print_cls (void~) main::$1 ← call mulf_init (void~) main::$2 ← call mulf_init_asm - (void~) main::$3 ← call multiply_tables_compare - (void~) main::$4 ← call multiply_results_compare - (void~) main::$5 ← call signed_multiply_results_compare + (void~) main::$3 ← call mulf_tables_cmp + (void~) main::$4 ← call mul8u_slowfast_compare + (void~) main::$5 ← call mul8s_slowfast_compare to:main::@return main::@return: scope:[main] from main return to:@return -@12: scope:[] from @11 - to:@13 +@13: scope:[] from @12 + to:@14 muls8u: scope:[muls8u] from (word) muls8u::m ← (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) muls8u::$0 ← (byte) muls8u::a != (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -1336,8 +1480,8 @@ muls8u::@return: scope:[muls8u] from muls8u::@1 muls8u::@5 to:@return muls8u::@5: scope:[muls8u] from to:muls8u::@return -@13: scope:[] from @12 - to:@14 +@14: scope:[] from @13 + to:@15 muls8s: scope:[muls8s] from (signed word) muls8s::m ← (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) muls8s::$0 ← (signed byte) muls8s::a < (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -1386,12 +1530,12 @@ muls8s::@return: scope:[muls8s] from muls8s::@11 muls8s::@3 to:@return muls8s::@11: scope:[muls8s] from to:muls8s::@return -@14: scope:[] from @13 +@15: scope:[] from @14 (byte[512]) mula_sqr1_lo ← { fill( 512, 0) } (byte[512]) mula_sqr1_hi ← { fill( 512, 0) } (byte[512]) mula_sqr2_lo ← { fill( 512, 0) } (byte[512]) mula_sqr2_hi ← { fill( 512, 0) } - to:@15 + to:@16 mulf_init_asm: scope:[mulf_init_asm] from asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } (byte*) mulf_init_asm::mem ← ((byte*)) (byte/word/signed word/dword/signed dword) 255 @@ -1403,85 +1547,104 @@ mulf_init_asm: scope:[mulf_init_asm] from mulf_init_asm::@return: scope:[mulf_init_asm] from mulf_init_asm return to:@return -@15: scope:[] from @14 - to:@16 -multiply_tables_compare: scope:[multiply_tables_compare] from - (byte*) multiply_tables_compare::asm_sqr ← (byte[512]) mula_sqr1_lo - (byte*) multiply_tables_compare::kc_sqr ← (byte[512]) mulf_sqr1_lo - to:multiply_tables_compare::@1 -multiply_tables_compare::@1: scope:[multiply_tables_compare] from multiply_tables_compare multiply_tables_compare::@2 - (boolean~) multiply_tables_compare::$0 ← *((byte*) multiply_tables_compare::kc_sqr) != *((byte*) multiply_tables_compare::asm_sqr) - (boolean~) multiply_tables_compare::$1 ← ! (boolean~) multiply_tables_compare::$0 - if((boolean~) multiply_tables_compare::$1) goto multiply_tables_compare::@2 - to:multiply_tables_compare::@3 -multiply_tables_compare::@2: scope:[multiply_tables_compare] from multiply_tables_compare::@1 multiply_tables_compare::@4 - (byte*) multiply_tables_compare::asm_sqr ← ++ (byte*) multiply_tables_compare::asm_sqr - (byte*) multiply_tables_compare::kc_sqr ← ++ (byte*) multiply_tables_compare::kc_sqr - (word/signed word/dword/signed dword~) multiply_tables_compare::$8 ← (word/signed word/dword/signed dword) 512 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*~) multiply_tables_compare::$9 ← (byte[512]) mulf_sqr1_lo + (word/signed word/dword/signed dword~) multiply_tables_compare::$8 - (boolean~) multiply_tables_compare::$10 ← (byte*) multiply_tables_compare::kc_sqr < (byte*~) multiply_tables_compare::$9 - if((boolean~) multiply_tables_compare::$10) goto multiply_tables_compare::@1 - to:multiply_tables_compare::@5 -multiply_tables_compare::@3: scope:[multiply_tables_compare] from multiply_tables_compare::@1 - *((byte*) BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2 - (void~) multiply_tables_compare::$2 ← call print_str (string) "multiply table mismatch at @" - (word~) multiply_tables_compare::$3 ← ((word)) (byte*) multiply_tables_compare::asm_sqr - (void~) multiply_tables_compare::$4 ← call print_word (word~) multiply_tables_compare::$3 - (void~) multiply_tables_compare::$5 ← call print_str (string) " / @" - (word~) multiply_tables_compare::$6 ← ((word)) (byte*) multiply_tables_compare::kc_sqr - (void~) multiply_tables_compare::$7 ← call print_word (word~) multiply_tables_compare::$6 - to:multiply_tables_compare::@return -multiply_tables_compare::@return: scope:[multiply_tables_compare] from multiply_tables_compare::@3 multiply_tables_compare::@5 - return - to:@return -multiply_tables_compare::@4: scope:[multiply_tables_compare] from - to:multiply_tables_compare::@2 -multiply_tables_compare::@5: scope:[multiply_tables_compare] from multiply_tables_compare::@2 - (void~) multiply_tables_compare::$11 ← call print_str (string) "multiply tables match!@" - (void~) multiply_tables_compare::$12 ← call print_ln - to:multiply_tables_compare::@return @16: scope:[] from @15 to:@17 -multiply_results_compare: scope:[multiply_results_compare] from - (byte) multiply_results_compare::a ← (byte/signed byte/word/signed word/dword/signed dword) 0 - to:multiply_results_compare::@1 -multiply_results_compare::@1: scope:[multiply_results_compare] from multiply_results_compare multiply_results_compare::@6 - (byte) multiply_results_compare::b ← (byte/signed byte/word/signed word/dword/signed dword) 0 - to:multiply_results_compare::@2 -multiply_results_compare::@2: scope:[multiply_results_compare] from multiply_results_compare::@1 multiply_results_compare::@3 - (word~) multiply_results_compare::$0 ← call muls8u (byte) multiply_results_compare::a (byte) multiply_results_compare::b - (word) multiply_results_compare::ms ← (word~) multiply_results_compare::$0 - (word~) multiply_results_compare::$1 ← call mulf8u (byte) multiply_results_compare::a (byte) multiply_results_compare::b - (word) multiply_results_compare::ma ← (word~) multiply_results_compare::$1 - (boolean~) multiply_results_compare::$2 ← (word) multiply_results_compare::ms != (word) multiply_results_compare::ma - (boolean~) multiply_results_compare::$3 ← ! (boolean~) multiply_results_compare::$2 - if((boolean~) multiply_results_compare::$3) goto multiply_results_compare::@3 - to:multiply_results_compare::@4 -multiply_results_compare::@3: scope:[multiply_results_compare] from multiply_results_compare::@2 multiply_results_compare::@5 - (byte) multiply_results_compare::b ← ++ (byte) multiply_results_compare::b - (boolean~) multiply_results_compare::$5 ← (byte) multiply_results_compare::b != (byte/signed byte/word/signed word/dword/signed dword) 0 - if((boolean~) multiply_results_compare::$5) goto multiply_results_compare::@2 - to:multiply_results_compare::@6 -multiply_results_compare::@4: scope:[multiply_results_compare] from multiply_results_compare::@2 +mulf_tables_cmp: scope:[mulf_tables_cmp] from + (byte*) mulf_tables_cmp::asm_sqr ← (byte[512]) mula_sqr1_lo + (byte*) mulf_tables_cmp::kc_sqr ← (byte[512]) mulf_sqr1_lo + to:mulf_tables_cmp::@1 +mulf_tables_cmp::@1: scope:[mulf_tables_cmp] from mulf_tables_cmp mulf_tables_cmp::@2 + (boolean~) mulf_tables_cmp::$0 ← *((byte*) mulf_tables_cmp::kc_sqr) != *((byte*) mulf_tables_cmp::asm_sqr) + (boolean~) mulf_tables_cmp::$1 ← ! (boolean~) mulf_tables_cmp::$0 + if((boolean~) mulf_tables_cmp::$1) goto mulf_tables_cmp::@2 + to:mulf_tables_cmp::@3 +mulf_tables_cmp::@2: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1 mulf_tables_cmp::@4 + (byte*) mulf_tables_cmp::asm_sqr ← ++ (byte*) mulf_tables_cmp::asm_sqr + (byte*) mulf_tables_cmp::kc_sqr ← ++ (byte*) mulf_tables_cmp::kc_sqr + (word/signed word/dword/signed dword~) mulf_tables_cmp::$8 ← (word/signed word/dword/signed dword) 512 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte*~) mulf_tables_cmp::$9 ← (byte[512]) mulf_sqr1_lo + (word/signed word/dword/signed dword~) mulf_tables_cmp::$8 + (boolean~) mulf_tables_cmp::$10 ← (byte*) mulf_tables_cmp::kc_sqr < (byte*~) mulf_tables_cmp::$9 + if((boolean~) mulf_tables_cmp::$10) goto mulf_tables_cmp::@1 + to:mulf_tables_cmp::@5 +mulf_tables_cmp::@3: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1 *((byte*) BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2 - (void~) multiply_results_compare::$4 ← call multiply_error (byte) multiply_results_compare::a (byte) multiply_results_compare::b (word) multiply_results_compare::ms (word) multiply_results_compare::ma - to:multiply_results_compare::@return -multiply_results_compare::@return: scope:[multiply_results_compare] from multiply_results_compare::@4 multiply_results_compare::@7 + (void~) mulf_tables_cmp::$2 ← call print_str (string) "multiply table mismatch at @" + (word~) mulf_tables_cmp::$3 ← ((word)) (byte*) mulf_tables_cmp::asm_sqr + (void~) mulf_tables_cmp::$4 ← call print_word (word~) mulf_tables_cmp::$3 + (void~) mulf_tables_cmp::$5 ← call print_str (string) " / @" + (word~) mulf_tables_cmp::$6 ← ((word)) (byte*) mulf_tables_cmp::kc_sqr + (void~) mulf_tables_cmp::$7 ← call print_word (word~) mulf_tables_cmp::$6 + to:mulf_tables_cmp::@return +mulf_tables_cmp::@return: scope:[mulf_tables_cmp] from mulf_tables_cmp::@3 mulf_tables_cmp::@5 return to:@return -multiply_results_compare::@5: scope:[multiply_results_compare] from - to:multiply_results_compare::@3 -multiply_results_compare::@6: scope:[multiply_results_compare] from multiply_results_compare::@3 - (byte) multiply_results_compare::a ← ++ (byte) multiply_results_compare::a - (boolean~) multiply_results_compare::$6 ← (byte) multiply_results_compare::a != (byte/signed byte/word/signed word/dword/signed dword) 0 - if((boolean~) multiply_results_compare::$6) goto multiply_results_compare::@1 - to:multiply_results_compare::@7 -multiply_results_compare::@7: scope:[multiply_results_compare] from multiply_results_compare::@6 - (void~) multiply_results_compare::$7 ← call print_str (string) "multiply results match!@" - (void~) multiply_results_compare::$8 ← call print_ln - to:multiply_results_compare::@return +mulf_tables_cmp::@4: scope:[mulf_tables_cmp] from + to:mulf_tables_cmp::@2 +mulf_tables_cmp::@5: scope:[mulf_tables_cmp] from mulf_tables_cmp::@2 + (void~) mulf_tables_cmp::$11 ← call print_str (string) "multiply tables match!@" + (void~) mulf_tables_cmp::$12 ← call print_ln + to:mulf_tables_cmp::@return @17: scope:[] from @16 to:@18 +mul8u_slowfast_compare: scope:[mul8u_slowfast_compare] from + (byte) mul8u_slowfast_compare::a ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:mul8u_slowfast_compare::@1 +mul8u_slowfast_compare::@1: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare mul8u_slowfast_compare::@10 + (byte) mul8u_slowfast_compare::b ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:mul8u_slowfast_compare::@2 +mul8u_slowfast_compare::@2: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@1 mul8u_slowfast_compare::@5 + (word~) mul8u_slowfast_compare::$0 ← call muls8u (byte) mul8u_slowfast_compare::a (byte) mul8u_slowfast_compare::b + (word) mul8u_slowfast_compare::ms ← (word~) mul8u_slowfast_compare::$0 + (word~) mul8u_slowfast_compare::$1 ← call mulf8u (byte) mul8u_slowfast_compare::a (byte) mul8u_slowfast_compare::b + (word) mul8u_slowfast_compare::mf ← (word~) mul8u_slowfast_compare::$1 + (word~) mul8u_slowfast_compare::$2 ← call mul8u (byte) mul8u_slowfast_compare::a (byte) mul8u_slowfast_compare::b + (word) mul8u_slowfast_compare::mn ← (word~) mul8u_slowfast_compare::$2 + (byte) mul8u_slowfast_compare::ok ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (boolean~) mul8u_slowfast_compare::$3 ← (word) mul8u_slowfast_compare::ms != (word) mul8u_slowfast_compare::mf + (boolean~) mul8u_slowfast_compare::$4 ← ! (boolean~) mul8u_slowfast_compare::$3 + if((boolean~) mul8u_slowfast_compare::$4) goto mul8u_slowfast_compare::@3 + to:mul8u_slowfast_compare::@6 +mul8u_slowfast_compare::@3: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@6 + (boolean~) mul8u_slowfast_compare::$5 ← (word) mul8u_slowfast_compare::ms != (word) mul8u_slowfast_compare::mn + (boolean~) mul8u_slowfast_compare::$6 ← ! (boolean~) mul8u_slowfast_compare::$5 + if((boolean~) mul8u_slowfast_compare::$6) goto mul8u_slowfast_compare::@4 + to:mul8u_slowfast_compare::@7 +mul8u_slowfast_compare::@6: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@2 + (byte) mul8u_slowfast_compare::ok ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:mul8u_slowfast_compare::@3 +mul8u_slowfast_compare::@4: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@7 + (boolean~) mul8u_slowfast_compare::$7 ← (byte) mul8u_slowfast_compare::ok == (byte/signed byte/word/signed word/dword/signed dword) 0 + (boolean~) mul8u_slowfast_compare::$8 ← ! (boolean~) mul8u_slowfast_compare::$7 + if((boolean~) mul8u_slowfast_compare::$8) goto mul8u_slowfast_compare::@5 + to:mul8u_slowfast_compare::@8 +mul8u_slowfast_compare::@7: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@3 + (byte) mul8u_slowfast_compare::ok ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:mul8u_slowfast_compare::@4 +mul8u_slowfast_compare::@5: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@9 + (byte) mul8u_slowfast_compare::b ← ++ (byte) mul8u_slowfast_compare::b + (boolean~) mul8u_slowfast_compare::$10 ← (byte) mul8u_slowfast_compare::b != (byte/signed byte/word/signed word/dword/signed dword) 0 + if((boolean~) mul8u_slowfast_compare::$10) goto mul8u_slowfast_compare::@2 + to:mul8u_slowfast_compare::@10 +mul8u_slowfast_compare::@8: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@4 + *((byte*) BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (void~) mul8u_slowfast_compare::$9 ← call multiply_error (byte) mul8u_slowfast_compare::a (byte) mul8u_slowfast_compare::b (word) mul8u_slowfast_compare::ms (word) mul8u_slowfast_compare::mn (word) mul8u_slowfast_compare::mf + to:mul8u_slowfast_compare::@return +mul8u_slowfast_compare::@return: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@11 mul8u_slowfast_compare::@8 + return + to:@return +mul8u_slowfast_compare::@9: scope:[mul8u_slowfast_compare] from + to:mul8u_slowfast_compare::@5 +mul8u_slowfast_compare::@10: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@5 + (byte) mul8u_slowfast_compare::a ← ++ (byte) mul8u_slowfast_compare::a + (boolean~) mul8u_slowfast_compare::$11 ← (byte) mul8u_slowfast_compare::a != (byte/signed byte/word/signed word/dword/signed dword) 0 + if((boolean~) mul8u_slowfast_compare::$11) goto mul8u_slowfast_compare::@1 + to:mul8u_slowfast_compare::@11 +mul8u_slowfast_compare::@11: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@10 + (void~) mul8u_slowfast_compare::$12 ← call print_str (string) "multiply results match!@" + (void~) mul8u_slowfast_compare::$13 ← call print_ln + to:mul8u_slowfast_compare::@return +@18: scope:[] from @17 + to:@19 multiply_error: scope:[multiply_error] from (void~) multiply_error::$0 ← call print_str (string) "multiply mismatch @" (void~) multiply_error::$1 ← call print_byte (byte) multiply_error::a @@ -1489,59 +1652,61 @@ multiply_error: scope:[multiply_error] from (void~) multiply_error::$3 ← call print_byte (byte) multiply_error::b (void~) multiply_error::$4 ← call print_str (string) " slow:@" (void~) multiply_error::$5 ← call print_word (word) multiply_error::ms - (void~) multiply_error::$6 ← call print_str (string) " / fast asm:@" - (void~) multiply_error::$7 ← call print_word (word) multiply_error::ma - (void~) multiply_error::$8 ← call print_ln + (void~) multiply_error::$6 ← call print_str (string) " / normal:@" + (void~) multiply_error::$7 ← call print_word (word) multiply_error::mn + (void~) multiply_error::$8 ← call print_str (string) " / fast:@" + (void~) multiply_error::$9 ← call print_word (word) multiply_error::mf + (void~) multiply_error::$10 ← call print_ln to:multiply_error::@return multiply_error::@return: scope:[multiply_error] from multiply_error return to:@return -@18: scope:[] from @17 - to:@19 -signed_multiply_results_compare: scope:[signed_multiply_results_compare] from - (signed byte/signed word/signed dword~) signed_multiply_results_compare::$0 ← - (byte/word/signed word/dword/signed dword) 128 - (signed byte) signed_multiply_results_compare::a ← (signed byte/signed word/signed dword~) signed_multiply_results_compare::$0 - to:signed_multiply_results_compare::@1 -signed_multiply_results_compare::@1: scope:[signed_multiply_results_compare] from signed_multiply_results_compare signed_multiply_results_compare::@6 - (signed byte/signed word/signed dword~) signed_multiply_results_compare::$1 ← - (byte/word/signed word/dword/signed dword) 128 - (signed byte) signed_multiply_results_compare::b ← (signed byte/signed word/signed dword~) signed_multiply_results_compare::$1 - to:signed_multiply_results_compare::@2 -signed_multiply_results_compare::@2: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@1 signed_multiply_results_compare::@3 - (signed word~) signed_multiply_results_compare::$2 ← call muls8s (signed byte) signed_multiply_results_compare::a (signed byte) signed_multiply_results_compare::b - (signed word) signed_multiply_results_compare::ms ← (signed word~) signed_multiply_results_compare::$2 - (signed word~) signed_multiply_results_compare::$3 ← call mulf8s (signed byte) signed_multiply_results_compare::a (signed byte) signed_multiply_results_compare::b - (signed word) signed_multiply_results_compare::ma ← (signed word~) signed_multiply_results_compare::$3 - (boolean~) signed_multiply_results_compare::$4 ← (signed word) signed_multiply_results_compare::ms != (signed word) signed_multiply_results_compare::ma - (boolean~) signed_multiply_results_compare::$5 ← ! (boolean~) signed_multiply_results_compare::$4 - if((boolean~) signed_multiply_results_compare::$5) goto signed_multiply_results_compare::@3 - to:signed_multiply_results_compare::@4 -signed_multiply_results_compare::@3: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@2 signed_multiply_results_compare::@5 - (signed byte) signed_multiply_results_compare::b ← ++ (signed byte) signed_multiply_results_compare::b - (signed byte/signed word/signed dword~) signed_multiply_results_compare::$7 ← - (byte/word/signed word/dword/signed dword) 128 - (boolean~) signed_multiply_results_compare::$8 ← (signed byte) signed_multiply_results_compare::b != (signed byte/signed word/signed dword~) signed_multiply_results_compare::$7 - if((boolean~) signed_multiply_results_compare::$8) goto signed_multiply_results_compare::@2 - to:signed_multiply_results_compare::@6 -signed_multiply_results_compare::@4: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@2 - *((byte*) BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2 - (void~) signed_multiply_results_compare::$6 ← call signed_multiply_error (signed byte) signed_multiply_results_compare::a (signed byte) signed_multiply_results_compare::b (signed word) signed_multiply_results_compare::ms (signed word) signed_multiply_results_compare::ma - to:signed_multiply_results_compare::@return -signed_multiply_results_compare::@return: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@4 signed_multiply_results_compare::@7 - return - to:@return -signed_multiply_results_compare::@5: scope:[signed_multiply_results_compare] from - to:signed_multiply_results_compare::@3 -signed_multiply_results_compare::@6: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@3 - (signed byte) signed_multiply_results_compare::a ← ++ (signed byte) signed_multiply_results_compare::a - (signed byte/signed word/signed dword~) signed_multiply_results_compare::$9 ← - (byte/word/signed word/dword/signed dword) 128 - (boolean~) signed_multiply_results_compare::$10 ← (signed byte) signed_multiply_results_compare::a != (signed byte/signed word/signed dword~) signed_multiply_results_compare::$9 - if((boolean~) signed_multiply_results_compare::$10) goto signed_multiply_results_compare::@1 - to:signed_multiply_results_compare::@7 -signed_multiply_results_compare::@7: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@6 - (void~) signed_multiply_results_compare::$11 ← call print_str (string) "signed multiply results match!@" - (void~) signed_multiply_results_compare::$12 ← call print_ln - to:signed_multiply_results_compare::@return @19: scope:[] from @18 to:@20 +mul8s_slowfast_compare: scope:[mul8s_slowfast_compare] from + (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$0 ← - (byte/word/signed word/dword/signed dword) 128 + (signed byte) mul8s_slowfast_compare::a ← (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$0 + to:mul8s_slowfast_compare::@1 +mul8s_slowfast_compare::@1: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare mul8s_slowfast_compare::@6 + (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$1 ← - (byte/word/signed word/dword/signed dword) 128 + (signed byte) mul8s_slowfast_compare::b ← (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$1 + to:mul8s_slowfast_compare::@2 +mul8s_slowfast_compare::@2: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@3 + (signed word~) mul8s_slowfast_compare::$2 ← call muls8s (signed byte) mul8s_slowfast_compare::a (signed byte) mul8s_slowfast_compare::b + (signed word) mul8s_slowfast_compare::ms ← (signed word~) mul8s_slowfast_compare::$2 + (signed word~) mul8s_slowfast_compare::$3 ← call mulf8s (signed byte) mul8s_slowfast_compare::a (signed byte) mul8s_slowfast_compare::b + (signed word) mul8s_slowfast_compare::ma ← (signed word~) mul8s_slowfast_compare::$3 + (boolean~) mul8s_slowfast_compare::$4 ← (signed word) mul8s_slowfast_compare::ms != (signed word) mul8s_slowfast_compare::ma + (boolean~) mul8s_slowfast_compare::$5 ← ! (boolean~) mul8s_slowfast_compare::$4 + if((boolean~) mul8s_slowfast_compare::$5) goto mul8s_slowfast_compare::@3 + to:mul8s_slowfast_compare::@4 +mul8s_slowfast_compare::@3: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@5 + (signed byte) mul8s_slowfast_compare::b ← ++ (signed byte) mul8s_slowfast_compare::b + (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$7 ← - (byte/word/signed word/dword/signed dword) 128 + (boolean~) mul8s_slowfast_compare::$8 ← (signed byte) mul8s_slowfast_compare::b != (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$7 + if((boolean~) mul8s_slowfast_compare::$8) goto mul8s_slowfast_compare::@2 + to:mul8s_slowfast_compare::@6 +mul8s_slowfast_compare::@4: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@2 + *((byte*) BGCOL) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (void~) mul8s_slowfast_compare::$6 ← call signed_multiply_error (signed byte) mul8s_slowfast_compare::a (signed byte) mul8s_slowfast_compare::b (signed word) mul8s_slowfast_compare::ms (signed word) mul8s_slowfast_compare::ma + to:mul8s_slowfast_compare::@return +mul8s_slowfast_compare::@return: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@4 mul8s_slowfast_compare::@7 + return + to:@return +mul8s_slowfast_compare::@5: scope:[mul8s_slowfast_compare] from + to:mul8s_slowfast_compare::@3 +mul8s_slowfast_compare::@6: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@3 + (signed byte) mul8s_slowfast_compare::a ← ++ (signed byte) mul8s_slowfast_compare::a + (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$9 ← - (byte/word/signed word/dword/signed dword) 128 + (boolean~) mul8s_slowfast_compare::$10 ← (signed byte) mul8s_slowfast_compare::a != (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$9 + if((boolean~) mul8s_slowfast_compare::$10) goto mul8s_slowfast_compare::@1 + to:mul8s_slowfast_compare::@7 +mul8s_slowfast_compare::@7: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@6 + (void~) mul8s_slowfast_compare::$11 ← call print_str (string) "signed multiply results match!@" + (void~) mul8s_slowfast_compare::$12 ← call print_ln + to:mul8s_slowfast_compare::@return +@20: scope:[] from @19 + to:@21 signed_multiply_error: scope:[signed_multiply_error] from (void~) signed_multiply_error::$0 ← call print_str (string) "signed multiply mismatch @" (void~) signed_multiply_error::$1 ← call print_sbyte (signed byte) signed_multiply_error::a @@ -1556,10 +1721,10 @@ signed_multiply_error: scope:[signed_multiply_error] from signed_multiply_error::@return: scope:[signed_multiply_error] from signed_multiply_error return to:@return -@20: scope:[] from @19 +@21: scope:[] from @20 call main to:@end -@end: scope:[] from @20 +@end: scope:[] from @21 Eliminating unused variable - keeping the call (void~) print_sword::$5 Eliminating unused variable - keeping the call (void~) print_sword::$2 @@ -1569,23 +1734,23 @@ 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 (byte~) mulf8s::$5 and assignment [129] (byte~) mulf8s::$5 ← > (word) mulf8s::m -Eliminating unused variable (byte~) mulf8s::$11 and assignment [137] (byte~) mulf8s::$11 ← > (word) mulf8s::m +Eliminating unused variable (byte~) mulf8s::$5 and assignment [146] (byte~) mulf8s::$5 ← > (word) mulf8s::m +Eliminating unused variable (byte~) mulf8s::$11 and assignment [154] (byte~) mulf8s::$11 ← > (word) mulf8s::m 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~) main::$4 Eliminating unused variable - keeping the call (void~) main::$5 -Eliminating unused variable - keeping the call (void~) multiply_tables_compare::$2 -Eliminating unused variable - keeping the call (void~) multiply_tables_compare::$4 -Eliminating unused variable - keeping the call (void~) multiply_tables_compare::$5 -Eliminating unused variable - keeping the call (void~) multiply_tables_compare::$7 -Eliminating unused variable - keeping the call (void~) multiply_tables_compare::$11 -Eliminating unused variable - keeping the call (void~) multiply_tables_compare::$12 -Eliminating unused variable - keeping the call (void~) multiply_results_compare::$4 -Eliminating unused variable - keeping the call (void~) multiply_results_compare::$7 -Eliminating unused variable - keeping the call (void~) multiply_results_compare::$8 +Eliminating unused variable - keeping the call (void~) mulf_tables_cmp::$2 +Eliminating unused variable - keeping the call (void~) mulf_tables_cmp::$4 +Eliminating unused variable - keeping the call (void~) mulf_tables_cmp::$5 +Eliminating unused variable - keeping the call (void~) mulf_tables_cmp::$7 +Eliminating unused variable - keeping the call (void~) mulf_tables_cmp::$11 +Eliminating unused variable - keeping the call (void~) mulf_tables_cmp::$12 +Eliminating unused variable - keeping the call (void~) mul8u_slowfast_compare::$9 +Eliminating unused variable - keeping the call (void~) mul8u_slowfast_compare::$12 +Eliminating unused variable - keeping the call (void~) mul8u_slowfast_compare::$13 Eliminating unused variable - keeping the call (void~) multiply_error::$0 Eliminating unused variable - keeping the call (void~) multiply_error::$1 Eliminating unused variable - keeping the call (void~) multiply_error::$2 @@ -1595,9 +1760,11 @@ Eliminating unused variable - keeping the call (void~) multiply_error::$5 Eliminating unused variable - keeping the call (void~) multiply_error::$6 Eliminating unused variable - keeping the call (void~) multiply_error::$7 Eliminating unused variable - keeping the call (void~) multiply_error::$8 -Eliminating unused variable - keeping the call (void~) signed_multiply_results_compare::$6 -Eliminating unused variable - keeping the call (void~) signed_multiply_results_compare::$11 -Eliminating unused variable - keeping the call (void~) signed_multiply_results_compare::$12 +Eliminating unused variable - keeping the call (void~) multiply_error::$9 +Eliminating unused variable - keeping the call (void~) multiply_error::$10 +Eliminating unused variable - keeping the call (void~) mul8s_slowfast_compare::$6 +Eliminating unused variable - keeping the call (void~) mul8s_slowfast_compare::$11 +Eliminating unused variable - keeping the call (void~) mul8s_slowfast_compare::$12 Eliminating unused variable - keeping the call (void~) signed_multiply_error::$0 Eliminating unused variable - keeping the call (void~) signed_multiply_error::$1 Eliminating unused variable - keeping the call (void~) signed_multiply_error::$2 @@ -1608,15 +1775,16 @@ Eliminating unused variable - keeping the call (void~) signed_multiply_error::$6 Eliminating unused variable - keeping the call (void~) signed_multiply_error::$7 Eliminating unused variable - keeping the call (void~) signed_multiply_error::$8 Creating constant string variable for inline (const string) print_byte::$4 "0123456789abcdef" -Creating constant string variable for inline (const string) multiply_tables_compare::str "multiply table mismatch at @" -Creating constant string variable for inline (const string) multiply_tables_compare::str1 " / @" -Creating constant string variable for inline (const string) multiply_tables_compare::str2 "multiply tables match!@" -Creating constant string variable for inline (const string) multiply_results_compare::str "multiply results match!@" +Creating constant string variable for inline (const string) mulf_tables_cmp::str "multiply table mismatch at @" +Creating constant string variable for inline (const string) mulf_tables_cmp::str1 " / @" +Creating constant string variable for inline (const string) mulf_tables_cmp::str2 "multiply tables match!@" +Creating constant string variable for inline (const string) mul8u_slowfast_compare::str "multiply results match!@" Creating constant string variable for inline (const string) multiply_error::str "multiply mismatch @" Creating constant string variable for inline (const string) multiply_error::str1 "*@" Creating constant string variable for inline (const string) multiply_error::str2 " slow:@" -Creating constant string variable for inline (const string) multiply_error::str3 " / fast asm:@" -Creating constant string variable for inline (const string) signed_multiply_results_compare::str "signed multiply results match!@" +Creating constant string variable for inline (const string) multiply_error::str3 " / normal:@" +Creating constant string variable for inline (const string) multiply_error::str4 " / fast:@" +Creating constant string variable for inline (const string) mul8s_slowfast_compare::str "signed multiply results match!@" Creating constant string variable for inline (const string) signed_multiply_error::str "signed multiply mismatch @" Creating constant string variable for inline (const string) signed_multiply_error::str1 "*@" Creating constant string variable for inline (const string) signed_multiply_error::str2 " slow:@" @@ -1632,26 +1800,31 @@ Removing empty block @4 Removing empty block @5 Removing empty block @6 Removing empty block @7 -Removing empty block @9 -Removing empty block mulf8u::@1 +Removing empty block @8 +Removing empty block mul8u::@5 +Removing empty block mul8u::@6 +Removing empty block mul8u::@8 +Removing empty block mul8u::@9 Removing empty block @10 +Removing empty block mulf8u::@1 +Removing empty block @11 Removing empty block mulf8s::@5 -Removing empty block @12 +Removing empty block @13 Removing empty block muls8u::@4 Removing empty block muls8u::@5 -Removing empty block @13 +Removing empty block @14 Removing empty block muls8s::@7 Removing empty block muls8s::@8 Removing empty block muls8s::@10 Removing empty block muls8s::@11 -Removing empty block @15 -Removing empty block multiply_tables_compare::@4 Removing empty block @16 -Removing empty block multiply_results_compare::@5 +Removing empty block mulf_tables_cmp::@4 Removing empty block @17 +Removing empty block mul8u_slowfast_compare::@9 Removing empty block @18 -Removing empty block signed_multiply_results_compare::@5 Removing empty block @19 +Removing empty block mul8s_slowfast_compare::@5 +Removing empty block @20 PROCEDURE MODIFY VARIABLE ANALYSIS print_str modifies char_cursor print_ln modifies line_cursor @@ -1665,14 +1838,14 @@ print_cls modifies line_cursor print_cls modifies char_cursor main modifies line_cursor main modifies char_cursor -multiply_tables_compare modifies char_cursor -multiply_tables_compare modifies line_cursor -multiply_results_compare modifies char_cursor -multiply_results_compare modifies line_cursor +mulf_tables_cmp modifies char_cursor +mulf_tables_cmp modifies line_cursor +mul8u_slowfast_compare modifies char_cursor +mul8u_slowfast_compare modifies line_cursor multiply_error modifies char_cursor multiply_error modifies line_cursor -signed_multiply_results_compare modifies char_cursor -signed_multiply_results_compare modifies line_cursor +mul8s_slowfast_compare modifies char_cursor +mul8s_slowfast_compare modifies line_cursor signed_multiply_error modifies char_cursor signed_multiply_error modifies line_cursor @@ -1686,45 +1859,47 @@ Completing Phi functions... Completing Phi functions... Completing Phi functions... Completing Phi functions... +Completing Phi functions... +Completing Phi functions... CONTROL FLOW GRAPH SSA WITH ASSIGNMENT CALL & RETURN @begin: scope:[] from (byte*) SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) 1024 (byte*) line_cursor#0 ← (byte*) SCREEN#0 (byte*) char_cursor#0 ← (byte*) line_cursor#0 - to:@8 -print_str: scope:[print_str] from multiply_error multiply_error::@2 multiply_error::@4 multiply_error::@6 multiply_results_compare::@7 multiply_tables_compare::@3 multiply_tables_compare::@5 multiply_tables_compare::@7 signed_multiply_error signed_multiply_error::@2 signed_multiply_error::@4 signed_multiply_error::@6 signed_multiply_results_compare::@7 - (byte*) char_cursor#141 ← phi( multiply_error/(byte*) char_cursor#136 multiply_error::@2/(byte*) char_cursor#38 multiply_error::@4/(byte*) char_cursor#40 multiply_error::@6/(byte*) char_cursor#42 multiply_results_compare::@7/(byte*) char_cursor#135 multiply_tables_compare::@3/(byte*) char_cursor#132 multiply_tables_compare::@5/(byte*) char_cursor#133 multiply_tables_compare::@7/(byte*) char_cursor#27 signed_multiply_error/(byte*) char_cursor#139 signed_multiply_error::@2/(byte*) char_cursor#52 signed_multiply_error::@4/(byte*) char_cursor#54 signed_multiply_error::@6/(byte*) char_cursor#56 signed_multiply_results_compare::@7/(byte*) char_cursor#138 ) - (byte*) print_str::str#16 ← phi( multiply_error/(byte*) print_str::str#5 multiply_error::@2/(byte*) print_str::str#6 multiply_error::@4/(byte*) print_str::str#7 multiply_error::@6/(byte*) print_str::str#8 multiply_results_compare::@7/(byte*) print_str::str#4 multiply_tables_compare::@3/(byte*) print_str::str#1 multiply_tables_compare::@5/(byte*) print_str::str#3 multiply_tables_compare::@7/(byte*) print_str::str#2 signed_multiply_error/(byte*) print_str::str#10 signed_multiply_error::@2/(byte*) print_str::str#11 signed_multiply_error::@4/(byte*) print_str::str#12 signed_multiply_error::@6/(byte*) print_str::str#13 signed_multiply_results_compare::@7/(byte*) print_str::str#9 ) + to:@9 +print_str: scope:[print_str] from mul8s_slowfast_compare::@7 mul8u_slowfast_compare::@11 mulf_tables_cmp::@3 mulf_tables_cmp::@5 mulf_tables_cmp::@7 multiply_error multiply_error::@2 multiply_error::@4 multiply_error::@6 multiply_error::@8 signed_multiply_error signed_multiply_error::@2 signed_multiply_error::@4 signed_multiply_error::@6 + (byte*) char_cursor#145 ← phi( mul8s_slowfast_compare::@7/(byte*) char_cursor#142 mul8u_slowfast_compare::@11/(byte*) char_cursor#139 mulf_tables_cmp::@3/(byte*) char_cursor#136 mulf_tables_cmp::@5/(byte*) char_cursor#137 mulf_tables_cmp::@7/(byte*) char_cursor#27 multiply_error/(byte*) char_cursor#140 multiply_error::@2/(byte*) char_cursor#38 multiply_error::@4/(byte*) char_cursor#40 multiply_error::@6/(byte*) char_cursor#42 multiply_error::@8/(byte*) char_cursor#44 signed_multiply_error/(byte*) char_cursor#143 signed_multiply_error::@2/(byte*) char_cursor#54 signed_multiply_error::@4/(byte*) char_cursor#56 signed_multiply_error::@6/(byte*) char_cursor#58 ) + (byte*) print_str::str#17 ← phi( mul8s_slowfast_compare::@7/(byte*) print_str::str#10 mul8u_slowfast_compare::@11/(byte*) print_str::str#4 mulf_tables_cmp::@3/(byte*) print_str::str#1 mulf_tables_cmp::@5/(byte*) print_str::str#3 mulf_tables_cmp::@7/(byte*) print_str::str#2 multiply_error/(byte*) print_str::str#5 multiply_error::@2/(byte*) print_str::str#6 multiply_error::@4/(byte*) print_str::str#7 multiply_error::@6/(byte*) print_str::str#8 multiply_error::@8/(byte*) print_str::str#9 signed_multiply_error/(byte*) print_str::str#11 signed_multiply_error::@2/(byte*) print_str::str#12 signed_multiply_error::@4/(byte*) print_str::str#13 signed_multiply_error::@6/(byte*) print_str::str#14 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - (byte*) char_cursor#122 ← phi( print_str/(byte*) char_cursor#141 print_str::@2/(byte*) char_cursor#1 ) - (byte*) print_str::str#14 ← phi( print_str/(byte*) print_str::str#16 print_str::@2/(byte*) print_str::str#0 ) - (boolean~) print_str::$0 ← *((byte*) print_str::str#14) != (byte) '@' + (byte*) char_cursor#126 ← phi( print_str/(byte*) char_cursor#145 print_str::@2/(byte*) char_cursor#1 ) + (byte*) print_str::str#15 ← phi( print_str/(byte*) print_str::str#17 print_str::@2/(byte*) print_str::str#0 ) + (boolean~) print_str::$0 ← *((byte*) print_str::str#15) != (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#62 ← phi( print_str::@1/(byte*) char_cursor#122 ) - (byte*) print_str::str#15 ← phi( print_str::@1/(byte*) print_str::str#14 ) - *((byte*) char_cursor#62) ← *((byte*) print_str::str#15) - (byte*) char_cursor#1 ← ++ (byte*) char_cursor#62 - (byte*) print_str::str#0 ← ++ (byte*) print_str::str#15 + (byte*) char_cursor#64 ← phi( print_str::@1/(byte*) char_cursor#126 ) + (byte*) print_str::str#16 ← phi( print_str::@1/(byte*) print_str::str#15 ) + *((byte*) char_cursor#64) ← *((byte*) print_str::str#16) + (byte*) char_cursor#1 ← ++ (byte*) char_cursor#64 + (byte*) print_str::str#0 ← ++ (byte*) print_str::str#16 to:print_str::@1 print_str::@return: scope:[print_str] from print_str::@1 - (byte*) char_cursor#63 ← phi( print_str::@1/(byte*) char_cursor#122 ) - (byte*) char_cursor#2 ← (byte*) char_cursor#63 + (byte*) char_cursor#65 ← phi( print_str::@1/(byte*) char_cursor#126 ) + (byte*) char_cursor#2 ← (byte*) char_cursor#65 return to:@return -print_ln: scope:[print_ln] from multiply_error::@8 multiply_results_compare::@11 multiply_tables_compare::@10 signed_multiply_error::@8 signed_multiply_results_compare::@11 - (byte*) char_cursor#123 ← phi( multiply_error::@8/(byte*) char_cursor#44 multiply_results_compare::@11/(byte*) char_cursor#35 multiply_tables_compare::@10/(byte*) char_cursor#31 signed_multiply_error::@8/(byte*) char_cursor#58 signed_multiply_results_compare::@11/(byte*) char_cursor#49 ) - (byte*) line_cursor#45 ← phi( multiply_error::@8/(byte*) line_cursor#52 multiply_results_compare::@11/(byte*) line_cursor#51 multiply_tables_compare::@10/(byte*) line_cursor#49 signed_multiply_error::@8/(byte*) line_cursor#55 signed_multiply_results_compare::@11/(byte*) line_cursor#54 ) +print_ln: scope:[print_ln] from mul8s_slowfast_compare::@11 mul8u_slowfast_compare::@16 mulf_tables_cmp::@10 multiply_error::@10 signed_multiply_error::@8 + (byte*) char_cursor#127 ← phi( mul8s_slowfast_compare::@11/(byte*) char_cursor#51 mul8u_slowfast_compare::@16/(byte*) char_cursor#35 mulf_tables_cmp::@10/(byte*) char_cursor#31 multiply_error::@10/(byte*) char_cursor#46 signed_multiply_error::@8/(byte*) char_cursor#60 ) + (byte*) line_cursor#45 ← phi( mul8s_slowfast_compare::@11/(byte*) line_cursor#54 mul8u_slowfast_compare::@16/(byte*) line_cursor#51 mulf_tables_cmp::@10/(byte*) line_cursor#49 multiply_error::@10/(byte*) line_cursor#52 signed_multiply_error::@8/(byte*) line_cursor#55 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - (byte*) char_cursor#64 ← phi( print_ln/(byte*) char_cursor#123 print_ln::@1/(byte*) char_cursor#64 ) + (byte*) char_cursor#66 ← phi( print_ln/(byte*) char_cursor#127 print_ln::@1/(byte*) char_cursor#66 ) (byte*) line_cursor#23 ← phi( print_ln/(byte*) line_cursor#45 print_ln::@1/(byte*) line_cursor#1 ) (byte*~) print_ln::$0 ← (byte*) line_cursor#23 + (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#64 + (boolean~) print_ln::$1 ← (byte*) line_cursor#1 < (byte*) char_cursor#66 if((boolean~) print_ln::$1) goto print_ln::@1 to:print_ln::@2 print_ln::@2: scope:[print_ln] from print_ln::@1 @@ -1732,110 +1907,110 @@ print_ln::@2: scope:[print_ln] from print_ln::@1 (byte*) char_cursor#3 ← (byte*) line_cursor#24 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@2 - (byte*) char_cursor#65 ← phi( print_ln::@2/(byte*) char_cursor#3 ) + (byte*) char_cursor#67 ← phi( print_ln::@2/(byte*) char_cursor#3 ) (byte*) line_cursor#25 ← phi( print_ln::@2/(byte*) line_cursor#24 ) (byte*) line_cursor#2 ← (byte*) line_cursor#25 - (byte*) char_cursor#4 ← (byte*) char_cursor#65 + (byte*) char_cursor#4 ← (byte*) char_cursor#67 return to:@return print_sword: scope:[print_sword] from signed_multiply_error::@5 signed_multiply_error::@7 - (byte*) char_cursor#142 ← phi( signed_multiply_error::@5/(byte*) char_cursor#55 signed_multiply_error::@7/(byte*) char_cursor#57 ) + (byte*) char_cursor#146 ← phi( signed_multiply_error::@5/(byte*) char_cursor#57 signed_multiply_error::@7/(byte*) char_cursor#59 ) (signed word) print_sword::w#3 ← phi( signed_multiply_error::@5/(signed word) print_sword::w#1 signed_multiply_error::@7/(signed word) print_sword::w#2 ) (boolean~) print_sword::$0 ← (signed word) print_sword::w#3 < (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) print_sword::$1 ← ! (boolean~) print_sword::$0 if((boolean~) print_sword::$1) goto print_sword::@1 to:print_sword::@2 print_sword::@1: scope:[print_sword] from print_sword print_sword::@4 - (byte*) char_cursor#124 ← phi( print_sword/(byte*) char_cursor#142 print_sword::@4/(byte*) char_cursor#6 ) + (byte*) char_cursor#128 ← phi( print_sword/(byte*) char_cursor#146 print_sword::@4/(byte*) char_cursor#6 ) (signed word) print_sword::w#4 ← phi( print_sword/(signed word) print_sword::w#3 print_sword::@4/(signed word) print_sword::w#0 ) (word~) print_sword::$4 ← ((word)) (signed word) print_sword::w#4 (word) print_word::w#0 ← (word~) print_sword::$4 call print_word param-assignment to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@1 - (byte*) char_cursor#66 ← phi( print_sword::@1/(byte*) char_cursor#13 ) - (byte*) char_cursor#5 ← (byte*) char_cursor#66 + (byte*) char_cursor#68 ← phi( print_sword::@1/(byte*) char_cursor#13 ) + (byte*) char_cursor#5 ← (byte*) char_cursor#68 to:print_sword::@return print_sword::@2: scope:[print_sword] from print_sword (signed word) print_sword::w#6 ← phi( print_sword/(signed word) print_sword::w#3 ) - (byte*) char_cursor#125 ← phi( print_sword/(byte*) char_cursor#142 ) + (byte*) char_cursor#129 ← phi( print_sword/(byte*) char_cursor#146 ) (byte) print_char::ch#0 ← (byte) '-' call print_char param-assignment to:print_sword::@4 print_sword::@4: scope:[print_sword] from print_sword::@2 (signed word) print_sword::w#5 ← phi( print_sword::@2/(signed word) print_sword::w#6 ) - (byte*) char_cursor#67 ← phi( print_sword::@2/(byte*) char_cursor#18 ) - (byte*) char_cursor#6 ← (byte*) char_cursor#67 + (byte*) char_cursor#69 ← phi( print_sword::@2/(byte*) char_cursor#18 ) + (byte*) char_cursor#6 ← (byte*) char_cursor#69 (signed word~) print_sword::$3 ← - (signed word) print_sword::w#5 (signed word) print_sword::w#0 ← (signed word~) print_sword::$3 to:print_sword::@1 print_sword::@return: scope:[print_sword] from print_sword::@3 - (byte*) char_cursor#68 ← phi( print_sword::@3/(byte*) char_cursor#5 ) - (byte*) char_cursor#7 ← (byte*) char_cursor#68 + (byte*) char_cursor#70 ← phi( print_sword::@3/(byte*) char_cursor#5 ) + (byte*) char_cursor#7 ← (byte*) char_cursor#70 return to:@return print_sbyte: scope:[print_sbyte] from signed_multiply_error::@1 signed_multiply_error::@3 - (byte*) char_cursor#143 ← phi( signed_multiply_error::@1/(byte*) char_cursor#51 signed_multiply_error::@3/(byte*) char_cursor#53 ) + (byte*) char_cursor#147 ← phi( signed_multiply_error::@1/(byte*) char_cursor#53 signed_multiply_error::@3/(byte*) char_cursor#55 ) (signed byte) print_sbyte::b#3 ← phi( signed_multiply_error::@1/(signed byte) print_sbyte::b#1 signed_multiply_error::@3/(signed byte) print_sbyte::b#2 ) (boolean~) print_sbyte::$0 ← (signed byte) print_sbyte::b#3 < (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#126 ← phi( print_sbyte/(byte*) char_cursor#143 print_sbyte::@4/(byte*) char_cursor#9 ) + (byte*) char_cursor#130 ← phi( print_sbyte/(byte*) char_cursor#147 print_sbyte::@4/(byte*) char_cursor#9 ) (signed byte) print_sbyte::b#4 ← phi( print_sbyte/(signed byte) print_sbyte::b#3 print_sbyte::@4/(signed byte) print_sbyte::b#0 ) (byte~) print_sbyte::$4 ← ((byte)) (signed byte) print_sbyte::b#4 (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#69 ← phi( print_sbyte::@1/(byte*) char_cursor#16 ) - (byte*) char_cursor#8 ← (byte*) char_cursor#69 + (byte*) char_cursor#71 ← phi( print_sbyte::@1/(byte*) char_cursor#16 ) + (byte*) char_cursor#8 ← (byte*) char_cursor#71 to:print_sbyte::@return print_sbyte::@2: scope:[print_sbyte] from print_sbyte (signed byte) print_sbyte::b#6 ← phi( print_sbyte/(signed byte) print_sbyte::b#3 ) - (byte*) char_cursor#127 ← phi( print_sbyte/(byte*) char_cursor#143 ) + (byte*) char_cursor#131 ← phi( print_sbyte/(byte*) char_cursor#147 ) (byte) print_char::ch#1 ← (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#5 ← phi( print_sbyte::@2/(signed byte) print_sbyte::b#6 ) - (byte*) char_cursor#70 ← phi( print_sbyte::@2/(byte*) char_cursor#18 ) - (byte*) char_cursor#9 ← (byte*) char_cursor#70 + (byte*) char_cursor#72 ← phi( print_sbyte::@2/(byte*) char_cursor#18 ) + (byte*) char_cursor#9 ← (byte*) char_cursor#72 (signed byte~) print_sbyte::$3 ← - (signed byte) print_sbyte::b#5 (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#71 ← phi( print_sbyte::@3/(byte*) char_cursor#8 ) - (byte*) char_cursor#10 ← (byte*) char_cursor#71 + (byte*) char_cursor#73 ← phi( print_sbyte::@3/(byte*) char_cursor#8 ) + (byte*) char_cursor#10 ← (byte*) char_cursor#73 return to:@return -print_word: scope:[print_word] from multiply_error::@5 multiply_error::@7 multiply_tables_compare::@6 multiply_tables_compare::@8 print_sword::@1 - (byte*) char_cursor#128 ← phi( multiply_error::@5/(byte*) char_cursor#41 multiply_error::@7/(byte*) char_cursor#43 multiply_tables_compare::@6/(byte*) char_cursor#26 multiply_tables_compare::@8/(byte*) char_cursor#28 print_sword::@1/(byte*) char_cursor#124 ) - (word) print_word::w#5 ← phi( multiply_error::@5/(word) print_word::w#3 multiply_error::@7/(word) print_word::w#4 multiply_tables_compare::@6/(word) print_word::w#1 multiply_tables_compare::@8/(word) print_word::w#2 print_sword::@1/(word) print_word::w#0 ) - (byte~) print_word::$0 ← > (word) print_word::w#5 +print_word: scope:[print_word] from mulf_tables_cmp::@6 mulf_tables_cmp::@8 multiply_error::@5 multiply_error::@7 multiply_error::@9 print_sword::@1 + (byte*) char_cursor#132 ← phi( mulf_tables_cmp::@6/(byte*) char_cursor#26 mulf_tables_cmp::@8/(byte*) char_cursor#28 multiply_error::@5/(byte*) char_cursor#41 multiply_error::@7/(byte*) char_cursor#43 multiply_error::@9/(byte*) char_cursor#45 print_sword::@1/(byte*) char_cursor#128 ) + (word) print_word::w#6 ← phi( mulf_tables_cmp::@6/(word) print_word::w#1 mulf_tables_cmp::@8/(word) print_word::w#2 multiply_error::@5/(word) print_word::w#3 multiply_error::@7/(word) print_word::w#4 multiply_error::@9/(word) print_word::w#5 print_sword::@1/(word) print_word::w#0 ) + (byte~) print_word::$0 ← > (word) print_word::w#6 (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#6 ← phi( print_word/(word) print_word::w#5 ) - (byte*) char_cursor#72 ← phi( print_word/(byte*) char_cursor#16 ) - (byte*) char_cursor#11 ← (byte*) char_cursor#72 - (byte~) print_word::$2 ← < (word) print_word::w#6 + (word) print_word::w#7 ← phi( print_word/(word) print_word::w#6 ) + (byte*) char_cursor#74 ← phi( print_word/(byte*) char_cursor#16 ) + (byte*) char_cursor#11 ← (byte*) char_cursor#74 + (byte~) print_word::$2 ← < (word) print_word::w#7 (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#73 ← phi( print_word::@1/(byte*) char_cursor#16 ) - (byte*) char_cursor#12 ← (byte*) char_cursor#73 + (byte*) char_cursor#75 ← phi( print_word::@1/(byte*) char_cursor#16 ) + (byte*) char_cursor#12 ← (byte*) char_cursor#75 to:print_word::@return print_word::@return: scope:[print_word] from print_word::@2 - (byte*) char_cursor#74 ← phi( print_word::@2/(byte*) char_cursor#12 ) - (byte*) char_cursor#13 ← (byte*) char_cursor#74 + (byte*) char_cursor#76 ← phi( print_word::@2/(byte*) char_cursor#12 ) + (byte*) char_cursor#13 ← (byte*) char_cursor#76 return to:@return print_byte: scope:[print_byte] from multiply_error::@1 multiply_error::@3 print_sbyte::@1 print_word print_word::@1 - (byte*) char_cursor#129 ← phi( multiply_error::@1/(byte*) char_cursor#37 multiply_error::@3/(byte*) char_cursor#39 print_sbyte::@1/(byte*) char_cursor#126 print_word/(byte*) char_cursor#128 print_word::@1/(byte*) char_cursor#11 ) + (byte*) char_cursor#133 ← phi( multiply_error::@1/(byte*) char_cursor#37 multiply_error::@3/(byte*) char_cursor#39 print_sbyte::@1/(byte*) char_cursor#130 print_word/(byte*) char_cursor#132 print_word::@1/(byte*) char_cursor#11 ) (byte) print_byte::b#5 ← phi( multiply_error::@1/(byte) print_byte::b#3 multiply_error::@3/(byte) print_byte::b#4 print_sbyte::@1/(byte) print_byte::b#0 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 ) (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 @@ -1844,30 +2019,30 @@ print_byte: scope:[print_byte] from multiply_error::@1 multiply_error::@3 print 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#75 ← phi( print_byte/(byte*) char_cursor#18 ) - (byte*) char_cursor#14 ← (byte*) char_cursor#75 + (byte*) char_cursor#77 ← phi( print_byte/(byte*) char_cursor#18 ) + (byte*) char_cursor#14 ← (byte*) char_cursor#77 (byte~) print_byte::$2 ← (byte) print_byte::b#6 & (byte/signed byte/word/signed word/dword/signed dword) 15 (byte) print_char::ch#3 ← *((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#76 ← phi( print_byte::@1/(byte*) char_cursor#18 ) - (byte*) char_cursor#15 ← (byte*) char_cursor#76 + (byte*) char_cursor#78 ← phi( print_byte::@1/(byte*) char_cursor#18 ) + (byte*) char_cursor#15 ← (byte*) char_cursor#78 to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@2 - (byte*) char_cursor#77 ← phi( print_byte::@2/(byte*) char_cursor#15 ) - (byte*) char_cursor#16 ← (byte*) char_cursor#77 + (byte*) char_cursor#79 ← phi( print_byte::@2/(byte*) char_cursor#15 ) + (byte*) char_cursor#16 ← (byte*) char_cursor#79 return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@2 print_sword::@2 - (byte*) char_cursor#78 ← phi( print_byte/(byte*) char_cursor#129 print_byte::@1/(byte*) char_cursor#14 print_sbyte::@2/(byte*) char_cursor#127 print_sword::@2/(byte*) char_cursor#125 ) + (byte*) char_cursor#80 ← phi( print_byte/(byte*) char_cursor#133 print_byte::@1/(byte*) char_cursor#14 print_sbyte::@2/(byte*) char_cursor#131 print_sword::@2/(byte*) char_cursor#129 ) (byte) print_char::ch#4 ← phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@2/(byte) print_char::ch#1 print_sword::@2/(byte) print_char::ch#0 ) - *((byte*) char_cursor#78) ← (byte) print_char::ch#4 - (byte*) char_cursor#17 ← ++ (byte*) char_cursor#78 + *((byte*) char_cursor#80) ← (byte) print_char::ch#4 + (byte*) char_cursor#17 ← ++ (byte*) char_cursor#80 to:print_char::@return print_char::@return: scope:[print_char] from print_char - (byte*) char_cursor#79 ← phi( print_char/(byte*) char_cursor#17 ) - (byte*) char_cursor#18 ← (byte*) char_cursor#79 + (byte*) char_cursor#81 ← phi( print_char/(byte*) char_cursor#17 ) + (byte*) char_cursor#18 ← (byte*) char_cursor#81 return to:@return print_cls: scope:[print_cls] from main @@ -1886,20 +2061,67 @@ print_cls::@2: scope:[print_cls] from print_cls::@1 (byte*) char_cursor#19 ← (byte*) line_cursor#3 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 - (byte*) char_cursor#80 ← phi( print_cls::@2/(byte*) char_cursor#19 ) + (byte*) char_cursor#82 ← phi( print_cls::@2/(byte*) char_cursor#19 ) (byte*) line_cursor#26 ← phi( print_cls::@2/(byte*) line_cursor#3 ) (byte*) line_cursor#4 ← (byte*) line_cursor#26 - (byte*) char_cursor#20 ← (byte*) char_cursor#80 + (byte*) char_cursor#20 ← (byte*) char_cursor#82 return to:@return -@8: scope:[] from @begin - (byte*) char_cursor#158 ← phi( @begin/(byte*) char_cursor#0 ) - (byte*) line_cursor#76 ← phi( @begin/(byte*) line_cursor#0 ) +mul8u: scope:[mul8u] from mul8u_slowfast_compare::@13 + (byte) mul8u::a#5 ← phi( mul8u_slowfast_compare::@13/(byte) mul8u::a#1 ) + (byte) mul8u::b#1 ← phi( mul8u_slowfast_compare::@13/(byte) mul8u::b#0 ) + (word) mul8u::res#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#1 + to:mul8u::@1 +mul8u::@1: scope:[mul8u] from mul8u mul8u::@4 + (word) mul8u::mb#5 ← phi( mul8u/(word) mul8u::mb#0 mul8u::@4/(word) mul8u::mb#1 ) + (word) mul8u::res#4 ← phi( mul8u/(word) mul8u::res#0 mul8u::@4/(word) mul8u::res#6 ) + (byte) mul8u::a#2 ← phi( mul8u/(byte) mul8u::a#5 mul8u::@4/(byte) mul8u::a#0 ) + (boolean~) mul8u::$0 ← (byte) mul8u::a#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + if((boolean~) mul8u::$0) goto mul8u::@2 + to:mul8u::@3 +mul8u::@2: scope:[mul8u] from mul8u::@1 + (word) mul8u::res#5 ← phi( mul8u::@1/(word) mul8u::res#4 ) + (word) mul8u::mb#4 ← phi( mul8u::@1/(word) mul8u::mb#5 ) + (byte) mul8u::a#3 ← phi( mul8u::@1/(byte) mul8u::a#2 ) + (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (boolean~) mul8u::$2 ← (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (boolean~) mul8u::$3 ← ! (boolean~) mul8u::$2 + if((boolean~) mul8u::$3) goto mul8u::@4 + to:mul8u::@7 +mul8u::@3: scope:[mul8u] from mul8u::@1 + (word) mul8u::res#2 ← phi( mul8u::@1/(word) mul8u::res#4 ) + (word) mul8u::return#0 ← (word) mul8u::res#2 + to:mul8u::@return +mul8u::@4: scope:[mul8u] from mul8u::@2 mul8u::@7 + (word) mul8u::res#6 ← phi( mul8u::@2/(word) mul8u::res#5 mul8u::@7/(word) mul8u::res#1 ) + (word) mul8u::mb#2 ← phi( mul8u::@2/(word) mul8u::mb#4 mul8u::@7/(word) mul8u::mb#3 ) + (byte) mul8u::a#4 ← phi( mul8u::@2/(byte) mul8u::a#3 mul8u::@7/(byte) mul8u::a#6 ) + (byte~) mul8u::$5 ← (byte) mul8u::a#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mul8u::a#0 ← (byte~) mul8u::$5 + (word~) mul8u::$6 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul8u::mb#1 ← (word~) mul8u::$6 + to:mul8u::@1 +mul8u::@7: scope:[mul8u] from mul8u::@2 + (byte) mul8u::a#6 ← phi( mul8u::@2/(byte) mul8u::a#3 ) + (word) mul8u::mb#3 ← phi( mul8u::@2/(word) mul8u::mb#4 ) + (word) mul8u::res#3 ← phi( mul8u::@2/(word) mul8u::res#5 ) + (word~) mul8u::$4 ← (word) mul8u::res#3 + (word) mul8u::mb#3 + (word) mul8u::res#1 ← (word~) mul8u::$4 + to:mul8u::@4 +mul8u::@return: scope:[mul8u] from mul8u::@3 + (word) mul8u::return#3 ← phi( mul8u::@3/(word) mul8u::return#0 ) + (word) mul8u::return#1 ← (word) mul8u::return#3 + return + to:@return +@9: scope:[] from @begin + (byte*) char_cursor#163 ← phi( @begin/(byte*) char_cursor#0 ) + (byte*) line_cursor#77 ← phi( @begin/(byte*) line_cursor#0 ) (byte[512]) mulf_sqr1_lo#0 ← { fill( 512, 0) } (byte[512]) mulf_sqr1_hi#0 ← { fill( 512, 0) } (byte[512]) mulf_sqr2_lo#0 ← { fill( 512, 0) } (byte[512]) mulf_sqr2_hi#0 ← { fill( 512, 0) } - to:@11 + to:@12 mulf_init: scope:[mulf_init] from main::@1 (word) mulf_init::sqr#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 (byte) mulf_init::x_2#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -1997,9 +2219,9 @@ mulf_init::@8: scope:[mulf_init] from mulf_init::@4 mulf_init::@return: scope:[mulf_init] from mulf_init::@8 return to:@return -mulf8u: scope:[mulf8u] from mulf8s multiply_results_compare::@8 - (byte) mulf8u::b#2 ← phi( mulf8s/(byte) mulf8u::b#0 multiply_results_compare::@8/(byte) mulf8u::b#1 ) - (byte) mulf8u::a#2 ← phi( mulf8s/(byte) mulf8u::a#0 multiply_results_compare::@8/(byte) mulf8u::a#1 ) +mulf8u: scope:[mulf8u] from mul8u_slowfast_compare::@12 mulf8s + (byte) mulf8u::b#2 ← phi( mul8u_slowfast_compare::@12/(byte) mulf8u::b#1 mulf8s/(byte) mulf8u::b#0 ) + (byte) mulf8u::a#2 ← phi( mul8u_slowfast_compare::@12/(byte) mulf8u::a#1 mulf8s/(byte) mulf8u::a#0 ) (byte*) mulf8u::memA#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) 254 (byte*) mulf8u::memB#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) 255 *((byte*) mulf8u::memA#0) ← (byte) mulf8u::a#2 @@ -2012,9 +2234,9 @@ mulf8u::@return: scope:[mulf8u] from mulf8u (word) mulf8u::return#1 ← (word) mulf8u::return#4 return to:@return -mulf8s: scope:[mulf8s] from signed_multiply_results_compare::@8 - (signed byte) mulf8s::b#1 ← phi( signed_multiply_results_compare::@8/(signed byte) mulf8s::b#0 ) - (signed byte) mulf8s::a#1 ← phi( signed_multiply_results_compare::@8/(signed byte) mulf8s::a#0 ) +mulf8s: scope:[mulf8s] from mul8s_slowfast_compare::@8 + (signed byte) mulf8s::b#1 ← phi( mul8s_slowfast_compare::@8/(signed byte) mulf8s::b#0 ) + (signed byte) mulf8s::a#1 ← phi( mul8s_slowfast_compare::@8/(signed byte) mulf8s::a#0 ) (byte~) mulf8s::$0 ← ((byte)) (signed byte) mulf8s::a#1 (byte~) mulf8s::$1 ← ((byte)) (signed byte) mulf8s::b#1 (byte) mulf8u::a#0 ← (byte~) mulf8s::$0 @@ -2069,70 +2291,70 @@ mulf8s::@return: scope:[mulf8s] from mulf8s::@2 (signed word) mulf8s::return#1 ← (signed word) mulf8s::return#3 return to:@return -@11: scope:[] from @8 - (byte*) char_cursor#152 ← phi( @8/(byte*) char_cursor#158 ) - (byte*) line_cursor#67 ← phi( @8/(byte*) line_cursor#76 ) +@12: scope:[] from @9 + (byte*) char_cursor#156 ← phi( @9/(byte*) char_cursor#163 ) + (byte*) line_cursor#67 ← phi( @9/(byte*) line_cursor#77 ) (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) 53281 - to:@14 -main: scope:[main] from @20 - (byte*) char_cursor#130 ← phi( @20/(byte*) char_cursor#140 ) - (byte*) line_cursor#46 ← phi( @20/(byte*) line_cursor#56 ) - (byte*) BGCOL#1 ← phi( @20/(byte*) BGCOL#5 ) + to:@15 +main: scope:[main] from @21 + (byte*) char_cursor#134 ← phi( @21/(byte*) char_cursor#144 ) + (byte*) line_cursor#46 ← phi( @21/(byte*) line_cursor#56 ) + (byte*) BGCOL#1 ← phi( @21/(byte*) BGCOL#5 ) *((byte*) BGCOL#1) ← (byte/signed byte/word/signed word/dword/signed dword) 5 call print_cls param-assignment to:main::@1 main::@1: scope:[main] from main - (byte*) BGCOL#22 ← phi( main/(byte*) BGCOL#1 ) - (byte*) char_cursor#81 ← phi( main/(byte*) char_cursor#20 ) + (byte*) BGCOL#23 ← phi( main/(byte*) BGCOL#1 ) + (byte*) char_cursor#83 ← phi( main/(byte*) char_cursor#20 ) (byte*) line_cursor#27 ← phi( main/(byte*) line_cursor#4 ) (byte*) line_cursor#5 ← (byte*) line_cursor#27 - (byte*) char_cursor#21 ← (byte*) char_cursor#81 + (byte*) char_cursor#21 ← (byte*) char_cursor#83 call mulf_init param-assignment to:main::@2 main::@2: scope:[main] from main::@1 - (byte*) BGCOL#17 ← phi( main::@1/(byte*) BGCOL#22 ) + (byte*) BGCOL#19 ← phi( main::@1/(byte*) BGCOL#23 ) (byte*) line_cursor#57 ← phi( main::@1/(byte*) line_cursor#5 ) - (byte*) char_cursor#144 ← phi( main::@1/(byte*) char_cursor#21 ) + (byte*) char_cursor#148 ← phi( main::@1/(byte*) char_cursor#21 ) call mulf_init_asm param-assignment to:main::@3 main::@3: scope:[main] from main::@2 - (byte*) BGCOL#14 ← phi( main::@2/(byte*) BGCOL#17 ) + (byte*) BGCOL#15 ← phi( main::@2/(byte*) BGCOL#19 ) (byte*) line_cursor#47 ← phi( main::@2/(byte*) line_cursor#57 ) - (byte*) char_cursor#131 ← phi( main::@2/(byte*) char_cursor#144 ) - call multiply_tables_compare param-assignment + (byte*) char_cursor#135 ← phi( main::@2/(byte*) char_cursor#148 ) + call mulf_tables_cmp param-assignment to:main::@4 main::@4: scope:[main] from main::@3 - (byte*) BGCOL#27 ← phi( main::@3/(byte*) BGCOL#14 ) + (byte*) BGCOL#29 ← phi( main::@3/(byte*) BGCOL#15 ) (byte*) line_cursor#28 ← phi( main::@3/(byte*) line_cursor#10 ) - (byte*) char_cursor#82 ← phi( main::@3/(byte*) char_cursor#30 ) - (byte*) char_cursor#22 ← (byte*) char_cursor#82 + (byte*) char_cursor#84 ← phi( main::@3/(byte*) char_cursor#30 ) + (byte*) char_cursor#22 ← (byte*) char_cursor#84 (byte*) line_cursor#6 ← (byte*) line_cursor#28 - call multiply_results_compare param-assignment + call mul8u_slowfast_compare param-assignment to:main::@5 main::@5: scope:[main] from main::@4 - (byte*) BGCOL#28 ← phi( main::@4/(byte*) BGCOL#27 ) + (byte*) BGCOL#28 ← phi( main::@4/(byte*) BGCOL#29 ) (byte*) line_cursor#29 ← phi( main::@4/(byte*) line_cursor#13 ) - (byte*) char_cursor#83 ← phi( main::@4/(byte*) char_cursor#34 ) - (byte*) char_cursor#23 ← (byte*) char_cursor#83 + (byte*) char_cursor#85 ← phi( main::@4/(byte*) char_cursor#34 ) + (byte*) char_cursor#23 ← (byte*) char_cursor#85 (byte*) line_cursor#7 ← (byte*) line_cursor#29 - call signed_multiply_results_compare param-assignment + call mul8s_slowfast_compare param-assignment to:main::@6 main::@6: scope:[main] from main::@5 (byte*) line_cursor#30 ← phi( main::@5/(byte*) line_cursor#18 ) - (byte*) char_cursor#84 ← phi( main::@5/(byte*) char_cursor#48 ) - (byte*) char_cursor#24 ← (byte*) char_cursor#84 + (byte*) char_cursor#86 ← phi( main::@5/(byte*) char_cursor#50 ) + (byte*) char_cursor#24 ← (byte*) char_cursor#86 (byte*) line_cursor#8 ← (byte*) line_cursor#30 to:main::@return main::@return: scope:[main] from main::@6 - (byte*) char_cursor#85 ← phi( main::@6/(byte*) char_cursor#24 ) + (byte*) char_cursor#87 ← phi( main::@6/(byte*) char_cursor#24 ) (byte*) line_cursor#31 ← phi( main::@6/(byte*) line_cursor#8 ) (byte*) line_cursor#9 ← (byte*) line_cursor#31 - (byte*) char_cursor#25 ← (byte*) char_cursor#85 + (byte*) char_cursor#25 ← (byte*) char_cursor#87 return to:@return -muls8u: scope:[muls8u] from multiply_results_compare::@2 - (byte) muls8u::b#3 ← phi( multiply_results_compare::@2/(byte) muls8u::b#0 ) - (byte) muls8u::a#1 ← phi( multiply_results_compare::@2/(byte) muls8u::a#0 ) +muls8u: scope:[muls8u] from mul8u_slowfast_compare::@2 + (byte) muls8u::b#3 ← phi( mul8u_slowfast_compare::@2/(byte) muls8u::b#0 ) + (byte) muls8u::a#1 ← phi( mul8u_slowfast_compare::@2/(byte) muls8u::a#0 ) (word) muls8u::m#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) muls8u::$0 ← (byte) muls8u::a#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) muls8u::$1 ← ! (boolean~) muls8u::$0 @@ -2164,9 +2386,9 @@ muls8u::@return: scope:[muls8u] from muls8u::@1 (word) muls8u::return#1 ← (word) muls8u::return#3 return to:@return -muls8s: scope:[muls8s] from signed_multiply_results_compare::@2 - (signed byte) muls8s::b#5 ← phi( signed_multiply_results_compare::@2/(signed byte) muls8s::b#0 ) - (signed byte) muls8s::a#1 ← phi( signed_multiply_results_compare::@2/(signed byte) muls8s::a#0 ) +muls8s: scope:[muls8s] from mul8s_slowfast_compare::@2 + (signed byte) muls8s::b#5 ← phi( mul8s_slowfast_compare::@2/(signed byte) muls8s::b#0 ) + (signed byte) muls8s::a#1 ← phi( mul8s_slowfast_compare::@2/(signed byte) muls8s::a#0 ) (signed word) muls8s::m#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) muls8s::$0 ← (signed byte) muls8s::a#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 (boolean~) muls8s::$1 ← ! (boolean~) muls8s::$0 @@ -2226,15 +2448,15 @@ muls8s::@return: scope:[muls8s] from muls8s::@3 (signed word) muls8s::return#1 ← (signed word) muls8s::return#3 return to:@return -@14: scope:[] from @11 - (byte*) char_cursor#151 ← phi( @11/(byte*) char_cursor#152 ) - (byte*) line_cursor#66 ← phi( @11/(byte*) line_cursor#67 ) - (byte*) BGCOL#13 ← phi( @11/(byte*) BGCOL#0 ) +@15: scope:[] from @12 + (byte*) char_cursor#155 ← phi( @12/(byte*) char_cursor#156 ) + (byte*) line_cursor#66 ← phi( @12/(byte*) line_cursor#67 ) + (byte*) BGCOL#14 ← phi( @12/(byte*) BGCOL#0 ) (byte[512]) mula_sqr1_lo#0 ← { fill( 512, 0) } (byte[512]) mula_sqr1_hi#0 ← { fill( 512, 0) } (byte[512]) mula_sqr2_lo#0 ← { fill( 512, 0) } (byte[512]) mula_sqr2_hi#0 ← { fill( 512, 0) } - to:@20 + to:@21 mulf_init_asm: scope:[mulf_init_asm] from main::@2 asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } (byte*) mulf_init_asm::mem#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) 255 @@ -2246,549 +2468,642 @@ mulf_init_asm: scope:[mulf_init_asm] from main::@2 mulf_init_asm::@return: scope:[mulf_init_asm] from mulf_init_asm return to:@return -multiply_tables_compare: scope:[multiply_tables_compare] from main::@3 - (byte*) line_cursor#85 ← phi( main::@3/(byte*) line_cursor#47 ) - (byte*) char_cursor#153 ← phi( main::@3/(byte*) char_cursor#131 ) - (byte*) BGCOL#9 ← phi( main::@3/(byte*) BGCOL#14 ) - (byte*) multiply_tables_compare::asm_sqr#0 ← (byte[512]) mula_sqr1_lo#0 - (byte*) multiply_tables_compare::kc_sqr#0 ← (byte[512]) mulf_sqr1_lo#0 - to:multiply_tables_compare::@1 -multiply_tables_compare::@1: scope:[multiply_tables_compare] from multiply_tables_compare multiply_tables_compare::@2 - (byte*) line_cursor#77 ← phi( multiply_tables_compare/(byte*) line_cursor#85 multiply_tables_compare::@2/(byte*) line_cursor#69 ) - (byte*) char_cursor#145 ← phi( multiply_tables_compare/(byte*) char_cursor#153 multiply_tables_compare::@2/(byte*) char_cursor#146 ) - (byte*) BGCOL#6 ← phi( multiply_tables_compare/(byte*) BGCOL#9 multiply_tables_compare::@2/(byte*) BGCOL#10 ) - (byte*) multiply_tables_compare::asm_sqr#2 ← phi( multiply_tables_compare/(byte*) multiply_tables_compare::asm_sqr#0 multiply_tables_compare::@2/(byte*) multiply_tables_compare::asm_sqr#1 ) - (byte*) multiply_tables_compare::kc_sqr#2 ← phi( multiply_tables_compare/(byte*) multiply_tables_compare::kc_sqr#0 multiply_tables_compare::@2/(byte*) multiply_tables_compare::kc_sqr#1 ) - (boolean~) multiply_tables_compare::$0 ← *((byte*) multiply_tables_compare::kc_sqr#2) != *((byte*) multiply_tables_compare::asm_sqr#2) - (boolean~) multiply_tables_compare::$1 ← ! (boolean~) multiply_tables_compare::$0 - if((boolean~) multiply_tables_compare::$1) goto multiply_tables_compare::@2 - to:multiply_tables_compare::@3 -multiply_tables_compare::@2: scope:[multiply_tables_compare] from multiply_tables_compare::@1 - (byte*) line_cursor#69 ← phi( multiply_tables_compare::@1/(byte*) line_cursor#77 ) - (byte*) char_cursor#146 ← phi( multiply_tables_compare::@1/(byte*) char_cursor#145 ) - (byte*) BGCOL#10 ← phi( multiply_tables_compare::@1/(byte*) BGCOL#6 ) - (byte*) multiply_tables_compare::kc_sqr#3 ← phi( multiply_tables_compare::@1/(byte*) multiply_tables_compare::kc_sqr#2 ) - (byte*) multiply_tables_compare::asm_sqr#3 ← phi( multiply_tables_compare::@1/(byte*) multiply_tables_compare::asm_sqr#2 ) - (byte*) multiply_tables_compare::asm_sqr#1 ← ++ (byte*) multiply_tables_compare::asm_sqr#3 - (byte*) multiply_tables_compare::kc_sqr#1 ← ++ (byte*) multiply_tables_compare::kc_sqr#3 - (word/signed word/dword/signed dword~) multiply_tables_compare::$8 ← (word/signed word/dword/signed dword) 512 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*~) multiply_tables_compare::$9 ← (byte[512]) mulf_sqr1_lo#0 + (word/signed word/dword/signed dword~) multiply_tables_compare::$8 - (boolean~) multiply_tables_compare::$10 ← (byte*) multiply_tables_compare::kc_sqr#1 < (byte*~) multiply_tables_compare::$9 - if((boolean~) multiply_tables_compare::$10) goto multiply_tables_compare::@1 - to:multiply_tables_compare::@5 -multiply_tables_compare::@3: scope:[multiply_tables_compare] from multiply_tables_compare::@1 - (byte*) line_cursor#86 ← phi( multiply_tables_compare::@1/(byte*) line_cursor#77 ) - (byte*) multiply_tables_compare::kc_sqr#7 ← phi( multiply_tables_compare::@1/(byte*) multiply_tables_compare::kc_sqr#2 ) - (byte*) multiply_tables_compare::asm_sqr#5 ← phi( multiply_tables_compare::@1/(byte*) multiply_tables_compare::asm_sqr#2 ) - (byte*) char_cursor#132 ← phi( multiply_tables_compare::@1/(byte*) char_cursor#145 ) - (byte*) BGCOL#2 ← phi( multiply_tables_compare::@1/(byte*) BGCOL#6 ) +mulf_tables_cmp: scope:[mulf_tables_cmp] from main::@3 + (byte*) line_cursor#87 ← phi( main::@3/(byte*) line_cursor#47 ) + (byte*) char_cursor#157 ← phi( main::@3/(byte*) char_cursor#135 ) + (byte*) BGCOL#9 ← phi( main::@3/(byte*) BGCOL#15 ) + (byte*) mulf_tables_cmp::asm_sqr#0 ← (byte[512]) mula_sqr1_lo#0 + (byte*) mulf_tables_cmp::kc_sqr#0 ← (byte[512]) mulf_sqr1_lo#0 + to:mulf_tables_cmp::@1 +mulf_tables_cmp::@1: scope:[mulf_tables_cmp] from mulf_tables_cmp mulf_tables_cmp::@2 + (byte*) line_cursor#78 ← phi( mulf_tables_cmp/(byte*) line_cursor#87 mulf_tables_cmp::@2/(byte*) line_cursor#69 ) + (byte*) char_cursor#149 ← phi( mulf_tables_cmp/(byte*) char_cursor#157 mulf_tables_cmp::@2/(byte*) char_cursor#150 ) + (byte*) BGCOL#6 ← phi( mulf_tables_cmp/(byte*) BGCOL#9 mulf_tables_cmp::@2/(byte*) BGCOL#10 ) + (byte*) mulf_tables_cmp::asm_sqr#2 ← phi( mulf_tables_cmp/(byte*) mulf_tables_cmp::asm_sqr#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::asm_sqr#1 ) + (byte*) mulf_tables_cmp::kc_sqr#2 ← phi( mulf_tables_cmp/(byte*) mulf_tables_cmp::kc_sqr#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::kc_sqr#1 ) + (boolean~) mulf_tables_cmp::$0 ← *((byte*) mulf_tables_cmp::kc_sqr#2) != *((byte*) mulf_tables_cmp::asm_sqr#2) + (boolean~) mulf_tables_cmp::$1 ← ! (boolean~) mulf_tables_cmp::$0 + if((boolean~) mulf_tables_cmp::$1) goto mulf_tables_cmp::@2 + to:mulf_tables_cmp::@3 +mulf_tables_cmp::@2: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1 + (byte*) line_cursor#69 ← phi( mulf_tables_cmp::@1/(byte*) line_cursor#78 ) + (byte*) char_cursor#150 ← phi( mulf_tables_cmp::@1/(byte*) char_cursor#149 ) + (byte*) BGCOL#10 ← phi( mulf_tables_cmp::@1/(byte*) BGCOL#6 ) + (byte*) mulf_tables_cmp::kc_sqr#3 ← phi( mulf_tables_cmp::@1/(byte*) mulf_tables_cmp::kc_sqr#2 ) + (byte*) mulf_tables_cmp::asm_sqr#3 ← phi( mulf_tables_cmp::@1/(byte*) mulf_tables_cmp::asm_sqr#2 ) + (byte*) mulf_tables_cmp::asm_sqr#1 ← ++ (byte*) mulf_tables_cmp::asm_sqr#3 + (byte*) mulf_tables_cmp::kc_sqr#1 ← ++ (byte*) mulf_tables_cmp::kc_sqr#3 + (word/signed word/dword/signed dword~) mulf_tables_cmp::$8 ← (word/signed word/dword/signed dword) 512 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte*~) mulf_tables_cmp::$9 ← (byte[512]) mulf_sqr1_lo#0 + (word/signed word/dword/signed dword~) mulf_tables_cmp::$8 + (boolean~) mulf_tables_cmp::$10 ← (byte*) mulf_tables_cmp::kc_sqr#1 < (byte*~) mulf_tables_cmp::$9 + if((boolean~) mulf_tables_cmp::$10) goto mulf_tables_cmp::@1 + to:mulf_tables_cmp::@5 +mulf_tables_cmp::@3: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1 + (byte*) line_cursor#88 ← phi( mulf_tables_cmp::@1/(byte*) line_cursor#78 ) + (byte*) mulf_tables_cmp::kc_sqr#7 ← phi( mulf_tables_cmp::@1/(byte*) mulf_tables_cmp::kc_sqr#2 ) + (byte*) mulf_tables_cmp::asm_sqr#5 ← phi( mulf_tables_cmp::@1/(byte*) mulf_tables_cmp::asm_sqr#2 ) + (byte*) char_cursor#136 ← phi( mulf_tables_cmp::@1/(byte*) char_cursor#149 ) + (byte*) BGCOL#2 ← phi( mulf_tables_cmp::@1/(byte*) BGCOL#6 ) *((byte*) BGCOL#2) ← (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*) print_str::str#1 ← (const string) multiply_tables_compare::str + (byte*) print_str::str#1 ← (const string) mulf_tables_cmp::str call print_str param-assignment - to:multiply_tables_compare::@6 -multiply_tables_compare::@6: scope:[multiply_tables_compare] from multiply_tables_compare::@3 - (byte*) line_cursor#78 ← phi( multiply_tables_compare::@3/(byte*) line_cursor#86 ) - (byte*) multiply_tables_compare::kc_sqr#6 ← phi( multiply_tables_compare::@3/(byte*) multiply_tables_compare::kc_sqr#7 ) - (byte*) multiply_tables_compare::asm_sqr#4 ← phi( multiply_tables_compare::@3/(byte*) multiply_tables_compare::asm_sqr#5 ) - (byte*) char_cursor#86 ← phi( multiply_tables_compare::@3/(byte*) char_cursor#2 ) - (byte*) char_cursor#26 ← (byte*) char_cursor#86 - (word~) multiply_tables_compare::$3 ← ((word)) (byte*) multiply_tables_compare::asm_sqr#4 - (word) print_word::w#1 ← (word~) multiply_tables_compare::$3 + to:mulf_tables_cmp::@6 +mulf_tables_cmp::@6: scope:[mulf_tables_cmp] from mulf_tables_cmp::@3 + (byte*) line_cursor#79 ← phi( mulf_tables_cmp::@3/(byte*) line_cursor#88 ) + (byte*) mulf_tables_cmp::kc_sqr#6 ← phi( mulf_tables_cmp::@3/(byte*) mulf_tables_cmp::kc_sqr#7 ) + (byte*) mulf_tables_cmp::asm_sqr#4 ← phi( mulf_tables_cmp::@3/(byte*) mulf_tables_cmp::asm_sqr#5 ) + (byte*) char_cursor#88 ← phi( mulf_tables_cmp::@3/(byte*) char_cursor#2 ) + (byte*) char_cursor#26 ← (byte*) char_cursor#88 + (word~) mulf_tables_cmp::$3 ← ((word)) (byte*) mulf_tables_cmp::asm_sqr#4 + (word) print_word::w#1 ← (word~) mulf_tables_cmp::$3 call print_word param-assignment - to:multiply_tables_compare::@7 -multiply_tables_compare::@7: scope:[multiply_tables_compare] from multiply_tables_compare::@6 - (byte*) line_cursor#68 ← phi( multiply_tables_compare::@6/(byte*) line_cursor#78 ) - (byte*) multiply_tables_compare::kc_sqr#5 ← phi( multiply_tables_compare::@6/(byte*) multiply_tables_compare::kc_sqr#6 ) - (byte*) char_cursor#87 ← phi( multiply_tables_compare::@6/(byte*) char_cursor#13 ) - (byte*) char_cursor#27 ← (byte*) char_cursor#87 - (byte*) print_str::str#2 ← (const string) multiply_tables_compare::str1 + to:mulf_tables_cmp::@7 +mulf_tables_cmp::@7: scope:[mulf_tables_cmp] from mulf_tables_cmp::@6 + (byte*) line_cursor#68 ← phi( mulf_tables_cmp::@6/(byte*) line_cursor#79 ) + (byte*) mulf_tables_cmp::kc_sqr#5 ← phi( mulf_tables_cmp::@6/(byte*) mulf_tables_cmp::kc_sqr#6 ) + (byte*) char_cursor#89 ← phi( mulf_tables_cmp::@6/(byte*) char_cursor#13 ) + (byte*) char_cursor#27 ← (byte*) char_cursor#89 + (byte*) print_str::str#2 ← (const string) mulf_tables_cmp::str1 call print_str param-assignment - to:multiply_tables_compare::@8 -multiply_tables_compare::@8: scope:[multiply_tables_compare] from multiply_tables_compare::@7 - (byte*) line_cursor#58 ← phi( multiply_tables_compare::@7/(byte*) line_cursor#68 ) - (byte*) multiply_tables_compare::kc_sqr#4 ← phi( multiply_tables_compare::@7/(byte*) multiply_tables_compare::kc_sqr#5 ) - (byte*) char_cursor#88 ← phi( multiply_tables_compare::@7/(byte*) char_cursor#2 ) - (byte*) char_cursor#28 ← (byte*) char_cursor#88 - (word~) multiply_tables_compare::$6 ← ((word)) (byte*) multiply_tables_compare::kc_sqr#4 - (word) print_word::w#2 ← (word~) multiply_tables_compare::$6 + to:mulf_tables_cmp::@8 +mulf_tables_cmp::@8: scope:[mulf_tables_cmp] from mulf_tables_cmp::@7 + (byte*) line_cursor#58 ← phi( mulf_tables_cmp::@7/(byte*) line_cursor#68 ) + (byte*) mulf_tables_cmp::kc_sqr#4 ← phi( mulf_tables_cmp::@7/(byte*) mulf_tables_cmp::kc_sqr#5 ) + (byte*) char_cursor#90 ← phi( mulf_tables_cmp::@7/(byte*) char_cursor#2 ) + (byte*) char_cursor#28 ← (byte*) char_cursor#90 + (word~) mulf_tables_cmp::$6 ← ((word)) (byte*) mulf_tables_cmp::kc_sqr#4 + (word) print_word::w#2 ← (word~) mulf_tables_cmp::$6 call print_word param-assignment - to:multiply_tables_compare::@9 -multiply_tables_compare::@9: scope:[multiply_tables_compare] from multiply_tables_compare::@8 - (byte*) line_cursor#48 ← phi( multiply_tables_compare::@8/(byte*) line_cursor#58 ) - (byte*) char_cursor#89 ← phi( multiply_tables_compare::@8/(byte*) char_cursor#13 ) - (byte*) char_cursor#29 ← (byte*) char_cursor#89 - to:multiply_tables_compare::@return -multiply_tables_compare::@return: scope:[multiply_tables_compare] from multiply_tables_compare::@11 multiply_tables_compare::@9 - (byte*) line_cursor#32 ← phi( multiply_tables_compare::@11/(byte*) line_cursor#11 multiply_tables_compare::@9/(byte*) line_cursor#48 ) - (byte*) char_cursor#90 ← phi( multiply_tables_compare::@11/(byte*) char_cursor#32 multiply_tables_compare::@9/(byte*) char_cursor#29 ) - (byte*) char_cursor#30 ← (byte*) char_cursor#90 + to:mulf_tables_cmp::@9 +mulf_tables_cmp::@9: scope:[mulf_tables_cmp] from mulf_tables_cmp::@8 + (byte*) line_cursor#48 ← phi( mulf_tables_cmp::@8/(byte*) line_cursor#58 ) + (byte*) char_cursor#91 ← phi( mulf_tables_cmp::@8/(byte*) char_cursor#13 ) + (byte*) char_cursor#29 ← (byte*) char_cursor#91 + to:mulf_tables_cmp::@return +mulf_tables_cmp::@return: scope:[mulf_tables_cmp] from mulf_tables_cmp::@11 mulf_tables_cmp::@9 + (byte*) line_cursor#32 ← phi( mulf_tables_cmp::@11/(byte*) line_cursor#11 mulf_tables_cmp::@9/(byte*) line_cursor#48 ) + (byte*) char_cursor#92 ← phi( mulf_tables_cmp::@11/(byte*) char_cursor#32 mulf_tables_cmp::@9/(byte*) char_cursor#29 ) + (byte*) char_cursor#30 ← (byte*) char_cursor#92 (byte*) line_cursor#10 ← (byte*) line_cursor#32 return to:@return -multiply_tables_compare::@5: scope:[multiply_tables_compare] from multiply_tables_compare::@2 - (byte*) line_cursor#59 ← phi( multiply_tables_compare::@2/(byte*) line_cursor#69 ) - (byte*) char_cursor#133 ← phi( multiply_tables_compare::@2/(byte*) char_cursor#146 ) - (byte*) print_str::str#3 ← (const string) multiply_tables_compare::str2 +mulf_tables_cmp::@5: scope:[mulf_tables_cmp] from mulf_tables_cmp::@2 + (byte*) line_cursor#59 ← phi( mulf_tables_cmp::@2/(byte*) line_cursor#69 ) + (byte*) char_cursor#137 ← phi( mulf_tables_cmp::@2/(byte*) char_cursor#150 ) + (byte*) print_str::str#3 ← (const string) mulf_tables_cmp::str2 call print_str param-assignment - to:multiply_tables_compare::@10 -multiply_tables_compare::@10: scope:[multiply_tables_compare] from multiply_tables_compare::@5 - (byte*) line_cursor#49 ← phi( multiply_tables_compare::@5/(byte*) line_cursor#59 ) - (byte*) char_cursor#91 ← phi( multiply_tables_compare::@5/(byte*) char_cursor#2 ) - (byte*) char_cursor#31 ← (byte*) char_cursor#91 + to:mulf_tables_cmp::@10 +mulf_tables_cmp::@10: scope:[mulf_tables_cmp] from mulf_tables_cmp::@5 + (byte*) line_cursor#49 ← phi( mulf_tables_cmp::@5/(byte*) line_cursor#59 ) + (byte*) char_cursor#93 ← phi( mulf_tables_cmp::@5/(byte*) char_cursor#2 ) + (byte*) char_cursor#31 ← (byte*) char_cursor#93 call print_ln param-assignment - to:multiply_tables_compare::@11 -multiply_tables_compare::@11: scope:[multiply_tables_compare] from multiply_tables_compare::@10 - (byte*) char_cursor#92 ← phi( multiply_tables_compare::@10/(byte*) char_cursor#4 ) - (byte*) line_cursor#33 ← phi( multiply_tables_compare::@10/(byte*) line_cursor#2 ) + to:mulf_tables_cmp::@11 +mulf_tables_cmp::@11: scope:[mulf_tables_cmp] from mulf_tables_cmp::@10 + (byte*) char_cursor#94 ← phi( mulf_tables_cmp::@10/(byte*) char_cursor#4 ) + (byte*) line_cursor#33 ← phi( mulf_tables_cmp::@10/(byte*) line_cursor#2 ) (byte*) line_cursor#11 ← (byte*) line_cursor#33 - (byte*) char_cursor#32 ← (byte*) char_cursor#92 - to:multiply_tables_compare::@return -multiply_results_compare: scope:[multiply_results_compare] from main::@4 - (byte*) line_cursor#91 ← phi( main::@4/(byte*) line_cursor#6 ) - (byte*) char_cursor#163 ← phi( main::@4/(byte*) char_cursor#22 ) - (byte*) BGCOL#23 ← phi( main::@4/(byte*) BGCOL#27 ) - (byte) multiply_results_compare::a#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 - to:multiply_results_compare::@1 -multiply_results_compare::@1: scope:[multiply_results_compare] from multiply_results_compare multiply_results_compare::@6 - (byte*) line_cursor#87 ← phi( multiply_results_compare/(byte*) line_cursor#91 multiply_results_compare::@6/(byte*) line_cursor#71 ) - (byte*) char_cursor#161 ← phi( multiply_results_compare/(byte*) char_cursor#163 multiply_results_compare::@6/(byte*) char_cursor#148 ) - (byte*) BGCOL#18 ← phi( multiply_results_compare/(byte*) BGCOL#23 multiply_results_compare::@6/(byte*) BGCOL#24 ) - (byte) multiply_results_compare::a#6 ← phi( multiply_results_compare/(byte) multiply_results_compare::a#0 multiply_results_compare::@6/(byte) multiply_results_compare::a#1 ) - (byte) multiply_results_compare::b#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 - to:multiply_results_compare::@2 -multiply_results_compare::@2: scope:[multiply_results_compare] from multiply_results_compare::@1 multiply_results_compare::@3 - (byte*) line_cursor#79 ← phi( multiply_results_compare::@1/(byte*) line_cursor#87 multiply_results_compare::@3/(byte*) line_cursor#80 ) - (byte*) char_cursor#159 ← phi( multiply_results_compare::@1/(byte*) char_cursor#161 multiply_results_compare::@3/(byte*) char_cursor#155 ) - (byte*) BGCOL#15 ← phi( multiply_results_compare::@1/(byte*) BGCOL#18 multiply_results_compare::@3/(byte*) BGCOL#19 ) - (byte) multiply_results_compare::b#2 ← phi( multiply_results_compare::@1/(byte) multiply_results_compare::b#0 multiply_results_compare::@3/(byte) multiply_results_compare::b#1 ) - (byte) multiply_results_compare::a#2 ← phi( multiply_results_compare::@1/(byte) multiply_results_compare::a#6 multiply_results_compare::@3/(byte) multiply_results_compare::a#7 ) - (byte) muls8u::a#0 ← (byte) multiply_results_compare::a#2 - (byte) muls8u::b#0 ← (byte) multiply_results_compare::b#2 + (byte*) char_cursor#32 ← (byte*) char_cursor#94 + to:mulf_tables_cmp::@return +mul8u_slowfast_compare: scope:[mul8u_slowfast_compare] from main::@4 + (byte*) line_cursor#103 ← phi( main::@4/(byte*) line_cursor#6 ) + (byte*) char_cursor#173 ← phi( main::@4/(byte*) char_cursor#22 ) + (byte*) BGCOL#32 ← phi( main::@4/(byte*) BGCOL#29 ) + (byte) mul8u_slowfast_compare::a#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:mul8u_slowfast_compare::@1 +mul8u_slowfast_compare::@1: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare mul8u_slowfast_compare::@10 + (byte*) line_cursor#100 ← phi( mul8u_slowfast_compare/(byte*) line_cursor#103 mul8u_slowfast_compare::@10/(byte*) line_cursor#72 ) + (byte*) char_cursor#172 ← phi( mul8u_slowfast_compare/(byte*) char_cursor#173 mul8u_slowfast_compare::@10/(byte*) char_cursor#152 ) + (byte*) BGCOL#30 ← phi( mul8u_slowfast_compare/(byte*) BGCOL#32 mul8u_slowfast_compare::@10/(byte*) BGCOL#33 ) + (byte) mul8u_slowfast_compare::a#7 ← phi( mul8u_slowfast_compare/(byte) mul8u_slowfast_compare::a#0 mul8u_slowfast_compare::@10/(byte) mul8u_slowfast_compare::a#1 ) + (byte) mul8u_slowfast_compare::b#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:mul8u_slowfast_compare::@2 +mul8u_slowfast_compare::@2: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@1 mul8u_slowfast_compare::@5 + (byte*) line_cursor#97 ← phi( mul8u_slowfast_compare::@1/(byte*) line_cursor#100 mul8u_slowfast_compare::@5/(byte*) line_cursor#82 ) + (byte*) char_cursor#171 ← phi( mul8u_slowfast_compare::@1/(byte*) char_cursor#172 mul8u_slowfast_compare::@5/(byte*) char_cursor#160 ) + (byte*) BGCOL#27 ← phi( mul8u_slowfast_compare::@1/(byte*) BGCOL#30 mul8u_slowfast_compare::@5/(byte*) BGCOL#31 ) + (byte) mul8u_slowfast_compare::b#2 ← phi( mul8u_slowfast_compare::@1/(byte) mul8u_slowfast_compare::b#0 mul8u_slowfast_compare::@5/(byte) mul8u_slowfast_compare::b#1 ) + (byte) mul8u_slowfast_compare::a#2 ← phi( mul8u_slowfast_compare::@1/(byte) mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::@5/(byte) mul8u_slowfast_compare::a#8 ) + (byte) muls8u::a#0 ← (byte) mul8u_slowfast_compare::a#2 + (byte) muls8u::b#0 ← (byte) mul8u_slowfast_compare::b#2 call muls8u param-assignment (word) muls8u::return#2 ← (word) muls8u::return#1 - to:multiply_results_compare::@8 -multiply_results_compare::@8: scope:[multiply_results_compare] from multiply_results_compare::@2 - (byte*) line_cursor#70 ← phi( multiply_results_compare::@2/(byte*) line_cursor#79 ) - (byte*) char_cursor#154 ← phi( multiply_results_compare::@2/(byte*) char_cursor#159 ) - (byte*) BGCOL#11 ← phi( multiply_results_compare::@2/(byte*) BGCOL#15 ) - (byte) multiply_results_compare::b#3 ← phi( multiply_results_compare::@2/(byte) multiply_results_compare::b#2 ) - (byte) multiply_results_compare::a#3 ← phi( multiply_results_compare::@2/(byte) multiply_results_compare::a#2 ) - (word) muls8u::return#4 ← phi( multiply_results_compare::@2/(word) muls8u::return#2 ) - (word~) multiply_results_compare::$0 ← (word) muls8u::return#4 - (word) multiply_results_compare::ms#0 ← (word~) multiply_results_compare::$0 - (byte) mulf8u::a#1 ← (byte) multiply_results_compare::a#3 - (byte) mulf8u::b#1 ← (byte) multiply_results_compare::b#3 + to:mul8u_slowfast_compare::@12 +mul8u_slowfast_compare::@12: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@2 + (byte*) line_cursor#93 ← phi( mul8u_slowfast_compare::@2/(byte*) line_cursor#97 ) + (byte*) char_cursor#169 ← phi( mul8u_slowfast_compare::@2/(byte*) char_cursor#171 ) + (byte*) BGCOL#24 ← phi( mul8u_slowfast_compare::@2/(byte*) BGCOL#27 ) + (byte) mul8u_slowfast_compare::b#3 ← phi( mul8u_slowfast_compare::@2/(byte) mul8u_slowfast_compare::b#2 ) + (byte) mul8u_slowfast_compare::a#3 ← phi( mul8u_slowfast_compare::@2/(byte) mul8u_slowfast_compare::a#2 ) + (word) muls8u::return#4 ← phi( mul8u_slowfast_compare::@2/(word) muls8u::return#2 ) + (word~) mul8u_slowfast_compare::$0 ← (word) muls8u::return#4 + (word) mul8u_slowfast_compare::ms#0 ← (word~) mul8u_slowfast_compare::$0 + (byte) mulf8u::a#1 ← (byte) mul8u_slowfast_compare::a#3 + (byte) mulf8u::b#1 ← (byte) mul8u_slowfast_compare::b#3 call mulf8u param-assignment (word) mulf8u::return#3 ← (word) mulf8u::return#1 - to:multiply_results_compare::@9 -multiply_results_compare::@9: scope:[multiply_results_compare] from multiply_results_compare::@8 - (byte*) line_cursor#60 ← phi( multiply_results_compare::@8/(byte*) line_cursor#70 ) - (byte*) char_cursor#147 ← phi( multiply_results_compare::@8/(byte*) char_cursor#154 ) - (byte) multiply_results_compare::a#8 ← phi( multiply_results_compare::@8/(byte) multiply_results_compare::a#3 ) - (byte*) BGCOL#7 ← phi( multiply_results_compare::@8/(byte*) BGCOL#11 ) - (byte) multiply_results_compare::b#6 ← phi( multiply_results_compare::@8/(byte) multiply_results_compare::b#3 ) - (word) multiply_results_compare::ms#1 ← phi( multiply_results_compare::@8/(word) multiply_results_compare::ms#0 ) - (word) mulf8u::return#6 ← phi( multiply_results_compare::@8/(word) mulf8u::return#3 ) - (word~) multiply_results_compare::$1 ← (word) mulf8u::return#6 - (word) multiply_results_compare::ma#0 ← (word~) multiply_results_compare::$1 - (boolean~) multiply_results_compare::$2 ← (word) multiply_results_compare::ms#1 != (word) multiply_results_compare::ma#0 - (boolean~) multiply_results_compare::$3 ← ! (boolean~) multiply_results_compare::$2 - if((boolean~) multiply_results_compare::$3) goto multiply_results_compare::@3 - to:multiply_results_compare::@4 -multiply_results_compare::@3: scope:[multiply_results_compare] from multiply_results_compare::@9 - (byte*) line_cursor#80 ← phi( multiply_results_compare::@9/(byte*) line_cursor#60 ) - (byte*) BGCOL#19 ← phi( multiply_results_compare::@9/(byte*) BGCOL#7 ) - (byte*) char_cursor#155 ← phi( multiply_results_compare::@9/(byte*) char_cursor#147 ) - (byte) multiply_results_compare::a#7 ← phi( multiply_results_compare::@9/(byte) multiply_results_compare::a#8 ) - (byte) multiply_results_compare::b#4 ← phi( multiply_results_compare::@9/(byte) multiply_results_compare::b#6 ) - (byte) multiply_results_compare::b#1 ← ++ (byte) multiply_results_compare::b#4 - (boolean~) multiply_results_compare::$5 ← (byte) multiply_results_compare::b#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - if((boolean~) multiply_results_compare::$5) goto multiply_results_compare::@2 - to:multiply_results_compare::@6 -multiply_results_compare::@4: scope:[multiply_results_compare] from multiply_results_compare::@9 - (byte*) line_cursor#50 ← phi( multiply_results_compare::@9/(byte*) line_cursor#60 ) - (byte*) char_cursor#134 ← phi( multiply_results_compare::@9/(byte*) char_cursor#147 ) - (word) multiply_results_compare::ma#1 ← phi( multiply_results_compare::@9/(word) multiply_results_compare::ma#0 ) - (word) multiply_results_compare::ms#2 ← phi( multiply_results_compare::@9/(word) multiply_results_compare::ms#1 ) - (byte) multiply_results_compare::b#5 ← phi( multiply_results_compare::@9/(byte) multiply_results_compare::b#6 ) - (byte) multiply_results_compare::a#4 ← phi( multiply_results_compare::@9/(byte) multiply_results_compare::a#8 ) - (byte*) BGCOL#3 ← phi( multiply_results_compare::@9/(byte*) BGCOL#7 ) + to:mul8u_slowfast_compare::@13 +mul8u_slowfast_compare::@13: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@12 + (byte*) line_cursor#89 ← phi( mul8u_slowfast_compare::@12/(byte*) line_cursor#93 ) + (byte*) char_cursor#167 ← phi( mul8u_slowfast_compare::@12/(byte*) char_cursor#169 ) + (byte*) BGCOL#20 ← phi( mul8u_slowfast_compare::@12/(byte*) BGCOL#24 ) + (word) mul8u_slowfast_compare::ms#4 ← phi( mul8u_slowfast_compare::@12/(word) mul8u_slowfast_compare::ms#0 ) + (byte) mul8u_slowfast_compare::b#4 ← phi( mul8u_slowfast_compare::@12/(byte) mul8u_slowfast_compare::b#3 ) + (byte) mul8u_slowfast_compare::a#4 ← phi( mul8u_slowfast_compare::@12/(byte) mul8u_slowfast_compare::a#3 ) + (word) mulf8u::return#6 ← phi( mul8u_slowfast_compare::@12/(word) mulf8u::return#3 ) + (word~) mul8u_slowfast_compare::$1 ← (word) mulf8u::return#6 + (word) mul8u_slowfast_compare::mf#0 ← (word~) mul8u_slowfast_compare::$1 + (byte) mul8u::a#1 ← (byte) mul8u_slowfast_compare::a#4 + (byte) mul8u::b#0 ← (byte) mul8u_slowfast_compare::b#4 + call mul8u param-assignment + (word) mul8u::return#2 ← (word) mul8u::return#1 + to:mul8u_slowfast_compare::@14 +mul8u_slowfast_compare::@14: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@13 + (byte*) line_cursor#80 ← phi( mul8u_slowfast_compare::@13/(byte*) line_cursor#89 ) + (byte*) char_cursor#164 ← phi( mul8u_slowfast_compare::@13/(byte*) char_cursor#167 ) + (byte) mul8u_slowfast_compare::a#12 ← phi( mul8u_slowfast_compare::@13/(byte) mul8u_slowfast_compare::a#4 ) + (byte*) BGCOL#16 ← phi( mul8u_slowfast_compare::@13/(byte*) BGCOL#20 ) + (byte) mul8u_slowfast_compare::b#10 ← phi( mul8u_slowfast_compare::@13/(byte) mul8u_slowfast_compare::b#4 ) + (word) mul8u_slowfast_compare::mf#1 ← phi( mul8u_slowfast_compare::@13/(word) mul8u_slowfast_compare::mf#0 ) + (word) mul8u_slowfast_compare::ms#1 ← phi( mul8u_slowfast_compare::@13/(word) mul8u_slowfast_compare::ms#4 ) + (word) mul8u::return#4 ← phi( mul8u_slowfast_compare::@13/(word) mul8u::return#2 ) + (word~) mul8u_slowfast_compare::$2 ← (word) mul8u::return#4 + (word) mul8u_slowfast_compare::mn#0 ← (word~) mul8u_slowfast_compare::$2 + (byte) mul8u_slowfast_compare::ok#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (boolean~) mul8u_slowfast_compare::$3 ← (word) mul8u_slowfast_compare::ms#1 != (word) mul8u_slowfast_compare::mf#1 + (boolean~) mul8u_slowfast_compare::$4 ← ! (boolean~) mul8u_slowfast_compare::$3 + if((boolean~) mul8u_slowfast_compare::$4) goto mul8u_slowfast_compare::@3 + to:mul8u_slowfast_compare::@6 +mul8u_slowfast_compare::@3: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 + (byte*) line_cursor#70 ← phi( mul8u_slowfast_compare::@14/(byte*) line_cursor#80 mul8u_slowfast_compare::@6/(byte*) line_cursor#81 ) + (byte*) char_cursor#158 ← phi( mul8u_slowfast_compare::@14/(byte*) char_cursor#164 mul8u_slowfast_compare::@6/(byte*) char_cursor#165 ) + (word) mul8u_slowfast_compare::mf#4 ← phi( mul8u_slowfast_compare::@14/(word) mul8u_slowfast_compare::mf#1 mul8u_slowfast_compare::@6/(word) mul8u_slowfast_compare::mf#6 ) + (byte) mul8u_slowfast_compare::a#10 ← phi( mul8u_slowfast_compare::@14/(byte) mul8u_slowfast_compare::a#12 mul8u_slowfast_compare::@6/(byte) mul8u_slowfast_compare::a#13 ) + (byte*) BGCOL#11 ← phi( mul8u_slowfast_compare::@14/(byte*) BGCOL#16 mul8u_slowfast_compare::@6/(byte*) BGCOL#17 ) + (byte) mul8u_slowfast_compare::b#8 ← phi( mul8u_slowfast_compare::@14/(byte) mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::@6/(byte) mul8u_slowfast_compare::b#11 ) + (byte) mul8u_slowfast_compare::ok#4 ← phi( mul8u_slowfast_compare::@14/(byte) mul8u_slowfast_compare::ok#0 mul8u_slowfast_compare::@6/(byte) mul8u_slowfast_compare::ok#1 ) + (word) mul8u_slowfast_compare::mn#1 ← phi( mul8u_slowfast_compare::@14/(word) mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::@6/(word) mul8u_slowfast_compare::mn#3 ) + (word) mul8u_slowfast_compare::ms#2 ← phi( mul8u_slowfast_compare::@14/(word) mul8u_slowfast_compare::ms#1 mul8u_slowfast_compare::@6/(word) mul8u_slowfast_compare::ms#5 ) + (boolean~) mul8u_slowfast_compare::$5 ← (word) mul8u_slowfast_compare::ms#2 != (word) mul8u_slowfast_compare::mn#1 + (boolean~) mul8u_slowfast_compare::$6 ← ! (boolean~) mul8u_slowfast_compare::$5 + if((boolean~) mul8u_slowfast_compare::$6) goto mul8u_slowfast_compare::@4 + to:mul8u_slowfast_compare::@7 +mul8u_slowfast_compare::@6: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@14 + (byte*) line_cursor#81 ← phi( mul8u_slowfast_compare::@14/(byte*) line_cursor#80 ) + (byte*) char_cursor#165 ← phi( mul8u_slowfast_compare::@14/(byte*) char_cursor#164 ) + (word) mul8u_slowfast_compare::mf#6 ← phi( mul8u_slowfast_compare::@14/(word) mul8u_slowfast_compare::mf#1 ) + (byte) mul8u_slowfast_compare::a#13 ← phi( mul8u_slowfast_compare::@14/(byte) mul8u_slowfast_compare::a#12 ) + (byte*) BGCOL#17 ← phi( mul8u_slowfast_compare::@14/(byte*) BGCOL#16 ) + (byte) mul8u_slowfast_compare::b#11 ← phi( mul8u_slowfast_compare::@14/(byte) mul8u_slowfast_compare::b#10 ) + (word) mul8u_slowfast_compare::mn#3 ← phi( mul8u_slowfast_compare::@14/(word) mul8u_slowfast_compare::mn#0 ) + (word) mul8u_slowfast_compare::ms#5 ← phi( mul8u_slowfast_compare::@14/(word) mul8u_slowfast_compare::ms#1 ) + (byte) mul8u_slowfast_compare::ok#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:mul8u_slowfast_compare::@3 +mul8u_slowfast_compare::@4: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@7 + (byte*) line_cursor#60 ← phi( mul8u_slowfast_compare::@3/(byte*) line_cursor#70 mul8u_slowfast_compare::@7/(byte*) line_cursor#71 ) + (byte*) char_cursor#151 ← phi( mul8u_slowfast_compare::@3/(byte*) char_cursor#158 mul8u_slowfast_compare::@7/(byte*) char_cursor#159 ) + (word) mul8u_slowfast_compare::mf#3 ← phi( mul8u_slowfast_compare::@3/(word) mul8u_slowfast_compare::mf#4 mul8u_slowfast_compare::@7/(word) mul8u_slowfast_compare::mf#5 ) + (word) mul8u_slowfast_compare::mn#4 ← phi( mul8u_slowfast_compare::@3/(word) mul8u_slowfast_compare::mn#1 mul8u_slowfast_compare::@7/(word) mul8u_slowfast_compare::mn#5 ) + (word) mul8u_slowfast_compare::ms#6 ← phi( mul8u_slowfast_compare::@3/(word) mul8u_slowfast_compare::ms#2 mul8u_slowfast_compare::@7/(word) mul8u_slowfast_compare::ms#7 ) + (byte) mul8u_slowfast_compare::a#9 ← phi( mul8u_slowfast_compare::@3/(byte) mul8u_slowfast_compare::a#10 mul8u_slowfast_compare::@7/(byte) mul8u_slowfast_compare::a#11 ) + (byte*) BGCOL#7 ← phi( mul8u_slowfast_compare::@3/(byte*) BGCOL#11 mul8u_slowfast_compare::@7/(byte*) BGCOL#12 ) + (byte) mul8u_slowfast_compare::b#7 ← phi( mul8u_slowfast_compare::@3/(byte) mul8u_slowfast_compare::b#8 mul8u_slowfast_compare::@7/(byte) mul8u_slowfast_compare::b#9 ) + (byte) mul8u_slowfast_compare::ok#3 ← phi( mul8u_slowfast_compare::@3/(byte) mul8u_slowfast_compare::ok#4 mul8u_slowfast_compare::@7/(byte) mul8u_slowfast_compare::ok#2 ) + (boolean~) mul8u_slowfast_compare::$7 ← (byte) mul8u_slowfast_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (boolean~) mul8u_slowfast_compare::$8 ← ! (boolean~) mul8u_slowfast_compare::$7 + if((boolean~) mul8u_slowfast_compare::$8) goto mul8u_slowfast_compare::@5 + to:mul8u_slowfast_compare::@8 +mul8u_slowfast_compare::@7: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@3 + (byte*) line_cursor#71 ← phi( mul8u_slowfast_compare::@3/(byte*) line_cursor#70 ) + (byte*) char_cursor#159 ← phi( mul8u_slowfast_compare::@3/(byte*) char_cursor#158 ) + (word) mul8u_slowfast_compare::mf#5 ← phi( mul8u_slowfast_compare::@3/(word) mul8u_slowfast_compare::mf#4 ) + (word) mul8u_slowfast_compare::mn#5 ← phi( mul8u_slowfast_compare::@3/(word) mul8u_slowfast_compare::mn#1 ) + (word) mul8u_slowfast_compare::ms#7 ← phi( mul8u_slowfast_compare::@3/(word) mul8u_slowfast_compare::ms#2 ) + (byte) mul8u_slowfast_compare::a#11 ← phi( mul8u_slowfast_compare::@3/(byte) mul8u_slowfast_compare::a#10 ) + (byte*) BGCOL#12 ← phi( mul8u_slowfast_compare::@3/(byte*) BGCOL#11 ) + (byte) mul8u_slowfast_compare::b#9 ← phi( mul8u_slowfast_compare::@3/(byte) mul8u_slowfast_compare::b#8 ) + (byte) mul8u_slowfast_compare::ok#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + to:mul8u_slowfast_compare::@4 +mul8u_slowfast_compare::@5: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@4 + (byte*) BGCOL#31 ← phi( mul8u_slowfast_compare::@4/(byte*) BGCOL#7 ) + (byte*) line_cursor#82 ← phi( mul8u_slowfast_compare::@4/(byte*) line_cursor#60 ) + (byte*) char_cursor#160 ← phi( mul8u_slowfast_compare::@4/(byte*) char_cursor#151 ) + (byte) mul8u_slowfast_compare::a#8 ← phi( mul8u_slowfast_compare::@4/(byte) mul8u_slowfast_compare::a#9 ) + (byte) mul8u_slowfast_compare::b#5 ← phi( mul8u_slowfast_compare::@4/(byte) mul8u_slowfast_compare::b#7 ) + (byte) mul8u_slowfast_compare::b#1 ← ++ (byte) mul8u_slowfast_compare::b#5 + (boolean~) mul8u_slowfast_compare::$10 ← (byte) mul8u_slowfast_compare::b#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + if((boolean~) mul8u_slowfast_compare::$10) goto mul8u_slowfast_compare::@2 + to:mul8u_slowfast_compare::@10 +mul8u_slowfast_compare::@8: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@4 + (byte*) line_cursor#50 ← phi( mul8u_slowfast_compare::@4/(byte*) line_cursor#60 ) + (byte*) char_cursor#138 ← phi( mul8u_slowfast_compare::@4/(byte*) char_cursor#151 ) + (word) mul8u_slowfast_compare::mf#2 ← phi( mul8u_slowfast_compare::@4/(word) mul8u_slowfast_compare::mf#3 ) + (word) mul8u_slowfast_compare::mn#2 ← phi( mul8u_slowfast_compare::@4/(word) mul8u_slowfast_compare::mn#4 ) + (word) mul8u_slowfast_compare::ms#3 ← phi( mul8u_slowfast_compare::@4/(word) mul8u_slowfast_compare::ms#6 ) + (byte) mul8u_slowfast_compare::b#6 ← phi( mul8u_slowfast_compare::@4/(byte) mul8u_slowfast_compare::b#7 ) + (byte) mul8u_slowfast_compare::a#5 ← phi( mul8u_slowfast_compare::@4/(byte) mul8u_slowfast_compare::a#9 ) + (byte*) BGCOL#3 ← phi( mul8u_slowfast_compare::@4/(byte*) BGCOL#7 ) *((byte*) BGCOL#3) ← (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) multiply_error::a#0 ← (byte) multiply_results_compare::a#4 - (byte) multiply_error::b#0 ← (byte) multiply_results_compare::b#5 - (word) multiply_error::ms#0 ← (word) multiply_results_compare::ms#2 - (word) multiply_error::ma#0 ← (word) multiply_results_compare::ma#1 + (byte) multiply_error::a#0 ← (byte) mul8u_slowfast_compare::a#5 + (byte) multiply_error::b#0 ← (byte) mul8u_slowfast_compare::b#6 + (word) multiply_error::ms#0 ← (word) mul8u_slowfast_compare::ms#3 + (word) multiply_error::mn#0 ← (word) mul8u_slowfast_compare::mn#2 + (word) multiply_error::mf#0 ← (word) mul8u_slowfast_compare::mf#2 call multiply_error param-assignment - to:multiply_results_compare::@10 -multiply_results_compare::@10: scope:[multiply_results_compare] from multiply_results_compare::@4 - (byte*) line_cursor#34 ← phi( multiply_results_compare::@4/(byte*) line_cursor#16 ) - (byte*) char_cursor#93 ← phi( multiply_results_compare::@4/(byte*) char_cursor#46 ) - (byte*) char_cursor#33 ← (byte*) char_cursor#93 + to:mul8u_slowfast_compare::@15 +mul8u_slowfast_compare::@15: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@8 + (byte*) line_cursor#34 ← phi( mul8u_slowfast_compare::@8/(byte*) line_cursor#16 ) + (byte*) char_cursor#95 ← phi( mul8u_slowfast_compare::@8/(byte*) char_cursor#48 ) + (byte*) char_cursor#33 ← (byte*) char_cursor#95 (byte*) line_cursor#12 ← (byte*) line_cursor#34 - to:multiply_results_compare::@return -multiply_results_compare::@return: scope:[multiply_results_compare] from multiply_results_compare::@10 multiply_results_compare::@12 - (byte*) line_cursor#35 ← phi( multiply_results_compare::@10/(byte*) line_cursor#12 multiply_results_compare::@12/(byte*) line_cursor#14 ) - (byte*) char_cursor#94 ← phi( multiply_results_compare::@10/(byte*) char_cursor#33 multiply_results_compare::@12/(byte*) char_cursor#36 ) - (byte*) char_cursor#34 ← (byte*) char_cursor#94 + to:mul8u_slowfast_compare::@return +mul8u_slowfast_compare::@return: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@15 mul8u_slowfast_compare::@17 + (byte*) line_cursor#35 ← phi( mul8u_slowfast_compare::@15/(byte*) line_cursor#12 mul8u_slowfast_compare::@17/(byte*) line_cursor#14 ) + (byte*) char_cursor#96 ← phi( mul8u_slowfast_compare::@15/(byte*) char_cursor#33 mul8u_slowfast_compare::@17/(byte*) char_cursor#36 ) + (byte*) char_cursor#34 ← (byte*) char_cursor#96 (byte*) line_cursor#13 ← (byte*) line_cursor#35 return to:@return -multiply_results_compare::@6: scope:[multiply_results_compare] from multiply_results_compare::@3 - (byte*) BGCOL#24 ← phi( multiply_results_compare::@3/(byte*) BGCOL#19 ) - (byte*) line_cursor#71 ← phi( multiply_results_compare::@3/(byte*) line_cursor#80 ) - (byte*) char_cursor#148 ← phi( multiply_results_compare::@3/(byte*) char_cursor#155 ) - (byte) multiply_results_compare::a#5 ← phi( multiply_results_compare::@3/(byte) multiply_results_compare::a#7 ) - (byte) multiply_results_compare::a#1 ← ++ (byte) multiply_results_compare::a#5 - (boolean~) multiply_results_compare::$6 ← (byte) multiply_results_compare::a#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - if((boolean~) multiply_results_compare::$6) goto multiply_results_compare::@1 - to:multiply_results_compare::@7 -multiply_results_compare::@7: scope:[multiply_results_compare] from multiply_results_compare::@6 - (byte*) line_cursor#61 ← phi( multiply_results_compare::@6/(byte*) line_cursor#71 ) - (byte*) char_cursor#135 ← phi( multiply_results_compare::@6/(byte*) char_cursor#148 ) - (byte*) print_str::str#4 ← (const string) multiply_results_compare::str +mul8u_slowfast_compare::@10: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@5 + (byte*) BGCOL#33 ← phi( mul8u_slowfast_compare::@5/(byte*) BGCOL#31 ) + (byte*) line_cursor#72 ← phi( mul8u_slowfast_compare::@5/(byte*) line_cursor#82 ) + (byte*) char_cursor#152 ← phi( mul8u_slowfast_compare::@5/(byte*) char_cursor#160 ) + (byte) mul8u_slowfast_compare::a#6 ← phi( mul8u_slowfast_compare::@5/(byte) mul8u_slowfast_compare::a#8 ) + (byte) mul8u_slowfast_compare::a#1 ← ++ (byte) mul8u_slowfast_compare::a#6 + (boolean~) mul8u_slowfast_compare::$11 ← (byte) mul8u_slowfast_compare::a#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + if((boolean~) mul8u_slowfast_compare::$11) goto mul8u_slowfast_compare::@1 + to:mul8u_slowfast_compare::@11 +mul8u_slowfast_compare::@11: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@10 + (byte*) line_cursor#61 ← phi( mul8u_slowfast_compare::@10/(byte*) line_cursor#72 ) + (byte*) char_cursor#139 ← phi( mul8u_slowfast_compare::@10/(byte*) char_cursor#152 ) + (byte*) print_str::str#4 ← (const string) mul8u_slowfast_compare::str call print_str param-assignment - to:multiply_results_compare::@11 -multiply_results_compare::@11: scope:[multiply_results_compare] from multiply_results_compare::@7 - (byte*) line_cursor#51 ← phi( multiply_results_compare::@7/(byte*) line_cursor#61 ) - (byte*) char_cursor#95 ← phi( multiply_results_compare::@7/(byte*) char_cursor#2 ) - (byte*) char_cursor#35 ← (byte*) char_cursor#95 + to:mul8u_slowfast_compare::@16 +mul8u_slowfast_compare::@16: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@11 + (byte*) line_cursor#51 ← phi( mul8u_slowfast_compare::@11/(byte*) line_cursor#61 ) + (byte*) char_cursor#97 ← phi( mul8u_slowfast_compare::@11/(byte*) char_cursor#2 ) + (byte*) char_cursor#35 ← (byte*) char_cursor#97 call print_ln param-assignment - to:multiply_results_compare::@12 -multiply_results_compare::@12: scope:[multiply_results_compare] from multiply_results_compare::@11 - (byte*) char_cursor#96 ← phi( multiply_results_compare::@11/(byte*) char_cursor#4 ) - (byte*) line_cursor#36 ← phi( multiply_results_compare::@11/(byte*) line_cursor#2 ) + to:mul8u_slowfast_compare::@17 +mul8u_slowfast_compare::@17: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@16 + (byte*) char_cursor#98 ← phi( mul8u_slowfast_compare::@16/(byte*) char_cursor#4 ) + (byte*) line_cursor#36 ← phi( mul8u_slowfast_compare::@16/(byte*) line_cursor#2 ) (byte*) line_cursor#14 ← (byte*) line_cursor#36 - (byte*) char_cursor#36 ← (byte*) char_cursor#96 - to:multiply_results_compare::@return -multiply_error: scope:[multiply_error] from multiply_results_compare::@4 - (byte*) line_cursor#99 ← phi( multiply_results_compare::@4/(byte*) line_cursor#50 ) - (word) multiply_error::ma#8 ← phi( multiply_results_compare::@4/(word) multiply_error::ma#0 ) - (word) multiply_error::ms#6 ← phi( multiply_results_compare::@4/(word) multiply_error::ms#0 ) - (byte) multiply_error::b#4 ← phi( multiply_results_compare::@4/(byte) multiply_error::b#0 ) - (byte) multiply_error::a#2 ← phi( multiply_results_compare::@4/(byte) multiply_error::a#0 ) - (byte*) char_cursor#136 ← phi( multiply_results_compare::@4/(byte*) char_cursor#134 ) + (byte*) char_cursor#36 ← (byte*) char_cursor#98 + to:mul8u_slowfast_compare::@return +multiply_error: scope:[multiply_error] from mul8u_slowfast_compare::@8 + (byte*) line_cursor#107 ← phi( mul8u_slowfast_compare::@8/(byte*) line_cursor#50 ) + (word) multiply_error::mf#10 ← phi( mul8u_slowfast_compare::@8/(word) multiply_error::mf#0 ) + (word) multiply_error::mn#8 ← phi( mul8u_slowfast_compare::@8/(word) multiply_error::mn#0 ) + (word) multiply_error::ms#6 ← phi( mul8u_slowfast_compare::@8/(word) multiply_error::ms#0 ) + (byte) multiply_error::b#4 ← phi( mul8u_slowfast_compare::@8/(byte) multiply_error::b#0 ) + (byte) multiply_error::a#2 ← phi( mul8u_slowfast_compare::@8/(byte) multiply_error::a#0 ) + (byte*) char_cursor#140 ← phi( mul8u_slowfast_compare::@8/(byte*) char_cursor#138 ) (byte*) print_str::str#5 ← (const string) multiply_error::str call print_str param-assignment to:multiply_error::@1 multiply_error::@1: scope:[multiply_error] from multiply_error - (byte*) line_cursor#97 ← phi( multiply_error/(byte*) line_cursor#99 ) - (word) multiply_error::ma#7 ← phi( multiply_error/(word) multiply_error::ma#8 ) + (byte*) line_cursor#106 ← phi( multiply_error/(byte*) line_cursor#107 ) + (word) multiply_error::mf#9 ← phi( multiply_error/(word) multiply_error::mf#10 ) + (word) multiply_error::mn#7 ← phi( multiply_error/(word) multiply_error::mn#8 ) (word) multiply_error::ms#5 ← phi( multiply_error/(word) multiply_error::ms#6 ) (byte) multiply_error::b#3 ← phi( multiply_error/(byte) multiply_error::b#4 ) (byte) multiply_error::a#1 ← phi( multiply_error/(byte) multiply_error::a#2 ) - (byte*) char_cursor#97 ← phi( multiply_error/(byte*) char_cursor#2 ) - (byte*) char_cursor#37 ← (byte*) char_cursor#97 + (byte*) char_cursor#99 ← phi( multiply_error/(byte*) char_cursor#2 ) + (byte*) char_cursor#37 ← (byte*) char_cursor#99 (byte) print_byte::b#3 ← (byte) multiply_error::a#1 call print_byte param-assignment to:multiply_error::@2 multiply_error::@2: scope:[multiply_error] from multiply_error::@1 - (byte*) line_cursor#95 ← phi( multiply_error::@1/(byte*) line_cursor#97 ) - (word) multiply_error::ma#6 ← phi( multiply_error::@1/(word) multiply_error::ma#7 ) + (byte*) line_cursor#104 ← phi( multiply_error::@1/(byte*) line_cursor#106 ) + (word) multiply_error::mf#8 ← phi( multiply_error::@1/(word) multiply_error::mf#9 ) + (word) multiply_error::mn#6 ← phi( multiply_error::@1/(word) multiply_error::mn#7 ) (word) multiply_error::ms#4 ← phi( multiply_error::@1/(word) multiply_error::ms#5 ) (byte) multiply_error::b#2 ← phi( multiply_error::@1/(byte) multiply_error::b#3 ) - (byte*) char_cursor#98 ← phi( multiply_error::@1/(byte*) char_cursor#16 ) - (byte*) char_cursor#38 ← (byte*) char_cursor#98 + (byte*) char_cursor#100 ← phi( multiply_error::@1/(byte*) char_cursor#16 ) + (byte*) char_cursor#38 ← (byte*) char_cursor#100 (byte*) print_str::str#6 ← (const string) multiply_error::str1 call print_str param-assignment to:multiply_error::@3 multiply_error::@3: scope:[multiply_error] from multiply_error::@2 - (byte*) line_cursor#92 ← phi( multiply_error::@2/(byte*) line_cursor#95 ) - (word) multiply_error::ma#5 ← phi( multiply_error::@2/(word) multiply_error::ma#6 ) + (byte*) line_cursor#101 ← phi( multiply_error::@2/(byte*) line_cursor#104 ) + (word) multiply_error::mf#7 ← phi( multiply_error::@2/(word) multiply_error::mf#8 ) + (word) multiply_error::mn#5 ← phi( multiply_error::@2/(word) multiply_error::mn#6 ) (word) multiply_error::ms#3 ← phi( multiply_error::@2/(word) multiply_error::ms#4 ) (byte) multiply_error::b#1 ← phi( multiply_error::@2/(byte) multiply_error::b#2 ) - (byte*) char_cursor#99 ← phi( multiply_error::@2/(byte*) char_cursor#2 ) - (byte*) char_cursor#39 ← (byte*) char_cursor#99 + (byte*) char_cursor#101 ← phi( multiply_error::@2/(byte*) char_cursor#2 ) + (byte*) char_cursor#39 ← (byte*) char_cursor#101 (byte) print_byte::b#4 ← (byte) multiply_error::b#1 call print_byte param-assignment to:multiply_error::@4 multiply_error::@4: scope:[multiply_error] from multiply_error::@3 - (byte*) line_cursor#88 ← phi( multiply_error::@3/(byte*) line_cursor#92 ) - (word) multiply_error::ma#4 ← phi( multiply_error::@3/(word) multiply_error::ma#5 ) + (byte*) line_cursor#98 ← phi( multiply_error::@3/(byte*) line_cursor#101 ) + (word) multiply_error::mf#6 ← phi( multiply_error::@3/(word) multiply_error::mf#7 ) + (word) multiply_error::mn#4 ← phi( multiply_error::@3/(word) multiply_error::mn#5 ) (word) multiply_error::ms#2 ← phi( multiply_error::@3/(word) multiply_error::ms#3 ) - (byte*) char_cursor#100 ← phi( multiply_error::@3/(byte*) char_cursor#16 ) - (byte*) char_cursor#40 ← (byte*) char_cursor#100 + (byte*) char_cursor#102 ← phi( multiply_error::@3/(byte*) char_cursor#16 ) + (byte*) char_cursor#40 ← (byte*) char_cursor#102 (byte*) print_str::str#7 ← (const string) multiply_error::str2 call print_str param-assignment to:multiply_error::@5 multiply_error::@5: scope:[multiply_error] from multiply_error::@4 - (byte*) line_cursor#81 ← phi( multiply_error::@4/(byte*) line_cursor#88 ) - (word) multiply_error::ma#3 ← phi( multiply_error::@4/(word) multiply_error::ma#4 ) + (byte*) line_cursor#94 ← phi( multiply_error::@4/(byte*) line_cursor#98 ) + (word) multiply_error::mf#5 ← phi( multiply_error::@4/(word) multiply_error::mf#6 ) + (word) multiply_error::mn#3 ← phi( multiply_error::@4/(word) multiply_error::mn#4 ) (word) multiply_error::ms#1 ← phi( multiply_error::@4/(word) multiply_error::ms#2 ) - (byte*) char_cursor#101 ← phi( multiply_error::@4/(byte*) char_cursor#2 ) - (byte*) char_cursor#41 ← (byte*) char_cursor#101 + (byte*) char_cursor#103 ← phi( multiply_error::@4/(byte*) char_cursor#2 ) + (byte*) char_cursor#41 ← (byte*) char_cursor#103 (word) print_word::w#3 ← (word) multiply_error::ms#1 call print_word param-assignment to:multiply_error::@6 multiply_error::@6: scope:[multiply_error] from multiply_error::@5 - (byte*) line_cursor#72 ← phi( multiply_error::@5/(byte*) line_cursor#81 ) - (word) multiply_error::ma#2 ← phi( multiply_error::@5/(word) multiply_error::ma#3 ) - (byte*) char_cursor#102 ← phi( multiply_error::@5/(byte*) char_cursor#13 ) - (byte*) char_cursor#42 ← (byte*) char_cursor#102 + (byte*) line_cursor#90 ← phi( multiply_error::@5/(byte*) line_cursor#94 ) + (word) multiply_error::mf#4 ← phi( multiply_error::@5/(word) multiply_error::mf#5 ) + (word) multiply_error::mn#2 ← phi( multiply_error::@5/(word) multiply_error::mn#3 ) + (byte*) char_cursor#104 ← phi( multiply_error::@5/(byte*) char_cursor#13 ) + (byte*) char_cursor#42 ← (byte*) char_cursor#104 (byte*) print_str::str#8 ← (const string) multiply_error::str3 call print_str param-assignment to:multiply_error::@7 multiply_error::@7: scope:[multiply_error] from multiply_error::@6 - (byte*) line_cursor#62 ← phi( multiply_error::@6/(byte*) line_cursor#72 ) - (word) multiply_error::ma#1 ← phi( multiply_error::@6/(word) multiply_error::ma#2 ) - (byte*) char_cursor#103 ← phi( multiply_error::@6/(byte*) char_cursor#2 ) - (byte*) char_cursor#43 ← (byte*) char_cursor#103 - (word) print_word::w#4 ← (word) multiply_error::ma#1 + (byte*) line_cursor#83 ← phi( multiply_error::@6/(byte*) line_cursor#90 ) + (word) multiply_error::mf#3 ← phi( multiply_error::@6/(word) multiply_error::mf#4 ) + (word) multiply_error::mn#1 ← phi( multiply_error::@6/(word) multiply_error::mn#2 ) + (byte*) char_cursor#105 ← phi( multiply_error::@6/(byte*) char_cursor#2 ) + (byte*) char_cursor#43 ← (byte*) char_cursor#105 + (word) print_word::w#4 ← (word) multiply_error::mn#1 call print_word param-assignment to:multiply_error::@8 multiply_error::@8: scope:[multiply_error] from multiply_error::@7 - (byte*) line_cursor#52 ← phi( multiply_error::@7/(byte*) line_cursor#62 ) - (byte*) char_cursor#104 ← phi( multiply_error::@7/(byte*) char_cursor#13 ) - (byte*) char_cursor#44 ← (byte*) char_cursor#104 - call print_ln param-assignment + (byte*) line_cursor#73 ← phi( multiply_error::@7/(byte*) line_cursor#83 ) + (word) multiply_error::mf#2 ← phi( multiply_error::@7/(word) multiply_error::mf#3 ) + (byte*) char_cursor#106 ← phi( multiply_error::@7/(byte*) char_cursor#13 ) + (byte*) char_cursor#44 ← (byte*) char_cursor#106 + (byte*) print_str::str#9 ← (const string) multiply_error::str4 + call print_str param-assignment to:multiply_error::@9 multiply_error::@9: scope:[multiply_error] from multiply_error::@8 - (byte*) char_cursor#105 ← phi( multiply_error::@8/(byte*) char_cursor#4 ) - (byte*) line_cursor#37 ← phi( multiply_error::@8/(byte*) line_cursor#2 ) + (byte*) line_cursor#62 ← phi( multiply_error::@8/(byte*) line_cursor#73 ) + (word) multiply_error::mf#1 ← phi( multiply_error::@8/(word) multiply_error::mf#2 ) + (byte*) char_cursor#107 ← phi( multiply_error::@8/(byte*) char_cursor#2 ) + (byte*) char_cursor#45 ← (byte*) char_cursor#107 + (word) print_word::w#5 ← (word) multiply_error::mf#1 + call print_word param-assignment + to:multiply_error::@10 +multiply_error::@10: scope:[multiply_error] from multiply_error::@9 + (byte*) line_cursor#52 ← phi( multiply_error::@9/(byte*) line_cursor#62 ) + (byte*) char_cursor#108 ← phi( multiply_error::@9/(byte*) char_cursor#13 ) + (byte*) char_cursor#46 ← (byte*) char_cursor#108 + call print_ln param-assignment + to:multiply_error::@11 +multiply_error::@11: scope:[multiply_error] from multiply_error::@10 + (byte*) char_cursor#109 ← phi( multiply_error::@10/(byte*) char_cursor#4 ) + (byte*) line_cursor#37 ← phi( multiply_error::@10/(byte*) line_cursor#2 ) (byte*) line_cursor#15 ← (byte*) line_cursor#37 - (byte*) char_cursor#45 ← (byte*) char_cursor#105 + (byte*) char_cursor#47 ← (byte*) char_cursor#109 to:multiply_error::@return -multiply_error::@return: scope:[multiply_error] from multiply_error::@9 - (byte*) line_cursor#38 ← phi( multiply_error::@9/(byte*) line_cursor#15 ) - (byte*) char_cursor#106 ← phi( multiply_error::@9/(byte*) char_cursor#45 ) - (byte*) char_cursor#46 ← (byte*) char_cursor#106 +multiply_error::@return: scope:[multiply_error] from multiply_error::@11 + (byte*) line_cursor#38 ← phi( multiply_error::@11/(byte*) line_cursor#15 ) + (byte*) char_cursor#110 ← phi( multiply_error::@11/(byte*) char_cursor#47 ) + (byte*) char_cursor#48 ← (byte*) char_cursor#110 (byte*) line_cursor#16 ← (byte*) line_cursor#38 return to:@return -signed_multiply_results_compare: scope:[signed_multiply_results_compare] from main::@5 - (byte*) line_cursor#93 ← phi( main::@5/(byte*) line_cursor#7 ) - (byte*) char_cursor#164 ← phi( main::@5/(byte*) char_cursor#23 ) +mul8s_slowfast_compare: scope:[mul8s_slowfast_compare] from main::@5 + (byte*) line_cursor#95 ← phi( main::@5/(byte*) line_cursor#7 ) + (byte*) char_cursor#170 ← phi( main::@5/(byte*) char_cursor#23 ) (byte*) BGCOL#25 ← phi( main::@5/(byte*) BGCOL#28 ) - (signed byte/signed word/signed dword~) signed_multiply_results_compare::$0 ← - (byte/word/signed word/dword/signed dword) 128 - (signed byte) signed_multiply_results_compare::a#0 ← (signed byte/signed word/signed dword~) signed_multiply_results_compare::$0 - to:signed_multiply_results_compare::@1 -signed_multiply_results_compare::@1: scope:[signed_multiply_results_compare] from signed_multiply_results_compare signed_multiply_results_compare::@6 - (byte*) line_cursor#89 ← phi( signed_multiply_results_compare/(byte*) line_cursor#93 signed_multiply_results_compare::@6/(byte*) line_cursor#74 ) - (byte*) char_cursor#162 ← phi( signed_multiply_results_compare/(byte*) char_cursor#164 signed_multiply_results_compare::@6/(byte*) char_cursor#150 ) - (byte*) BGCOL#20 ← phi( signed_multiply_results_compare/(byte*) BGCOL#25 signed_multiply_results_compare::@6/(byte*) BGCOL#26 ) - (signed byte) signed_multiply_results_compare::a#6 ← phi( signed_multiply_results_compare/(signed byte) signed_multiply_results_compare::a#0 signed_multiply_results_compare::@6/(signed byte) signed_multiply_results_compare::a#1 ) - (signed byte/signed word/signed dword~) signed_multiply_results_compare::$1 ← - (byte/word/signed word/dword/signed dword) 128 - (signed byte) signed_multiply_results_compare::b#0 ← (signed byte/signed word/signed dword~) signed_multiply_results_compare::$1 - to:signed_multiply_results_compare::@2 -signed_multiply_results_compare::@2: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@1 signed_multiply_results_compare::@3 - (byte*) line_cursor#82 ← phi( signed_multiply_results_compare::@1/(byte*) line_cursor#89 signed_multiply_results_compare::@3/(byte*) line_cursor#83 ) - (byte*) char_cursor#160 ← phi( signed_multiply_results_compare::@1/(byte*) char_cursor#162 signed_multiply_results_compare::@3/(byte*) char_cursor#157 ) - (byte*) BGCOL#16 ← phi( signed_multiply_results_compare::@1/(byte*) BGCOL#20 signed_multiply_results_compare::@3/(byte*) BGCOL#21 ) - (signed byte) signed_multiply_results_compare::b#2 ← phi( signed_multiply_results_compare::@1/(signed byte) signed_multiply_results_compare::b#0 signed_multiply_results_compare::@3/(signed byte) signed_multiply_results_compare::b#1 ) - (signed byte) signed_multiply_results_compare::a#2 ← phi( signed_multiply_results_compare::@1/(signed byte) signed_multiply_results_compare::a#6 signed_multiply_results_compare::@3/(signed byte) signed_multiply_results_compare::a#7 ) - (signed byte) muls8s::a#0 ← (signed byte) signed_multiply_results_compare::a#2 - (signed byte) muls8s::b#0 ← (signed byte) signed_multiply_results_compare::b#2 + (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$0 ← - (byte/word/signed word/dword/signed dword) 128 + (signed byte) mul8s_slowfast_compare::a#0 ← (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$0 + to:mul8s_slowfast_compare::@1 +mul8s_slowfast_compare::@1: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare mul8s_slowfast_compare::@6 + (byte*) line_cursor#91 ← phi( mul8s_slowfast_compare/(byte*) line_cursor#95 mul8s_slowfast_compare::@6/(byte*) line_cursor#75 ) + (byte*) char_cursor#168 ← phi( mul8s_slowfast_compare/(byte*) char_cursor#170 mul8s_slowfast_compare::@6/(byte*) char_cursor#154 ) + (byte*) BGCOL#21 ← phi( mul8s_slowfast_compare/(byte*) BGCOL#25 mul8s_slowfast_compare::@6/(byte*) BGCOL#26 ) + (signed byte) mul8s_slowfast_compare::a#6 ← phi( mul8s_slowfast_compare/(signed byte) mul8s_slowfast_compare::a#0 mul8s_slowfast_compare::@6/(signed byte) mul8s_slowfast_compare::a#1 ) + (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$1 ← - (byte/word/signed word/dword/signed dword) 128 + (signed byte) mul8s_slowfast_compare::b#0 ← (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$1 + to:mul8s_slowfast_compare::@2 +mul8s_slowfast_compare::@2: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@3 + (byte*) line_cursor#84 ← phi( mul8s_slowfast_compare::@1/(byte*) line_cursor#91 mul8s_slowfast_compare::@3/(byte*) line_cursor#85 ) + (byte*) char_cursor#166 ← phi( mul8s_slowfast_compare::@1/(byte*) char_cursor#168 mul8s_slowfast_compare::@3/(byte*) char_cursor#162 ) + (byte*) BGCOL#18 ← phi( mul8s_slowfast_compare::@1/(byte*) BGCOL#21 mul8s_slowfast_compare::@3/(byte*) BGCOL#22 ) + (signed byte) mul8s_slowfast_compare::b#2 ← phi( mul8s_slowfast_compare::@1/(signed byte) mul8s_slowfast_compare::b#0 mul8s_slowfast_compare::@3/(signed byte) mul8s_slowfast_compare::b#1 ) + (signed byte) mul8s_slowfast_compare::a#2 ← phi( mul8s_slowfast_compare::@1/(signed byte) mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::@3/(signed byte) mul8s_slowfast_compare::a#7 ) + (signed byte) muls8s::a#0 ← (signed byte) mul8s_slowfast_compare::a#2 + (signed byte) muls8s::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 call muls8s param-assignment (signed word) muls8s::return#2 ← (signed word) muls8s::return#1 - to:signed_multiply_results_compare::@8 -signed_multiply_results_compare::@8: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@2 - (byte*) line_cursor#73 ← phi( signed_multiply_results_compare::@2/(byte*) line_cursor#82 ) - (byte*) char_cursor#156 ← phi( signed_multiply_results_compare::@2/(byte*) char_cursor#160 ) - (byte*) BGCOL#12 ← phi( signed_multiply_results_compare::@2/(byte*) BGCOL#16 ) - (signed byte) signed_multiply_results_compare::b#3 ← phi( signed_multiply_results_compare::@2/(signed byte) signed_multiply_results_compare::b#2 ) - (signed byte) signed_multiply_results_compare::a#3 ← phi( signed_multiply_results_compare::@2/(signed byte) signed_multiply_results_compare::a#2 ) - (signed word) muls8s::return#4 ← phi( signed_multiply_results_compare::@2/(signed word) muls8s::return#2 ) - (signed word~) signed_multiply_results_compare::$2 ← (signed word) muls8s::return#4 - (signed word) signed_multiply_results_compare::ms#0 ← (signed word~) signed_multiply_results_compare::$2 - (signed byte) mulf8s::a#0 ← (signed byte) signed_multiply_results_compare::a#3 - (signed byte) mulf8s::b#0 ← (signed byte) signed_multiply_results_compare::b#3 + to:mul8s_slowfast_compare::@8 +mul8s_slowfast_compare::@8: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@2 + (byte*) line_cursor#74 ← phi( mul8s_slowfast_compare::@2/(byte*) line_cursor#84 ) + (byte*) char_cursor#161 ← phi( mul8s_slowfast_compare::@2/(byte*) char_cursor#166 ) + (byte*) BGCOL#13 ← phi( mul8s_slowfast_compare::@2/(byte*) BGCOL#18 ) + (signed byte) mul8s_slowfast_compare::b#3 ← phi( mul8s_slowfast_compare::@2/(signed byte) mul8s_slowfast_compare::b#2 ) + (signed byte) mul8s_slowfast_compare::a#3 ← phi( mul8s_slowfast_compare::@2/(signed byte) mul8s_slowfast_compare::a#2 ) + (signed word) muls8s::return#4 ← phi( mul8s_slowfast_compare::@2/(signed word) muls8s::return#2 ) + (signed word~) mul8s_slowfast_compare::$2 ← (signed word) muls8s::return#4 + (signed word) mul8s_slowfast_compare::ms#0 ← (signed word~) mul8s_slowfast_compare::$2 + (signed byte) mulf8s::a#0 ← (signed byte) mul8s_slowfast_compare::a#3 + (signed byte) mulf8s::b#0 ← (signed byte) mul8s_slowfast_compare::b#3 call mulf8s param-assignment (signed word) mulf8s::return#2 ← (signed word) mulf8s::return#1 - to:signed_multiply_results_compare::@9 -signed_multiply_results_compare::@9: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@8 - (byte*) line_cursor#63 ← phi( signed_multiply_results_compare::@8/(byte*) line_cursor#73 ) - (byte*) char_cursor#149 ← phi( signed_multiply_results_compare::@8/(byte*) char_cursor#156 ) - (signed byte) signed_multiply_results_compare::a#8 ← phi( signed_multiply_results_compare::@8/(signed byte) signed_multiply_results_compare::a#3 ) - (byte*) BGCOL#8 ← phi( signed_multiply_results_compare::@8/(byte*) BGCOL#12 ) - (signed byte) signed_multiply_results_compare::b#6 ← phi( signed_multiply_results_compare::@8/(signed byte) signed_multiply_results_compare::b#3 ) - (signed word) signed_multiply_results_compare::ms#1 ← phi( signed_multiply_results_compare::@8/(signed word) signed_multiply_results_compare::ms#0 ) - (signed word) mulf8s::return#4 ← phi( signed_multiply_results_compare::@8/(signed word) mulf8s::return#2 ) - (signed word~) signed_multiply_results_compare::$3 ← (signed word) mulf8s::return#4 - (signed word) signed_multiply_results_compare::ma#0 ← (signed word~) signed_multiply_results_compare::$3 - (boolean~) signed_multiply_results_compare::$4 ← (signed word) signed_multiply_results_compare::ms#1 != (signed word) signed_multiply_results_compare::ma#0 - (boolean~) signed_multiply_results_compare::$5 ← ! (boolean~) signed_multiply_results_compare::$4 - if((boolean~) signed_multiply_results_compare::$5) goto signed_multiply_results_compare::@3 - to:signed_multiply_results_compare::@4 -signed_multiply_results_compare::@3: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@9 - (byte*) line_cursor#83 ← phi( signed_multiply_results_compare::@9/(byte*) line_cursor#63 ) - (byte*) BGCOL#21 ← phi( signed_multiply_results_compare::@9/(byte*) BGCOL#8 ) - (byte*) char_cursor#157 ← phi( signed_multiply_results_compare::@9/(byte*) char_cursor#149 ) - (signed byte) signed_multiply_results_compare::a#7 ← phi( signed_multiply_results_compare::@9/(signed byte) signed_multiply_results_compare::a#8 ) - (signed byte) signed_multiply_results_compare::b#4 ← phi( signed_multiply_results_compare::@9/(signed byte) signed_multiply_results_compare::b#6 ) - (signed byte) signed_multiply_results_compare::b#1 ← ++ (signed byte) signed_multiply_results_compare::b#4 - (signed byte/signed word/signed dword~) signed_multiply_results_compare::$7 ← - (byte/word/signed word/dword/signed dword) 128 - (boolean~) signed_multiply_results_compare::$8 ← (signed byte) signed_multiply_results_compare::b#1 != (signed byte/signed word/signed dword~) signed_multiply_results_compare::$7 - if((boolean~) signed_multiply_results_compare::$8) goto signed_multiply_results_compare::@2 - to:signed_multiply_results_compare::@6 -signed_multiply_results_compare::@4: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@9 - (byte*) line_cursor#53 ← phi( signed_multiply_results_compare::@9/(byte*) line_cursor#63 ) - (byte*) char_cursor#137 ← phi( signed_multiply_results_compare::@9/(byte*) char_cursor#149 ) - (signed word) signed_multiply_results_compare::ma#1 ← phi( signed_multiply_results_compare::@9/(signed word) signed_multiply_results_compare::ma#0 ) - (signed word) signed_multiply_results_compare::ms#2 ← phi( signed_multiply_results_compare::@9/(signed word) signed_multiply_results_compare::ms#1 ) - (signed byte) signed_multiply_results_compare::b#5 ← phi( signed_multiply_results_compare::@9/(signed byte) signed_multiply_results_compare::b#6 ) - (signed byte) signed_multiply_results_compare::a#4 ← phi( signed_multiply_results_compare::@9/(signed byte) signed_multiply_results_compare::a#8 ) - (byte*) BGCOL#4 ← phi( signed_multiply_results_compare::@9/(byte*) BGCOL#8 ) + to:mul8s_slowfast_compare::@9 +mul8s_slowfast_compare::@9: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@8 + (byte*) line_cursor#63 ← phi( mul8s_slowfast_compare::@8/(byte*) line_cursor#74 ) + (byte*) char_cursor#153 ← phi( mul8s_slowfast_compare::@8/(byte*) char_cursor#161 ) + (signed byte) mul8s_slowfast_compare::a#8 ← phi( mul8s_slowfast_compare::@8/(signed byte) mul8s_slowfast_compare::a#3 ) + (byte*) BGCOL#8 ← phi( mul8s_slowfast_compare::@8/(byte*) BGCOL#13 ) + (signed byte) mul8s_slowfast_compare::b#6 ← phi( mul8s_slowfast_compare::@8/(signed byte) mul8s_slowfast_compare::b#3 ) + (signed word) mul8s_slowfast_compare::ms#1 ← phi( mul8s_slowfast_compare::@8/(signed word) mul8s_slowfast_compare::ms#0 ) + (signed word) mulf8s::return#4 ← phi( mul8s_slowfast_compare::@8/(signed word) mulf8s::return#2 ) + (signed word~) mul8s_slowfast_compare::$3 ← (signed word) mulf8s::return#4 + (signed word) mul8s_slowfast_compare::ma#0 ← (signed word~) mul8s_slowfast_compare::$3 + (boolean~) mul8s_slowfast_compare::$4 ← (signed word) mul8s_slowfast_compare::ms#1 != (signed word) mul8s_slowfast_compare::ma#0 + (boolean~) mul8s_slowfast_compare::$5 ← ! (boolean~) mul8s_slowfast_compare::$4 + if((boolean~) mul8s_slowfast_compare::$5) goto mul8s_slowfast_compare::@3 + to:mul8s_slowfast_compare::@4 +mul8s_slowfast_compare::@3: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@9 + (byte*) line_cursor#85 ← phi( mul8s_slowfast_compare::@9/(byte*) line_cursor#63 ) + (byte*) BGCOL#22 ← phi( mul8s_slowfast_compare::@9/(byte*) BGCOL#8 ) + (byte*) char_cursor#162 ← phi( mul8s_slowfast_compare::@9/(byte*) char_cursor#153 ) + (signed byte) mul8s_slowfast_compare::a#7 ← phi( mul8s_slowfast_compare::@9/(signed byte) mul8s_slowfast_compare::a#8 ) + (signed byte) mul8s_slowfast_compare::b#4 ← phi( mul8s_slowfast_compare::@9/(signed byte) mul8s_slowfast_compare::b#6 ) + (signed byte) mul8s_slowfast_compare::b#1 ← ++ (signed byte) mul8s_slowfast_compare::b#4 + (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$7 ← - (byte/word/signed word/dword/signed dword) 128 + (boolean~) mul8s_slowfast_compare::$8 ← (signed byte) mul8s_slowfast_compare::b#1 != (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$7 + if((boolean~) mul8s_slowfast_compare::$8) goto mul8s_slowfast_compare::@2 + to:mul8s_slowfast_compare::@6 +mul8s_slowfast_compare::@4: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@9 + (byte*) line_cursor#53 ← phi( mul8s_slowfast_compare::@9/(byte*) line_cursor#63 ) + (byte*) char_cursor#141 ← phi( mul8s_slowfast_compare::@9/(byte*) char_cursor#153 ) + (signed word) mul8s_slowfast_compare::ma#1 ← phi( mul8s_slowfast_compare::@9/(signed word) mul8s_slowfast_compare::ma#0 ) + (signed word) mul8s_slowfast_compare::ms#2 ← phi( mul8s_slowfast_compare::@9/(signed word) mul8s_slowfast_compare::ms#1 ) + (signed byte) mul8s_slowfast_compare::b#5 ← phi( mul8s_slowfast_compare::@9/(signed byte) mul8s_slowfast_compare::b#6 ) + (signed byte) mul8s_slowfast_compare::a#4 ← phi( mul8s_slowfast_compare::@9/(signed byte) mul8s_slowfast_compare::a#8 ) + (byte*) BGCOL#4 ← phi( mul8s_slowfast_compare::@9/(byte*) BGCOL#8 ) *((byte*) BGCOL#4) ← (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed byte) signed_multiply_error::a#0 ← (signed byte) signed_multiply_results_compare::a#4 - (signed byte) signed_multiply_error::b#0 ← (signed byte) signed_multiply_results_compare::b#5 - (signed word) signed_multiply_error::ms#0 ← (signed word) signed_multiply_results_compare::ms#2 - (signed word) signed_multiply_error::ma#0 ← (signed word) signed_multiply_results_compare::ma#1 + (signed byte) signed_multiply_error::a#0 ← (signed byte) mul8s_slowfast_compare::a#4 + (signed byte) signed_multiply_error::b#0 ← (signed byte) mul8s_slowfast_compare::b#5 + (signed word) signed_multiply_error::ms#0 ← (signed word) mul8s_slowfast_compare::ms#2 + (signed word) signed_multiply_error::ma#0 ← (signed word) mul8s_slowfast_compare::ma#1 call signed_multiply_error param-assignment - to:signed_multiply_results_compare::@10 -signed_multiply_results_compare::@10: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@4 - (byte*) line_cursor#39 ← phi( signed_multiply_results_compare::@4/(byte*) line_cursor#21 ) - (byte*) char_cursor#107 ← phi( signed_multiply_results_compare::@4/(byte*) char_cursor#60 ) - (byte*) char_cursor#47 ← (byte*) char_cursor#107 + to:mul8s_slowfast_compare::@10 +mul8s_slowfast_compare::@10: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@4 + (byte*) line_cursor#39 ← phi( mul8s_slowfast_compare::@4/(byte*) line_cursor#21 ) + (byte*) char_cursor#111 ← phi( mul8s_slowfast_compare::@4/(byte*) char_cursor#62 ) + (byte*) char_cursor#49 ← (byte*) char_cursor#111 (byte*) line_cursor#17 ← (byte*) line_cursor#39 - to:signed_multiply_results_compare::@return -signed_multiply_results_compare::@return: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@10 signed_multiply_results_compare::@12 - (byte*) line_cursor#40 ← phi( signed_multiply_results_compare::@10/(byte*) line_cursor#17 signed_multiply_results_compare::@12/(byte*) line_cursor#19 ) - (byte*) char_cursor#108 ← phi( signed_multiply_results_compare::@10/(byte*) char_cursor#47 signed_multiply_results_compare::@12/(byte*) char_cursor#50 ) - (byte*) char_cursor#48 ← (byte*) char_cursor#108 + to:mul8s_slowfast_compare::@return +mul8s_slowfast_compare::@return: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@10 mul8s_slowfast_compare::@12 + (byte*) line_cursor#40 ← phi( mul8s_slowfast_compare::@10/(byte*) line_cursor#17 mul8s_slowfast_compare::@12/(byte*) line_cursor#19 ) + (byte*) char_cursor#112 ← phi( mul8s_slowfast_compare::@10/(byte*) char_cursor#49 mul8s_slowfast_compare::@12/(byte*) char_cursor#52 ) + (byte*) char_cursor#50 ← (byte*) char_cursor#112 (byte*) line_cursor#18 ← (byte*) line_cursor#40 return to:@return -signed_multiply_results_compare::@6: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@3 - (byte*) BGCOL#26 ← phi( signed_multiply_results_compare::@3/(byte*) BGCOL#21 ) - (byte*) line_cursor#74 ← phi( signed_multiply_results_compare::@3/(byte*) line_cursor#83 ) - (byte*) char_cursor#150 ← phi( signed_multiply_results_compare::@3/(byte*) char_cursor#157 ) - (signed byte) signed_multiply_results_compare::a#5 ← phi( signed_multiply_results_compare::@3/(signed byte) signed_multiply_results_compare::a#7 ) - (signed byte) signed_multiply_results_compare::a#1 ← ++ (signed byte) signed_multiply_results_compare::a#5 - (signed byte/signed word/signed dword~) signed_multiply_results_compare::$9 ← - (byte/word/signed word/dword/signed dword) 128 - (boolean~) signed_multiply_results_compare::$10 ← (signed byte) signed_multiply_results_compare::a#1 != (signed byte/signed word/signed dword~) signed_multiply_results_compare::$9 - if((boolean~) signed_multiply_results_compare::$10) goto signed_multiply_results_compare::@1 - to:signed_multiply_results_compare::@7 -signed_multiply_results_compare::@7: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@6 - (byte*) line_cursor#64 ← phi( signed_multiply_results_compare::@6/(byte*) line_cursor#74 ) - (byte*) char_cursor#138 ← phi( signed_multiply_results_compare::@6/(byte*) char_cursor#150 ) - (byte*) print_str::str#9 ← (const string) signed_multiply_results_compare::str +mul8s_slowfast_compare::@6: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@3 + (byte*) BGCOL#26 ← phi( mul8s_slowfast_compare::@3/(byte*) BGCOL#22 ) + (byte*) line_cursor#75 ← phi( mul8s_slowfast_compare::@3/(byte*) line_cursor#85 ) + (byte*) char_cursor#154 ← phi( mul8s_slowfast_compare::@3/(byte*) char_cursor#162 ) + (signed byte) mul8s_slowfast_compare::a#5 ← phi( mul8s_slowfast_compare::@3/(signed byte) mul8s_slowfast_compare::a#7 ) + (signed byte) mul8s_slowfast_compare::a#1 ← ++ (signed byte) mul8s_slowfast_compare::a#5 + (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$9 ← - (byte/word/signed word/dword/signed dword) 128 + (boolean~) mul8s_slowfast_compare::$10 ← (signed byte) mul8s_slowfast_compare::a#1 != (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$9 + if((boolean~) mul8s_slowfast_compare::$10) goto mul8s_slowfast_compare::@1 + to:mul8s_slowfast_compare::@7 +mul8s_slowfast_compare::@7: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@6 + (byte*) line_cursor#64 ← phi( mul8s_slowfast_compare::@6/(byte*) line_cursor#75 ) + (byte*) char_cursor#142 ← phi( mul8s_slowfast_compare::@6/(byte*) char_cursor#154 ) + (byte*) print_str::str#10 ← (const string) mul8s_slowfast_compare::str call print_str param-assignment - to:signed_multiply_results_compare::@11 -signed_multiply_results_compare::@11: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@7 - (byte*) line_cursor#54 ← phi( signed_multiply_results_compare::@7/(byte*) line_cursor#64 ) - (byte*) char_cursor#109 ← phi( signed_multiply_results_compare::@7/(byte*) char_cursor#2 ) - (byte*) char_cursor#49 ← (byte*) char_cursor#109 + to:mul8s_slowfast_compare::@11 +mul8s_slowfast_compare::@11: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@7 + (byte*) line_cursor#54 ← phi( mul8s_slowfast_compare::@7/(byte*) line_cursor#64 ) + (byte*) char_cursor#113 ← phi( mul8s_slowfast_compare::@7/(byte*) char_cursor#2 ) + (byte*) char_cursor#51 ← (byte*) char_cursor#113 call print_ln param-assignment - to:signed_multiply_results_compare::@12 -signed_multiply_results_compare::@12: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@11 - (byte*) char_cursor#110 ← phi( signed_multiply_results_compare::@11/(byte*) char_cursor#4 ) - (byte*) line_cursor#41 ← phi( signed_multiply_results_compare::@11/(byte*) line_cursor#2 ) + to:mul8s_slowfast_compare::@12 +mul8s_slowfast_compare::@12: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@11 + (byte*) char_cursor#114 ← phi( mul8s_slowfast_compare::@11/(byte*) char_cursor#4 ) + (byte*) line_cursor#41 ← phi( mul8s_slowfast_compare::@11/(byte*) line_cursor#2 ) (byte*) line_cursor#19 ← (byte*) line_cursor#41 - (byte*) char_cursor#50 ← (byte*) char_cursor#110 - to:signed_multiply_results_compare::@return -signed_multiply_error: scope:[signed_multiply_error] from signed_multiply_results_compare::@4 - (byte*) line_cursor#100 ← phi( signed_multiply_results_compare::@4/(byte*) line_cursor#53 ) - (signed word) signed_multiply_error::ma#8 ← phi( signed_multiply_results_compare::@4/(signed word) signed_multiply_error::ma#0 ) - (signed word) signed_multiply_error::ms#6 ← phi( signed_multiply_results_compare::@4/(signed word) signed_multiply_error::ms#0 ) - (signed byte) signed_multiply_error::b#4 ← phi( signed_multiply_results_compare::@4/(signed byte) signed_multiply_error::b#0 ) - (signed byte) signed_multiply_error::a#2 ← phi( signed_multiply_results_compare::@4/(signed byte) signed_multiply_error::a#0 ) - (byte*) char_cursor#139 ← phi( signed_multiply_results_compare::@4/(byte*) char_cursor#137 ) - (byte*) print_str::str#10 ← (const string) signed_multiply_error::str + (byte*) char_cursor#52 ← (byte*) char_cursor#114 + to:mul8s_slowfast_compare::@return +signed_multiply_error: scope:[signed_multiply_error] from mul8s_slowfast_compare::@4 + (byte*) line_cursor#105 ← phi( mul8s_slowfast_compare::@4/(byte*) line_cursor#53 ) + (signed word) signed_multiply_error::ma#8 ← phi( mul8s_slowfast_compare::@4/(signed word) signed_multiply_error::ma#0 ) + (signed word) signed_multiply_error::ms#6 ← phi( mul8s_slowfast_compare::@4/(signed word) signed_multiply_error::ms#0 ) + (signed byte) signed_multiply_error::b#4 ← phi( mul8s_slowfast_compare::@4/(signed byte) signed_multiply_error::b#0 ) + (signed byte) signed_multiply_error::a#2 ← phi( mul8s_slowfast_compare::@4/(signed byte) signed_multiply_error::a#0 ) + (byte*) char_cursor#143 ← phi( mul8s_slowfast_compare::@4/(byte*) char_cursor#141 ) + (byte*) print_str::str#11 ← (const string) signed_multiply_error::str call print_str param-assignment to:signed_multiply_error::@1 signed_multiply_error::@1: scope:[signed_multiply_error] from signed_multiply_error - (byte*) line_cursor#98 ← phi( signed_multiply_error/(byte*) line_cursor#100 ) + (byte*) line_cursor#102 ← phi( signed_multiply_error/(byte*) line_cursor#105 ) (signed word) signed_multiply_error::ma#7 ← phi( signed_multiply_error/(signed word) signed_multiply_error::ma#8 ) (signed word) signed_multiply_error::ms#5 ← phi( signed_multiply_error/(signed word) signed_multiply_error::ms#6 ) (signed byte) signed_multiply_error::b#3 ← phi( signed_multiply_error/(signed byte) signed_multiply_error::b#4 ) (signed byte) signed_multiply_error::a#1 ← phi( signed_multiply_error/(signed byte) signed_multiply_error::a#2 ) - (byte*) char_cursor#111 ← phi( signed_multiply_error/(byte*) char_cursor#2 ) - (byte*) char_cursor#51 ← (byte*) char_cursor#111 + (byte*) char_cursor#115 ← phi( signed_multiply_error/(byte*) char_cursor#2 ) + (byte*) char_cursor#53 ← (byte*) char_cursor#115 (signed byte) print_sbyte::b#1 ← (signed byte) signed_multiply_error::a#1 call print_sbyte param-assignment to:signed_multiply_error::@2 signed_multiply_error::@2: scope:[signed_multiply_error] from signed_multiply_error::@1 - (byte*) line_cursor#96 ← phi( signed_multiply_error::@1/(byte*) line_cursor#98 ) + (byte*) line_cursor#99 ← phi( signed_multiply_error::@1/(byte*) line_cursor#102 ) (signed word) signed_multiply_error::ma#6 ← phi( signed_multiply_error::@1/(signed word) signed_multiply_error::ma#7 ) (signed word) signed_multiply_error::ms#4 ← phi( signed_multiply_error::@1/(signed word) signed_multiply_error::ms#5 ) (signed byte) signed_multiply_error::b#2 ← phi( signed_multiply_error::@1/(signed byte) signed_multiply_error::b#3 ) - (byte*) char_cursor#112 ← phi( signed_multiply_error::@1/(byte*) char_cursor#10 ) - (byte*) char_cursor#52 ← (byte*) char_cursor#112 - (byte*) print_str::str#11 ← (const string) signed_multiply_error::str1 + (byte*) char_cursor#116 ← phi( signed_multiply_error::@1/(byte*) char_cursor#10 ) + (byte*) char_cursor#54 ← (byte*) char_cursor#116 + (byte*) print_str::str#12 ← (const string) signed_multiply_error::str1 call print_str param-assignment to:signed_multiply_error::@3 signed_multiply_error::@3: scope:[signed_multiply_error] from signed_multiply_error::@2 - (byte*) line_cursor#94 ← phi( signed_multiply_error::@2/(byte*) line_cursor#96 ) + (byte*) line_cursor#96 ← phi( signed_multiply_error::@2/(byte*) line_cursor#99 ) (signed word) signed_multiply_error::ma#5 ← phi( signed_multiply_error::@2/(signed word) signed_multiply_error::ma#6 ) (signed word) signed_multiply_error::ms#3 ← phi( signed_multiply_error::@2/(signed word) signed_multiply_error::ms#4 ) (signed byte) signed_multiply_error::b#1 ← phi( signed_multiply_error::@2/(signed byte) signed_multiply_error::b#2 ) - (byte*) char_cursor#113 ← phi( signed_multiply_error::@2/(byte*) char_cursor#2 ) - (byte*) char_cursor#53 ← (byte*) char_cursor#113 + (byte*) char_cursor#117 ← phi( signed_multiply_error::@2/(byte*) char_cursor#2 ) + (byte*) char_cursor#55 ← (byte*) char_cursor#117 (signed byte) print_sbyte::b#2 ← (signed byte) signed_multiply_error::b#1 call print_sbyte param-assignment to:signed_multiply_error::@4 signed_multiply_error::@4: scope:[signed_multiply_error] from signed_multiply_error::@3 - (byte*) line_cursor#90 ← phi( signed_multiply_error::@3/(byte*) line_cursor#94 ) + (byte*) line_cursor#92 ← phi( signed_multiply_error::@3/(byte*) line_cursor#96 ) (signed word) signed_multiply_error::ma#4 ← phi( signed_multiply_error::@3/(signed word) signed_multiply_error::ma#5 ) (signed word) signed_multiply_error::ms#2 ← phi( signed_multiply_error::@3/(signed word) signed_multiply_error::ms#3 ) - (byte*) char_cursor#114 ← phi( signed_multiply_error::@3/(byte*) char_cursor#10 ) - (byte*) char_cursor#54 ← (byte*) char_cursor#114 - (byte*) print_str::str#12 ← (const string) signed_multiply_error::str2 + (byte*) char_cursor#118 ← phi( signed_multiply_error::@3/(byte*) char_cursor#10 ) + (byte*) char_cursor#56 ← (byte*) char_cursor#118 + (byte*) print_str::str#13 ← (const string) signed_multiply_error::str2 call print_str param-assignment to:signed_multiply_error::@5 signed_multiply_error::@5: scope:[signed_multiply_error] from signed_multiply_error::@4 - (byte*) line_cursor#84 ← phi( signed_multiply_error::@4/(byte*) line_cursor#90 ) + (byte*) line_cursor#86 ← phi( signed_multiply_error::@4/(byte*) line_cursor#92 ) (signed word) signed_multiply_error::ma#3 ← phi( signed_multiply_error::@4/(signed word) signed_multiply_error::ma#4 ) (signed word) signed_multiply_error::ms#1 ← phi( signed_multiply_error::@4/(signed word) signed_multiply_error::ms#2 ) - (byte*) char_cursor#115 ← phi( signed_multiply_error::@4/(byte*) char_cursor#2 ) - (byte*) char_cursor#55 ← (byte*) char_cursor#115 + (byte*) char_cursor#119 ← phi( signed_multiply_error::@4/(byte*) char_cursor#2 ) + (byte*) char_cursor#57 ← (byte*) char_cursor#119 (signed word) print_sword::w#1 ← (signed word) signed_multiply_error::ms#1 call print_sword param-assignment to:signed_multiply_error::@6 signed_multiply_error::@6: scope:[signed_multiply_error] from signed_multiply_error::@5 - (byte*) line_cursor#75 ← phi( signed_multiply_error::@5/(byte*) line_cursor#84 ) + (byte*) line_cursor#76 ← phi( signed_multiply_error::@5/(byte*) line_cursor#86 ) (signed word) signed_multiply_error::ma#2 ← phi( signed_multiply_error::@5/(signed word) signed_multiply_error::ma#3 ) - (byte*) char_cursor#116 ← phi( signed_multiply_error::@5/(byte*) char_cursor#7 ) - (byte*) char_cursor#56 ← (byte*) char_cursor#116 - (byte*) print_str::str#13 ← (const string) signed_multiply_error::str3 + (byte*) char_cursor#120 ← phi( signed_multiply_error::@5/(byte*) char_cursor#7 ) + (byte*) char_cursor#58 ← (byte*) char_cursor#120 + (byte*) print_str::str#14 ← (const string) signed_multiply_error::str3 call print_str param-assignment to:signed_multiply_error::@7 signed_multiply_error::@7: scope:[signed_multiply_error] from signed_multiply_error::@6 - (byte*) line_cursor#65 ← phi( signed_multiply_error::@6/(byte*) line_cursor#75 ) + (byte*) line_cursor#65 ← phi( signed_multiply_error::@6/(byte*) line_cursor#76 ) (signed word) signed_multiply_error::ma#1 ← phi( signed_multiply_error::@6/(signed word) signed_multiply_error::ma#2 ) - (byte*) char_cursor#117 ← phi( signed_multiply_error::@6/(byte*) char_cursor#2 ) - (byte*) char_cursor#57 ← (byte*) char_cursor#117 + (byte*) char_cursor#121 ← phi( signed_multiply_error::@6/(byte*) char_cursor#2 ) + (byte*) char_cursor#59 ← (byte*) char_cursor#121 (signed word) print_sword::w#2 ← (signed word) signed_multiply_error::ma#1 call print_sword param-assignment to:signed_multiply_error::@8 signed_multiply_error::@8: scope:[signed_multiply_error] from signed_multiply_error::@7 (byte*) line_cursor#55 ← phi( signed_multiply_error::@7/(byte*) line_cursor#65 ) - (byte*) char_cursor#118 ← phi( signed_multiply_error::@7/(byte*) char_cursor#7 ) - (byte*) char_cursor#58 ← (byte*) char_cursor#118 + (byte*) char_cursor#122 ← phi( signed_multiply_error::@7/(byte*) char_cursor#7 ) + (byte*) char_cursor#60 ← (byte*) char_cursor#122 call print_ln param-assignment to:signed_multiply_error::@9 signed_multiply_error::@9: scope:[signed_multiply_error] from signed_multiply_error::@8 - (byte*) char_cursor#119 ← phi( signed_multiply_error::@8/(byte*) char_cursor#4 ) + (byte*) char_cursor#123 ← phi( signed_multiply_error::@8/(byte*) char_cursor#4 ) (byte*) line_cursor#42 ← phi( signed_multiply_error::@8/(byte*) line_cursor#2 ) (byte*) line_cursor#20 ← (byte*) line_cursor#42 - (byte*) char_cursor#59 ← (byte*) char_cursor#119 + (byte*) char_cursor#61 ← (byte*) char_cursor#123 to:signed_multiply_error::@return signed_multiply_error::@return: scope:[signed_multiply_error] from signed_multiply_error::@9 (byte*) line_cursor#43 ← phi( signed_multiply_error::@9/(byte*) line_cursor#20 ) - (byte*) char_cursor#120 ← phi( signed_multiply_error::@9/(byte*) char_cursor#59 ) - (byte*) char_cursor#60 ← (byte*) char_cursor#120 + (byte*) char_cursor#124 ← phi( signed_multiply_error::@9/(byte*) char_cursor#61 ) + (byte*) char_cursor#62 ← (byte*) char_cursor#124 (byte*) line_cursor#21 ← (byte*) line_cursor#43 return to:@return -@20: scope:[] from @14 - (byte*) char_cursor#140 ← phi( @14/(byte*) char_cursor#151 ) - (byte*) line_cursor#56 ← phi( @14/(byte*) line_cursor#66 ) - (byte*) BGCOL#5 ← phi( @14/(byte*) BGCOL#13 ) +@21: scope:[] from @15 + (byte*) char_cursor#144 ← phi( @15/(byte*) char_cursor#155 ) + (byte*) line_cursor#56 ← phi( @15/(byte*) line_cursor#66 ) + (byte*) BGCOL#5 ← phi( @15/(byte*) BGCOL#14 ) call main param-assignment - to:@21 -@21: scope:[] from @20 - (byte*) char_cursor#121 ← phi( @20/(byte*) char_cursor#25 ) - (byte*) line_cursor#44 ← phi( @20/(byte*) line_cursor#9 ) + to:@22 +@22: scope:[] from @21 + (byte*) char_cursor#125 ← phi( @21/(byte*) char_cursor#25 ) + (byte*) line_cursor#44 ← phi( @21/(byte*) line_cursor#9 ) (byte*) line_cursor#22 ← (byte*) line_cursor#44 - (byte*) char_cursor#61 ← (byte*) char_cursor#121 + (byte*) char_cursor#63 ← (byte*) char_cursor#125 to:@end -@end: scope:[] from @21 +@end: scope:[] from @22 SYMBOL TABLE SSA -(label) @11 -(label) @14 -(label) @20 +(label) @12 +(label) @15 (label) @21 -(label) @8 +(label) @22 +(label) @9 (label) @begin (label) @end (byte*) BGCOL @@ -2814,7 +3129,12 @@ SYMBOL TABLE SSA (byte*) BGCOL#26 (byte*) BGCOL#27 (byte*) BGCOL#28 +(byte*) BGCOL#29 (byte*) BGCOL#3 +(byte*) BGCOL#30 +(byte*) BGCOL#31 +(byte*) BGCOL#32 +(byte*) BGCOL#33 (byte*) BGCOL#4 (byte*) BGCOL#5 (byte*) BGCOL#6 @@ -2898,7 +3218,16 @@ SYMBOL TABLE SSA (byte*) char_cursor#162 (byte*) char_cursor#163 (byte*) char_cursor#164 +(byte*) char_cursor#165 +(byte*) char_cursor#166 +(byte*) char_cursor#167 +(byte*) char_cursor#168 +(byte*) char_cursor#169 (byte*) char_cursor#17 +(byte*) char_cursor#170 +(byte*) char_cursor#171 +(byte*) char_cursor#172 +(byte*) char_cursor#173 (byte*) char_cursor#18 (byte*) char_cursor#19 (byte*) char_cursor#2 @@ -2994,6 +3323,13 @@ SYMBOL TABLE SSA (byte*) line_cursor#1 (byte*) line_cursor#10 (byte*) line_cursor#100 +(byte*) line_cursor#101 +(byte*) line_cursor#102 +(byte*) line_cursor#103 +(byte*) line_cursor#104 +(byte*) line_cursor#105 +(byte*) line_cursor#106 +(byte*) line_cursor#107 (byte*) line_cursor#11 (byte*) line_cursor#12 (byte*) line_cursor#13 @@ -3099,6 +3435,189 @@ SYMBOL TABLE SSA (label) main::@5 (label) main::@6 (label) main::@return +(void()) mul8s_slowfast_compare() +(signed byte/signed word/signed dword~) mul8s_slowfast_compare::$0 +(signed byte/signed word/signed dword~) mul8s_slowfast_compare::$1 +(boolean~) mul8s_slowfast_compare::$10 +(signed word~) mul8s_slowfast_compare::$2 +(signed word~) mul8s_slowfast_compare::$3 +(boolean~) mul8s_slowfast_compare::$4 +(boolean~) mul8s_slowfast_compare::$5 +(signed byte/signed word/signed dword~) mul8s_slowfast_compare::$7 +(boolean~) mul8s_slowfast_compare::$8 +(signed byte/signed word/signed dword~) mul8s_slowfast_compare::$9 +(label) mul8s_slowfast_compare::@1 +(label) mul8s_slowfast_compare::@10 +(label) mul8s_slowfast_compare::@11 +(label) mul8s_slowfast_compare::@12 +(label) mul8s_slowfast_compare::@2 +(label) mul8s_slowfast_compare::@3 +(label) mul8s_slowfast_compare::@4 +(label) mul8s_slowfast_compare::@6 +(label) mul8s_slowfast_compare::@7 +(label) mul8s_slowfast_compare::@8 +(label) mul8s_slowfast_compare::@9 +(label) mul8s_slowfast_compare::@return +(signed byte) mul8s_slowfast_compare::a +(signed byte) mul8s_slowfast_compare::a#0 +(signed byte) mul8s_slowfast_compare::a#1 +(signed byte) mul8s_slowfast_compare::a#2 +(signed byte) mul8s_slowfast_compare::a#3 +(signed byte) mul8s_slowfast_compare::a#4 +(signed byte) mul8s_slowfast_compare::a#5 +(signed byte) mul8s_slowfast_compare::a#6 +(signed byte) mul8s_slowfast_compare::a#7 +(signed byte) mul8s_slowfast_compare::a#8 +(signed byte) mul8s_slowfast_compare::b +(signed byte) mul8s_slowfast_compare::b#0 +(signed byte) mul8s_slowfast_compare::b#1 +(signed byte) mul8s_slowfast_compare::b#2 +(signed byte) mul8s_slowfast_compare::b#3 +(signed byte) mul8s_slowfast_compare::b#4 +(signed byte) mul8s_slowfast_compare::b#5 +(signed byte) mul8s_slowfast_compare::b#6 +(signed word) mul8s_slowfast_compare::ma +(signed word) mul8s_slowfast_compare::ma#0 +(signed word) mul8s_slowfast_compare::ma#1 +(signed word) mul8s_slowfast_compare::ms +(signed word) mul8s_slowfast_compare::ms#0 +(signed word) mul8s_slowfast_compare::ms#1 +(signed word) mul8s_slowfast_compare::ms#2 +(const string) mul8s_slowfast_compare::str = (string) "signed multiply results match!@" +(word()) mul8u((byte) mul8u::a , (byte) mul8u::b) +(boolean~) mul8u::$0 +(byte~) mul8u::$1 +(boolean~) mul8u::$2 +(boolean~) mul8u::$3 +(word~) mul8u::$4 +(byte~) mul8u::$5 +(word~) mul8u::$6 +(label) mul8u::@1 +(label) mul8u::@2 +(label) mul8u::@3 +(label) mul8u::@4 +(label) mul8u::@7 +(label) mul8u::@return +(byte) mul8u::a +(byte) mul8u::a#0 +(byte) mul8u::a#1 +(byte) mul8u::a#2 +(byte) mul8u::a#3 +(byte) mul8u::a#4 +(byte) mul8u::a#5 +(byte) mul8u::a#6 +(byte) mul8u::b +(byte) mul8u::b#0 +(byte) mul8u::b#1 +(word) mul8u::mb +(word) mul8u::mb#0 +(word) mul8u::mb#1 +(word) mul8u::mb#2 +(word) mul8u::mb#3 +(word) mul8u::mb#4 +(word) mul8u::mb#5 +(word) mul8u::res +(word) mul8u::res#0 +(word) mul8u::res#1 +(word) mul8u::res#2 +(word) mul8u::res#3 +(word) mul8u::res#4 +(word) mul8u::res#5 +(word) mul8u::res#6 +(word) mul8u::return +(word) mul8u::return#0 +(word) mul8u::return#1 +(word) mul8u::return#2 +(word) mul8u::return#3 +(word) mul8u::return#4 +(void()) mul8u_slowfast_compare() +(word~) mul8u_slowfast_compare::$0 +(word~) mul8u_slowfast_compare::$1 +(boolean~) mul8u_slowfast_compare::$10 +(boolean~) mul8u_slowfast_compare::$11 +(word~) mul8u_slowfast_compare::$2 +(boolean~) mul8u_slowfast_compare::$3 +(boolean~) mul8u_slowfast_compare::$4 +(boolean~) mul8u_slowfast_compare::$5 +(boolean~) mul8u_slowfast_compare::$6 +(boolean~) mul8u_slowfast_compare::$7 +(boolean~) mul8u_slowfast_compare::$8 +(label) mul8u_slowfast_compare::@1 +(label) mul8u_slowfast_compare::@10 +(label) mul8u_slowfast_compare::@11 +(label) mul8u_slowfast_compare::@12 +(label) mul8u_slowfast_compare::@13 +(label) mul8u_slowfast_compare::@14 +(label) mul8u_slowfast_compare::@15 +(label) mul8u_slowfast_compare::@16 +(label) mul8u_slowfast_compare::@17 +(label) mul8u_slowfast_compare::@2 +(label) mul8u_slowfast_compare::@3 +(label) mul8u_slowfast_compare::@4 +(label) mul8u_slowfast_compare::@5 +(label) mul8u_slowfast_compare::@6 +(label) mul8u_slowfast_compare::@7 +(label) mul8u_slowfast_compare::@8 +(label) mul8u_slowfast_compare::@return +(byte) mul8u_slowfast_compare::a +(byte) mul8u_slowfast_compare::a#0 +(byte) mul8u_slowfast_compare::a#1 +(byte) mul8u_slowfast_compare::a#10 +(byte) mul8u_slowfast_compare::a#11 +(byte) mul8u_slowfast_compare::a#12 +(byte) mul8u_slowfast_compare::a#13 +(byte) mul8u_slowfast_compare::a#2 +(byte) mul8u_slowfast_compare::a#3 +(byte) mul8u_slowfast_compare::a#4 +(byte) mul8u_slowfast_compare::a#5 +(byte) mul8u_slowfast_compare::a#6 +(byte) mul8u_slowfast_compare::a#7 +(byte) mul8u_slowfast_compare::a#8 +(byte) mul8u_slowfast_compare::a#9 +(byte) mul8u_slowfast_compare::b +(byte) mul8u_slowfast_compare::b#0 +(byte) mul8u_slowfast_compare::b#1 +(byte) mul8u_slowfast_compare::b#10 +(byte) mul8u_slowfast_compare::b#11 +(byte) mul8u_slowfast_compare::b#2 +(byte) mul8u_slowfast_compare::b#3 +(byte) mul8u_slowfast_compare::b#4 +(byte) mul8u_slowfast_compare::b#5 +(byte) mul8u_slowfast_compare::b#6 +(byte) mul8u_slowfast_compare::b#7 +(byte) mul8u_slowfast_compare::b#8 +(byte) mul8u_slowfast_compare::b#9 +(word) mul8u_slowfast_compare::mf +(word) mul8u_slowfast_compare::mf#0 +(word) mul8u_slowfast_compare::mf#1 +(word) mul8u_slowfast_compare::mf#2 +(word) mul8u_slowfast_compare::mf#3 +(word) mul8u_slowfast_compare::mf#4 +(word) mul8u_slowfast_compare::mf#5 +(word) mul8u_slowfast_compare::mf#6 +(word) mul8u_slowfast_compare::mn +(word) mul8u_slowfast_compare::mn#0 +(word) mul8u_slowfast_compare::mn#1 +(word) mul8u_slowfast_compare::mn#2 +(word) mul8u_slowfast_compare::mn#3 +(word) mul8u_slowfast_compare::mn#4 +(word) mul8u_slowfast_compare::mn#5 +(word) mul8u_slowfast_compare::ms +(word) mul8u_slowfast_compare::ms#0 +(word) mul8u_slowfast_compare::ms#1 +(word) mul8u_slowfast_compare::ms#2 +(word) mul8u_slowfast_compare::ms#3 +(word) mul8u_slowfast_compare::ms#4 +(word) mul8u_slowfast_compare::ms#5 +(word) mul8u_slowfast_compare::ms#6 +(word) mul8u_slowfast_compare::ms#7 +(byte) mul8u_slowfast_compare::ok +(byte) mul8u_slowfast_compare::ok#0 +(byte) mul8u_slowfast_compare::ok#1 +(byte) mul8u_slowfast_compare::ok#2 +(byte) mul8u_slowfast_compare::ok#3 +(byte) mul8u_slowfast_compare::ok#4 +(const string) mul8u_slowfast_compare::str = (string) "multiply results match!@" (byte[512]) mula_sqr1_hi (byte[512]) mula_sqr1_hi#0 (byte[512]) mula_sqr1_lo @@ -3276,6 +3795,44 @@ SYMBOL TABLE SSA (byte[512]) mulf_sqr2_hi#0 (byte[512]) mulf_sqr2_lo (byte[512]) mulf_sqr2_lo#0 +(void()) mulf_tables_cmp() +(boolean~) mulf_tables_cmp::$0 +(boolean~) mulf_tables_cmp::$1 +(boolean~) mulf_tables_cmp::$10 +(word~) mulf_tables_cmp::$3 +(word~) mulf_tables_cmp::$6 +(word/signed word/dword/signed dword~) mulf_tables_cmp::$8 +(byte*~) mulf_tables_cmp::$9 +(label) mulf_tables_cmp::@1 +(label) mulf_tables_cmp::@10 +(label) mulf_tables_cmp::@11 +(label) mulf_tables_cmp::@2 +(label) mulf_tables_cmp::@3 +(label) mulf_tables_cmp::@5 +(label) mulf_tables_cmp::@6 +(label) mulf_tables_cmp::@7 +(label) mulf_tables_cmp::@8 +(label) mulf_tables_cmp::@9 +(label) mulf_tables_cmp::@return +(byte*) mulf_tables_cmp::asm_sqr +(byte*) mulf_tables_cmp::asm_sqr#0 +(byte*) mulf_tables_cmp::asm_sqr#1 +(byte*) mulf_tables_cmp::asm_sqr#2 +(byte*) mulf_tables_cmp::asm_sqr#3 +(byte*) mulf_tables_cmp::asm_sqr#4 +(byte*) mulf_tables_cmp::asm_sqr#5 +(byte*) mulf_tables_cmp::kc_sqr +(byte*) mulf_tables_cmp::kc_sqr#0 +(byte*) mulf_tables_cmp::kc_sqr#1 +(byte*) mulf_tables_cmp::kc_sqr#2 +(byte*) mulf_tables_cmp::kc_sqr#3 +(byte*) mulf_tables_cmp::kc_sqr#4 +(byte*) mulf_tables_cmp::kc_sqr#5 +(byte*) mulf_tables_cmp::kc_sqr#6 +(byte*) mulf_tables_cmp::kc_sqr#7 +(const string) mulf_tables_cmp::str = (string) "multiply table mismatch at @" +(const string) mulf_tables_cmp::str1 = (string) " / @" +(const string) mulf_tables_cmp::str2 = (string) "multiply tables match!@" (signed word()) muls8s((signed byte) muls8s::a , (signed byte) muls8s::b) (boolean~) muls8s::$0 (boolean~) muls8s::$1 @@ -3369,8 +3926,10 @@ SYMBOL TABLE SSA (word) muls8u::return#2 (word) muls8u::return#3 (word) muls8u::return#4 -(void()) multiply_error((byte) multiply_error::a , (byte) multiply_error::b , (word) multiply_error::ms , (word) multiply_error::ma) +(void()) multiply_error((byte) multiply_error::a , (byte) multiply_error::b , (word) multiply_error::ms , (word) multiply_error::mn , (word) multiply_error::mf) (label) multiply_error::@1 +(label) multiply_error::@10 +(label) multiply_error::@11 (label) multiply_error::@2 (label) multiply_error::@3 (label) multiply_error::@4 @@ -3390,16 +3949,28 @@ SYMBOL TABLE SSA (byte) multiply_error::b#2 (byte) multiply_error::b#3 (byte) multiply_error::b#4 -(word) multiply_error::ma -(word) multiply_error::ma#0 -(word) multiply_error::ma#1 -(word) multiply_error::ma#2 -(word) multiply_error::ma#3 -(word) multiply_error::ma#4 -(word) multiply_error::ma#5 -(word) multiply_error::ma#6 -(word) multiply_error::ma#7 -(word) multiply_error::ma#8 +(word) multiply_error::mf +(word) multiply_error::mf#0 +(word) multiply_error::mf#1 +(word) multiply_error::mf#10 +(word) multiply_error::mf#2 +(word) multiply_error::mf#3 +(word) multiply_error::mf#4 +(word) multiply_error::mf#5 +(word) multiply_error::mf#6 +(word) multiply_error::mf#7 +(word) multiply_error::mf#8 +(word) multiply_error::mf#9 +(word) multiply_error::mn +(word) multiply_error::mn#0 +(word) multiply_error::mn#1 +(word) multiply_error::mn#2 +(word) multiply_error::mn#3 +(word) multiply_error::mn#4 +(word) multiply_error::mn#5 +(word) multiply_error::mn#6 +(word) multiply_error::mn#7 +(word) multiply_error::mn#8 (word) multiply_error::ms (word) multiply_error::ms#0 (word) multiply_error::ms#1 @@ -3411,90 +3982,8 @@ SYMBOL TABLE SSA (const string) multiply_error::str = (string) "multiply mismatch @" (const string) multiply_error::str1 = (string) "*@" (const string) multiply_error::str2 = (string) " slow:@" -(const string) multiply_error::str3 = (string) " / fast asm:@" -(void()) multiply_results_compare() -(word~) multiply_results_compare::$0 -(word~) multiply_results_compare::$1 -(boolean~) multiply_results_compare::$2 -(boolean~) multiply_results_compare::$3 -(boolean~) multiply_results_compare::$5 -(boolean~) multiply_results_compare::$6 -(label) multiply_results_compare::@1 -(label) multiply_results_compare::@10 -(label) multiply_results_compare::@11 -(label) multiply_results_compare::@12 -(label) multiply_results_compare::@2 -(label) multiply_results_compare::@3 -(label) multiply_results_compare::@4 -(label) multiply_results_compare::@6 -(label) multiply_results_compare::@7 -(label) multiply_results_compare::@8 -(label) multiply_results_compare::@9 -(label) multiply_results_compare::@return -(byte) multiply_results_compare::a -(byte) multiply_results_compare::a#0 -(byte) multiply_results_compare::a#1 -(byte) multiply_results_compare::a#2 -(byte) multiply_results_compare::a#3 -(byte) multiply_results_compare::a#4 -(byte) multiply_results_compare::a#5 -(byte) multiply_results_compare::a#6 -(byte) multiply_results_compare::a#7 -(byte) multiply_results_compare::a#8 -(byte) multiply_results_compare::b -(byte) multiply_results_compare::b#0 -(byte) multiply_results_compare::b#1 -(byte) multiply_results_compare::b#2 -(byte) multiply_results_compare::b#3 -(byte) multiply_results_compare::b#4 -(byte) multiply_results_compare::b#5 -(byte) multiply_results_compare::b#6 -(word) multiply_results_compare::ma -(word) multiply_results_compare::ma#0 -(word) multiply_results_compare::ma#1 -(word) multiply_results_compare::ms -(word) multiply_results_compare::ms#0 -(word) multiply_results_compare::ms#1 -(word) multiply_results_compare::ms#2 -(const string) multiply_results_compare::str = (string) "multiply results match!@" -(void()) multiply_tables_compare() -(boolean~) multiply_tables_compare::$0 -(boolean~) multiply_tables_compare::$1 -(boolean~) multiply_tables_compare::$10 -(word~) multiply_tables_compare::$3 -(word~) multiply_tables_compare::$6 -(word/signed word/dword/signed dword~) multiply_tables_compare::$8 -(byte*~) multiply_tables_compare::$9 -(label) multiply_tables_compare::@1 -(label) multiply_tables_compare::@10 -(label) multiply_tables_compare::@11 -(label) multiply_tables_compare::@2 -(label) multiply_tables_compare::@3 -(label) multiply_tables_compare::@5 -(label) multiply_tables_compare::@6 -(label) multiply_tables_compare::@7 -(label) multiply_tables_compare::@8 -(label) multiply_tables_compare::@9 -(label) multiply_tables_compare::@return -(byte*) multiply_tables_compare::asm_sqr -(byte*) multiply_tables_compare::asm_sqr#0 -(byte*) multiply_tables_compare::asm_sqr#1 -(byte*) multiply_tables_compare::asm_sqr#2 -(byte*) multiply_tables_compare::asm_sqr#3 -(byte*) multiply_tables_compare::asm_sqr#4 -(byte*) multiply_tables_compare::asm_sqr#5 -(byte*) multiply_tables_compare::kc_sqr -(byte*) multiply_tables_compare::kc_sqr#0 -(byte*) multiply_tables_compare::kc_sqr#1 -(byte*) multiply_tables_compare::kc_sqr#2 -(byte*) multiply_tables_compare::kc_sqr#3 -(byte*) multiply_tables_compare::kc_sqr#4 -(byte*) multiply_tables_compare::kc_sqr#5 -(byte*) multiply_tables_compare::kc_sqr#6 -(byte*) multiply_tables_compare::kc_sqr#7 -(const string) multiply_tables_compare::str = (string) "multiply table mismatch at @" -(const string) multiply_tables_compare::str1 = (string) " / @" -(const string) multiply_tables_compare::str2 = (string) "multiply tables match!@" +(const string) multiply_error::str3 = (string) " / normal:@" +(const string) multiply_error::str4 = (string) " / fast:@" (void()) print_byte((byte) print_byte::b) (byte~) print_byte::$0 (byte~) print_byte::$2 @@ -3569,6 +4058,7 @@ SYMBOL TABLE SSA (byte*) print_str::str#14 (byte*) print_str::str#15 (byte*) print_str::str#16 +(byte*) print_str::str#17 (byte*) print_str::str#2 (byte*) print_str::str#3 (byte*) print_str::str#4 @@ -3609,6 +4099,7 @@ SYMBOL TABLE SSA (word) print_word::w#4 (word) print_word::w#5 (word) print_word::w#6 +(word) print_word::w#7 (void()) signed_multiply_error((signed byte) signed_multiply_error::a , (signed byte) signed_multiply_error::b , (signed word) signed_multiply_error::ms , (signed word) signed_multiply_error::ma) (label) signed_multiply_error::@1 (label) signed_multiply_error::@2 @@ -3652,59 +4143,11 @@ SYMBOL TABLE SSA (const string) signed_multiply_error::str1 = (string) "*@" (const string) signed_multiply_error::str2 = (string) " slow:@" (const string) signed_multiply_error::str3 = (string) " / fast asm:@" -(void()) signed_multiply_results_compare() -(signed byte/signed word/signed dword~) signed_multiply_results_compare::$0 -(signed byte/signed word/signed dword~) signed_multiply_results_compare::$1 -(boolean~) signed_multiply_results_compare::$10 -(signed word~) signed_multiply_results_compare::$2 -(signed word~) signed_multiply_results_compare::$3 -(boolean~) signed_multiply_results_compare::$4 -(boolean~) signed_multiply_results_compare::$5 -(signed byte/signed word/signed dword~) signed_multiply_results_compare::$7 -(boolean~) signed_multiply_results_compare::$8 -(signed byte/signed word/signed dword~) signed_multiply_results_compare::$9 -(label) signed_multiply_results_compare::@1 -(label) signed_multiply_results_compare::@10 -(label) signed_multiply_results_compare::@11 -(label) signed_multiply_results_compare::@12 -(label) signed_multiply_results_compare::@2 -(label) signed_multiply_results_compare::@3 -(label) signed_multiply_results_compare::@4 -(label) signed_multiply_results_compare::@6 -(label) signed_multiply_results_compare::@7 -(label) signed_multiply_results_compare::@8 -(label) signed_multiply_results_compare::@9 -(label) signed_multiply_results_compare::@return -(signed byte) signed_multiply_results_compare::a -(signed byte) signed_multiply_results_compare::a#0 -(signed byte) signed_multiply_results_compare::a#1 -(signed byte) signed_multiply_results_compare::a#2 -(signed byte) signed_multiply_results_compare::a#3 -(signed byte) signed_multiply_results_compare::a#4 -(signed byte) signed_multiply_results_compare::a#5 -(signed byte) signed_multiply_results_compare::a#6 -(signed byte) signed_multiply_results_compare::a#7 -(signed byte) signed_multiply_results_compare::a#8 -(signed byte) signed_multiply_results_compare::b -(signed byte) signed_multiply_results_compare::b#0 -(signed byte) signed_multiply_results_compare::b#1 -(signed byte) signed_multiply_results_compare::b#2 -(signed byte) signed_multiply_results_compare::b#3 -(signed byte) signed_multiply_results_compare::b#4 -(signed byte) signed_multiply_results_compare::b#5 -(signed byte) signed_multiply_results_compare::b#6 -(signed word) signed_multiply_results_compare::ma -(signed word) signed_multiply_results_compare::ma#0 -(signed word) signed_multiply_results_compare::ma#1 -(signed word) signed_multiply_results_compare::ms -(signed word) signed_multiply_results_compare::ms#0 -(signed word) signed_multiply_results_compare::ms#1 -(signed word) signed_multiply_results_compare::ms#2 -(const string) signed_multiply_results_compare::str = (string) "signed multiply results match!@" OPTIMIZING CONTROL FLOW GRAPH Inversing boolean not (boolean~) print_sword::$1 ← (signed word) print_sword::w#3 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) print_sword::$0 ← (signed word) print_sword::w#3 < (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) print_sbyte::$1 ← (signed byte) print_sbyte::b#3 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) print_sbyte::$0 ← (signed byte) print_sbyte::b#3 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not (boolean~) mul8u::$3 ← (byte~) mul8u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) mul8u::$2 ← (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) mulf_init::$4 ← (byte~) mulf_init::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) mulf_init::$3 ← (byte~) mulf_init::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) mulf_init::$14 ← (byte) mulf_init::x_255#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) mulf_init::$13 ← (byte) mulf_init::x_255#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) mulf8s::$4 ← (signed byte) mulf8s::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) mulf8s::$3 ← (signed byte) mulf8s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -3712,52 +4155,56 @@ Inversing boolean not (boolean~) mulf8s::$10 ← (signed byte) mulf8s::b#2 >= (b Inversing boolean not (boolean~) muls8u::$1 ← (byte) muls8u::a#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) muls8u::$0 ← (byte) muls8u::a#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) muls8s::$1 ← (signed byte) muls8s::a#1 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) muls8s::$0 ← (signed byte) muls8s::a#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 Inversing boolean not (boolean~) muls8s::$5 ← (signed byte) muls8s::a#2 <= (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) muls8s::$4 ← (signed byte) muls8s::a#2 > (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not (boolean~) multiply_tables_compare::$1 ← *((byte*) multiply_tables_compare::kc_sqr#2) == *((byte*) multiply_tables_compare::asm_sqr#2) from (boolean~) multiply_tables_compare::$0 ← *((byte*) multiply_tables_compare::kc_sqr#2) != *((byte*) multiply_tables_compare::asm_sqr#2) -Inversing boolean not (boolean~) multiply_results_compare::$3 ← (word) multiply_results_compare::ms#1 == (word) multiply_results_compare::ma#0 from (boolean~) multiply_results_compare::$2 ← (word) multiply_results_compare::ms#1 != (word) multiply_results_compare::ma#0 -Inversing boolean not (boolean~) signed_multiply_results_compare::$5 ← (signed word) signed_multiply_results_compare::ms#1 == (signed word) signed_multiply_results_compare::ma#0 from (boolean~) signed_multiply_results_compare::$4 ← (signed word) signed_multiply_results_compare::ms#1 != (signed word) signed_multiply_results_compare::ma#0 +Inversing boolean not (boolean~) mulf_tables_cmp::$1 ← *((byte*) mulf_tables_cmp::kc_sqr#2) == *((byte*) mulf_tables_cmp::asm_sqr#2) from (boolean~) mulf_tables_cmp::$0 ← *((byte*) mulf_tables_cmp::kc_sqr#2) != *((byte*) mulf_tables_cmp::asm_sqr#2) +Inversing boolean not (boolean~) mul8u_slowfast_compare::$4 ← (word) mul8u_slowfast_compare::ms#1 == (word) mul8u_slowfast_compare::mf#1 from (boolean~) mul8u_slowfast_compare::$3 ← (word) mul8u_slowfast_compare::ms#1 != (word) mul8u_slowfast_compare::mf#1 +Inversing boolean not (boolean~) mul8u_slowfast_compare::$6 ← (word) mul8u_slowfast_compare::ms#2 == (word) mul8u_slowfast_compare::mn#1 from (boolean~) mul8u_slowfast_compare::$5 ← (word) mul8u_slowfast_compare::ms#2 != (word) mul8u_slowfast_compare::mn#1 +Inversing boolean not (boolean~) mul8u_slowfast_compare::$8 ← (byte) mul8u_slowfast_compare::ok#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 from (boolean~) mul8u_slowfast_compare::$7 ← (byte) mul8u_slowfast_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not (boolean~) mul8s_slowfast_compare::$5 ← (signed word) mul8s_slowfast_compare::ms#1 == (signed word) mul8s_slowfast_compare::ma#0 from (boolean~) mul8s_slowfast_compare::$4 ← (signed word) mul8s_slowfast_compare::ms#1 != (signed word) mul8s_slowfast_compare::ma#0 Succesful SSA optimization Pass2UnaryNotSimplification -Not aliassing across scopes: print_str::str#16 print_str::str#5 -Not aliassing across scopes: char_cursor#141 char_cursor#136 -Not aliassing across scopes: line_cursor#45 line_cursor#52 -Not aliassing across scopes: char_cursor#123 char_cursor#44 +Not aliassing across scopes: print_str::str#17 print_str::str#10 +Not aliassing across scopes: char_cursor#145 char_cursor#142 +Not aliassing across scopes: line_cursor#45 line_cursor#54 +Not aliassing across scopes: char_cursor#127 char_cursor#51 Not aliassing across scopes: print_sword::w#3 print_sword::w#1 -Not aliassing across scopes: char_cursor#142 char_cursor#55 -Not aliassing across scopes: char_cursor#66 char_cursor#13 -Not aliassing across scopes: char_cursor#67 char_cursor#18 +Not aliassing across scopes: char_cursor#146 char_cursor#57 +Not aliassing across scopes: char_cursor#68 char_cursor#13 +Not aliassing across scopes: char_cursor#69 char_cursor#18 Not aliassing across scopes: print_sbyte::b#3 print_sbyte::b#1 -Not aliassing across scopes: char_cursor#143 char_cursor#51 -Not aliassing across scopes: char_cursor#69 char_cursor#16 -Not aliassing across scopes: char_cursor#70 char_cursor#18 -Not aliassing across scopes: print_word::w#5 print_word::w#3 -Not aliassing across scopes: char_cursor#128 char_cursor#41 -Not aliassing across scopes: char_cursor#72 char_cursor#16 -Not aliassing across scopes: char_cursor#73 char_cursor#16 +Not aliassing across scopes: char_cursor#147 char_cursor#53 +Not aliassing across scopes: char_cursor#71 char_cursor#16 +Not aliassing across scopes: char_cursor#72 char_cursor#18 +Not aliassing across scopes: print_word::w#6 print_word::w#1 +Not aliassing across scopes: char_cursor#132 char_cursor#26 +Not aliassing across scopes: char_cursor#74 char_cursor#16 +Not aliassing across scopes: char_cursor#75 char_cursor#16 Not aliassing across scopes: print_byte::b#5 print_byte::b#3 -Not aliassing across scopes: char_cursor#129 char_cursor#37 -Not aliassing across scopes: char_cursor#75 char_cursor#18 -Not aliassing across scopes: char_cursor#76 char_cursor#18 +Not aliassing across scopes: char_cursor#133 char_cursor#37 +Not aliassing across scopes: char_cursor#77 char_cursor#18 +Not aliassing across scopes: char_cursor#78 char_cursor#18 Not aliassing across scopes: print_char::ch#4 print_char::ch#2 -Not aliassing across scopes: char_cursor#78 char_cursor#129 +Not aliassing across scopes: char_cursor#80 char_cursor#133 Not aliassing across scopes: print_cls::sc#0 SCREEN#0 Not aliassing across scopes: line_cursor#3 SCREEN#0 +Not aliassing across scopes: mul8u::b#1 mul8u::b#0 +Not aliassing across scopes: mul8u::a#5 mul8u::a#1 Not aliassing across scopes: mulf_init::sqr2_hi#0 mulf_sqr2_hi#0 Not aliassing across scopes: mulf_init::sqr2_lo#0 mulf_sqr2_lo#0 -Not aliassing across scopes: mulf8u::a#2 mulf8u::a#0 -Not aliassing across scopes: mulf8u::b#2 mulf8u::b#0 +Not aliassing across scopes: mulf8u::a#2 mulf8u::a#1 +Not aliassing across scopes: mulf8u::b#2 mulf8u::b#1 Not aliassing across scopes: mulf8s::a#1 mulf8s::a#0 Not aliassing across scopes: mulf8s::b#1 mulf8s::b#0 Not aliassing across scopes: mulf8u::return#2 mulf8u::return#1 Not aliassing across scopes: mulf8s::$2 mulf8u::return#5 Not aliassing across scopes: BGCOL#1 BGCOL#5 Not aliassing across scopes: line_cursor#46 line_cursor#56 -Not aliassing across scopes: char_cursor#130 char_cursor#140 +Not aliassing across scopes: char_cursor#134 char_cursor#144 Not aliassing across scopes: line_cursor#27 line_cursor#4 -Not aliassing across scopes: char_cursor#81 char_cursor#20 -Not aliassing across scopes: char_cursor#82 char_cursor#30 +Not aliassing across scopes: char_cursor#83 char_cursor#20 +Not aliassing across scopes: char_cursor#84 char_cursor#30 Not aliassing across scopes: line_cursor#28 line_cursor#10 -Not aliassing across scopes: char_cursor#83 char_cursor#34 +Not aliassing across scopes: char_cursor#85 char_cursor#34 Not aliassing across scopes: line_cursor#29 line_cursor#13 -Not aliassing across scopes: char_cursor#84 char_cursor#48 +Not aliassing across scopes: char_cursor#86 char_cursor#50 Not aliassing across scopes: line_cursor#30 line_cursor#18 Not aliassing across scopes: muls8u::a#1 muls8u::a#0 Not aliassing across scopes: muls8u::b#3 muls8u::b#0 @@ -3769,126 +4216,141 @@ Not aliassing identity: muls8s::b#1 muls8s::b#1 Not aliassing identity: muls8s::a#3 muls8s::a#3 Not aliassing identity: muls8s::b#2 muls8s::b#2 Not aliassing identity: muls8s::a#4 muls8s::a#4 -Not aliassing across scopes: BGCOL#9 BGCOL#14 -Not aliassing across scopes: char_cursor#153 char_cursor#131 -Not aliassing across scopes: line_cursor#85 line_cursor#47 -Not aliassing across scopes: multiply_tables_compare::asm_sqr#0 mula_sqr1_lo#0 -Not aliassing across scopes: multiply_tables_compare::kc_sqr#0 mulf_sqr1_lo#0 -Not aliassing across scopes: char_cursor#86 char_cursor#2 -Not aliassing across scopes: char_cursor#87 char_cursor#13 +Not aliassing across scopes: BGCOL#9 BGCOL#15 +Not aliassing across scopes: char_cursor#157 char_cursor#135 +Not aliassing across scopes: line_cursor#87 line_cursor#47 +Not aliassing across scopes: mulf_tables_cmp::asm_sqr#0 mula_sqr1_lo#0 +Not aliassing across scopes: mulf_tables_cmp::kc_sqr#0 mulf_sqr1_lo#0 Not aliassing across scopes: char_cursor#88 char_cursor#2 Not aliassing across scopes: char_cursor#89 char_cursor#13 -Not aliassing across scopes: char_cursor#91 char_cursor#2 +Not aliassing across scopes: char_cursor#90 char_cursor#2 +Not aliassing across scopes: char_cursor#91 char_cursor#13 +Not aliassing across scopes: char_cursor#93 char_cursor#2 Not aliassing across scopes: line_cursor#33 line_cursor#2 -Not aliassing across scopes: char_cursor#92 char_cursor#4 -Not aliassing across scopes: BGCOL#23 BGCOL#27 -Not aliassing across scopes: char_cursor#163 char_cursor#22 -Not aliassing across scopes: line_cursor#91 line_cursor#6 -Not aliassing across scopes: muls8u::a#0 multiply_results_compare::a#2 -Not aliassing across scopes: muls8u::b#0 multiply_results_compare::b#2 +Not aliassing across scopes: char_cursor#94 char_cursor#4 +Not aliassing across scopes: BGCOL#32 BGCOL#29 +Not aliassing across scopes: char_cursor#173 char_cursor#22 +Not aliassing across scopes: line_cursor#103 line_cursor#6 +Not aliassing across scopes: muls8u::a#0 mul8u_slowfast_compare::a#2 +Not aliassing across scopes: muls8u::b#0 mul8u_slowfast_compare::b#2 Not aliassing across scopes: muls8u::return#2 muls8u::return#1 -Not aliassing across scopes: multiply_results_compare::$0 muls8u::return#4 -Not aliassing across scopes: mulf8u::a#1 multiply_results_compare::a#3 -Not aliassing across scopes: mulf8u::b#1 multiply_results_compare::b#3 +Not aliassing across scopes: mul8u_slowfast_compare::$0 muls8u::return#4 +Not aliassing across scopes: mulf8u::a#1 mul8u_slowfast_compare::a#3 +Not aliassing across scopes: mulf8u::b#1 mul8u_slowfast_compare::b#3 Not aliassing across scopes: mulf8u::return#3 mulf8u::return#1 -Not aliassing across scopes: multiply_results_compare::$1 mulf8u::return#6 -Not aliassing across scopes: multiply_error::a#0 multiply_results_compare::a#4 -Not aliassing across scopes: multiply_error::b#0 multiply_results_compare::b#5 -Not aliassing across scopes: multiply_error::ms#0 multiply_results_compare::ms#2 -Not aliassing across scopes: multiply_error::ma#0 multiply_results_compare::ma#1 -Not aliassing across scopes: char_cursor#93 char_cursor#46 +Not aliassing across scopes: mul8u_slowfast_compare::$1 mulf8u::return#6 +Not aliassing across scopes: mul8u::a#1 mul8u_slowfast_compare::a#4 +Not aliassing across scopes: mul8u::b#0 mul8u_slowfast_compare::b#4 +Not aliassing across scopes: mul8u::return#2 mul8u::return#1 +Not aliassing across scopes: mul8u_slowfast_compare::$2 mul8u::return#4 +Not aliassing across scopes: multiply_error::a#0 mul8u_slowfast_compare::a#5 +Not aliassing across scopes: multiply_error::b#0 mul8u_slowfast_compare::b#6 +Not aliassing across scopes: multiply_error::ms#0 mul8u_slowfast_compare::ms#3 +Not aliassing across scopes: multiply_error::mn#0 mul8u_slowfast_compare::mn#2 +Not aliassing across scopes: multiply_error::mf#0 mul8u_slowfast_compare::mf#2 +Not aliassing across scopes: char_cursor#95 char_cursor#48 Not aliassing across scopes: line_cursor#34 line_cursor#16 -Not aliassing across scopes: char_cursor#95 char_cursor#2 +Not aliassing across scopes: char_cursor#97 char_cursor#2 Not aliassing across scopes: line_cursor#36 line_cursor#2 -Not aliassing across scopes: char_cursor#96 char_cursor#4 -Not aliassing across scopes: char_cursor#136 char_cursor#134 +Not aliassing across scopes: char_cursor#98 char_cursor#4 +Not aliassing across scopes: char_cursor#140 char_cursor#138 Not aliassing across scopes: multiply_error::a#2 multiply_error::a#0 Not aliassing across scopes: multiply_error::b#4 multiply_error::b#0 Not aliassing across scopes: multiply_error::ms#6 multiply_error::ms#0 -Not aliassing across scopes: multiply_error::ma#8 multiply_error::ma#0 -Not aliassing across scopes: line_cursor#99 line_cursor#50 -Not aliassing across scopes: char_cursor#97 char_cursor#2 -Not aliassing across scopes: print_byte::b#3 multiply_error::a#1 -Not aliassing across scopes: char_cursor#98 char_cursor#16 +Not aliassing across scopes: multiply_error::mn#8 multiply_error::mn#0 +Not aliassing across scopes: multiply_error::mf#10 multiply_error::mf#0 +Not aliassing across scopes: line_cursor#107 line_cursor#50 Not aliassing across scopes: char_cursor#99 char_cursor#2 -Not aliassing across scopes: print_byte::b#4 multiply_error::b#1 +Not aliassing across scopes: print_byte::b#3 multiply_error::a#1 Not aliassing across scopes: char_cursor#100 char_cursor#16 Not aliassing across scopes: char_cursor#101 char_cursor#2 -Not aliassing across scopes: print_word::w#3 multiply_error::ms#1 -Not aliassing across scopes: char_cursor#102 char_cursor#13 +Not aliassing across scopes: print_byte::b#4 multiply_error::b#1 +Not aliassing across scopes: char_cursor#102 char_cursor#16 Not aliassing across scopes: char_cursor#103 char_cursor#2 -Not aliassing across scopes: print_word::w#4 multiply_error::ma#1 +Not aliassing across scopes: print_word::w#3 multiply_error::ms#1 Not aliassing across scopes: char_cursor#104 char_cursor#13 +Not aliassing across scopes: char_cursor#105 char_cursor#2 +Not aliassing across scopes: print_word::w#4 multiply_error::mn#1 +Not aliassing across scopes: char_cursor#106 char_cursor#13 +Not aliassing across scopes: char_cursor#107 char_cursor#2 +Not aliassing across scopes: print_word::w#5 multiply_error::mf#1 +Not aliassing across scopes: char_cursor#108 char_cursor#13 Not aliassing across scopes: line_cursor#37 line_cursor#2 -Not aliassing across scopes: char_cursor#105 char_cursor#4 +Not aliassing across scopes: char_cursor#109 char_cursor#4 Not aliassing across scopes: BGCOL#25 BGCOL#28 -Not aliassing across scopes: char_cursor#164 char_cursor#23 -Not aliassing across scopes: line_cursor#93 line_cursor#7 -Not aliassing across scopes: muls8s::a#0 signed_multiply_results_compare::a#2 -Not aliassing across scopes: muls8s::b#0 signed_multiply_results_compare::b#2 +Not aliassing across scopes: char_cursor#170 char_cursor#23 +Not aliassing across scopes: line_cursor#95 line_cursor#7 +Not aliassing across scopes: muls8s::a#0 mul8s_slowfast_compare::a#2 +Not aliassing across scopes: muls8s::b#0 mul8s_slowfast_compare::b#2 Not aliassing across scopes: muls8s::return#2 muls8s::return#1 -Not aliassing across scopes: signed_multiply_results_compare::$2 muls8s::return#4 -Not aliassing across scopes: mulf8s::a#0 signed_multiply_results_compare::a#3 -Not aliassing across scopes: mulf8s::b#0 signed_multiply_results_compare::b#3 +Not aliassing across scopes: mul8s_slowfast_compare::$2 muls8s::return#4 +Not aliassing across scopes: mulf8s::a#0 mul8s_slowfast_compare::a#3 +Not aliassing across scopes: mulf8s::b#0 mul8s_slowfast_compare::b#3 Not aliassing across scopes: mulf8s::return#2 mulf8s::return#1 -Not aliassing across scopes: signed_multiply_results_compare::$3 mulf8s::return#4 -Not aliassing across scopes: signed_multiply_error::a#0 signed_multiply_results_compare::a#4 -Not aliassing across scopes: signed_multiply_error::b#0 signed_multiply_results_compare::b#5 -Not aliassing across scopes: signed_multiply_error::ms#0 signed_multiply_results_compare::ms#2 -Not aliassing across scopes: signed_multiply_error::ma#0 signed_multiply_results_compare::ma#1 -Not aliassing across scopes: char_cursor#107 char_cursor#60 +Not aliassing across scopes: mul8s_slowfast_compare::$3 mulf8s::return#4 +Not aliassing across scopes: signed_multiply_error::a#0 mul8s_slowfast_compare::a#4 +Not aliassing across scopes: signed_multiply_error::b#0 mul8s_slowfast_compare::b#5 +Not aliassing across scopes: signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#2 +Not aliassing across scopes: signed_multiply_error::ma#0 mul8s_slowfast_compare::ma#1 +Not aliassing across scopes: char_cursor#111 char_cursor#62 Not aliassing across scopes: line_cursor#39 line_cursor#21 -Not aliassing across scopes: char_cursor#109 char_cursor#2 +Not aliassing across scopes: char_cursor#113 char_cursor#2 Not aliassing across scopes: line_cursor#41 line_cursor#2 -Not aliassing across scopes: char_cursor#110 char_cursor#4 -Not aliassing across scopes: char_cursor#139 char_cursor#137 +Not aliassing across scopes: char_cursor#114 char_cursor#4 +Not aliassing across scopes: char_cursor#143 char_cursor#141 Not aliassing across scopes: signed_multiply_error::a#2 signed_multiply_error::a#0 Not aliassing across scopes: signed_multiply_error::b#4 signed_multiply_error::b#0 Not aliassing across scopes: signed_multiply_error::ms#6 signed_multiply_error::ms#0 Not aliassing across scopes: signed_multiply_error::ma#8 signed_multiply_error::ma#0 -Not aliassing across scopes: line_cursor#100 line_cursor#53 -Not aliassing across scopes: char_cursor#111 char_cursor#2 -Not aliassing across scopes: print_sbyte::b#1 signed_multiply_error::a#1 -Not aliassing across scopes: char_cursor#112 char_cursor#10 -Not aliassing across scopes: char_cursor#113 char_cursor#2 -Not aliassing across scopes: print_sbyte::b#2 signed_multiply_error::b#1 -Not aliassing across scopes: char_cursor#114 char_cursor#10 +Not aliassing across scopes: line_cursor#105 line_cursor#53 Not aliassing across scopes: char_cursor#115 char_cursor#2 -Not aliassing across scopes: print_sword::w#1 signed_multiply_error::ms#1 -Not aliassing across scopes: char_cursor#116 char_cursor#7 +Not aliassing across scopes: print_sbyte::b#1 signed_multiply_error::a#1 +Not aliassing across scopes: char_cursor#116 char_cursor#10 Not aliassing across scopes: char_cursor#117 char_cursor#2 +Not aliassing across scopes: print_sbyte::b#2 signed_multiply_error::b#1 +Not aliassing across scopes: char_cursor#118 char_cursor#10 +Not aliassing across scopes: char_cursor#119 char_cursor#2 +Not aliassing across scopes: print_sword::w#1 signed_multiply_error::ms#1 +Not aliassing across scopes: char_cursor#120 char_cursor#7 +Not aliassing across scopes: char_cursor#121 char_cursor#2 Not aliassing across scopes: print_sword::w#2 signed_multiply_error::ma#1 -Not aliassing across scopes: char_cursor#118 char_cursor#7 +Not aliassing across scopes: char_cursor#122 char_cursor#7 Not aliassing across scopes: line_cursor#42 line_cursor#2 -Not aliassing across scopes: char_cursor#119 char_cursor#4 +Not aliassing across scopes: char_cursor#123 char_cursor#4 Not aliassing across scopes: line_cursor#44 line_cursor#9 -Not aliassing across scopes: char_cursor#121 char_cursor#25 -Alias (byte*) SCREEN#0 = (byte*) line_cursor#0 (byte*) char_cursor#0 (byte*) line_cursor#76 (byte*) char_cursor#158 (byte*) line_cursor#67 (byte*) char_cursor#152 (byte*) line_cursor#66 (byte*) char_cursor#151 (byte*) line_cursor#56 (byte*) char_cursor#140 -Alias (byte*) print_str::str#14 = (byte*) print_str::str#15 -Alias (byte*) char_cursor#122 = (byte*) char_cursor#62 (byte*) char_cursor#63 (byte*) char_cursor#2 -Alias (byte*) line_cursor#1 = (byte*~) print_ln::$0 (byte*) line_cursor#24 (byte*) char_cursor#3 (byte*) line_cursor#25 (byte*) char_cursor#65 (byte*) line_cursor#2 (byte*) char_cursor#4 +Not aliassing across scopes: char_cursor#125 char_cursor#25 +Alias (byte*) SCREEN#0 = (byte*) line_cursor#0 (byte*) char_cursor#0 (byte*) line_cursor#77 (byte*) char_cursor#163 (byte*) line_cursor#67 (byte*) char_cursor#156 (byte*) line_cursor#66 (byte*) char_cursor#155 (byte*) line_cursor#56 (byte*) char_cursor#144 +Alias (byte*) print_str::str#15 = (byte*) print_str::str#16 +Alias (byte*) char_cursor#126 = (byte*) char_cursor#64 (byte*) char_cursor#65 (byte*) char_cursor#2 +Alias (byte*) line_cursor#1 = (byte*~) print_ln::$0 (byte*) line_cursor#24 (byte*) char_cursor#3 (byte*) line_cursor#25 (byte*) char_cursor#67 (byte*) line_cursor#2 (byte*) char_cursor#4 Alias (word) print_word::w#0 = (word~) print_sword::$4 -Alias (byte*) char_cursor#5 = (byte*) char_cursor#66 (byte*) char_cursor#68 (byte*) char_cursor#7 -Alias (byte*) char_cursor#125 = (byte*) char_cursor#142 +Alias (byte*) char_cursor#5 = (byte*) char_cursor#68 (byte*) char_cursor#70 (byte*) char_cursor#7 +Alias (byte*) char_cursor#129 = (byte*) char_cursor#146 Alias (signed word) print_sword::w#3 = (signed word) print_sword::w#6 (signed word) print_sword::w#5 -Alias (byte*) char_cursor#6 = (byte*) char_cursor#67 +Alias (byte*) char_cursor#6 = (byte*) char_cursor#69 Alias (signed word) print_sword::w#0 = (signed word~) print_sword::$3 Alias (byte) print_byte::b#0 = (byte~) print_sbyte::$4 -Alias (byte*) char_cursor#10 = (byte*) char_cursor#8 (byte*) char_cursor#69 (byte*) char_cursor#71 -Alias (byte*) char_cursor#127 = (byte*) char_cursor#143 +Alias (byte*) char_cursor#10 = (byte*) char_cursor#8 (byte*) char_cursor#71 (byte*) char_cursor#73 +Alias (byte*) char_cursor#131 = (byte*) char_cursor#147 Alias (signed byte) print_sbyte::b#3 = (signed byte) print_sbyte::b#6 (signed byte) print_sbyte::b#5 -Alias (byte*) char_cursor#70 = (byte*) char_cursor#9 +Alias (byte*) char_cursor#72 = (byte*) char_cursor#9 Alias (signed byte) print_sbyte::b#0 = (signed byte~) print_sbyte::$3 Alias (byte) print_byte::b#1 = (byte~) print_word::$0 -Alias (word) print_word::w#5 = (word) print_word::w#6 -Alias (byte*) char_cursor#11 = (byte*) char_cursor#72 +Alias (word) print_word::w#6 = (word) print_word::w#7 +Alias (byte*) char_cursor#11 = (byte*) char_cursor#74 Alias (byte) print_byte::b#2 = (byte~) print_word::$2 -Alias (byte*) char_cursor#12 = (byte*) char_cursor#73 (byte*) char_cursor#74 (byte*) char_cursor#13 +Alias (byte*) char_cursor#12 = (byte*) char_cursor#75 (byte*) char_cursor#76 (byte*) char_cursor#13 Alias (byte) print_byte::b#5 = (byte) print_byte::b#6 -Alias (byte*) char_cursor#14 = (byte*) char_cursor#75 -Alias (byte*) char_cursor#15 = (byte*) char_cursor#76 (byte*) char_cursor#77 (byte*) char_cursor#16 -Alias (byte*) char_cursor#17 = (byte*) char_cursor#79 (byte*) char_cursor#18 -Alias (byte*) line_cursor#26 = (byte*) char_cursor#19 (byte*) line_cursor#3 (byte*) char_cursor#80 (byte*) line_cursor#4 (byte*) char_cursor#20 +Alias (byte*) char_cursor#14 = (byte*) char_cursor#77 +Alias (byte*) char_cursor#15 = (byte*) char_cursor#78 (byte*) char_cursor#79 (byte*) char_cursor#16 +Alias (byte*) char_cursor#17 = (byte*) char_cursor#81 (byte*) char_cursor#18 +Alias (byte*) line_cursor#26 = (byte*) char_cursor#19 (byte*) line_cursor#3 (byte*) char_cursor#82 (byte*) line_cursor#4 (byte*) char_cursor#20 +Alias (byte) mul8u::a#2 = (byte) mul8u::a#3 (byte) mul8u::a#6 +Alias (word) mul8u::mb#3 = (word) mul8u::mb#4 (word) mul8u::mb#5 +Alias (word) mul8u::res#2 = (word) mul8u::res#5 (word) mul8u::res#4 (word) mul8u::return#0 (word) mul8u::res#3 (word) mul8u::return#3 (word) mul8u::return#1 +Alias (byte) mul8u::a#0 = (byte~) mul8u::$5 +Alias (word) mul8u::mb#1 = (word~) mul8u::$6 +Alias (word) mul8u::res#1 = (word~) mul8u::$4 Alias (byte*) mulf_init::sqr1_hi#0 = (byte*~) mulf_init::$0 Alias (byte*) mulf_init::sqr1_lo#0 = (byte*~) mulf_init::$1 Alias (word) mulf_init::sqr#1 = (word~) mulf_init::$7 @@ -3913,14 +4375,14 @@ Alias (signed word) mulf8s::return#0 = (signed word~) mulf8s::$15 (signed word) Alias (word) mulf8s::m#5 = (word) mulf8s::m#6 Alias (signed byte) mulf8s::a#3 = (signed byte) mulf8s::a#4 Alias (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 = (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$14 -Alias (byte*) BGCOL#1 = (byte*) BGCOL#22 (byte*) BGCOL#17 (byte*) BGCOL#14 (byte*) BGCOL#27 (byte*) BGCOL#28 +Alias (byte*) BGCOL#1 = (byte*) BGCOL#23 (byte*) BGCOL#19 (byte*) BGCOL#15 (byte*) BGCOL#29 (byte*) BGCOL#28 Alias (byte*) line_cursor#27 = (byte*) line_cursor#5 (byte*) line_cursor#57 (byte*) line_cursor#47 -Alias (byte*) char_cursor#131 = (byte*) char_cursor#21 (byte*) char_cursor#81 (byte*) char_cursor#144 -Alias (byte*) char_cursor#22 = (byte*) char_cursor#82 +Alias (byte*) char_cursor#135 = (byte*) char_cursor#21 (byte*) char_cursor#83 (byte*) char_cursor#148 +Alias (byte*) char_cursor#22 = (byte*) char_cursor#84 Alias (byte*) line_cursor#28 = (byte*) line_cursor#6 -Alias (byte*) char_cursor#23 = (byte*) char_cursor#83 +Alias (byte*) char_cursor#23 = (byte*) char_cursor#85 Alias (byte*) line_cursor#29 = (byte*) line_cursor#7 -Alias (byte*) char_cursor#24 = (byte*) char_cursor#84 (byte*) char_cursor#85 (byte*) char_cursor#25 +Alias (byte*) char_cursor#24 = (byte*) char_cursor#86 (byte*) char_cursor#87 (byte*) char_cursor#25 Alias (byte*) line_cursor#30 = (byte*) line_cursor#8 (byte*) line_cursor#31 (byte*) line_cursor#9 Alias (word) muls8u::return#0 = (word) muls8u::m#2 (word) muls8u::return#3 (word) muls8u::return#1 Alias (word) muls8u::m#0 = (word) muls8u::m#4 @@ -3933,132 +4395,155 @@ Alias (signed byte) muls8s::b#3 = (signed byte) muls8s::b#6 (signed byte) muls8s Alias (signed word) muls8s::m#1 = (signed word~) muls8s::$2 Alias (signed word) muls8s::return#0 = (signed word) muls8s::m#4 (signed word) muls8s::return#3 (signed word) muls8s::return#1 Alias (signed word) muls8s::m#2 = (signed word~) muls8s::$6 -Alias (byte*) BGCOL#0 = (byte*) BGCOL#13 (byte*) BGCOL#5 -Alias (byte*) multiply_tables_compare::asm_sqr#2 = (byte*) multiply_tables_compare::asm_sqr#3 (byte*) multiply_tables_compare::asm_sqr#5 (byte*) multiply_tables_compare::asm_sqr#4 -Alias (byte*) multiply_tables_compare::kc_sqr#2 = (byte*) multiply_tables_compare::kc_sqr#3 (byte*) multiply_tables_compare::kc_sqr#7 (byte*) multiply_tables_compare::kc_sqr#6 (byte*) multiply_tables_compare::kc_sqr#5 (byte*) multiply_tables_compare::kc_sqr#4 +Alias (byte*) BGCOL#0 = (byte*) BGCOL#14 (byte*) BGCOL#5 +Alias (byte*) mulf_tables_cmp::asm_sqr#2 = (byte*) mulf_tables_cmp::asm_sqr#3 (byte*) mulf_tables_cmp::asm_sqr#5 (byte*) mulf_tables_cmp::asm_sqr#4 +Alias (byte*) mulf_tables_cmp::kc_sqr#2 = (byte*) mulf_tables_cmp::kc_sqr#3 (byte*) mulf_tables_cmp::kc_sqr#7 (byte*) mulf_tables_cmp::kc_sqr#6 (byte*) mulf_tables_cmp::kc_sqr#5 (byte*) mulf_tables_cmp::kc_sqr#4 Alias (byte*) BGCOL#10 = (byte*) BGCOL#6 (byte*) BGCOL#2 -Alias (byte*) char_cursor#132 = (byte*) char_cursor#146 (byte*) char_cursor#145 (byte*) char_cursor#133 -Alias (byte*) line_cursor#48 = (byte*) line_cursor#69 (byte*) line_cursor#77 (byte*) line_cursor#86 (byte*) line_cursor#78 (byte*) line_cursor#68 (byte*) line_cursor#58 (byte*) line_cursor#59 (byte*) line_cursor#49 -Alias (byte*) char_cursor#26 = (byte*) char_cursor#86 -Alias (word) print_word::w#1 = (word~) multiply_tables_compare::$3 -Alias (byte*) char_cursor#27 = (byte*) char_cursor#87 -Alias (byte*) char_cursor#28 = (byte*) char_cursor#88 -Alias (word) print_word::w#2 = (word~) multiply_tables_compare::$6 -Alias (byte*) char_cursor#29 = (byte*) char_cursor#89 -Alias (byte*) char_cursor#30 = (byte*) char_cursor#90 +Alias (byte*) char_cursor#136 = (byte*) char_cursor#150 (byte*) char_cursor#149 (byte*) char_cursor#137 +Alias (byte*) line_cursor#48 = (byte*) line_cursor#69 (byte*) line_cursor#78 (byte*) line_cursor#88 (byte*) line_cursor#79 (byte*) line_cursor#68 (byte*) line_cursor#58 (byte*) line_cursor#59 (byte*) line_cursor#49 +Alias (byte*) char_cursor#26 = (byte*) char_cursor#88 +Alias (word) print_word::w#1 = (word~) mulf_tables_cmp::$3 +Alias (byte*) char_cursor#27 = (byte*) char_cursor#89 +Alias (byte*) char_cursor#28 = (byte*) char_cursor#90 +Alias (word) print_word::w#2 = (word~) mulf_tables_cmp::$6 +Alias (byte*) char_cursor#29 = (byte*) char_cursor#91 +Alias (byte*) char_cursor#30 = (byte*) char_cursor#92 Alias (byte*) line_cursor#10 = (byte*) line_cursor#32 -Alias (byte*) char_cursor#31 = (byte*) char_cursor#91 +Alias (byte*) char_cursor#31 = (byte*) char_cursor#93 Alias (byte*) line_cursor#11 = (byte*) line_cursor#33 -Alias (byte*) char_cursor#32 = (byte*) char_cursor#92 +Alias (byte*) char_cursor#32 = (byte*) char_cursor#94 Alias (word) muls8u::return#2 = (word) muls8u::return#4 -Alias (byte) multiply_results_compare::a#2 = (byte) multiply_results_compare::a#3 (byte) multiply_results_compare::a#8 (byte) multiply_results_compare::a#7 (byte) multiply_results_compare::a#4 (byte) multiply_results_compare::a#5 -Alias (byte) multiply_results_compare::b#2 = (byte) multiply_results_compare::b#3 (byte) multiply_results_compare::b#6 (byte) multiply_results_compare::b#4 (byte) multiply_results_compare::b#5 -Alias (byte*) BGCOL#11 = (byte*) BGCOL#15 (byte*) BGCOL#7 (byte*) BGCOL#19 (byte*) BGCOL#3 (byte*) BGCOL#24 -Alias (byte*) char_cursor#134 = (byte*) char_cursor#154 (byte*) char_cursor#159 (byte*) char_cursor#147 (byte*) char_cursor#155 (byte*) char_cursor#148 (byte*) char_cursor#135 -Alias (byte*) line_cursor#50 = (byte*) line_cursor#70 (byte*) line_cursor#79 (byte*) line_cursor#60 (byte*) line_cursor#80 (byte*) line_cursor#71 (byte*) line_cursor#61 (byte*) line_cursor#51 -Alias (word) multiply_results_compare::ms#0 = (word~) multiply_results_compare::$0 (word) multiply_results_compare::ms#1 (word) multiply_results_compare::ms#2 +Alias (byte) mul8u_slowfast_compare::a#12 = (byte) mul8u_slowfast_compare::a#3 (byte) mul8u_slowfast_compare::a#2 (byte) mul8u_slowfast_compare::a#4 (byte) mul8u_slowfast_compare::a#13 +Alias (byte) mul8u_slowfast_compare::b#10 = (byte) mul8u_slowfast_compare::b#3 (byte) mul8u_slowfast_compare::b#2 (byte) mul8u_slowfast_compare::b#4 (byte) mul8u_slowfast_compare::b#11 +Alias (byte*) BGCOL#16 = (byte*) BGCOL#24 (byte*) BGCOL#27 (byte*) BGCOL#20 (byte*) BGCOL#17 +Alias (byte*) char_cursor#164 = (byte*) char_cursor#169 (byte*) char_cursor#171 (byte*) char_cursor#167 (byte*) char_cursor#165 +Alias (byte*) line_cursor#80 = (byte*) line_cursor#93 (byte*) line_cursor#97 (byte*) line_cursor#89 (byte*) line_cursor#81 +Alias (word) mul8u_slowfast_compare::ms#0 = (word~) mul8u_slowfast_compare::$0 (word) mul8u_slowfast_compare::ms#4 (word) mul8u_slowfast_compare::ms#1 (word) mul8u_slowfast_compare::ms#5 Alias (word) mulf8u::return#3 = (word) mulf8u::return#6 -Alias (word) multiply_results_compare::ma#0 = (word~) multiply_results_compare::$1 (word) multiply_results_compare::ma#1 -Alias (byte*) char_cursor#33 = (byte*) char_cursor#93 +Alias (word) mul8u_slowfast_compare::mf#0 = (word~) mul8u_slowfast_compare::$1 (word) mul8u_slowfast_compare::mf#1 (word) mul8u_slowfast_compare::mf#6 +Alias (word) mul8u::return#2 = (word) mul8u::return#4 +Alias (word) mul8u_slowfast_compare::mn#0 = (word~) mul8u_slowfast_compare::$2 (word) mul8u_slowfast_compare::mn#3 +Alias (byte) mul8u_slowfast_compare::b#8 = (byte) mul8u_slowfast_compare::b#9 +Alias (byte*) BGCOL#11 = (byte*) BGCOL#12 +Alias (byte) mul8u_slowfast_compare::a#10 = (byte) mul8u_slowfast_compare::a#11 +Alias (word) mul8u_slowfast_compare::ms#2 = (word) mul8u_slowfast_compare::ms#7 +Alias (word) mul8u_slowfast_compare::mn#1 = (word) mul8u_slowfast_compare::mn#5 +Alias (word) mul8u_slowfast_compare::mf#4 = (word) mul8u_slowfast_compare::mf#5 +Alias (byte*) char_cursor#158 = (byte*) char_cursor#159 +Alias (byte*) line_cursor#70 = (byte*) line_cursor#71 +Alias (byte) mul8u_slowfast_compare::b#5 = (byte) mul8u_slowfast_compare::b#7 (byte) mul8u_slowfast_compare::b#6 +Alias (byte) mul8u_slowfast_compare::a#5 = (byte) mul8u_slowfast_compare::a#8 (byte) mul8u_slowfast_compare::a#9 (byte) mul8u_slowfast_compare::a#6 +Alias (byte*) char_cursor#138 = (byte*) char_cursor#160 (byte*) char_cursor#151 (byte*) char_cursor#152 (byte*) char_cursor#139 +Alias (byte*) line_cursor#50 = (byte*) line_cursor#82 (byte*) line_cursor#60 (byte*) line_cursor#72 (byte*) line_cursor#61 (byte*) line_cursor#51 +Alias (byte*) BGCOL#3 = (byte*) BGCOL#31 (byte*) BGCOL#7 (byte*) BGCOL#33 +Alias (word) mul8u_slowfast_compare::ms#3 = (word) mul8u_slowfast_compare::ms#6 +Alias (word) mul8u_slowfast_compare::mn#2 = (word) mul8u_slowfast_compare::mn#4 +Alias (word) mul8u_slowfast_compare::mf#2 = (word) mul8u_slowfast_compare::mf#3 +Alias (byte*) char_cursor#33 = (byte*) char_cursor#95 Alias (byte*) line_cursor#12 = (byte*) line_cursor#34 -Alias (byte*) char_cursor#34 = (byte*) char_cursor#94 +Alias (byte*) char_cursor#34 = (byte*) char_cursor#96 Alias (byte*) line_cursor#13 = (byte*) line_cursor#35 -Alias (byte*) char_cursor#35 = (byte*) char_cursor#95 +Alias (byte*) char_cursor#35 = (byte*) char_cursor#97 Alias (byte*) line_cursor#14 = (byte*) line_cursor#36 -Alias (byte*) char_cursor#36 = (byte*) char_cursor#96 +Alias (byte*) char_cursor#36 = (byte*) char_cursor#98 Alias (byte) multiply_error::a#1 = (byte) multiply_error::a#2 Alias (byte) multiply_error::b#1 = (byte) multiply_error::b#3 (byte) multiply_error::b#4 (byte) multiply_error::b#2 Alias (word) multiply_error::ms#1 = (word) multiply_error::ms#5 (word) multiply_error::ms#6 (word) multiply_error::ms#4 (word) multiply_error::ms#3 (word) multiply_error::ms#2 -Alias (word) multiply_error::ma#1 = (word) multiply_error::ma#7 (word) multiply_error::ma#8 (word) multiply_error::ma#6 (word) multiply_error::ma#5 (word) multiply_error::ma#4 (word) multiply_error::ma#3 (word) multiply_error::ma#2 -Alias (byte*) line_cursor#52 = (byte*) line_cursor#97 (byte*) line_cursor#99 (byte*) line_cursor#95 (byte*) line_cursor#92 (byte*) line_cursor#88 (byte*) line_cursor#81 (byte*) line_cursor#72 (byte*) line_cursor#62 -Alias (byte*) char_cursor#37 = (byte*) char_cursor#97 -Alias (byte*) char_cursor#38 = (byte*) char_cursor#98 -Alias (byte*) char_cursor#39 = (byte*) char_cursor#99 -Alias (byte*) char_cursor#100 = (byte*) char_cursor#40 -Alias (byte*) char_cursor#101 = (byte*) char_cursor#41 -Alias (byte*) char_cursor#102 = (byte*) char_cursor#42 -Alias (byte*) char_cursor#103 = (byte*) char_cursor#43 -Alias (byte*) char_cursor#104 = (byte*) char_cursor#44 +Alias (word) multiply_error::mn#1 = (word) multiply_error::mn#7 (word) multiply_error::mn#8 (word) multiply_error::mn#6 (word) multiply_error::mn#5 (word) multiply_error::mn#4 (word) multiply_error::mn#3 (word) multiply_error::mn#2 +Alias (word) multiply_error::mf#1 = (word) multiply_error::mf#9 (word) multiply_error::mf#10 (word) multiply_error::mf#8 (word) multiply_error::mf#7 (word) multiply_error::mf#6 (word) multiply_error::mf#5 (word) multiply_error::mf#4 (word) multiply_error::mf#3 (word) multiply_error::mf#2 +Alias (byte*) line_cursor#101 = (byte*) line_cursor#106 (byte*) line_cursor#107 (byte*) line_cursor#104 (byte*) line_cursor#98 (byte*) line_cursor#94 (byte*) line_cursor#90 (byte*) line_cursor#83 (byte*) line_cursor#73 (byte*) line_cursor#62 (byte*) line_cursor#52 +Alias (byte*) char_cursor#37 = (byte*) char_cursor#99 +Alias (byte*) char_cursor#100 = (byte*) char_cursor#38 +Alias (byte*) char_cursor#101 = (byte*) char_cursor#39 +Alias (byte*) char_cursor#102 = (byte*) char_cursor#40 +Alias (byte*) char_cursor#103 = (byte*) char_cursor#41 +Alias (byte*) char_cursor#104 = (byte*) char_cursor#42 +Alias (byte*) char_cursor#105 = (byte*) char_cursor#43 +Alias (byte*) char_cursor#106 = (byte*) char_cursor#44 +Alias (byte*) char_cursor#107 = (byte*) char_cursor#45 +Alias (byte*) char_cursor#108 = (byte*) char_cursor#46 Alias (byte*) line_cursor#15 = (byte*) line_cursor#37 (byte*) line_cursor#38 (byte*) line_cursor#16 -Alias (byte*) char_cursor#105 = (byte*) char_cursor#45 (byte*) char_cursor#106 (byte*) char_cursor#46 -Alias (signed byte) signed_multiply_results_compare::a#0 = (signed byte/signed word/signed dword~) signed_multiply_results_compare::$0 -Alias (signed byte) signed_multiply_results_compare::b#0 = (signed byte/signed word/signed dword~) signed_multiply_results_compare::$1 +Alias (byte*) char_cursor#109 = (byte*) char_cursor#47 (byte*) char_cursor#110 (byte*) char_cursor#48 +Alias (signed byte) mul8s_slowfast_compare::a#0 = (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$0 +Alias (signed byte) mul8s_slowfast_compare::b#0 = (signed byte/signed word/signed dword~) mul8s_slowfast_compare::$1 Alias (signed word) muls8s::return#2 = (signed word) muls8s::return#4 -Alias (signed byte) signed_multiply_results_compare::a#2 = (signed byte) signed_multiply_results_compare::a#3 (signed byte) signed_multiply_results_compare::a#8 (signed byte) signed_multiply_results_compare::a#7 (signed byte) signed_multiply_results_compare::a#4 (signed byte) signed_multiply_results_compare::a#5 -Alias (signed byte) signed_multiply_results_compare::b#2 = (signed byte) signed_multiply_results_compare::b#3 (signed byte) signed_multiply_results_compare::b#6 (signed byte) signed_multiply_results_compare::b#4 (signed byte) signed_multiply_results_compare::b#5 -Alias (byte*) BGCOL#12 = (byte*) BGCOL#16 (byte*) BGCOL#8 (byte*) BGCOL#21 (byte*) BGCOL#4 (byte*) BGCOL#26 -Alias (byte*) char_cursor#137 = (byte*) char_cursor#156 (byte*) char_cursor#160 (byte*) char_cursor#149 (byte*) char_cursor#157 (byte*) char_cursor#150 (byte*) char_cursor#138 -Alias (byte*) line_cursor#53 = (byte*) line_cursor#73 (byte*) line_cursor#82 (byte*) line_cursor#63 (byte*) line_cursor#83 (byte*) line_cursor#74 (byte*) line_cursor#64 (byte*) line_cursor#54 -Alias (signed word) signed_multiply_results_compare::ms#0 = (signed word~) signed_multiply_results_compare::$2 (signed word) signed_multiply_results_compare::ms#1 (signed word) signed_multiply_results_compare::ms#2 +Alias (signed byte) mul8s_slowfast_compare::a#2 = (signed byte) mul8s_slowfast_compare::a#3 (signed byte) mul8s_slowfast_compare::a#8 (signed byte) mul8s_slowfast_compare::a#7 (signed byte) mul8s_slowfast_compare::a#4 (signed byte) mul8s_slowfast_compare::a#5 +Alias (signed byte) mul8s_slowfast_compare::b#2 = (signed byte) mul8s_slowfast_compare::b#3 (signed byte) mul8s_slowfast_compare::b#6 (signed byte) mul8s_slowfast_compare::b#4 (signed byte) mul8s_slowfast_compare::b#5 +Alias (byte*) BGCOL#13 = (byte*) BGCOL#18 (byte*) BGCOL#8 (byte*) BGCOL#22 (byte*) BGCOL#4 (byte*) BGCOL#26 +Alias (byte*) char_cursor#141 = (byte*) char_cursor#161 (byte*) char_cursor#166 (byte*) char_cursor#153 (byte*) char_cursor#162 (byte*) char_cursor#154 (byte*) char_cursor#142 +Alias (byte*) line_cursor#53 = (byte*) line_cursor#74 (byte*) line_cursor#84 (byte*) line_cursor#63 (byte*) line_cursor#85 (byte*) line_cursor#75 (byte*) line_cursor#64 (byte*) line_cursor#54 +Alias (signed word) mul8s_slowfast_compare::ms#0 = (signed word~) mul8s_slowfast_compare::$2 (signed word) mul8s_slowfast_compare::ms#1 (signed word) mul8s_slowfast_compare::ms#2 Alias (signed word) mulf8s::return#2 = (signed word) mulf8s::return#4 -Alias (signed word) signed_multiply_results_compare::ma#0 = (signed word~) signed_multiply_results_compare::$3 (signed word) signed_multiply_results_compare::ma#1 -Alias (byte*) char_cursor#107 = (byte*) char_cursor#47 +Alias (signed word) mul8s_slowfast_compare::ma#0 = (signed word~) mul8s_slowfast_compare::$3 (signed word) mul8s_slowfast_compare::ma#1 +Alias (byte*) char_cursor#111 = (byte*) char_cursor#49 Alias (byte*) line_cursor#17 = (byte*) line_cursor#39 -Alias (byte*) char_cursor#108 = (byte*) char_cursor#48 +Alias (byte*) char_cursor#112 = (byte*) char_cursor#50 Alias (byte*) line_cursor#18 = (byte*) line_cursor#40 -Alias (byte*) char_cursor#109 = (byte*) char_cursor#49 +Alias (byte*) char_cursor#113 = (byte*) char_cursor#51 Alias (byte*) line_cursor#19 = (byte*) line_cursor#41 -Alias (byte*) char_cursor#110 = (byte*) char_cursor#50 +Alias (byte*) char_cursor#114 = (byte*) char_cursor#52 Alias (signed byte) signed_multiply_error::a#1 = (signed byte) signed_multiply_error::a#2 Alias (signed byte) signed_multiply_error::b#1 = (signed byte) signed_multiply_error::b#3 (signed byte) signed_multiply_error::b#4 (signed byte) signed_multiply_error::b#2 Alias (signed word) signed_multiply_error::ms#1 = (signed word) signed_multiply_error::ms#5 (signed word) signed_multiply_error::ms#6 (signed word) signed_multiply_error::ms#4 (signed word) signed_multiply_error::ms#3 (signed word) signed_multiply_error::ms#2 Alias (signed word) signed_multiply_error::ma#1 = (signed word) signed_multiply_error::ma#7 (signed word) signed_multiply_error::ma#8 (signed word) signed_multiply_error::ma#6 (signed word) signed_multiply_error::ma#5 (signed word) signed_multiply_error::ma#4 (signed word) signed_multiply_error::ma#3 (signed word) signed_multiply_error::ma#2 -Alias (byte*) line_cursor#100 = (byte*) line_cursor#98 (byte*) line_cursor#96 (byte*) line_cursor#94 (byte*) line_cursor#90 (byte*) line_cursor#84 (byte*) line_cursor#75 (byte*) line_cursor#65 (byte*) line_cursor#55 -Alias (byte*) char_cursor#111 = (byte*) char_cursor#51 -Alias (byte*) char_cursor#112 = (byte*) char_cursor#52 -Alias (byte*) char_cursor#113 = (byte*) char_cursor#53 -Alias (byte*) char_cursor#114 = (byte*) char_cursor#54 -Alias (byte*) char_cursor#115 = (byte*) char_cursor#55 -Alias (byte*) char_cursor#116 = (byte*) char_cursor#56 -Alias (byte*) char_cursor#117 = (byte*) char_cursor#57 -Alias (byte*) char_cursor#118 = (byte*) char_cursor#58 +Alias (byte*) line_cursor#102 = (byte*) line_cursor#105 (byte*) line_cursor#99 (byte*) line_cursor#96 (byte*) line_cursor#92 (byte*) line_cursor#86 (byte*) line_cursor#76 (byte*) line_cursor#65 (byte*) line_cursor#55 +Alias (byte*) char_cursor#115 = (byte*) char_cursor#53 +Alias (byte*) char_cursor#116 = (byte*) char_cursor#54 +Alias (byte*) char_cursor#117 = (byte*) char_cursor#55 +Alias (byte*) char_cursor#118 = (byte*) char_cursor#56 +Alias (byte*) char_cursor#119 = (byte*) char_cursor#57 +Alias (byte*) char_cursor#120 = (byte*) char_cursor#58 +Alias (byte*) char_cursor#121 = (byte*) char_cursor#59 +Alias (byte*) char_cursor#122 = (byte*) char_cursor#60 Alias (byte*) line_cursor#20 = (byte*) line_cursor#42 (byte*) line_cursor#43 (byte*) line_cursor#21 -Alias (byte*) char_cursor#119 = (byte*) char_cursor#59 (byte*) char_cursor#120 (byte*) char_cursor#60 +Alias (byte*) char_cursor#123 = (byte*) char_cursor#61 (byte*) char_cursor#124 (byte*) char_cursor#62 Alias (byte*) line_cursor#22 = (byte*) line_cursor#44 -Alias (byte*) char_cursor#121 = (byte*) char_cursor#61 +Alias (byte*) char_cursor#125 = (byte*) char_cursor#63 Succesful SSA optimization Pass2AliasElimination -Not aliassing across scopes: print_str::str#16 print_str::str#5 -Not aliassing across scopes: char_cursor#141 char_cursor#136 -Not aliassing across scopes: line_cursor#45 line_cursor#52 -Not aliassing across scopes: char_cursor#123 char_cursor#104 +Not aliassing across scopes: print_str::str#17 print_str::str#10 +Not aliassing across scopes: char_cursor#145 char_cursor#141 +Not aliassing across scopes: line_cursor#45 line_cursor#53 +Not aliassing across scopes: char_cursor#127 char_cursor#113 Not aliassing across scopes: print_sword::w#3 print_sword::w#1 -Not aliassing across scopes: char_cursor#125 char_cursor#115 +Not aliassing across scopes: char_cursor#129 char_cursor#119 Not aliassing across scopes: char_cursor#5 char_cursor#12 Not aliassing across scopes: char_cursor#6 char_cursor#17 Not aliassing across scopes: print_sbyte::b#3 print_sbyte::b#1 -Not aliassing across scopes: char_cursor#127 char_cursor#111 +Not aliassing across scopes: char_cursor#131 char_cursor#115 Not aliassing across scopes: char_cursor#10 char_cursor#15 -Not aliassing across scopes: char_cursor#70 char_cursor#17 -Not aliassing across scopes: print_word::w#5 print_word::w#3 -Not aliassing across scopes: char_cursor#128 char_cursor#101 +Not aliassing across scopes: char_cursor#72 char_cursor#17 +Not aliassing across scopes: print_word::w#6 print_word::w#1 +Not aliassing across scopes: char_cursor#132 char_cursor#26 Not aliassing across scopes: char_cursor#11 char_cursor#15 Not aliassing across scopes: char_cursor#12 char_cursor#15 Not aliassing across scopes: print_byte::b#5 print_byte::b#3 -Not aliassing across scopes: char_cursor#129 char_cursor#37 +Not aliassing across scopes: char_cursor#133 char_cursor#37 Not aliassing across scopes: char_cursor#14 char_cursor#17 Not aliassing across scopes: char_cursor#15 char_cursor#17 Not aliassing across scopes: print_char::ch#4 print_char::ch#2 -Not aliassing across scopes: char_cursor#78 char_cursor#129 +Not aliassing across scopes: char_cursor#80 char_cursor#133 Not aliassing across scopes: print_cls::sc#0 SCREEN#0 Not aliassing across scopes: line_cursor#26 SCREEN#0 +Not aliassing across scopes: mul8u::b#1 mul8u::b#0 +Not aliassing across scopes: mul8u::a#5 mul8u::a#1 Not aliassing across scopes: mulf_init::sqr2_hi#0 mulf_sqr2_hi#0 Not aliassing across scopes: mulf_init::sqr2_lo#0 mulf_sqr2_lo#0 -Not aliassing across scopes: mulf8u::a#2 mulf8u::a#0 -Not aliassing across scopes: mulf8u::b#2 mulf8u::b#0 +Not aliassing across scopes: mulf8u::a#2 mulf8u::a#1 +Not aliassing across scopes: mulf8u::b#2 mulf8u::b#1 Not aliassing across scopes: mulf8s::a#1 mulf8s::a#0 Not aliassing across scopes: mulf8s::b#1 mulf8s::b#0 Not aliassing across scopes: mulf8u::return#2 mulf8u::return#0 Not aliassing across scopes: mulf8s::m#0 mulf8u::return#2 Not aliassing across scopes: BGCOL#1 BGCOL#0 Not aliassing across scopes: line_cursor#46 SCREEN#0 -Not aliassing across scopes: char_cursor#130 SCREEN#0 +Not aliassing across scopes: char_cursor#134 SCREEN#0 Not aliassing across scopes: line_cursor#27 line_cursor#26 -Not aliassing across scopes: char_cursor#131 line_cursor#26 +Not aliassing across scopes: char_cursor#135 line_cursor#26 Not aliassing across scopes: char_cursor#22 char_cursor#30 Not aliassing across scopes: line_cursor#28 line_cursor#10 Not aliassing across scopes: char_cursor#23 char_cursor#34 Not aliassing across scopes: line_cursor#29 line_cursor#13 -Not aliassing across scopes: char_cursor#24 char_cursor#108 +Not aliassing across scopes: char_cursor#24 char_cursor#112 Not aliassing across scopes: line_cursor#30 line_cursor#18 Not aliassing across scopes: muls8u::a#1 muls8u::a#0 Not aliassing across scopes: muls8u::b#2 muls8u::b#0 @@ -4071,99 +4556,110 @@ Not aliassing identity: muls8s::a#3 muls8s::a#3 Not aliassing identity: muls8s::b#2 muls8s::b#2 Not aliassing identity: muls8s::a#4 muls8s::a#4 Not aliassing across scopes: BGCOL#9 BGCOL#1 -Not aliassing across scopes: char_cursor#153 char_cursor#131 -Not aliassing across scopes: line_cursor#85 line_cursor#27 -Not aliassing across scopes: multiply_tables_compare::asm_sqr#0 mula_sqr1_lo#0 -Not aliassing across scopes: multiply_tables_compare::kc_sqr#0 mulf_sqr1_lo#0 -Not aliassing across scopes: char_cursor#26 char_cursor#122 +Not aliassing across scopes: char_cursor#157 char_cursor#135 +Not aliassing across scopes: line_cursor#87 line_cursor#27 +Not aliassing across scopes: mulf_tables_cmp::asm_sqr#0 mula_sqr1_lo#0 +Not aliassing across scopes: mulf_tables_cmp::kc_sqr#0 mulf_sqr1_lo#0 +Not aliassing across scopes: char_cursor#26 char_cursor#126 Not aliassing across scopes: char_cursor#27 char_cursor#12 -Not aliassing across scopes: char_cursor#28 char_cursor#122 +Not aliassing across scopes: char_cursor#28 char_cursor#126 Not aliassing across scopes: char_cursor#29 char_cursor#12 -Not aliassing across scopes: char_cursor#31 char_cursor#122 +Not aliassing across scopes: char_cursor#31 char_cursor#126 Not aliassing across scopes: line_cursor#11 line_cursor#1 Not aliassing across scopes: char_cursor#32 line_cursor#1 -Not aliassing across scopes: BGCOL#23 BGCOL#1 -Not aliassing across scopes: char_cursor#163 char_cursor#22 -Not aliassing across scopes: line_cursor#91 line_cursor#28 -Not aliassing across scopes: muls8u::a#0 multiply_results_compare::a#2 -Not aliassing across scopes: muls8u::b#0 multiply_results_compare::b#2 +Not aliassing across scopes: BGCOL#32 BGCOL#1 +Not aliassing across scopes: char_cursor#173 char_cursor#22 +Not aliassing across scopes: line_cursor#103 line_cursor#28 +Not aliassing across scopes: muls8u::a#0 mul8u_slowfast_compare::a#12 +Not aliassing across scopes: muls8u::b#0 mul8u_slowfast_compare::b#10 Not aliassing across scopes: muls8u::return#2 muls8u::return#0 -Not aliassing across scopes: multiply_results_compare::ms#0 muls8u::return#2 -Not aliassing across scopes: mulf8u::a#1 multiply_results_compare::a#2 -Not aliassing across scopes: mulf8u::b#1 multiply_results_compare::b#2 +Not aliassing across scopes: mul8u_slowfast_compare::ms#0 muls8u::return#2 +Not aliassing across scopes: mulf8u::a#1 mul8u_slowfast_compare::a#12 +Not aliassing across scopes: mulf8u::b#1 mul8u_slowfast_compare::b#10 Not aliassing across scopes: mulf8u::return#3 mulf8u::return#0 -Not aliassing across scopes: multiply_results_compare::ma#0 mulf8u::return#3 -Not aliassing across scopes: multiply_error::a#0 multiply_results_compare::a#2 -Not aliassing across scopes: multiply_error::b#0 multiply_results_compare::b#2 -Not aliassing across scopes: multiply_error::ms#0 multiply_results_compare::ms#0 -Not aliassing across scopes: multiply_error::ma#0 multiply_results_compare::ma#0 -Not aliassing across scopes: char_cursor#33 char_cursor#105 +Not aliassing across scopes: mul8u_slowfast_compare::mf#0 mulf8u::return#3 +Not aliassing across scopes: mul8u::a#1 mul8u_slowfast_compare::a#12 +Not aliassing across scopes: mul8u::b#0 mul8u_slowfast_compare::b#10 +Not aliassing across scopes: mul8u::return#2 mul8u::res#2 +Not aliassing across scopes: mul8u_slowfast_compare::mn#0 mul8u::return#2 +Not aliassing across scopes: multiply_error::a#0 mul8u_slowfast_compare::a#5 +Not aliassing across scopes: multiply_error::b#0 mul8u_slowfast_compare::b#5 +Not aliassing across scopes: multiply_error::ms#0 mul8u_slowfast_compare::ms#3 +Not aliassing across scopes: multiply_error::mn#0 mul8u_slowfast_compare::mn#2 +Not aliassing across scopes: multiply_error::mf#0 mul8u_slowfast_compare::mf#2 +Not aliassing across scopes: char_cursor#33 char_cursor#109 Not aliassing across scopes: line_cursor#12 line_cursor#15 -Not aliassing across scopes: char_cursor#35 char_cursor#122 +Not aliassing across scopes: char_cursor#35 char_cursor#126 Not aliassing across scopes: line_cursor#14 line_cursor#1 Not aliassing across scopes: char_cursor#36 line_cursor#1 -Not aliassing across scopes: char_cursor#136 char_cursor#134 +Not aliassing across scopes: char_cursor#140 char_cursor#138 Not aliassing across scopes: multiply_error::a#1 multiply_error::a#0 Not aliassing across scopes: multiply_error::b#1 multiply_error::b#0 Not aliassing across scopes: multiply_error::ms#1 multiply_error::ms#0 -Not aliassing across scopes: multiply_error::ma#1 multiply_error::ma#0 -Not aliassing across scopes: line_cursor#52 line_cursor#50 -Not aliassing across scopes: char_cursor#37 char_cursor#122 +Not aliassing across scopes: multiply_error::mn#1 multiply_error::mn#0 +Not aliassing across scopes: multiply_error::mf#1 multiply_error::mf#0 +Not aliassing across scopes: line_cursor#101 line_cursor#50 +Not aliassing across scopes: char_cursor#37 char_cursor#126 Not aliassing across scopes: print_byte::b#3 multiply_error::a#1 -Not aliassing across scopes: char_cursor#38 char_cursor#15 -Not aliassing across scopes: char_cursor#39 char_cursor#122 -Not aliassing across scopes: print_byte::b#4 multiply_error::b#1 Not aliassing across scopes: char_cursor#100 char_cursor#15 -Not aliassing across scopes: char_cursor#101 char_cursor#122 +Not aliassing across scopes: char_cursor#101 char_cursor#126 +Not aliassing across scopes: print_byte::b#4 multiply_error::b#1 +Not aliassing across scopes: char_cursor#102 char_cursor#15 +Not aliassing across scopes: char_cursor#103 char_cursor#126 Not aliassing across scopes: print_word::w#3 multiply_error::ms#1 -Not aliassing across scopes: char_cursor#102 char_cursor#12 -Not aliassing across scopes: char_cursor#103 char_cursor#122 -Not aliassing across scopes: print_word::w#4 multiply_error::ma#1 Not aliassing across scopes: char_cursor#104 char_cursor#12 +Not aliassing across scopes: char_cursor#105 char_cursor#126 +Not aliassing across scopes: print_word::w#4 multiply_error::mn#1 +Not aliassing across scopes: char_cursor#106 char_cursor#12 +Not aliassing across scopes: char_cursor#107 char_cursor#126 +Not aliassing across scopes: print_word::w#5 multiply_error::mf#1 +Not aliassing across scopes: char_cursor#108 char_cursor#12 Not aliassing across scopes: line_cursor#15 line_cursor#1 -Not aliassing across scopes: char_cursor#105 line_cursor#1 +Not aliassing across scopes: char_cursor#109 line_cursor#1 Not aliassing across scopes: BGCOL#25 BGCOL#1 -Not aliassing across scopes: char_cursor#164 char_cursor#23 -Not aliassing across scopes: line_cursor#93 line_cursor#29 -Not aliassing across scopes: muls8s::a#0 signed_multiply_results_compare::a#2 -Not aliassing across scopes: muls8s::b#0 signed_multiply_results_compare::b#2 +Not aliassing across scopes: char_cursor#170 char_cursor#23 +Not aliassing across scopes: line_cursor#95 line_cursor#29 +Not aliassing across scopes: muls8s::a#0 mul8s_slowfast_compare::a#2 +Not aliassing across scopes: muls8s::b#0 mul8s_slowfast_compare::b#2 Not aliassing across scopes: muls8s::return#2 muls8s::return#0 -Not aliassing across scopes: signed_multiply_results_compare::ms#0 muls8s::return#2 -Not aliassing across scopes: mulf8s::a#0 signed_multiply_results_compare::a#2 -Not aliassing across scopes: mulf8s::b#0 signed_multiply_results_compare::b#2 +Not aliassing across scopes: mul8s_slowfast_compare::ms#0 muls8s::return#2 +Not aliassing across scopes: mulf8s::a#0 mul8s_slowfast_compare::a#2 +Not aliassing across scopes: mulf8s::b#0 mul8s_slowfast_compare::b#2 Not aliassing across scopes: mulf8s::return#2 mulf8s::return#0 -Not aliassing across scopes: signed_multiply_results_compare::ma#0 mulf8s::return#2 -Not aliassing across scopes: signed_multiply_error::a#0 signed_multiply_results_compare::a#2 -Not aliassing across scopes: signed_multiply_error::b#0 signed_multiply_results_compare::b#2 -Not aliassing across scopes: signed_multiply_error::ms#0 signed_multiply_results_compare::ms#0 -Not aliassing across scopes: signed_multiply_error::ma#0 signed_multiply_results_compare::ma#0 -Not aliassing across scopes: char_cursor#107 char_cursor#119 +Not aliassing across scopes: mul8s_slowfast_compare::ma#0 mulf8s::return#2 +Not aliassing across scopes: signed_multiply_error::a#0 mul8s_slowfast_compare::a#2 +Not aliassing across scopes: signed_multiply_error::b#0 mul8s_slowfast_compare::b#2 +Not aliassing across scopes: signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#0 +Not aliassing across scopes: signed_multiply_error::ma#0 mul8s_slowfast_compare::ma#0 +Not aliassing across scopes: char_cursor#111 char_cursor#123 Not aliassing across scopes: line_cursor#17 line_cursor#20 -Not aliassing across scopes: char_cursor#109 char_cursor#122 +Not aliassing across scopes: char_cursor#113 char_cursor#126 Not aliassing across scopes: line_cursor#19 line_cursor#1 -Not aliassing across scopes: char_cursor#110 line_cursor#1 -Not aliassing across scopes: char_cursor#139 char_cursor#137 +Not aliassing across scopes: char_cursor#114 line_cursor#1 +Not aliassing across scopes: char_cursor#143 char_cursor#141 Not aliassing across scopes: signed_multiply_error::a#1 signed_multiply_error::a#0 Not aliassing across scopes: signed_multiply_error::b#1 signed_multiply_error::b#0 Not aliassing across scopes: signed_multiply_error::ms#1 signed_multiply_error::ms#0 Not aliassing across scopes: signed_multiply_error::ma#1 signed_multiply_error::ma#0 -Not aliassing across scopes: line_cursor#100 line_cursor#53 -Not aliassing across scopes: char_cursor#111 char_cursor#122 +Not aliassing across scopes: line_cursor#102 line_cursor#53 +Not aliassing across scopes: char_cursor#115 char_cursor#126 Not aliassing across scopes: print_sbyte::b#1 signed_multiply_error::a#1 -Not aliassing across scopes: char_cursor#112 char_cursor#10 -Not aliassing across scopes: char_cursor#113 char_cursor#122 +Not aliassing across scopes: char_cursor#116 char_cursor#10 +Not aliassing across scopes: char_cursor#117 char_cursor#126 Not aliassing across scopes: print_sbyte::b#2 signed_multiply_error::b#1 -Not aliassing across scopes: char_cursor#114 char_cursor#10 -Not aliassing across scopes: char_cursor#115 char_cursor#122 +Not aliassing across scopes: char_cursor#118 char_cursor#10 +Not aliassing across scopes: char_cursor#119 char_cursor#126 Not aliassing across scopes: print_sword::w#1 signed_multiply_error::ms#1 -Not aliassing across scopes: char_cursor#116 char_cursor#5 -Not aliassing across scopes: char_cursor#117 char_cursor#122 +Not aliassing across scopes: char_cursor#120 char_cursor#5 +Not aliassing across scopes: char_cursor#121 char_cursor#126 Not aliassing across scopes: print_sword::w#2 signed_multiply_error::ma#1 -Not aliassing across scopes: char_cursor#118 char_cursor#5 +Not aliassing across scopes: char_cursor#122 char_cursor#5 Not aliassing across scopes: line_cursor#20 line_cursor#1 -Not aliassing across scopes: char_cursor#119 line_cursor#1 +Not aliassing across scopes: char_cursor#123 line_cursor#1 Not aliassing across scopes: line_cursor#22 line_cursor#30 -Not aliassing across scopes: char_cursor#121 char_cursor#24 +Not aliassing across scopes: char_cursor#125 char_cursor#24 +Alias (byte) mul8u::a#2 = (byte) mul8u::a#4 +Alias (word) mul8u::mb#2 = (word) mul8u::mb#3 Alias (byte*) mulf_init::sqr1_lo#2 = (byte*) mulf_init::sqr1_lo#3 Alias (byte*) mulf_init::sqr1_hi#2 = (byte*) mulf_init::sqr1_hi#3 Alias (byte) mulf_init::c#1 = (byte) mulf_init::c#3 @@ -4172,49 +4668,59 @@ Alias (byte) mulf_init::x_255#1 = (byte) mulf_init::x_255#3 Alias (byte*) mulf_init::sqr2_hi#1 = (byte*) mulf_init::sqr2_hi#3 Alias (signed byte) mulf8s::b#1 = (signed byte) mulf8s::b#2 Alias (signed byte) mulf8s::a#1 = (signed byte) mulf8s::a#3 +Alias (word) mul8u_slowfast_compare::ms#0 = (word) mul8u_slowfast_compare::ms#2 (word) mul8u_slowfast_compare::ms#3 +Alias (word) mul8u_slowfast_compare::mn#0 = (word) mul8u_slowfast_compare::mn#1 (word) mul8u_slowfast_compare::mn#2 +Alias (byte) mul8u_slowfast_compare::b#10 = (byte) mul8u_slowfast_compare::b#8 (byte) mul8u_slowfast_compare::b#5 +Alias (byte*) BGCOL#11 = (byte*) BGCOL#16 (byte*) BGCOL#3 +Alias (byte) mul8u_slowfast_compare::a#10 = (byte) mul8u_slowfast_compare::a#12 (byte) mul8u_slowfast_compare::a#5 +Alias (word) mul8u_slowfast_compare::mf#0 = (word) mul8u_slowfast_compare::mf#4 (word) mul8u_slowfast_compare::mf#2 +Alias (byte*) char_cursor#138 = (byte*) char_cursor#158 (byte*) char_cursor#164 +Alias (byte*) line_cursor#50 = (byte*) line_cursor#70 (byte*) line_cursor#80 Succesful SSA optimization Pass2AliasElimination -Not aliassing across scopes: print_str::str#16 print_str::str#5 -Not aliassing across scopes: char_cursor#141 char_cursor#136 -Not aliassing across scopes: line_cursor#45 line_cursor#52 -Not aliassing across scopes: char_cursor#123 char_cursor#104 +Not aliassing across scopes: print_str::str#17 print_str::str#10 +Not aliassing across scopes: char_cursor#145 char_cursor#141 +Not aliassing across scopes: line_cursor#45 line_cursor#53 +Not aliassing across scopes: char_cursor#127 char_cursor#113 Not aliassing across scopes: print_sword::w#3 print_sword::w#1 -Not aliassing across scopes: char_cursor#125 char_cursor#115 +Not aliassing across scopes: char_cursor#129 char_cursor#119 Not aliassing across scopes: char_cursor#5 char_cursor#12 Not aliassing across scopes: char_cursor#6 char_cursor#17 Not aliassing across scopes: print_sbyte::b#3 print_sbyte::b#1 -Not aliassing across scopes: char_cursor#127 char_cursor#111 +Not aliassing across scopes: char_cursor#131 char_cursor#115 Not aliassing across scopes: char_cursor#10 char_cursor#15 -Not aliassing across scopes: char_cursor#70 char_cursor#17 -Not aliassing across scopes: print_word::w#5 print_word::w#3 -Not aliassing across scopes: char_cursor#128 char_cursor#101 +Not aliassing across scopes: char_cursor#72 char_cursor#17 +Not aliassing across scopes: print_word::w#6 print_word::w#1 +Not aliassing across scopes: char_cursor#132 char_cursor#26 Not aliassing across scopes: char_cursor#11 char_cursor#15 Not aliassing across scopes: char_cursor#12 char_cursor#15 Not aliassing across scopes: print_byte::b#5 print_byte::b#3 -Not aliassing across scopes: char_cursor#129 char_cursor#37 +Not aliassing across scopes: char_cursor#133 char_cursor#37 Not aliassing across scopes: char_cursor#14 char_cursor#17 Not aliassing across scopes: char_cursor#15 char_cursor#17 Not aliassing across scopes: print_char::ch#4 print_char::ch#2 -Not aliassing across scopes: char_cursor#78 char_cursor#129 +Not aliassing across scopes: char_cursor#80 char_cursor#133 Not aliassing across scopes: print_cls::sc#0 SCREEN#0 Not aliassing across scopes: line_cursor#26 SCREEN#0 +Not aliassing across scopes: mul8u::b#1 mul8u::b#0 +Not aliassing across scopes: mul8u::a#5 mul8u::a#1 Not aliassing across scopes: mulf_init::sqr2_hi#0 mulf_sqr2_hi#0 Not aliassing across scopes: mulf_init::sqr2_lo#0 mulf_sqr2_lo#0 -Not aliassing across scopes: mulf8u::a#2 mulf8u::a#0 -Not aliassing across scopes: mulf8u::b#2 mulf8u::b#0 +Not aliassing across scopes: mulf8u::a#2 mulf8u::a#1 +Not aliassing across scopes: mulf8u::b#2 mulf8u::b#1 Not aliassing across scopes: mulf8s::a#1 mulf8s::a#0 Not aliassing across scopes: mulf8s::b#1 mulf8s::b#0 Not aliassing across scopes: mulf8u::return#2 mulf8u::return#0 Not aliassing across scopes: mulf8s::m#0 mulf8u::return#2 Not aliassing across scopes: BGCOL#1 BGCOL#0 Not aliassing across scopes: line_cursor#46 SCREEN#0 -Not aliassing across scopes: char_cursor#130 SCREEN#0 +Not aliassing across scopes: char_cursor#134 SCREEN#0 Not aliassing across scopes: line_cursor#27 line_cursor#26 -Not aliassing across scopes: char_cursor#131 line_cursor#26 +Not aliassing across scopes: char_cursor#135 line_cursor#26 Not aliassing across scopes: char_cursor#22 char_cursor#30 Not aliassing across scopes: line_cursor#28 line_cursor#10 Not aliassing across scopes: char_cursor#23 char_cursor#34 Not aliassing across scopes: line_cursor#29 line_cursor#13 -Not aliassing across scopes: char_cursor#24 char_cursor#108 +Not aliassing across scopes: char_cursor#24 char_cursor#112 Not aliassing across scopes: line_cursor#30 line_cursor#18 Not aliassing across scopes: muls8u::a#1 muls8u::a#0 Not aliassing across scopes: muls8u::b#2 muls8u::b#0 @@ -4227,100 +4733,109 @@ Not aliassing identity: muls8s::a#3 muls8s::a#3 Not aliassing identity: muls8s::b#2 muls8s::b#2 Not aliassing identity: muls8s::a#4 muls8s::a#4 Not aliassing across scopes: BGCOL#9 BGCOL#1 -Not aliassing across scopes: char_cursor#153 char_cursor#131 -Not aliassing across scopes: line_cursor#85 line_cursor#27 -Not aliassing across scopes: multiply_tables_compare::asm_sqr#0 mula_sqr1_lo#0 -Not aliassing across scopes: multiply_tables_compare::kc_sqr#0 mulf_sqr1_lo#0 -Not aliassing across scopes: char_cursor#26 char_cursor#122 +Not aliassing across scopes: char_cursor#157 char_cursor#135 +Not aliassing across scopes: line_cursor#87 line_cursor#27 +Not aliassing across scopes: mulf_tables_cmp::asm_sqr#0 mula_sqr1_lo#0 +Not aliassing across scopes: mulf_tables_cmp::kc_sqr#0 mulf_sqr1_lo#0 +Not aliassing across scopes: char_cursor#26 char_cursor#126 Not aliassing across scopes: char_cursor#27 char_cursor#12 -Not aliassing across scopes: char_cursor#28 char_cursor#122 +Not aliassing across scopes: char_cursor#28 char_cursor#126 Not aliassing across scopes: char_cursor#29 char_cursor#12 -Not aliassing across scopes: char_cursor#31 char_cursor#122 +Not aliassing across scopes: char_cursor#31 char_cursor#126 Not aliassing across scopes: line_cursor#11 line_cursor#1 Not aliassing across scopes: char_cursor#32 line_cursor#1 -Not aliassing across scopes: BGCOL#23 BGCOL#1 -Not aliassing across scopes: char_cursor#163 char_cursor#22 -Not aliassing across scopes: line_cursor#91 line_cursor#28 -Not aliassing across scopes: muls8u::a#0 multiply_results_compare::a#2 -Not aliassing across scopes: muls8u::b#0 multiply_results_compare::b#2 +Not aliassing across scopes: BGCOL#32 BGCOL#1 +Not aliassing across scopes: char_cursor#173 char_cursor#22 +Not aliassing across scopes: line_cursor#103 line_cursor#28 +Not aliassing across scopes: muls8u::a#0 mul8u_slowfast_compare::a#10 +Not aliassing across scopes: muls8u::b#0 mul8u_slowfast_compare::b#10 Not aliassing across scopes: muls8u::return#2 muls8u::return#0 -Not aliassing across scopes: multiply_results_compare::ms#0 muls8u::return#2 -Not aliassing across scopes: mulf8u::a#1 multiply_results_compare::a#2 -Not aliassing across scopes: mulf8u::b#1 multiply_results_compare::b#2 +Not aliassing across scopes: mul8u_slowfast_compare::ms#0 muls8u::return#2 +Not aliassing across scopes: mulf8u::a#1 mul8u_slowfast_compare::a#10 +Not aliassing across scopes: mulf8u::b#1 mul8u_slowfast_compare::b#10 Not aliassing across scopes: mulf8u::return#3 mulf8u::return#0 -Not aliassing across scopes: multiply_results_compare::ma#0 mulf8u::return#3 -Not aliassing across scopes: multiply_error::a#0 multiply_results_compare::a#2 -Not aliassing across scopes: multiply_error::b#0 multiply_results_compare::b#2 -Not aliassing across scopes: multiply_error::ms#0 multiply_results_compare::ms#0 -Not aliassing across scopes: multiply_error::ma#0 multiply_results_compare::ma#0 -Not aliassing across scopes: char_cursor#33 char_cursor#105 +Not aliassing across scopes: mul8u_slowfast_compare::mf#0 mulf8u::return#3 +Not aliassing across scopes: mul8u::a#1 mul8u_slowfast_compare::a#10 +Not aliassing across scopes: mul8u::b#0 mul8u_slowfast_compare::b#10 +Not aliassing across scopes: mul8u::return#2 mul8u::res#2 +Not aliassing across scopes: mul8u_slowfast_compare::mn#0 mul8u::return#2 +Not aliassing across scopes: multiply_error::a#0 mul8u_slowfast_compare::a#10 +Not aliassing across scopes: multiply_error::b#0 mul8u_slowfast_compare::b#10 +Not aliassing across scopes: multiply_error::ms#0 mul8u_slowfast_compare::ms#0 +Not aliassing across scopes: multiply_error::mn#0 mul8u_slowfast_compare::mn#0 +Not aliassing across scopes: multiply_error::mf#0 mul8u_slowfast_compare::mf#0 +Not aliassing across scopes: char_cursor#33 char_cursor#109 Not aliassing across scopes: line_cursor#12 line_cursor#15 -Not aliassing across scopes: char_cursor#35 char_cursor#122 +Not aliassing across scopes: char_cursor#35 char_cursor#126 Not aliassing across scopes: line_cursor#14 line_cursor#1 Not aliassing across scopes: char_cursor#36 line_cursor#1 -Not aliassing across scopes: char_cursor#136 char_cursor#134 +Not aliassing across scopes: char_cursor#140 char_cursor#138 Not aliassing across scopes: multiply_error::a#1 multiply_error::a#0 Not aliassing across scopes: multiply_error::b#1 multiply_error::b#0 Not aliassing across scopes: multiply_error::ms#1 multiply_error::ms#0 -Not aliassing across scopes: multiply_error::ma#1 multiply_error::ma#0 -Not aliassing across scopes: line_cursor#52 line_cursor#50 -Not aliassing across scopes: char_cursor#37 char_cursor#122 +Not aliassing across scopes: multiply_error::mn#1 multiply_error::mn#0 +Not aliassing across scopes: multiply_error::mf#1 multiply_error::mf#0 +Not aliassing across scopes: line_cursor#101 line_cursor#50 +Not aliassing across scopes: char_cursor#37 char_cursor#126 Not aliassing across scopes: print_byte::b#3 multiply_error::a#1 -Not aliassing across scopes: char_cursor#38 char_cursor#15 -Not aliassing across scopes: char_cursor#39 char_cursor#122 -Not aliassing across scopes: print_byte::b#4 multiply_error::b#1 Not aliassing across scopes: char_cursor#100 char_cursor#15 -Not aliassing across scopes: char_cursor#101 char_cursor#122 +Not aliassing across scopes: char_cursor#101 char_cursor#126 +Not aliassing across scopes: print_byte::b#4 multiply_error::b#1 +Not aliassing across scopes: char_cursor#102 char_cursor#15 +Not aliassing across scopes: char_cursor#103 char_cursor#126 Not aliassing across scopes: print_word::w#3 multiply_error::ms#1 -Not aliassing across scopes: char_cursor#102 char_cursor#12 -Not aliassing across scopes: char_cursor#103 char_cursor#122 -Not aliassing across scopes: print_word::w#4 multiply_error::ma#1 Not aliassing across scopes: char_cursor#104 char_cursor#12 +Not aliassing across scopes: char_cursor#105 char_cursor#126 +Not aliassing across scopes: print_word::w#4 multiply_error::mn#1 +Not aliassing across scopes: char_cursor#106 char_cursor#12 +Not aliassing across scopes: char_cursor#107 char_cursor#126 +Not aliassing across scopes: print_word::w#5 multiply_error::mf#1 +Not aliassing across scopes: char_cursor#108 char_cursor#12 Not aliassing across scopes: line_cursor#15 line_cursor#1 -Not aliassing across scopes: char_cursor#105 line_cursor#1 +Not aliassing across scopes: char_cursor#109 line_cursor#1 Not aliassing across scopes: BGCOL#25 BGCOL#1 -Not aliassing across scopes: char_cursor#164 char_cursor#23 -Not aliassing across scopes: line_cursor#93 line_cursor#29 -Not aliassing across scopes: muls8s::a#0 signed_multiply_results_compare::a#2 -Not aliassing across scopes: muls8s::b#0 signed_multiply_results_compare::b#2 +Not aliassing across scopes: char_cursor#170 char_cursor#23 +Not aliassing across scopes: line_cursor#95 line_cursor#29 +Not aliassing across scopes: muls8s::a#0 mul8s_slowfast_compare::a#2 +Not aliassing across scopes: muls8s::b#0 mul8s_slowfast_compare::b#2 Not aliassing across scopes: muls8s::return#2 muls8s::return#0 -Not aliassing across scopes: signed_multiply_results_compare::ms#0 muls8s::return#2 -Not aliassing across scopes: mulf8s::a#0 signed_multiply_results_compare::a#2 -Not aliassing across scopes: mulf8s::b#0 signed_multiply_results_compare::b#2 +Not aliassing across scopes: mul8s_slowfast_compare::ms#0 muls8s::return#2 +Not aliassing across scopes: mulf8s::a#0 mul8s_slowfast_compare::a#2 +Not aliassing across scopes: mulf8s::b#0 mul8s_slowfast_compare::b#2 Not aliassing across scopes: mulf8s::return#2 mulf8s::return#0 -Not aliassing across scopes: signed_multiply_results_compare::ma#0 mulf8s::return#2 -Not aliassing across scopes: signed_multiply_error::a#0 signed_multiply_results_compare::a#2 -Not aliassing across scopes: signed_multiply_error::b#0 signed_multiply_results_compare::b#2 -Not aliassing across scopes: signed_multiply_error::ms#0 signed_multiply_results_compare::ms#0 -Not aliassing across scopes: signed_multiply_error::ma#0 signed_multiply_results_compare::ma#0 -Not aliassing across scopes: char_cursor#107 char_cursor#119 +Not aliassing across scopes: mul8s_slowfast_compare::ma#0 mulf8s::return#2 +Not aliassing across scopes: signed_multiply_error::a#0 mul8s_slowfast_compare::a#2 +Not aliassing across scopes: signed_multiply_error::b#0 mul8s_slowfast_compare::b#2 +Not aliassing across scopes: signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#0 +Not aliassing across scopes: signed_multiply_error::ma#0 mul8s_slowfast_compare::ma#0 +Not aliassing across scopes: char_cursor#111 char_cursor#123 Not aliassing across scopes: line_cursor#17 line_cursor#20 -Not aliassing across scopes: char_cursor#109 char_cursor#122 +Not aliassing across scopes: char_cursor#113 char_cursor#126 Not aliassing across scopes: line_cursor#19 line_cursor#1 -Not aliassing across scopes: char_cursor#110 line_cursor#1 -Not aliassing across scopes: char_cursor#139 char_cursor#137 +Not aliassing across scopes: char_cursor#114 line_cursor#1 +Not aliassing across scopes: char_cursor#143 char_cursor#141 Not aliassing across scopes: signed_multiply_error::a#1 signed_multiply_error::a#0 Not aliassing across scopes: signed_multiply_error::b#1 signed_multiply_error::b#0 Not aliassing across scopes: signed_multiply_error::ms#1 signed_multiply_error::ms#0 Not aliassing across scopes: signed_multiply_error::ma#1 signed_multiply_error::ma#0 -Not aliassing across scopes: line_cursor#100 line_cursor#53 -Not aliassing across scopes: char_cursor#111 char_cursor#122 +Not aliassing across scopes: line_cursor#102 line_cursor#53 +Not aliassing across scopes: char_cursor#115 char_cursor#126 Not aliassing across scopes: print_sbyte::b#1 signed_multiply_error::a#1 -Not aliassing across scopes: char_cursor#112 char_cursor#10 -Not aliassing across scopes: char_cursor#113 char_cursor#122 +Not aliassing across scopes: char_cursor#116 char_cursor#10 +Not aliassing across scopes: char_cursor#117 char_cursor#126 Not aliassing across scopes: print_sbyte::b#2 signed_multiply_error::b#1 -Not aliassing across scopes: char_cursor#114 char_cursor#10 -Not aliassing across scopes: char_cursor#115 char_cursor#122 +Not aliassing across scopes: char_cursor#118 char_cursor#10 +Not aliassing across scopes: char_cursor#119 char_cursor#126 Not aliassing across scopes: print_sword::w#1 signed_multiply_error::ms#1 -Not aliassing across scopes: char_cursor#116 char_cursor#5 -Not aliassing across scopes: char_cursor#117 char_cursor#122 +Not aliassing across scopes: char_cursor#120 char_cursor#5 +Not aliassing across scopes: char_cursor#121 char_cursor#126 Not aliassing across scopes: print_sword::w#2 signed_multiply_error::ma#1 -Not aliassing across scopes: char_cursor#118 char_cursor#5 +Not aliassing across scopes: char_cursor#122 char_cursor#5 Not aliassing across scopes: line_cursor#20 line_cursor#1 -Not aliassing across scopes: char_cursor#119 line_cursor#1 +Not aliassing across scopes: char_cursor#123 line_cursor#1 Not aliassing across scopes: line_cursor#22 line_cursor#30 -Not aliassing across scopes: char_cursor#121 char_cursor#24 -Self Phi Eliminated (byte*) char_cursor#64 +Not aliassing across scopes: char_cursor#125 char_cursor#24 +Self Phi Eliminated (byte*) char_cursor#66 Self Phi Eliminated (byte) muls8u::b#1 Self Phi Eliminated (byte) muls8u::a#2 Self Phi Eliminated (signed byte) muls8s::b#1 @@ -4328,38 +4843,40 @@ Self Phi Eliminated (signed byte) muls8s::a#3 Self Phi Eliminated (signed byte) muls8s::b#2 Self Phi Eliminated (signed byte) muls8s::a#4 Self Phi Eliminated (byte*) BGCOL#10 -Self Phi Eliminated (byte*) char_cursor#132 +Self Phi Eliminated (byte*) char_cursor#136 Self Phi Eliminated (byte*) line_cursor#48 -Self Phi Eliminated (byte) multiply_results_compare::a#2 +Self Phi Eliminated (byte) mul8u_slowfast_compare::a#10 Self Phi Eliminated (byte*) BGCOL#11 -Self Phi Eliminated (byte*) char_cursor#134 +Self Phi Eliminated (byte*) char_cursor#138 Self Phi Eliminated (byte*) line_cursor#50 -Self Phi Eliminated (signed byte) signed_multiply_results_compare::a#2 -Self Phi Eliminated (byte*) BGCOL#12 -Self Phi Eliminated (byte*) char_cursor#137 +Self Phi Eliminated (signed byte) mul8s_slowfast_compare::a#2 +Self Phi Eliminated (byte*) BGCOL#13 +Self Phi Eliminated (byte*) char_cursor#141 Self Phi Eliminated (byte*) line_cursor#53 Succesful SSA optimization Pass2SelfPhiElimination -Redundant Phi (byte*) char_cursor#64 (byte*) char_cursor#123 +Redundant Phi (byte*) char_cursor#66 (byte*) char_cursor#127 Redundant Phi (byte*) char_cursor#5 (byte*) char_cursor#12 Redundant Phi (byte*) char_cursor#6 (byte*) char_cursor#17 Redundant Phi (byte*) char_cursor#10 (byte*) char_cursor#15 -Redundant Phi (byte*) char_cursor#70 (byte*) char_cursor#17 +Redundant Phi (byte*) char_cursor#72 (byte*) char_cursor#17 Redundant Phi (byte*) char_cursor#11 (byte*) char_cursor#15 Redundant Phi (byte*) char_cursor#12 (byte*) char_cursor#15 Redundant Phi (byte*) char_cursor#14 (byte*) char_cursor#17 Redundant Phi (byte*) char_cursor#15 (byte*) char_cursor#17 +Redundant Phi (byte) mul8u::b#1 (byte) mul8u::b#0 +Redundant Phi (byte) mul8u::a#5 (byte) mul8u::a#1 Redundant Phi (signed byte) mulf8s::a#1 (signed byte) mulf8s::a#0 Redundant Phi (signed byte) mulf8s::b#1 (signed byte) mulf8s::b#0 Redundant Phi (byte*) BGCOL#1 (byte*) BGCOL#0 Redundant Phi (byte*) line_cursor#46 (byte*) SCREEN#0 -Redundant Phi (byte*) char_cursor#130 (byte*) SCREEN#0 +Redundant Phi (byte*) char_cursor#134 (byte*) SCREEN#0 Redundant Phi (byte*) line_cursor#27 (byte*) line_cursor#26 -Redundant Phi (byte*) char_cursor#131 (byte*) line_cursor#26 +Redundant Phi (byte*) char_cursor#135 (byte*) line_cursor#26 Redundant Phi (byte*) char_cursor#22 (byte*) char_cursor#30 Redundant Phi (byte*) line_cursor#28 (byte*) line_cursor#10 Redundant Phi (byte*) char_cursor#23 (byte*) char_cursor#34 Redundant Phi (byte*) line_cursor#29 (byte*) line_cursor#13 -Redundant Phi (byte*) char_cursor#24 (byte*) char_cursor#108 +Redundant Phi (byte*) char_cursor#24 (byte*) char_cursor#112 Redundant Phi (byte*) line_cursor#30 (byte*) line_cursor#18 Redundant Phi (byte) muls8u::a#1 (byte) muls8u::a#0 Redundant Phi (byte) muls8u::b#2 (byte) muls8u::b#0 @@ -4372,89 +4889,94 @@ Redundant Phi (signed byte) muls8s::a#3 (signed byte) muls8s::a#1 Redundant Phi (signed byte) muls8s::b#2 (signed byte) muls8s::b#3 Redundant Phi (signed byte) muls8s::a#4 (signed byte) muls8s::a#1 Redundant Phi (byte*) BGCOL#9 (byte*) BGCOL#1 -Redundant Phi (byte*) char_cursor#153 (byte*) char_cursor#131 -Redundant Phi (byte*) line_cursor#85 (byte*) line_cursor#27 +Redundant Phi (byte*) char_cursor#157 (byte*) char_cursor#135 +Redundant Phi (byte*) line_cursor#87 (byte*) line_cursor#27 Redundant Phi (byte*) BGCOL#10 (byte*) BGCOL#9 -Redundant Phi (byte*) char_cursor#132 (byte*) char_cursor#153 -Redundant Phi (byte*) line_cursor#48 (byte*) line_cursor#85 -Redundant Phi (byte*) char_cursor#26 (byte*) char_cursor#122 +Redundant Phi (byte*) char_cursor#136 (byte*) char_cursor#157 +Redundant Phi (byte*) line_cursor#48 (byte*) line_cursor#87 +Redundant Phi (byte*) char_cursor#26 (byte*) char_cursor#126 Redundant Phi (byte*) char_cursor#27 (byte*) char_cursor#12 -Redundant Phi (byte*) char_cursor#28 (byte*) char_cursor#122 +Redundant Phi (byte*) char_cursor#28 (byte*) char_cursor#126 Redundant Phi (byte*) char_cursor#29 (byte*) char_cursor#12 -Redundant Phi (byte*) char_cursor#31 (byte*) char_cursor#122 +Redundant Phi (byte*) char_cursor#31 (byte*) char_cursor#126 Redundant Phi (byte*) line_cursor#11 (byte*) line_cursor#1 Redundant Phi (byte*) char_cursor#32 (byte*) line_cursor#1 -Redundant Phi (byte*) BGCOL#23 (byte*) BGCOL#1 -Redundant Phi (byte*) char_cursor#163 (byte*) char_cursor#22 -Redundant Phi (byte*) line_cursor#91 (byte*) line_cursor#28 -Redundant Phi (byte) multiply_results_compare::a#2 (byte) multiply_results_compare::a#6 -Redundant Phi (byte*) BGCOL#11 (byte*) BGCOL#18 -Redundant Phi (byte*) char_cursor#134 (byte*) char_cursor#161 -Redundant Phi (byte*) line_cursor#50 (byte*) line_cursor#87 -Redundant Phi (byte*) char_cursor#33 (byte*) char_cursor#105 +Redundant Phi (byte*) BGCOL#32 (byte*) BGCOL#1 +Redundant Phi (byte*) char_cursor#173 (byte*) char_cursor#22 +Redundant Phi (byte*) line_cursor#103 (byte*) line_cursor#28 +Redundant Phi (byte) mul8u_slowfast_compare::a#10 (byte) mul8u_slowfast_compare::a#7 +Redundant Phi (byte*) BGCOL#11 (byte*) BGCOL#30 +Redundant Phi (byte*) char_cursor#138 (byte*) char_cursor#172 +Redundant Phi (byte*) line_cursor#50 (byte*) line_cursor#100 +Redundant Phi (byte*) char_cursor#33 (byte*) char_cursor#109 Redundant Phi (byte*) line_cursor#12 (byte*) line_cursor#15 -Redundant Phi (byte*) char_cursor#35 (byte*) char_cursor#122 +Redundant Phi (byte*) char_cursor#35 (byte*) char_cursor#126 Redundant Phi (byte*) line_cursor#14 (byte*) line_cursor#1 Redundant Phi (byte*) char_cursor#36 (byte*) line_cursor#1 -Redundant Phi (byte*) char_cursor#136 (byte*) char_cursor#134 +Redundant Phi (byte*) char_cursor#140 (byte*) char_cursor#138 Redundant Phi (byte) multiply_error::a#1 (byte) multiply_error::a#0 Redundant Phi (byte) multiply_error::b#1 (byte) multiply_error::b#0 Redundant Phi (word) multiply_error::ms#1 (word) multiply_error::ms#0 -Redundant Phi (word) multiply_error::ma#1 (word) multiply_error::ma#0 -Redundant Phi (byte*) line_cursor#52 (byte*) line_cursor#50 -Redundant Phi (byte*) char_cursor#37 (byte*) char_cursor#122 -Redundant Phi (byte*) char_cursor#38 (byte*) char_cursor#15 -Redundant Phi (byte*) char_cursor#39 (byte*) char_cursor#122 +Redundant Phi (word) multiply_error::mn#1 (word) multiply_error::mn#0 +Redundant Phi (word) multiply_error::mf#1 (word) multiply_error::mf#0 +Redundant Phi (byte*) line_cursor#101 (byte*) line_cursor#50 +Redundant Phi (byte*) char_cursor#37 (byte*) char_cursor#126 Redundant Phi (byte*) char_cursor#100 (byte*) char_cursor#15 -Redundant Phi (byte*) char_cursor#101 (byte*) char_cursor#122 -Redundant Phi (byte*) char_cursor#102 (byte*) char_cursor#12 -Redundant Phi (byte*) char_cursor#103 (byte*) char_cursor#122 +Redundant Phi (byte*) char_cursor#101 (byte*) char_cursor#126 +Redundant Phi (byte*) char_cursor#102 (byte*) char_cursor#15 +Redundant Phi (byte*) char_cursor#103 (byte*) char_cursor#126 Redundant Phi (byte*) char_cursor#104 (byte*) char_cursor#12 +Redundant Phi (byte*) char_cursor#105 (byte*) char_cursor#126 +Redundant Phi (byte*) char_cursor#106 (byte*) char_cursor#12 +Redundant Phi (byte*) char_cursor#107 (byte*) char_cursor#126 +Redundant Phi (byte*) char_cursor#108 (byte*) char_cursor#12 Redundant Phi (byte*) line_cursor#15 (byte*) line_cursor#1 -Redundant Phi (byte*) char_cursor#105 (byte*) line_cursor#1 +Redundant Phi (byte*) char_cursor#109 (byte*) line_cursor#1 Redundant Phi (byte*) BGCOL#25 (byte*) BGCOL#1 -Redundant Phi (byte*) char_cursor#164 (byte*) char_cursor#23 -Redundant Phi (byte*) line_cursor#93 (byte*) line_cursor#29 -Redundant Phi (signed byte) signed_multiply_results_compare::a#2 (signed byte) signed_multiply_results_compare::a#6 -Redundant Phi (byte*) BGCOL#12 (byte*) BGCOL#20 -Redundant Phi (byte*) char_cursor#137 (byte*) char_cursor#162 -Redundant Phi (byte*) line_cursor#53 (byte*) line_cursor#89 -Redundant Phi (byte*) char_cursor#107 (byte*) char_cursor#119 +Redundant Phi (byte*) char_cursor#170 (byte*) char_cursor#23 +Redundant Phi (byte*) line_cursor#95 (byte*) line_cursor#29 +Redundant Phi (signed byte) mul8s_slowfast_compare::a#2 (signed byte) mul8s_slowfast_compare::a#6 +Redundant Phi (byte*) BGCOL#13 (byte*) BGCOL#21 +Redundant Phi (byte*) char_cursor#141 (byte*) char_cursor#168 +Redundant Phi (byte*) line_cursor#53 (byte*) line_cursor#91 +Redundant Phi (byte*) char_cursor#111 (byte*) char_cursor#123 Redundant Phi (byte*) line_cursor#17 (byte*) line_cursor#20 -Redundant Phi (byte*) char_cursor#109 (byte*) char_cursor#122 +Redundant Phi (byte*) char_cursor#113 (byte*) char_cursor#126 Redundant Phi (byte*) line_cursor#19 (byte*) line_cursor#1 -Redundant Phi (byte*) char_cursor#110 (byte*) line_cursor#1 -Redundant Phi (byte*) char_cursor#139 (byte*) char_cursor#137 +Redundant Phi (byte*) char_cursor#114 (byte*) line_cursor#1 +Redundant Phi (byte*) char_cursor#143 (byte*) char_cursor#141 Redundant Phi (signed byte) signed_multiply_error::a#1 (signed byte) signed_multiply_error::a#0 Redundant Phi (signed byte) signed_multiply_error::b#1 (signed byte) signed_multiply_error::b#0 Redundant Phi (signed word) signed_multiply_error::ms#1 (signed word) signed_multiply_error::ms#0 Redundant Phi (signed word) signed_multiply_error::ma#1 (signed word) signed_multiply_error::ma#0 -Redundant Phi (byte*) line_cursor#100 (byte*) line_cursor#53 -Redundant Phi (byte*) char_cursor#111 (byte*) char_cursor#122 -Redundant Phi (byte*) char_cursor#112 (byte*) char_cursor#10 -Redundant Phi (byte*) char_cursor#113 (byte*) char_cursor#122 -Redundant Phi (byte*) char_cursor#114 (byte*) char_cursor#10 -Redundant Phi (byte*) char_cursor#115 (byte*) char_cursor#122 -Redundant Phi (byte*) char_cursor#116 (byte*) char_cursor#5 -Redundant Phi (byte*) char_cursor#117 (byte*) char_cursor#122 -Redundant Phi (byte*) char_cursor#118 (byte*) char_cursor#5 +Redundant Phi (byte*) line_cursor#102 (byte*) line_cursor#53 +Redundant Phi (byte*) char_cursor#115 (byte*) char_cursor#126 +Redundant Phi (byte*) char_cursor#116 (byte*) char_cursor#10 +Redundant Phi (byte*) char_cursor#117 (byte*) char_cursor#126 +Redundant Phi (byte*) char_cursor#118 (byte*) char_cursor#10 +Redundant Phi (byte*) char_cursor#119 (byte*) char_cursor#126 +Redundant Phi (byte*) char_cursor#120 (byte*) char_cursor#5 +Redundant Phi (byte*) char_cursor#121 (byte*) char_cursor#126 +Redundant Phi (byte*) char_cursor#122 (byte*) char_cursor#5 Redundant Phi (byte*) line_cursor#20 (byte*) line_cursor#1 -Redundant Phi (byte*) char_cursor#119 (byte*) line_cursor#1 +Redundant Phi (byte*) char_cursor#123 (byte*) line_cursor#1 Redundant Phi (byte*) line_cursor#22 (byte*) line_cursor#30 -Redundant Phi (byte*) char_cursor#121 (byte*) char_cursor#24 +Redundant Phi (byte*) char_cursor#125 (byte*) char_cursor#24 Succesful SSA optimization Pass2RedundantPhiElimination -Redundant Phi (byte*) char_cursor#125 (byte*) char_cursor#122 -Redundant Phi (byte*) char_cursor#127 (byte*) char_cursor#122 +Redundant Phi (byte*) char_cursor#129 (byte*) char_cursor#126 +Redundant Phi (byte*) char_cursor#131 (byte*) char_cursor#126 Redundant Phi (byte*) char_cursor#34 (byte*) line_cursor#1 Redundant Phi (byte*) line_cursor#13 (byte*) line_cursor#1 -Redundant Phi (byte*) char_cursor#108 (byte*) line_cursor#1 +Redundant Phi (byte*) char_cursor#112 (byte*) line_cursor#1 Redundant Phi (byte*) line_cursor#18 (byte*) line_cursor#1 Succesful SSA optimization Pass2RedundantPhiElimination -Simple Condition (boolean~) print_str::$0 if(*((byte*) print_str::str#14)!=(byte) '@') goto print_str::@2 -Simple Condition (boolean~) print_ln::$1 if((byte*) line_cursor#1<(byte*) char_cursor#123) goto print_ln::@1 +Simple Condition (boolean~) print_str::$0 if(*((byte*) print_str::str#15)!=(byte) '@') goto print_str::@2 +Simple Condition (boolean~) print_ln::$1 if((byte*) line_cursor#1<(byte*) char_cursor#127) goto print_ln::@1 Simple Condition (boolean~) print_sword::$1 if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 Simple Condition (boolean~) print_sbyte::$1 if((signed byte) print_sbyte::b#3>=(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~) mul8u::$0 if((byte) mul8u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@2 +Simple Condition (boolean~) mul8u::$3 if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@4 Simple Condition (boolean~) mulf_init::$4 if((byte~) mulf_init::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 Simple Condition (boolean~) mulf_init::$9 if((byte*) mulf_init::sqr1_lo#1!=(byte*~) mulf_init::$8) goto mulf_init::@1 Simple Condition (boolean~) mulf_init::$14 if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@4 @@ -4467,19 +4989,22 @@ Simple Condition (boolean~) muls8s::$1 if((signed byte) muls8s::a#0>=(byte/signe Simple Condition (boolean~) muls8s::$5 if((signed byte) muls8s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@4 Simple Condition (boolean~) muls8s::$3 if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@2 Simple Condition (boolean~) muls8s::$7 if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@5 -Simple Condition (boolean~) multiply_tables_compare::$1 if(*((byte*) multiply_tables_compare::kc_sqr#2)==*((byte*) multiply_tables_compare::asm_sqr#2)) goto multiply_tables_compare::@2 -Simple Condition (boolean~) multiply_tables_compare::$10 if((byte*) multiply_tables_compare::kc_sqr#1<(byte*~) multiply_tables_compare::$9) goto multiply_tables_compare::@1 -Simple Condition (boolean~) multiply_results_compare::$3 if((word) multiply_results_compare::ms#0==(word) multiply_results_compare::ma#0) goto multiply_results_compare::@3 -Simple Condition (boolean~) multiply_results_compare::$5 if((byte) multiply_results_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto multiply_results_compare::@2 -Simple Condition (boolean~) multiply_results_compare::$6 if((byte) multiply_results_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto multiply_results_compare::@1 -Simple Condition (boolean~) signed_multiply_results_compare::$5 if((signed word) signed_multiply_results_compare::ms#0==(signed word) signed_multiply_results_compare::ma#0) goto signed_multiply_results_compare::@3 -Simple Condition (boolean~) signed_multiply_results_compare::$8 if((signed byte) signed_multiply_results_compare::b#1!=(signed byte/signed word/signed dword~) signed_multiply_results_compare::$7) goto signed_multiply_results_compare::@2 -Simple Condition (boolean~) signed_multiply_results_compare::$10 if((signed byte) signed_multiply_results_compare::a#1!=(signed byte/signed word/signed dword~) signed_multiply_results_compare::$9) goto signed_multiply_results_compare::@1 +Simple Condition (boolean~) mulf_tables_cmp::$1 if(*((byte*) mulf_tables_cmp::kc_sqr#2)==*((byte*) mulf_tables_cmp::asm_sqr#2)) goto mulf_tables_cmp::@2 +Simple Condition (boolean~) mulf_tables_cmp::$10 if((byte*) mulf_tables_cmp::kc_sqr#1<(byte*~) mulf_tables_cmp::$9) goto mulf_tables_cmp::@1 +Simple Condition (boolean~) mul8u_slowfast_compare::$4 if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mf#0) goto mul8u_slowfast_compare::@3 +Simple Condition (boolean~) mul8u_slowfast_compare::$6 if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mn#0) goto mul8u_slowfast_compare::@4 +Simple Condition (boolean~) mul8u_slowfast_compare::$8 if((byte) mul8u_slowfast_compare::ok#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@5 +Simple Condition (boolean~) mul8u_slowfast_compare::$10 if((byte) mul8u_slowfast_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@2 +Simple Condition (boolean~) mul8u_slowfast_compare::$11 if((byte) mul8u_slowfast_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@1 +Simple Condition (boolean~) mul8s_slowfast_compare::$5 if((signed word) mul8s_slowfast_compare::ms#0==(signed word) mul8s_slowfast_compare::ma#0) goto mul8s_slowfast_compare::@3 +Simple Condition (boolean~) mul8s_slowfast_compare::$8 if((signed byte) mul8s_slowfast_compare::b#1!=(signed byte/signed word/signed dword~) mul8s_slowfast_compare::$7) goto mul8s_slowfast_compare::@2 +Simple Condition (boolean~) mul8s_slowfast_compare::$10 if((signed byte) mul8s_slowfast_compare::a#1!=(signed byte/signed word/signed dword~) mul8s_slowfast_compare::$9) goto mul8s_slowfast_compare::@1 Succesful SSA optimization Pass2ConditionalJumpSimplification Constant (const byte*) SCREEN#0 = ((byte*))1024 Constant (const byte) print_char::ch#0 = '-' Constant (const byte) print_char::ch#1 = '-' Constant (const string) print_byte::hextab#0 = print_byte::$4 +Constant (const word) mul8u::res#0 = 0 Constant (const byte[512]) mulf_sqr1_lo#0 = { fill( 512, 0) } Constant (const byte[512]) mulf_sqr1_hi#0 = { fill( 512, 0) } Constant (const byte[512]) mulf_sqr2_lo#0 = { fill( 512, 0) } @@ -4503,26 +5028,30 @@ Constant (const byte[512]) mula_sqr1_hi#0 = { fill( 512, 0) } Constant (const byte[512]) mula_sqr2_lo#0 = { fill( 512, 0) } Constant (const byte[512]) mula_sqr2_hi#0 = { fill( 512, 0) } Constant (const byte*) mulf_init_asm::mem#0 = ((byte*))255 -Constant (const word/signed word/dword/signed dword) multiply_tables_compare::$8 = 512*4 -Constant (const string) print_str::str#1 = multiply_tables_compare::str -Constant (const string) print_str::str#2 = multiply_tables_compare::str1 -Constant (const string) print_str::str#3 = multiply_tables_compare::str2 -Constant (const byte) multiply_results_compare::a#0 = 0 -Constant (const byte) multiply_results_compare::b#0 = 0 -Constant (const string) print_str::str#4 = multiply_results_compare::str +Constant (const word/signed word/dword/signed dword) mulf_tables_cmp::$8 = 512*4 +Constant (const string) print_str::str#1 = mulf_tables_cmp::str +Constant (const string) print_str::str#2 = mulf_tables_cmp::str1 +Constant (const string) print_str::str#3 = mulf_tables_cmp::str2 +Constant (const byte) mul8u_slowfast_compare::a#0 = 0 +Constant (const byte) mul8u_slowfast_compare::b#0 = 0 +Constant (const byte) mul8u_slowfast_compare::ok#0 = 1 +Constant (const byte) mul8u_slowfast_compare::ok#1 = 0 +Constant (const byte) mul8u_slowfast_compare::ok#2 = 0 +Constant (const string) print_str::str#4 = mul8u_slowfast_compare::str Constant (const string) print_str::str#5 = multiply_error::str Constant (const string) print_str::str#6 = multiply_error::str1 Constant (const string) print_str::str#7 = multiply_error::str2 Constant (const string) print_str::str#8 = multiply_error::str3 -Constant (const signed byte) signed_multiply_results_compare::a#0 = -128 -Constant (const signed byte) signed_multiply_results_compare::b#0 = -128 -Constant (const signed byte/signed word/signed dword) signed_multiply_results_compare::$7 = -128 -Constant (const signed byte/signed word/signed dword) signed_multiply_results_compare::$9 = -128 -Constant (const string) print_str::str#9 = signed_multiply_results_compare::str -Constant (const string) print_str::str#10 = signed_multiply_error::str -Constant (const string) print_str::str#11 = signed_multiply_error::str1 -Constant (const string) print_str::str#12 = signed_multiply_error::str2 -Constant (const string) print_str::str#13 = signed_multiply_error::str3 +Constant (const string) print_str::str#9 = multiply_error::str4 +Constant (const signed byte) mul8s_slowfast_compare::a#0 = -128 +Constant (const signed byte) mul8s_slowfast_compare::b#0 = -128 +Constant (const signed byte/signed word/signed dword) mul8s_slowfast_compare::$7 = -128 +Constant (const signed byte/signed word/signed dword) mul8s_slowfast_compare::$9 = -128 +Constant (const string) print_str::str#10 = mul8s_slowfast_compare::str +Constant (const string) print_str::str#11 = signed_multiply_error::str +Constant (const string) print_str::str#12 = signed_multiply_error::str1 +Constant (const string) print_str::str#13 = signed_multiply_error::str2 +Constant (const string) print_str::str#14 = signed_multiply_error::str3 Succesful SSA optimization Pass2ConstantIdentification Constant (const byte*) print_cls::sc#0 = SCREEN#0 Constant (const byte*) print_cls::$0 = SCREEN#0+1000 @@ -4538,9 +5067,9 @@ Constant (const byte*) mulf_init::$17 = mulf_sqr2_lo#0+511 Constant (const byte*) mulf_init::$18 = mulf_sqr1_lo#0+256 Constant (const byte*) mulf_init::$19 = mulf_sqr2_hi#0+511 Constant (const byte*) mulf_init::$20 = mulf_sqr1_hi#0+256 -Constant (const byte[512]) multiply_tables_compare::asm_sqr#0 = mula_sqr1_lo#0 -Constant (const byte[512]) multiply_tables_compare::kc_sqr#0 = mulf_sqr1_lo#0 -Constant (const byte*) multiply_tables_compare::$9 = mulf_sqr1_lo#0+multiply_tables_compare::$8 +Constant (const byte[512]) mulf_tables_cmp::asm_sqr#0 = mula_sqr1_lo#0 +Constant (const byte[512]) mulf_tables_cmp::kc_sqr#0 = mulf_sqr1_lo#0 +Constant (const byte*) mulf_tables_cmp::$9 = mulf_sqr1_lo#0+mulf_tables_cmp::$8 Succesful SSA optimization Pass2ConstantIdentification Fixing word constructor with mulf8u::$0 ← *(mulf8u::memB#0) w= *(mulf8u::memA#0) Succesful SSA optimization Pass2FixWordConstructors @@ -4551,8 +5080,8 @@ Eliminating Noop Cast (byte) mulf8u::b#0 ← ((byte)) (signed byte) mulf8s::b#0 Eliminating Noop Cast (byte~) mulf8s::$7 ← ((byte)) (signed byte) mulf8s::b#0 Eliminating Noop Cast (signed word) mulf8s::return#0 ← ((signed word)) (word) mulf8s::m#4 Eliminating Noop Cast (byte~) mulf8s::$13 ← ((byte)) (signed byte) mulf8s::a#0 -Eliminating Noop Cast (word) print_word::w#1 ← ((word)) (byte*) multiply_tables_compare::asm_sqr#2 -Eliminating Noop Cast (word) print_word::w#2 ← ((word)) (byte*) multiply_tables_compare::kc_sqr#2 +Eliminating Noop Cast (word) print_word::w#1 ← ((word)) (byte*) mulf_tables_cmp::asm_sqr#2 +Eliminating Noop Cast (word) print_word::w#2 ← ((word)) (byte*) mulf_tables_cmp::kc_sqr#2 Succesful SSA optimization Pass2NopCastElimination Culled Empty Block (label) print_ln::@2 Culled Empty Block (label) print_sword::@3 @@ -4560,192 +5089,222 @@ 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) @8 +Culled Empty Block (label) mul8u::@3 +Culled Empty Block (label) @9 Culled Empty Block (label) mulf_init::@6 Not culling empty block because it shares successor with its predecessor. (label) mulf_init::@7 -Culled Empty Block (label) @11 +Culled Empty Block (label) @12 Culled Empty Block (label) main::@6 Culled Empty Block (label) muls8u::@3 Culled Empty Block (label) muls8s::@6 Culled Empty Block (label) muls8s::@4 Culled Empty Block (label) muls8s::@9 -Culled Empty Block (label) @14 -Culled Empty Block (label) multiply_tables_compare::@9 -Culled Empty Block (label) multiply_tables_compare::@11 -Culled Empty Block (label) multiply_results_compare::@10 -Culled Empty Block (label) multiply_results_compare::@12 -Culled Empty Block (label) multiply_error::@9 -Culled Empty Block (label) signed_multiply_results_compare::@10 -Culled Empty Block (label) signed_multiply_results_compare::@12 +Culled Empty Block (label) @15 +Culled Empty Block (label) mulf_tables_cmp::@9 +Culled Empty Block (label) mulf_tables_cmp::@11 +Not culling empty block because it shares successor with its predecessor. (label) mul8u_slowfast_compare::@6 +Not culling empty block because it shares successor with its predecessor. (label) mul8u_slowfast_compare::@7 +Culled Empty Block (label) mul8u_slowfast_compare::@15 +Culled Empty Block (label) mul8u_slowfast_compare::@17 +Culled Empty Block (label) multiply_error::@11 +Culled Empty Block (label) mul8s_slowfast_compare::@10 +Culled Empty Block (label) mul8s_slowfast_compare::@12 Culled Empty Block (label) signed_multiply_error::@9 -Culled Empty Block (label) @21 +Culled Empty Block (label) @22 Succesful SSA optimization Pass2CullEmptyBlocks Not culling empty block because it shares successor with its predecessor. (label) mulf_init::@7 -Not aliassing across scopes: char_cursor#141 char_cursor#161 -Not aliassing across scopes: line_cursor#45 line_cursor#87 -Not aliassing across scopes: char_cursor#123 char_cursor#17 +Not culling empty block because it shares successor with its predecessor. (label) mul8u_slowfast_compare::@6 +Not culling empty block because it shares successor with its predecessor. (label) mul8u_slowfast_compare::@7 +Not aliassing across scopes: char_cursor#145 char_cursor#168 +Not aliassing across scopes: line_cursor#45 line_cursor#91 +Not aliassing across scopes: char_cursor#127 char_cursor#126 Not aliassing across scopes: print_sword::w#3 print_sword::w#1 -Not aliassing across scopes: char_cursor#124 char_cursor#122 +Not aliassing across scopes: char_cursor#128 char_cursor#126 Not aliassing across scopes: print_sbyte::b#3 print_sbyte::b#1 -Not aliassing across scopes: char_cursor#126 char_cursor#122 -Not aliassing across scopes: print_word::w#5 print_word::w#3 -Not aliassing across scopes: char_cursor#128 char_cursor#122 +Not aliassing across scopes: char_cursor#130 char_cursor#126 +Not aliassing across scopes: char_cursor#132 char_cursor#126 Not aliassing across scopes: print_byte::b#5 print_byte::b#3 -Not aliassing across scopes: char_cursor#129 char_cursor#122 +Not aliassing across scopes: char_cursor#133 char_cursor#126 Not aliassing across scopes: print_char::ch#4 print_char::ch#2 -Not aliassing across scopes: char_cursor#78 char_cursor#129 +Not aliassing across scopes: char_cursor#80 char_cursor#133 +Not aliassing across scopes: mul8u::a#2 mul8u::a#1 +Not aliassing across scopes: mulf8u::a#2 mulf8u::a#1 +Not aliassing across scopes: mulf8u::b#2 mulf8u::b#1 Not aliassing across scopes: mulf8u::return#2 mulf8u::return#0 Not aliassing across scopes: mulf8s::m#0 mulf8u::return#2 Not aliassing across scopes: char_cursor#30 line_cursor#1 Not aliassing across scopes: line_cursor#10 line_cursor#1 -Not aliassing across scopes: char_cursor#161 char_cursor#30 -Not aliassing across scopes: line_cursor#87 line_cursor#10 -Not aliassing across scopes: muls8u::a#0 multiply_results_compare::a#6 -Not aliassing across scopes: muls8u::b#0 multiply_results_compare::b#2 +Not aliassing across scopes: char_cursor#172 char_cursor#30 +Not aliassing across scopes: line_cursor#100 line_cursor#10 +Not aliassing across scopes: muls8u::a#0 mul8u_slowfast_compare::a#7 +Not aliassing across scopes: muls8u::b#0 mul8u_slowfast_compare::b#10 Not aliassing across scopes: muls8u::return#2 muls8u::return#0 -Not aliassing across scopes: multiply_results_compare::ms#0 muls8u::return#2 -Not aliassing across scopes: mulf8u::a#1 multiply_results_compare::a#6 -Not aliassing across scopes: mulf8u::b#1 multiply_results_compare::b#2 +Not aliassing across scopes: mul8u_slowfast_compare::ms#0 muls8u::return#2 +Not aliassing across scopes: mulf8u::a#1 mul8u_slowfast_compare::a#7 +Not aliassing across scopes: mulf8u::b#1 mul8u_slowfast_compare::b#10 Not aliassing across scopes: mulf8u::return#3 mulf8u::return#0 -Not aliassing across scopes: multiply_results_compare::ma#0 mulf8u::return#3 -Not aliassing across scopes: multiply_error::a#0 multiply_results_compare::a#6 -Not aliassing across scopes: multiply_error::b#0 multiply_results_compare::b#2 -Not aliassing across scopes: multiply_error::ms#0 multiply_results_compare::ms#0 -Not aliassing across scopes: multiply_error::ma#0 multiply_results_compare::ma#0 +Not aliassing across scopes: mul8u_slowfast_compare::mf#0 mulf8u::return#3 +Not aliassing across scopes: mul8u::a#1 mul8u_slowfast_compare::a#7 +Not aliassing across scopes: mul8u::b#0 mul8u_slowfast_compare::b#10 +Not aliassing across scopes: mul8u::return#2 mul8u::res#2 +Not aliassing across scopes: mul8u_slowfast_compare::mn#0 mul8u::return#2 +Not aliassing across scopes: multiply_error::a#0 mul8u_slowfast_compare::a#7 +Not aliassing across scopes: multiply_error::b#0 mul8u_slowfast_compare::b#10 +Not aliassing across scopes: multiply_error::ms#0 mul8u_slowfast_compare::ms#0 +Not aliassing across scopes: multiply_error::mn#0 mul8u_slowfast_compare::mn#0 +Not aliassing across scopes: multiply_error::mf#0 mul8u_slowfast_compare::mf#0 Not aliassing across scopes: print_byte::b#3 multiply_error::a#0 Not aliassing across scopes: print_byte::b#4 multiply_error::b#0 Not aliassing across scopes: print_word::w#3 multiply_error::ms#0 -Not aliassing across scopes: print_word::w#4 multiply_error::ma#0 -Not aliassing across scopes: char_cursor#162 line_cursor#1 -Not aliassing across scopes: line_cursor#89 line_cursor#1 -Not aliassing across scopes: muls8s::a#0 signed_multiply_results_compare::a#6 -Not aliassing across scopes: muls8s::b#0 signed_multiply_results_compare::b#2 +Not aliassing across scopes: print_word::w#4 multiply_error::mn#0 +Not aliassing across scopes: print_word::w#5 multiply_error::mf#0 +Not aliassing across scopes: char_cursor#168 line_cursor#1 +Not aliassing across scopes: line_cursor#91 line_cursor#1 +Not aliassing across scopes: muls8s::a#0 mul8s_slowfast_compare::a#6 +Not aliassing across scopes: muls8s::b#0 mul8s_slowfast_compare::b#2 Not aliassing across scopes: muls8s::return#2 muls8s::return#0 -Not aliassing across scopes: signed_multiply_results_compare::ms#0 muls8s::return#2 -Not aliassing across scopes: mulf8s::a#0 signed_multiply_results_compare::a#6 -Not aliassing across scopes: mulf8s::b#0 signed_multiply_results_compare::b#2 -Not aliassing across scopes: signed_multiply_results_compare::ma#0 mulf8s::return#2 -Not aliassing across scopes: signed_multiply_error::a#0 signed_multiply_results_compare::a#6 -Not aliassing across scopes: signed_multiply_error::b#0 signed_multiply_results_compare::b#2 -Not aliassing across scopes: signed_multiply_error::ms#0 signed_multiply_results_compare::ms#0 -Not aliassing across scopes: signed_multiply_error::ma#0 signed_multiply_results_compare::ma#0 +Not aliassing across scopes: mul8s_slowfast_compare::ms#0 muls8s::return#2 +Not aliassing across scopes: mulf8s::a#0 mul8s_slowfast_compare::a#6 +Not aliassing across scopes: mulf8s::b#0 mul8s_slowfast_compare::b#2 +Not aliassing across scopes: mul8s_slowfast_compare::ma#0 mulf8s::return#2 +Not aliassing across scopes: signed_multiply_error::a#0 mul8s_slowfast_compare::a#6 +Not aliassing across scopes: signed_multiply_error::b#0 mul8s_slowfast_compare::b#2 +Not aliassing across scopes: signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#0 +Not aliassing across scopes: signed_multiply_error::ma#0 mul8s_slowfast_compare::ma#0 Not aliassing across scopes: print_sbyte::b#1 signed_multiply_error::a#0 Not aliassing across scopes: print_sbyte::b#2 signed_multiply_error::b#0 Not aliassing across scopes: print_sword::w#1 signed_multiply_error::ms#0 Not aliassing across scopes: print_sword::w#2 signed_multiply_error::ma#0 Alias (word) mulf8u::return#0 = (word~) mulf8u::$0 Succesful SSA optimization Pass2AliasElimination -Not aliassing across scopes: char_cursor#141 char_cursor#161 -Not aliassing across scopes: line_cursor#45 line_cursor#87 -Not aliassing across scopes: char_cursor#123 char_cursor#17 +Not aliassing across scopes: char_cursor#145 char_cursor#168 +Not aliassing across scopes: line_cursor#45 line_cursor#91 +Not aliassing across scopes: char_cursor#127 char_cursor#126 Not aliassing across scopes: print_sword::w#3 print_sword::w#1 -Not aliassing across scopes: char_cursor#124 char_cursor#122 +Not aliassing across scopes: char_cursor#128 char_cursor#126 Not aliassing across scopes: print_sbyte::b#3 print_sbyte::b#1 -Not aliassing across scopes: char_cursor#126 char_cursor#122 -Not aliassing across scopes: print_word::w#5 print_word::w#3 -Not aliassing across scopes: char_cursor#128 char_cursor#122 +Not aliassing across scopes: char_cursor#130 char_cursor#126 +Not aliassing across scopes: char_cursor#132 char_cursor#126 Not aliassing across scopes: print_byte::b#5 print_byte::b#3 -Not aliassing across scopes: char_cursor#129 char_cursor#122 +Not aliassing across scopes: char_cursor#133 char_cursor#126 Not aliassing across scopes: print_char::ch#4 print_char::ch#2 -Not aliassing across scopes: char_cursor#78 char_cursor#129 +Not aliassing across scopes: char_cursor#80 char_cursor#133 +Not aliassing across scopes: mul8u::a#2 mul8u::a#1 +Not aliassing across scopes: mulf8u::a#2 mulf8u::a#1 +Not aliassing across scopes: mulf8u::b#2 mulf8u::b#1 Not aliassing across scopes: mulf8u::return#2 mulf8u::return#0 Not aliassing across scopes: mulf8s::m#0 mulf8u::return#2 Not aliassing across scopes: char_cursor#30 line_cursor#1 Not aliassing across scopes: line_cursor#10 line_cursor#1 -Not aliassing across scopes: char_cursor#161 char_cursor#30 -Not aliassing across scopes: line_cursor#87 line_cursor#10 -Not aliassing across scopes: muls8u::a#0 multiply_results_compare::a#6 -Not aliassing across scopes: muls8u::b#0 multiply_results_compare::b#2 +Not aliassing across scopes: char_cursor#172 char_cursor#30 +Not aliassing across scopes: line_cursor#100 line_cursor#10 +Not aliassing across scopes: muls8u::a#0 mul8u_slowfast_compare::a#7 +Not aliassing across scopes: muls8u::b#0 mul8u_slowfast_compare::b#10 Not aliassing across scopes: muls8u::return#2 muls8u::return#0 -Not aliassing across scopes: multiply_results_compare::ms#0 muls8u::return#2 -Not aliassing across scopes: mulf8u::a#1 multiply_results_compare::a#6 -Not aliassing across scopes: mulf8u::b#1 multiply_results_compare::b#2 +Not aliassing across scopes: mul8u_slowfast_compare::ms#0 muls8u::return#2 +Not aliassing across scopes: mulf8u::a#1 mul8u_slowfast_compare::a#7 +Not aliassing across scopes: mulf8u::b#1 mul8u_slowfast_compare::b#10 Not aliassing across scopes: mulf8u::return#3 mulf8u::return#0 -Not aliassing across scopes: multiply_results_compare::ma#0 mulf8u::return#3 -Not aliassing across scopes: multiply_error::a#0 multiply_results_compare::a#6 -Not aliassing across scopes: multiply_error::b#0 multiply_results_compare::b#2 -Not aliassing across scopes: multiply_error::ms#0 multiply_results_compare::ms#0 -Not aliassing across scopes: multiply_error::ma#0 multiply_results_compare::ma#0 +Not aliassing across scopes: mul8u_slowfast_compare::mf#0 mulf8u::return#3 +Not aliassing across scopes: mul8u::a#1 mul8u_slowfast_compare::a#7 +Not aliassing across scopes: mul8u::b#0 mul8u_slowfast_compare::b#10 +Not aliassing across scopes: mul8u::return#2 mul8u::res#2 +Not aliassing across scopes: mul8u_slowfast_compare::mn#0 mul8u::return#2 +Not aliassing across scopes: multiply_error::a#0 mul8u_slowfast_compare::a#7 +Not aliassing across scopes: multiply_error::b#0 mul8u_slowfast_compare::b#10 +Not aliassing across scopes: multiply_error::ms#0 mul8u_slowfast_compare::ms#0 +Not aliassing across scopes: multiply_error::mn#0 mul8u_slowfast_compare::mn#0 +Not aliassing across scopes: multiply_error::mf#0 mul8u_slowfast_compare::mf#0 Not aliassing across scopes: print_byte::b#3 multiply_error::a#0 Not aliassing across scopes: print_byte::b#4 multiply_error::b#0 Not aliassing across scopes: print_word::w#3 multiply_error::ms#0 -Not aliassing across scopes: print_word::w#4 multiply_error::ma#0 -Not aliassing across scopes: char_cursor#162 line_cursor#1 -Not aliassing across scopes: line_cursor#89 line_cursor#1 -Not aliassing across scopes: muls8s::a#0 signed_multiply_results_compare::a#6 -Not aliassing across scopes: muls8s::b#0 signed_multiply_results_compare::b#2 +Not aliassing across scopes: print_word::w#4 multiply_error::mn#0 +Not aliassing across scopes: print_word::w#5 multiply_error::mf#0 +Not aliassing across scopes: char_cursor#168 line_cursor#1 +Not aliassing across scopes: line_cursor#91 line_cursor#1 +Not aliassing across scopes: muls8s::a#0 mul8s_slowfast_compare::a#6 +Not aliassing across scopes: muls8s::b#0 mul8s_slowfast_compare::b#2 Not aliassing across scopes: muls8s::return#2 muls8s::return#0 -Not aliassing across scopes: signed_multiply_results_compare::ms#0 muls8s::return#2 -Not aliassing across scopes: mulf8s::a#0 signed_multiply_results_compare::a#6 -Not aliassing across scopes: mulf8s::b#0 signed_multiply_results_compare::b#2 -Not aliassing across scopes: signed_multiply_results_compare::ma#0 mulf8s::return#2 -Not aliassing across scopes: signed_multiply_error::a#0 signed_multiply_results_compare::a#6 -Not aliassing across scopes: signed_multiply_error::b#0 signed_multiply_results_compare::b#2 -Not aliassing across scopes: signed_multiply_error::ms#0 signed_multiply_results_compare::ms#0 -Not aliassing across scopes: signed_multiply_error::ma#0 signed_multiply_results_compare::ma#0 +Not aliassing across scopes: mul8s_slowfast_compare::ms#0 muls8s::return#2 +Not aliassing across scopes: mulf8s::a#0 mul8s_slowfast_compare::a#6 +Not aliassing across scopes: mulf8s::b#0 mul8s_slowfast_compare::b#2 +Not aliassing across scopes: mul8s_slowfast_compare::ma#0 mulf8s::return#2 +Not aliassing across scopes: signed_multiply_error::a#0 mul8s_slowfast_compare::a#6 +Not aliassing across scopes: signed_multiply_error::b#0 mul8s_slowfast_compare::b#2 +Not aliassing across scopes: signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#0 +Not aliassing across scopes: signed_multiply_error::ma#0 mul8s_slowfast_compare::ma#0 Not aliassing across scopes: print_sbyte::b#1 signed_multiply_error::a#0 Not aliassing across scopes: print_sbyte::b#2 signed_multiply_error::b#0 Not aliassing across scopes: print_sword::w#1 signed_multiply_error::ms#0 Not aliassing across scopes: print_sword::w#2 signed_multiply_error::ma#0 -Self Phi Eliminated (byte*) BGCOL#18 -Self Phi Eliminated (byte*) char_cursor#161 -Self Phi Eliminated (byte*) line_cursor#87 -Self Phi Eliminated (byte*) BGCOL#20 -Self Phi Eliminated (byte*) char_cursor#162 -Self Phi Eliminated (byte*) line_cursor#89 +Self Phi Eliminated (byte*) BGCOL#30 +Self Phi Eliminated (byte*) char_cursor#172 +Self Phi Eliminated (byte*) line_cursor#100 +Self Phi Eliminated (byte*) BGCOL#21 +Self Phi Eliminated (byte*) char_cursor#168 +Self Phi Eliminated (byte*) line_cursor#91 Succesful SSA optimization Pass2SelfPhiElimination -Redundant Phi (byte*) BGCOL#18 (const byte*) BGCOL#0 -Redundant Phi (byte*) char_cursor#161 (byte*) char_cursor#30 -Redundant Phi (byte*) line_cursor#87 (byte*) line_cursor#10 -Redundant Phi (byte*) BGCOL#20 (const byte*) BGCOL#0 -Redundant Phi (byte*) char_cursor#162 (byte*) line_cursor#1 -Redundant Phi (byte*) line_cursor#89 (byte*) line_cursor#1 +Redundant Phi (byte*) BGCOL#30 (const byte*) BGCOL#0 +Redundant Phi (byte*) char_cursor#172 (byte*) char_cursor#30 +Redundant Phi (byte*) line_cursor#100 (byte*) line_cursor#10 +Redundant Phi (byte*) BGCOL#21 (const byte*) BGCOL#0 +Redundant Phi (byte*) char_cursor#168 (byte*) line_cursor#1 +Redundant Phi (byte*) line_cursor#91 (byte*) line_cursor#1 Succesful SSA optimization Pass2RedundantPhiElimination Not culling empty block because it shares successor with its predecessor. (label) mulf_init::@7 -Not aliassing across scopes: char_cursor#141 char_cursor#30 -Not aliassing across scopes: line_cursor#45 line_cursor#10 -Not aliassing across scopes: char_cursor#123 char_cursor#17 +Not culling empty block because it shares successor with its predecessor. (label) mul8u_slowfast_compare::@6 +Not culling empty block because it shares successor with its predecessor. (label) mul8u_slowfast_compare::@7 +Not aliassing across scopes: char_cursor#145 line_cursor#1 +Not aliassing across scopes: char_cursor#127 char_cursor#126 Not aliassing across scopes: print_sword::w#3 print_sword::w#1 -Not aliassing across scopes: char_cursor#124 char_cursor#122 +Not aliassing across scopes: char_cursor#128 char_cursor#126 Not aliassing across scopes: print_sbyte::b#3 print_sbyte::b#1 -Not aliassing across scopes: char_cursor#126 char_cursor#122 -Not aliassing across scopes: print_word::w#5 print_word::w#3 -Not aliassing across scopes: char_cursor#128 char_cursor#122 +Not aliassing across scopes: char_cursor#130 char_cursor#126 +Not aliassing across scopes: char_cursor#132 char_cursor#126 Not aliassing across scopes: print_byte::b#5 print_byte::b#3 -Not aliassing across scopes: char_cursor#129 char_cursor#122 +Not aliassing across scopes: char_cursor#133 char_cursor#126 Not aliassing across scopes: print_char::ch#4 print_char::ch#2 -Not aliassing across scopes: char_cursor#78 char_cursor#129 +Not aliassing across scopes: char_cursor#80 char_cursor#133 +Not aliassing across scopes: mul8u::a#2 mul8u::a#1 +Not aliassing across scopes: mulf8u::a#2 mulf8u::a#1 +Not aliassing across scopes: mulf8u::b#2 mulf8u::b#1 Not aliassing across scopes: mulf8u::return#2 mulf8u::return#0 Not aliassing across scopes: mulf8s::m#0 mulf8u::return#2 Not aliassing across scopes: char_cursor#30 line_cursor#1 Not aliassing across scopes: line_cursor#10 line_cursor#1 -Not aliassing across scopes: muls8u::a#0 multiply_results_compare::a#6 -Not aliassing across scopes: muls8u::b#0 multiply_results_compare::b#2 +Not aliassing across scopes: muls8u::a#0 mul8u_slowfast_compare::a#7 +Not aliassing across scopes: muls8u::b#0 mul8u_slowfast_compare::b#10 Not aliassing across scopes: muls8u::return#2 muls8u::return#0 -Not aliassing across scopes: multiply_results_compare::ms#0 muls8u::return#2 -Not aliassing across scopes: mulf8u::a#1 multiply_results_compare::a#6 -Not aliassing across scopes: mulf8u::b#1 multiply_results_compare::b#2 +Not aliassing across scopes: mul8u_slowfast_compare::ms#0 muls8u::return#2 +Not aliassing across scopes: mulf8u::a#1 mul8u_slowfast_compare::a#7 +Not aliassing across scopes: mulf8u::b#1 mul8u_slowfast_compare::b#10 Not aliassing across scopes: mulf8u::return#3 mulf8u::return#0 -Not aliassing across scopes: multiply_results_compare::ma#0 mulf8u::return#3 -Not aliassing across scopes: multiply_error::a#0 multiply_results_compare::a#6 -Not aliassing across scopes: multiply_error::b#0 multiply_results_compare::b#2 -Not aliassing across scopes: multiply_error::ms#0 multiply_results_compare::ms#0 -Not aliassing across scopes: multiply_error::ma#0 multiply_results_compare::ma#0 +Not aliassing across scopes: mul8u_slowfast_compare::mf#0 mulf8u::return#3 +Not aliassing across scopes: mul8u::a#1 mul8u_slowfast_compare::a#7 +Not aliassing across scopes: mul8u::b#0 mul8u_slowfast_compare::b#10 +Not aliassing across scopes: mul8u::return#2 mul8u::res#2 +Not aliassing across scopes: mul8u_slowfast_compare::mn#0 mul8u::return#2 +Not aliassing across scopes: multiply_error::a#0 mul8u_slowfast_compare::a#7 +Not aliassing across scopes: multiply_error::b#0 mul8u_slowfast_compare::b#10 +Not aliassing across scopes: multiply_error::ms#0 mul8u_slowfast_compare::ms#0 +Not aliassing across scopes: multiply_error::mn#0 mul8u_slowfast_compare::mn#0 +Not aliassing across scopes: multiply_error::mf#0 mul8u_slowfast_compare::mf#0 Not aliassing across scopes: print_byte::b#3 multiply_error::a#0 Not aliassing across scopes: print_byte::b#4 multiply_error::b#0 Not aliassing across scopes: print_word::w#3 multiply_error::ms#0 -Not aliassing across scopes: print_word::w#4 multiply_error::ma#0 -Not aliassing across scopes: muls8s::a#0 signed_multiply_results_compare::a#6 -Not aliassing across scopes: muls8s::b#0 signed_multiply_results_compare::b#2 +Not aliassing across scopes: print_word::w#4 multiply_error::mn#0 +Not aliassing across scopes: print_word::w#5 multiply_error::mf#0 +Not aliassing across scopes: muls8s::a#0 mul8s_slowfast_compare::a#6 +Not aliassing across scopes: muls8s::b#0 mul8s_slowfast_compare::b#2 Not aliassing across scopes: muls8s::return#2 muls8s::return#0 -Not aliassing across scopes: signed_multiply_results_compare::ms#0 muls8s::return#2 -Not aliassing across scopes: mulf8s::a#0 signed_multiply_results_compare::a#6 -Not aliassing across scopes: mulf8s::b#0 signed_multiply_results_compare::b#2 -Not aliassing across scopes: signed_multiply_results_compare::ma#0 mulf8s::return#2 -Not aliassing across scopes: signed_multiply_error::a#0 signed_multiply_results_compare::a#6 -Not aliassing across scopes: signed_multiply_error::b#0 signed_multiply_results_compare::b#2 -Not aliassing across scopes: signed_multiply_error::ms#0 signed_multiply_results_compare::ms#0 -Not aliassing across scopes: signed_multiply_error::ma#0 signed_multiply_results_compare::ma#0 +Not aliassing across scopes: mul8s_slowfast_compare::ms#0 muls8s::return#2 +Not aliassing across scopes: mulf8s::a#0 mul8s_slowfast_compare::a#6 +Not aliassing across scopes: mulf8s::b#0 mul8s_slowfast_compare::b#2 +Not aliassing across scopes: mul8s_slowfast_compare::ma#0 mulf8s::return#2 +Not aliassing across scopes: signed_multiply_error::a#0 mul8s_slowfast_compare::a#6 +Not aliassing across scopes: signed_multiply_error::b#0 mul8s_slowfast_compare::b#2 +Not aliassing across scopes: signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#0 +Not aliassing across scopes: signed_multiply_error::ma#0 mul8s_slowfast_compare::ma#0 Not aliassing across scopes: print_sbyte::b#1 signed_multiply_error::a#0 Not aliassing across scopes: print_sbyte::b#2 signed_multiply_error::b#0 Not aliassing across scopes: print_sword::w#1 signed_multiply_error::ms#0 @@ -4790,6 +5349,9 @@ Inlining constant with var siblings (const string) print_str::str#12 Inlining constant with var siblings (const string) print_str::str#13 Inlining constant with var siblings (const string) print_str::str#13 Inlining constant with var siblings (const string) print_str::str#13 +Inlining constant with var siblings (const string) print_str::str#14 +Inlining constant with var siblings (const string) print_str::str#14 +Inlining constant with var siblings (const string) print_str::str#14 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 @@ -4800,6 +5362,9 @@ Inlining constant with var siblings (const byte) print_char::ch#1 Inlining constant with different constant siblings (const byte) print_char::ch#1 Inlining constant with var siblings (const byte*) print_cls::sc#0 Inlining constant with var siblings (const byte*) print_cls::sc#0 +Inlining constant with var siblings (const word) mul8u::res#0 +Inlining constant with var siblings (const word) mul8u::res#0 +Inlining constant with var siblings (const word) mul8u::res#0 Inlining constant with var siblings (const word) mulf_init::sqr#0 Inlining constant with var siblings (const word) mulf_init::sqr#0 Inlining constant with var siblings (const word) mulf_init::sqr#0 @@ -4837,18 +5402,28 @@ Inlining constant with var siblings (const signed byte) muls8s::i#0 Inlining constant with var siblings (const signed byte) muls8s::i#0 Inlining constant with var siblings (const signed byte) muls8s::j#0 Inlining constant with var siblings (const signed byte) muls8s::j#0 -Inlining constant with var siblings (const byte[512]) multiply_tables_compare::asm_sqr#0 -Inlining constant with var siblings (const byte[512]) multiply_tables_compare::asm_sqr#0 -Inlining constant with var siblings (const byte[512]) multiply_tables_compare::kc_sqr#0 -Inlining constant with var siblings (const byte[512]) multiply_tables_compare::kc_sqr#0 -Inlining constant with var siblings (const byte) multiply_results_compare::a#0 -Inlining constant with var siblings (const byte) multiply_results_compare::a#0 -Inlining constant with var siblings (const byte) multiply_results_compare::b#0 -Inlining constant with var siblings (const byte) multiply_results_compare::b#0 -Inlining constant with var siblings (const signed byte) signed_multiply_results_compare::a#0 -Inlining constant with var siblings (const signed byte) signed_multiply_results_compare::a#0 -Inlining constant with var siblings (const signed byte) signed_multiply_results_compare::b#0 -Inlining constant with var siblings (const signed byte) signed_multiply_results_compare::b#0 +Inlining constant with var siblings (const byte[512]) mulf_tables_cmp::asm_sqr#0 +Inlining constant with var siblings (const byte[512]) mulf_tables_cmp::asm_sqr#0 +Inlining constant with var siblings (const byte[512]) mulf_tables_cmp::kc_sqr#0 +Inlining constant with var siblings (const byte[512]) mulf_tables_cmp::kc_sqr#0 +Inlining constant with var siblings (const byte) mul8u_slowfast_compare::a#0 +Inlining constant with var siblings (const byte) mul8u_slowfast_compare::a#0 +Inlining constant with var siblings (const byte) mul8u_slowfast_compare::b#0 +Inlining constant with var siblings (const byte) mul8u_slowfast_compare::b#0 +Inlining constant with var siblings (const byte) mul8u_slowfast_compare::ok#0 +Inlining constant with var siblings (const byte) mul8u_slowfast_compare::ok#0 +Inlining constant with different constant siblings (const byte) mul8u_slowfast_compare::ok#0 +Inlining constant with different constant siblings (const byte) mul8u_slowfast_compare::ok#0 +Inlining constant with var siblings (const byte) mul8u_slowfast_compare::ok#1 +Inlining constant with var siblings (const byte) mul8u_slowfast_compare::ok#1 +Inlining constant with different constant siblings (const byte) mul8u_slowfast_compare::ok#1 +Inlining constant with var siblings (const byte) mul8u_slowfast_compare::ok#2 +Inlining constant with var siblings (const byte) mul8u_slowfast_compare::ok#2 +Inlining constant with different constant siblings (const byte) mul8u_slowfast_compare::ok#2 +Inlining constant with var siblings (const signed byte) mul8s_slowfast_compare::a#0 +Inlining constant with var siblings (const signed byte) mul8s_slowfast_compare::a#0 +Inlining constant with var siblings (const signed byte) mul8s_slowfast_compare::b#0 +Inlining constant with var siblings (const signed byte) mul8s_slowfast_compare::b#0 Inlining constant with var siblings (const byte*) line_cursor#26 Inlining constant with var siblings (const byte*) line_cursor#26 Inlining constant with var siblings (const byte*) line_cursor#26 @@ -4857,27 +5432,25 @@ Constant inlined mulf_init::sqr2_lo#0 = (const byte[512]) mulf_sqr2_lo#0 Constant inlined mulf_init::sqr2_hi#0 = (const byte[512]) mulf_sqr2_hi#0 Constant inlined mulf_init::dir#1 = (byte/signed byte/word/signed word/dword/signed dword) 1 Constant inlined mulf_init::dir#0 = (byte/word/signed word/dword/signed dword) 255 -Constant inlined multiply_tables_compare::asm_sqr#0 = (const byte[512]) mula_sqr1_lo#0 Constant inlined line_cursor#26 = (const byte*) SCREEN#0 +Constant inlined mul8u_slowfast_compare::b#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined mulf_init::$20 = (const byte[512]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) 256 Constant inlined mulf_init::x_255#0 = ((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined multiply_tables_compare::kc_sqr#0 = (const byte[512]) mulf_sqr1_lo#0 +Constant inlined mulf_tables_cmp::kc_sqr#0 = (const byte[512]) mulf_sqr1_lo#0 Constant inlined mulf_init::x_2#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined signed_multiply_results_compare::$7 = -(byte/word/signed word/dword/signed dword) 128 -Constant inlined signed_multiply_results_compare::a#0 = -(byte/word/signed word/dword/signed dword) 128 -Constant inlined signed_multiply_results_compare::$9 = -(byte/word/signed word/dword/signed dword) 128 Constant inlined muls8s::m#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined muls8s::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined print_str::str#9 = (const string) signed_multiply_results_compare::str +Constant inlined print_str::str#9 = (const string) multiply_error::str4 +Constant inlined mul8u::res#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined mulf_init::sqr1_hi#0 = (const byte[512]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 +Constant inlined mul8s_slowfast_compare::a#0 = -(byte/word/signed word/dword/signed dword) 128 Constant inlined mulf_init::$10 = -(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined multiply_results_compare::a#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined mulf_init::sqr1_lo#0 = (const byte[512]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 -Constant inlined print_str::str#4 = (const string) multiply_results_compare::str +Constant inlined print_str::str#4 = (const string) mul8u_slowfast_compare::str Constant inlined mulf_init::$15 = (const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511 -Constant inlined print_str::str#3 = (const string) multiply_tables_compare::str2 -Constant inlined print_str::str#2 = (const string) multiply_tables_compare::str1 -Constant inlined print_str::str#1 = (const string) multiply_tables_compare::str +Constant inlined print_str::str#3 = (const string) mulf_tables_cmp::str2 +Constant inlined print_str::str#2 = (const string) mulf_tables_cmp::str1 +Constant inlined print_str::str#1 = (const string) mulf_tables_cmp::str Constant inlined mulf_init::$18 = (const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 256 Constant inlined print_str::str#8 = (const string) multiply_error::str3 Constant inlined mulf_init::$19 = (const byte[512]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) 511 @@ -4887,27 +5460,34 @@ Constant inlined mulf_init::$17 = (const byte[512]) mulf_sqr2_lo#0+(word/signed Constant inlined print_str::str#5 = (const string) multiply_error::str Constant inlined mulf_init::c#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined print_cls::$0 = (const byte*) SCREEN#0+(word/signed word/dword/signed dword) 1000 -Constant inlined print_str::str#13 = (const string) signed_multiply_error::str3 -Constant inlined print_str::str#12 = (const string) signed_multiply_error::str2 -Constant inlined print_str::str#11 = (const string) signed_multiply_error::str1 -Constant inlined print_str::str#10 = (const string) signed_multiply_error::str -Constant inlined multiply_tables_compare::$9 = (const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4 -Constant inlined multiply_tables_compare::$8 = (word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4 +Constant inlined print_str::str#13 = (const string) signed_multiply_error::str2 +Constant inlined print_str::str#12 = (const string) signed_multiply_error::str1 +Constant inlined print_str::str#11 = (const string) signed_multiply_error::str +Constant inlined print_str::str#10 = (const string) mul8s_slowfast_compare::str +Constant inlined print_str::str#14 = (const string) signed_multiply_error::str3 +Constant inlined mul8s_slowfast_compare::$9 = -(byte/word/signed word/dword/signed dword) 128 +Constant inlined mul8u_slowfast_compare::a#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined mul8s_slowfast_compare::$7 = -(byte/word/signed word/dword/signed dword) 128 +Constant inlined mulf_tables_cmp::$9 = (const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4 +Constant inlined mulf_tables_cmp::$8 = (word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4 Constant inlined mulf_init::sqr#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined muls8u::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined muls8u::m#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 -Constant inlined signed_multiply_results_compare::b#0 = -(byte/word/signed word/dword/signed dword) 128 Constant inlined print_cls::sc#0 = (const byte*) SCREEN#0 Constant inlined mulf_init::$8 = (const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512 +Constant inlined mul8u_slowfast_compare::ok#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined muls8s::j#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined mul8u_slowfast_compare::ok#0 = (byte/signed byte/word/signed word/dword/signed dword) 1 +Constant inlined mul8s_slowfast_compare::b#0 = -(byte/word/signed word/dword/signed dword) 128 +Constant inlined mul8u_slowfast_compare::ok#1 = (byte/signed byte/word/signed word/dword/signed dword) 0 +Constant inlined mulf_tables_cmp::asm_sqr#0 = (const byte[512]) mula_sqr1_lo#0 Constant inlined print_char::ch#1 = (byte) '-' Constant inlined print_char::ch#0 = (byte) '-' -Constant inlined multiply_results_compare::b#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 Constant inlined print_byte::$4 = (const string) print_byte::hextab#0 Succesful SSA optimization Pass2ConstantInlining -Block Sequence Planned @begin @20 @end main main::@1 main::@2 main::@3 main::@4 main::@5 main::@return signed_multiply_results_compare signed_multiply_results_compare::@1 signed_multiply_results_compare::@2 signed_multiply_results_compare::@8 signed_multiply_results_compare::@9 signed_multiply_results_compare::@4 signed_multiply_results_compare::@return signed_multiply_results_compare::@3 signed_multiply_results_compare::@6 signed_multiply_results_compare::@7 signed_multiply_results_compare::@11 print_ln print_ln::@1 print_ln::@return print_str print_str::@1 print_str::@return print_str::@2 signed_multiply_error signed_multiply_error::@1 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@6 signed_multiply_error::@7 signed_multiply_error::@8 signed_multiply_error::@return print_sword print_sword::@2 print_sword::@4 print_sword::@1 print_sword::@return print_word print_word::@1 print_word::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return mulf8s mulf8s::@6 mulf8s::@3 mulf8s::@1 mulf8s::@4 mulf8s::@2 mulf8s::@return mulf8u mulf8u::@return muls8s muls8s::@2 muls8s::@3 muls8s::@return muls8s::@1 muls8s::@5 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@2 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@4 multiply_results_compare::@return multiply_results_compare::@3 multiply_results_compare::@6 multiply_results_compare::@7 multiply_results_compare::@11 multiply_error multiply_error::@1 multiply_error::@2 multiply_error::@3 multiply_error::@4 multiply_error::@5 multiply_error::@6 multiply_error::@7 multiply_error::@8 multiply_error::@return muls8u muls8u::@2 muls8u::@1 muls8u::@return multiply_tables_compare multiply_tables_compare::@1 multiply_tables_compare::@3 multiply_tables_compare::@6 multiply_tables_compare::@7 multiply_tables_compare::@8 multiply_tables_compare::@return multiply_tables_compare::@2 multiply_tables_compare::@5 multiply_tables_compare::@10 mulf_init_asm mulf_init_asm::@return mulf_init mulf_init::@1 mulf_init::@5 mulf_init::@2 mulf_init::@3 mulf_init::@7 mulf_init::@4 mulf_init::@8 mulf_init::@return print_cls print_cls::@1 print_cls::@return -Added new block during phi lifting signed_multiply_results_compare::@13(between signed_multiply_results_compare::@6 and signed_multiply_results_compare::@1) -Added new block during phi lifting signed_multiply_results_compare::@14(between signed_multiply_results_compare::@3 and signed_multiply_results_compare::@2) +Block Sequence Planned @begin @21 @end main main::@1 main::@2 main::@3 main::@4 main::@5 main::@return mul8s_slowfast_compare mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@4 mul8s_slowfast_compare::@return mul8s_slowfast_compare::@3 mul8s_slowfast_compare::@6 mul8s_slowfast_compare::@7 mul8s_slowfast_compare::@11 print_ln print_ln::@1 print_ln::@return print_str print_str::@1 print_str::@return print_str::@2 signed_multiply_error signed_multiply_error::@1 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@6 signed_multiply_error::@7 signed_multiply_error::@8 signed_multiply_error::@return print_sword print_sword::@2 print_sword::@4 print_sword::@1 print_sword::@return print_word print_word::@1 print_word::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return mulf8s mulf8s::@6 mulf8s::@3 mulf8s::@1 mulf8s::@4 mulf8s::@2 mulf8s::@return mulf8u mulf8u::@return muls8s muls8s::@2 muls8s::@3 muls8s::@return muls8s::@1 muls8s::@5 mul8u_slowfast_compare mul8u_slowfast_compare::@1 mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@12 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@7 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@return mul8u_slowfast_compare::@5 mul8u_slowfast_compare::@10 mul8u_slowfast_compare::@11 mul8u_slowfast_compare::@16 multiply_error multiply_error::@1 multiply_error::@2 multiply_error::@3 multiply_error::@4 multiply_error::@5 multiply_error::@6 multiply_error::@7 multiply_error::@8 multiply_error::@9 multiply_error::@10 multiply_error::@return mul8u mul8u::@1 mul8u::@return mul8u::@2 mul8u::@7 mul8u::@4 muls8u muls8u::@2 muls8u::@1 muls8u::@return mulf_tables_cmp mulf_tables_cmp::@1 mulf_tables_cmp::@3 mulf_tables_cmp::@6 mulf_tables_cmp::@7 mulf_tables_cmp::@8 mulf_tables_cmp::@return mulf_tables_cmp::@2 mulf_tables_cmp::@5 mulf_tables_cmp::@10 mulf_init_asm mulf_init_asm::@return mulf_init mulf_init::@1 mulf_init::@5 mulf_init::@2 mulf_init::@3 mulf_init::@7 mulf_init::@4 mulf_init::@8 mulf_init::@return print_cls print_cls::@1 print_cls::@return +Added new block during phi lifting mul8s_slowfast_compare::@13(between mul8s_slowfast_compare::@6 and mul8s_slowfast_compare::@1) +Added new block during phi lifting mul8s_slowfast_compare::@14(between mul8s_slowfast_compare::@3 and mul8s_slowfast_compare::@2) Added new block during phi lifting print_ln::@3(between print_ln::@1 and print_ln::@1) Added new block during phi lifting print_sword::@5(between print_sword and print_sword::@1) Added new block during phi lifting print_sbyte::@5(between print_sbyte and print_sbyte::@1) @@ -4917,45 +5497,49 @@ Added new block during phi lifting muls8s::@12(between muls8s::@2 and muls8s::@2 Added new block during phi lifting muls8s::@13(between muls8s::@2 and muls8s::@3) Added new block during phi lifting muls8s::@14(between muls8s::@5 and muls8s::@3) Added new block during phi lifting muls8s::@15(between muls8s::@5 and muls8s::@5) -Added new block during phi lifting multiply_results_compare::@13(between multiply_results_compare::@6 and multiply_results_compare::@1) -Added new block during phi lifting multiply_results_compare::@14(between multiply_results_compare::@3 and multiply_results_compare::@2) +Added new block during phi lifting mul8u_slowfast_compare::@18(between mul8u_slowfast_compare::@10 and mul8u_slowfast_compare::@1) +Added new block during phi lifting mul8u_slowfast_compare::@19(between mul8u_slowfast_compare::@5 and mul8u_slowfast_compare::@2) +Added new block during phi lifting mul8u_slowfast_compare::@20(between mul8u_slowfast_compare::@3 and mul8u_slowfast_compare::@4) +Added new block during phi lifting mul8u::@10(between mul8u::@2 and mul8u::@4) Added new block during phi lifting muls8u::@6(between muls8u::@2 and muls8u::@2) Added new block during phi lifting muls8u::@7(between muls8u::@2 and muls8u::@1) -Added new block during phi lifting multiply_tables_compare::@12(between multiply_tables_compare::@2 and multiply_tables_compare::@1) +Added new block during phi lifting mulf_tables_cmp::@12(between mulf_tables_cmp::@2 and mulf_tables_cmp::@1) Added new block during phi lifting mulf_init::@9(between mulf_init::@2 and mulf_init::@1) Added new block during phi lifting mulf_init::@10(between mulf_init::@1 and mulf_init::@2) Added new block during phi lifting mulf_init::@11(between mulf_init::@4 and mulf_init::@3) Added new block during phi lifting mulf_init::@12(between mulf_init::@3 and mulf_init::@4) Added new block during phi lifting print_cls::@3(between print_cls::@1 and print_cls::@1) -Block Sequence Planned @begin @20 @end main main::@1 main::@2 main::@3 main::@4 main::@5 main::@return signed_multiply_results_compare signed_multiply_results_compare::@1 signed_multiply_results_compare::@2 signed_multiply_results_compare::@8 signed_multiply_results_compare::@9 signed_multiply_results_compare::@4 signed_multiply_results_compare::@return signed_multiply_results_compare::@3 signed_multiply_results_compare::@6 signed_multiply_results_compare::@7 signed_multiply_results_compare::@11 signed_multiply_results_compare::@13 signed_multiply_results_compare::@14 print_ln print_ln::@1 print_ln::@return print_ln::@3 print_str print_str::@1 print_str::@return print_str::@2 signed_multiply_error signed_multiply_error::@1 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@6 signed_multiply_error::@7 signed_multiply_error::@8 signed_multiply_error::@return print_sword print_sword::@2 print_sword::@4 print_sword::@1 print_sword::@return print_sword::@5 print_word print_word::@1 print_word::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return print_sbyte::@5 mulf8s mulf8s::@6 mulf8s::@3 mulf8s::@1 mulf8s::@4 mulf8s::@2 mulf8s::@return mulf8s::@8 mulf8s::@7 mulf8u mulf8u::@return muls8s muls8s::@2 muls8s::@13 muls8s::@3 muls8s::@return muls8s::@12 muls8s::@1 muls8s::@5 muls8s::@14 muls8s::@15 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@2 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@4 multiply_results_compare::@return multiply_results_compare::@3 multiply_results_compare::@6 multiply_results_compare::@7 multiply_results_compare::@11 multiply_results_compare::@13 multiply_results_compare::@14 multiply_error multiply_error::@1 multiply_error::@2 multiply_error::@3 multiply_error::@4 multiply_error::@5 multiply_error::@6 multiply_error::@7 multiply_error::@8 multiply_error::@return muls8u muls8u::@2 muls8u::@7 muls8u::@1 muls8u::@return muls8u::@6 multiply_tables_compare multiply_tables_compare::@1 multiply_tables_compare::@3 multiply_tables_compare::@6 multiply_tables_compare::@7 multiply_tables_compare::@8 multiply_tables_compare::@return multiply_tables_compare::@2 multiply_tables_compare::@5 multiply_tables_compare::@10 multiply_tables_compare::@12 mulf_init_asm mulf_init_asm::@return mulf_init mulf_init::@1 mulf_init::@5 mulf_init::@2 mulf_init::@3 mulf_init::@7 mulf_init::@4 mulf_init::@8 mulf_init::@return mulf_init::@11 mulf_init::@12 mulf_init::@9 mulf_init::@10 print_cls print_cls::@1 print_cls::@return print_cls::@3 +Block Sequence Planned @begin @21 @end main main::@1 main::@2 main::@3 main::@4 main::@5 main::@return mul8s_slowfast_compare mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@4 mul8s_slowfast_compare::@return mul8s_slowfast_compare::@3 mul8s_slowfast_compare::@6 mul8s_slowfast_compare::@7 mul8s_slowfast_compare::@11 mul8s_slowfast_compare::@13 mul8s_slowfast_compare::@14 print_ln print_ln::@1 print_ln::@return print_ln::@3 print_str print_str::@1 print_str::@return print_str::@2 signed_multiply_error signed_multiply_error::@1 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@6 signed_multiply_error::@7 signed_multiply_error::@8 signed_multiply_error::@return print_sword print_sword::@2 print_sword::@4 print_sword::@1 print_sword::@return print_sword::@5 print_word print_word::@1 print_word::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return print_sbyte::@5 mulf8s mulf8s::@6 mulf8s::@3 mulf8s::@1 mulf8s::@4 mulf8s::@2 mulf8s::@return mulf8s::@8 mulf8s::@7 mulf8u mulf8u::@return muls8s muls8s::@2 muls8s::@13 muls8s::@3 muls8s::@return muls8s::@12 muls8s::@1 muls8s::@5 muls8s::@14 muls8s::@15 mul8u_slowfast_compare mul8u_slowfast_compare::@1 mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@12 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@7 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@return mul8u_slowfast_compare::@5 mul8u_slowfast_compare::@10 mul8u_slowfast_compare::@11 mul8u_slowfast_compare::@16 mul8u_slowfast_compare::@18 mul8u_slowfast_compare::@19 mul8u_slowfast_compare::@20 multiply_error multiply_error::@1 multiply_error::@2 multiply_error::@3 multiply_error::@4 multiply_error::@5 multiply_error::@6 multiply_error::@7 multiply_error::@8 multiply_error::@9 multiply_error::@10 multiply_error::@return mul8u mul8u::@1 mul8u::@return mul8u::@2 mul8u::@7 mul8u::@4 mul8u::@10 muls8u muls8u::@2 muls8u::@7 muls8u::@1 muls8u::@return muls8u::@6 mulf_tables_cmp mulf_tables_cmp::@1 mulf_tables_cmp::@3 mulf_tables_cmp::@6 mulf_tables_cmp::@7 mulf_tables_cmp::@8 mulf_tables_cmp::@return mulf_tables_cmp::@2 mulf_tables_cmp::@5 mulf_tables_cmp::@10 mulf_tables_cmp::@12 mulf_init_asm mulf_init_asm::@return mulf_init mulf_init::@1 mulf_init::@5 mulf_init::@2 mulf_init::@3 mulf_init::@7 mulf_init::@4 mulf_init::@8 mulf_init::@return mulf_init::@11 mulf_init::@12 mulf_init::@9 mulf_init::@10 print_cls print_cls::@1 print_cls::@return print_cls::@3 Adding NOP phi() at start of @begin -Adding NOP phi() at start of @20 +Adding NOP phi() at start of @21 Adding NOP phi() at start of @end 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 main::@4 Adding NOP phi() at start of main::@5 -Adding NOP phi() at start of signed_multiply_results_compare -Adding NOP phi() at start of multiply_results_compare -Adding NOP phi() at start of multiply_tables_compare -Adding NOP phi() at start of multiply_tables_compare::@5 +Adding NOP phi() at start of mul8s_slowfast_compare +Adding NOP phi() at start of mul8u_slowfast_compare +Adding NOP phi() at start of mul8u_slowfast_compare::@6 +Adding NOP phi() at start of mul8u_slowfast_compare::@7 +Adding NOP phi() at start of mulf_tables_cmp +Adding NOP phi() at start of mulf_tables_cmp::@5 Adding NOP phi() at start of mulf_init Adding NOP phi() at start of mulf_init::@7 Adding NOP phi() at start of print_cls CALL GRAPH Calls in [] to main:2 -Calls in [main] to print_cls:5 mulf_init:7 mulf_init_asm:9 multiply_tables_compare:11 multiply_results_compare:13 signed_multiply_results_compare:15 -Calls in [signed_multiply_results_compare] to muls8s:22 mulf8s:27 signed_multiply_error:36 print_str:43 print_ln:46 +Calls in [main] to print_cls:5 mulf_init:7 mulf_init_asm:9 mulf_tables_cmp:11 mul8u_slowfast_compare:13 mul8s_slowfast_compare:15 +Calls in [mul8s_slowfast_compare] to muls8s:22 mulf8s:27 signed_multiply_error:36 print_str:43 print_ln:46 Calls in [signed_multiply_error] to print_str:68 print_sbyte:71 print_str:73 print_sbyte:76 print_str:78 print_sword:81 print_str:83 print_sword:86 print_ln:89 Calls in [print_sword] to print_char:94 print_word:101 Calls in [print_word] to print_byte:109 print_byte:113 Calls in [print_byte] to print_char:120 print_char:125 Calls in [print_sbyte] to print_char:134 print_byte:141 Calls in [mulf8s] to mulf8u:147 -Calls in [multiply_results_compare] to muls8u:194 mulf8u:201 multiply_error:210 print_str:217 print_ln:220 -Calls in [multiply_error] to print_str:224 print_byte:228 print_str:230 print_byte:234 print_str:236 print_word:240 print_str:242 print_word:246 print_ln:249 -Calls in [multiply_tables_compare] to print_str:265 print_word:268 print_str:270 print_word:273 print_str:281 print_ln:283 +Calls in [mul8u_slowfast_compare] to muls8u:194 mulf8u:201 mul8u:206 multiply_error:222 print_str:229 print_ln:232 +Calls in [multiply_error] to print_str:237 print_byte:241 print_str:243 print_byte:247 print_str:249 print_word:253 print_str:255 print_word:259 print_str:261 print_word:265 print_ln:268 +Calls in [mulf_tables_cmp] to print_str:301 print_word:304 print_str:306 print_word:309 print_str:317 print_ln:319 Propagating live ranges... Propagating live ranges... @@ -4987,48 +5571,55 @@ Propagating live ranges... Propagating live ranges... Propagating live ranges... Propagating live ranges... -Created 52 initial phi equivalence classes -Not coalescing [42] char_cursor#180 ← line_cursor#1 -Coalesced [44] line_cursor#104 ← line_cursor#1 -Coalesced [45] char_cursor#169 ← char_cursor#122 -Coalesced [47] signed_multiply_results_compare::a#9 ← signed_multiply_results_compare::a#1 -Coalesced [48] signed_multiply_results_compare::b#7 ← signed_multiply_results_compare::b#1 -Coalesced [50] line_cursor#105 ← line_cursor#45 -Coalesced (already) [55] line_cursor#106 ← line_cursor#1 -Coalesced [57] print_str::str#17 ← print_str::str#16 -Coalesced [58] char_cursor#181 ← char_cursor#141 -Coalesced [65] print_str::str#18 ← print_str::str#0 -Coalesced [66] char_cursor#182 ← char_cursor#1 -Not coalescing [67] char_cursor#176 ← line_cursor#1 +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Created 58 initial phi equivalence classes +Not coalescing [42] char_cursor#179 ← line_cursor#1 +Coalesced [44] line_cursor#108 ← line_cursor#1 +Coalesced [45] char_cursor#174 ← char_cursor#126 +Coalesced [47] mul8s_slowfast_compare::a#9 ← mul8s_slowfast_compare::a#1 +Coalesced [48] mul8s_slowfast_compare::b#7 ← mul8s_slowfast_compare::b#1 +Coalesced [50] line_cursor#112 ← line_cursor#45 +Coalesced (already) [55] line_cursor#113 ← line_cursor#1 +Coalesced [57] print_str::str#18 ← print_str::str#17 +Coalesced [58] char_cursor#191 ← char_cursor#145 +Coalesced [65] print_str::str#19 ← print_str::str#0 +Coalesced [66] char_cursor#192 ← char_cursor#1 +Not coalescing [67] char_cursor#187 ← line_cursor#1 Coalesced [70] print_sbyte::b#7 ← print_sbyte::b#1 -Coalesced [72] char_cursor#177 ← char_cursor#17 +Coalesced [72] char_cursor#188 ← char_cursor#17 Coalesced [75] print_sbyte::b#8 ← print_sbyte::b#2 -Coalesced (already) [77] char_cursor#178 ← char_cursor#17 +Coalesced (already) [77] char_cursor#189 ← char_cursor#17 Coalesced [80] print_sword::w#7 ← print_sword::w#1 -Coalesced (already) [82] char_cursor#179 ← char_cursor#17 +Coalesced (already) [82] char_cursor#190 ← char_cursor#17 Coalesced [85] print_sword::w#8 ← print_sword::w#2 -Coalesced (already) [87] line_cursor#103 ← line_cursor#1 -Coalesced (already) [88] char_cursor#168 ← char_cursor#17 -Coalesced [93] char_cursor#198 ← char_cursor#122 +Coalesced (already) [87] line_cursor#111 ← line_cursor#1 +Coalesced (already) [88] char_cursor#178 ← char_cursor#17 +Coalesced [93] char_cursor#209 ← char_cursor#126 Coalesced [96] print_sword::w#10 ← print_sword::w#0 -Coalesced [97] char_cursor#184 ← char_cursor#17 -Coalesced [100] char_cursor#189 ← char_cursor#124 +Coalesced [97] char_cursor#194 ← char_cursor#17 +Coalesced [100] char_cursor#200 ← char_cursor#128 Coalesced [103] print_sword::w#9 ← print_sword::w#3 -Coalesced (already) [104] char_cursor#183 ← char_cursor#122 +Coalesced (already) [104] char_cursor#193 ← char_cursor#126 Coalesced [107] print_byte::b#10 ← print_byte::b#1 -Coalesced [108] char_cursor#193 ← char_cursor#128 +Coalesced [108] char_cursor#204 ← char_cursor#132 Coalesced [111] print_byte::b#11 ← print_byte::b#2 -Coalesced (already) [112] char_cursor#194 ← char_cursor#17 +Coalesced (already) [112] char_cursor#205 ← char_cursor#17 Coalesced [118] print_char::ch#5 ← print_char::ch#2 -Coalesced (already) [119] char_cursor#195 ← char_cursor#129 +Coalesced (already) [119] char_cursor#206 ← char_cursor#133 Coalesced [123] print_char::ch#6 ← print_char::ch#3 -Coalesced (already) [124] char_cursor#196 ← char_cursor#17 -Coalesced (already) [133] char_cursor#197 ← char_cursor#122 +Coalesced (already) [124] char_cursor#207 ← char_cursor#17 +Coalesced (already) [133] char_cursor#208 ← char_cursor#126 Coalesced [136] print_sbyte::b#10 ← print_sbyte::b#0 -Coalesced [137] char_cursor#200 ← char_cursor#17 -Coalesced (already) [140] char_cursor#192 ← char_cursor#126 +Coalesced [137] char_cursor#211 ← char_cursor#17 +Coalesced (already) [140] char_cursor#203 ← char_cursor#130 Coalesced [143] print_sbyte::b#9 ← print_sbyte::b#3 -Coalesced (already) [144] char_cursor#199 ← char_cursor#122 +Coalesced (already) [144] char_cursor#210 ← char_cursor#126 Coalesced [154] mulf8s::m#7 ← mulf8s::m#1 Coalesced [160] mulf8s::m#10 ← mulf8s::m#2 Coalesced [163] mulf8s::m#9 ← mulf8s::m#5 @@ -5039,57 +5630,68 @@ Coalesced [180] muls8s::i#3 ← muls8s::i#1 Coalesced [186] muls8s::return#6 ← muls8s::m#2 Coalesced [187] muls8s::m#11 ← muls8s::m#2 Coalesced [188] muls8s::j#3 ← muls8s::j#1 -Coalesced [199] mulf8u::a#4 ← mulf8u::a#1 -Coalesced [200] mulf8u::b#4 ← mulf8u::b#1 -Coalesced [216] char_cursor#174 ← char_cursor#30 -Coalesced [218] line_cursor#102 ← line_cursor#10 -Coalesced (already) [219] char_cursor#166 ← char_cursor#122 -Coalesced [221] multiply_results_compare::a#9 ← multiply_results_compare::a#1 -Coalesced [222] multiply_results_compare::b#7 ← multiply_results_compare::b#1 -Coalesced (already) [223] char_cursor#170 ← char_cursor#30 -Coalesced [226] print_byte::b#7 ← print_byte::b#3 -Coalesced (already) [227] char_cursor#190 ← char_cursor#122 -Coalesced (already) [229] char_cursor#171 ← char_cursor#17 -Coalesced [232] print_byte::b#8 ← print_byte::b#4 -Coalesced (already) [233] char_cursor#191 ← char_cursor#122 -Coalesced (already) [235] char_cursor#172 ← char_cursor#17 -Coalesced [238] print_word::w#7 ← print_word::w#3 -Coalesced (already) [239] char_cursor#185 ← char_cursor#122 -Coalesced (already) [241] char_cursor#173 ← char_cursor#17 -Coalesced [244] print_word::w#8 ← print_word::w#4 -Coalesced (already) [245] char_cursor#186 ← char_cursor#122 -Coalesced (already) [247] line_cursor#101 ← line_cursor#10 -Coalesced (already) [248] char_cursor#165 ← char_cursor#17 -Coalesced [256] muls8u::return#5 ← muls8u::m#1 -Coalesced [259] muls8u::m#5 ← muls8u::m#1 -Coalesced [260] muls8u::i#3 ← muls8u::i#1 -Coalesced (already) [267] char_cursor#187 ← char_cursor#122 -Coalesced (already) [269] char_cursor#175 ← char_cursor#17 -Coalesced (already) [272] char_cursor#188 ← char_cursor#122 -Coalesced (already) [274] char_cursor#202 ← char_cursor#17 -Coalesced (already) [282] char_cursor#167 ← char_cursor#122 -Not coalescing [284] char_cursor#201 ← line_cursor#1 -Coalesced (already) [285] line_cursor#107 ← line_cursor#1 -Coalesced [286] multiply_tables_compare::kc_sqr#8 ← multiply_tables_compare::kc_sqr#1 -Coalesced [287] multiply_tables_compare::asm_sqr#6 ← multiply_tables_compare::asm_sqr#1 -Coalesced [301] mulf_init::sqr#8 ← mulf_init::sqr#2 -Coalesced [302] mulf_init::x_2#7 ← mulf_init::x_2#1 -Coalesced [325] mulf_init::x_255#5 ← mulf_init::x_255#1 -Coalesced [326] mulf_init::sqr2_lo#5 ← mulf_init::sqr2_lo#1 -Coalesced [327] mulf_init::sqr2_hi#5 ← mulf_init::sqr2_hi#1 -Coalesced [328] mulf_init::dir#4 ← mulf_init::dir#3 -Coalesced (already) [329] mulf_init::dir#5 ← mulf_init::dir#2 -Coalesced [330] mulf_init::c#5 ← mulf_init::c#1 -Coalesced [331] mulf_init::sqr#6 ← mulf_init::sqr#1 -Coalesced [332] mulf_init::sqr1_lo#5 ← mulf_init::sqr1_lo#1 -Coalesced [333] mulf_init::sqr1_hi#5 ← mulf_init::sqr1_hi#1 -Coalesced [334] mulf_init::x_2#5 ← mulf_init::x_2#2 -Coalesced [335] mulf_init::sqr#7 ← mulf_init::sqr#4 -Coalesced (already) [336] mulf_init::x_2#6 ← mulf_init::x_2#3 -Coalesced [343] print_cls::sc#3 ← print_cls::sc#1 -Coalesced down to 32 phi equivalence classes -Culled Empty Block (label) signed_multiply_results_compare::@13 -Culled Empty Block (label) signed_multiply_results_compare::@14 +Coalesced [199] mulf8u::a#3 ← mulf8u::a#1 +Coalesced [200] mulf8u::b#3 ← mulf8u::b#1 +Coalesced [228] char_cursor#180 ← char_cursor#30 +Coalesced [230] line_cursor#109 ← line_cursor#10 +Coalesced (already) [231] char_cursor#175 ← char_cursor#126 +Coalesced [233] mul8u_slowfast_compare::a#14 ← mul8u_slowfast_compare::a#1 +Coalesced [234] mul8u_slowfast_compare::b#12 ← mul8u_slowfast_compare::b#1 +Coalesced [235] mul8u_slowfast_compare::ok#5 ← mul8u_slowfast_compare::ok#4 +Coalesced (already) [236] char_cursor#182 ← char_cursor#30 +Coalesced [239] print_byte::b#7 ← print_byte::b#3 +Coalesced (already) [240] char_cursor#201 ← char_cursor#126 +Coalesced (already) [242] char_cursor#183 ← char_cursor#17 +Coalesced [245] print_byte::b#8 ← print_byte::b#4 +Coalesced (already) [246] char_cursor#202 ← char_cursor#126 +Coalesced (already) [248] char_cursor#184 ← char_cursor#17 +Coalesced [251] print_word::w#10 ← print_word::w#3 +Coalesced (already) [252] char_cursor#197 ← char_cursor#126 +Coalesced (already) [254] char_cursor#185 ← char_cursor#17 +Coalesced [257] print_word::w#11 ← print_word::w#4 +Coalesced (already) [258] char_cursor#198 ← char_cursor#126 +Coalesced (already) [260] char_cursor#186 ← char_cursor#17 +Coalesced [263] print_word::w#12 ← print_word::w#5 +Coalesced (already) [264] char_cursor#199 ← char_cursor#126 +Coalesced (already) [266] line_cursor#110 ← line_cursor#10 +Coalesced (already) [267] char_cursor#177 ← char_cursor#17 +Coalesced [271] mul8u::a#7 ← mul8u::a#1 +Coalesced [272] mul8u::mb#6 ← mul8u::mb#0 +Coalesced [279] mul8u::res#9 ← mul8u::res#1 +Coalesced [283] mul8u::a#8 ← mul8u::a#0 +Coalesced [284] mul8u::res#7 ← mul8u::res#6 +Coalesced [285] mul8u::mb#7 ← mul8u::mb#1 +Coalesced (already) [286] mul8u::res#8 ← mul8u::res#2 +Coalesced [292] muls8u::return#5 ← muls8u::m#1 +Coalesced [295] muls8u::m#5 ← muls8u::m#1 +Coalesced [296] muls8u::i#3 ← muls8u::i#1 +Coalesced (already) [303] char_cursor#195 ← char_cursor#126 +Coalesced (already) [305] char_cursor#181 ← char_cursor#17 +Coalesced (already) [308] char_cursor#196 ← char_cursor#126 +Coalesced (already) [310] char_cursor#213 ← char_cursor#17 +Coalesced (already) [318] char_cursor#176 ← char_cursor#126 +Not coalescing [320] char_cursor#212 ← line_cursor#1 +Coalesced (already) [321] line_cursor#114 ← line_cursor#1 +Coalesced [322] mulf_tables_cmp::kc_sqr#8 ← mulf_tables_cmp::kc_sqr#1 +Coalesced [323] mulf_tables_cmp::asm_sqr#6 ← mulf_tables_cmp::asm_sqr#1 +Coalesced [337] mulf_init::sqr#8 ← mulf_init::sqr#2 +Coalesced [338] mulf_init::x_2#7 ← mulf_init::x_2#1 +Coalesced [361] mulf_init::x_255#5 ← mulf_init::x_255#1 +Coalesced [362] mulf_init::sqr2_lo#5 ← mulf_init::sqr2_lo#1 +Coalesced [363] mulf_init::sqr2_hi#5 ← mulf_init::sqr2_hi#1 +Coalesced [364] mulf_init::dir#4 ← mulf_init::dir#3 +Coalesced (already) [365] mulf_init::dir#5 ← mulf_init::dir#2 +Coalesced [366] mulf_init::c#5 ← mulf_init::c#1 +Coalesced [367] mulf_init::sqr#6 ← mulf_init::sqr#1 +Coalesced [368] mulf_init::sqr1_lo#5 ← mulf_init::sqr1_lo#1 +Coalesced [369] mulf_init::sqr1_hi#5 ← mulf_init::sqr1_hi#1 +Coalesced [370] mulf_init::x_2#5 ← mulf_init::x_2#2 +Coalesced [371] mulf_init::sqr#7 ← mulf_init::sqr#4 +Coalesced (already) [372] mulf_init::x_2#6 ← mulf_init::x_2#3 +Coalesced [379] print_cls::sc#3 ← print_cls::sc#1 +Coalesced down to 36 phi equivalence classes +Culled Empty Block (label) mul8s_slowfast_compare::@13 +Culled Empty Block (label) mul8s_slowfast_compare::@14 Culled Empty Block (label) print_ln::@3 Culled Empty Block (label) print_sword::@5 Culled Empty Block (label) print_sbyte::@5 @@ -5099,46 +5701,53 @@ Culled Empty Block (label) muls8s::@13 Culled Empty Block (label) muls8s::@12 Culled Empty Block (label) muls8s::@14 Culled Empty Block (label) muls8s::@15 -Culled Empty Block (label) multiply_results_compare::@13 -Culled Empty Block (label) multiply_results_compare::@14 +Not culling empty block because it shares successor with its predecessor. (label) mul8u_slowfast_compare::@6 +Culled Empty Block (label) mul8u_slowfast_compare::@7 +Culled Empty Block (label) mul8u_slowfast_compare::@18 +Culled Empty Block (label) mul8u_slowfast_compare::@19 +Not culling empty block because it shares successor with its predecessor. (label) mul8u_slowfast_compare::@20 +Culled Empty Block (label) mul8u::@10 Culled Empty Block (label) muls8u::@7 Culled Empty Block (label) muls8u::@6 -Culled Empty Block (label) multiply_tables_compare::@12 +Culled Empty Block (label) mulf_tables_cmp::@12 Culled Empty Block (label) mulf_init::@7 Culled Empty Block (label) mulf_init::@11 Not culling empty block because it shares successor with its predecessor. (label) mulf_init::@12 Culled Empty Block (label) mulf_init::@9 Culled Empty Block (label) mulf_init::@10 Culled Empty Block (label) print_cls::@3 -Block Sequence Planned @begin @20 @end main main::@1 main::@2 main::@3 main::@4 main::@5 main::@return signed_multiply_results_compare signed_multiply_results_compare::@1 signed_multiply_results_compare::@2 signed_multiply_results_compare::@8 signed_multiply_results_compare::@9 signed_multiply_results_compare::@4 signed_multiply_results_compare::@return signed_multiply_results_compare::@3 signed_multiply_results_compare::@6 signed_multiply_results_compare::@7 signed_multiply_results_compare::@11 print_ln print_ln::@1 print_ln::@return print_str print_str::@1 print_str::@return print_str::@2 signed_multiply_error signed_multiply_error::@1 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@6 signed_multiply_error::@7 signed_multiply_error::@8 signed_multiply_error::@return print_sword print_sword::@2 print_sword::@4 print_sword::@1 print_sword::@return print_word print_word::@1 print_word::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return mulf8s mulf8s::@6 mulf8s::@3 mulf8s::@1 mulf8s::@4 mulf8s::@2 mulf8s::@return mulf8u mulf8u::@return muls8s muls8s::@2 muls8s::@3 muls8s::@return muls8s::@1 muls8s::@5 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@2 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@4 multiply_results_compare::@return multiply_results_compare::@3 multiply_results_compare::@6 multiply_results_compare::@7 multiply_results_compare::@11 multiply_error multiply_error::@1 multiply_error::@2 multiply_error::@3 multiply_error::@4 multiply_error::@5 multiply_error::@6 multiply_error::@7 multiply_error::@8 multiply_error::@return muls8u muls8u::@2 muls8u::@1 muls8u::@return multiply_tables_compare multiply_tables_compare::@1 multiply_tables_compare::@3 multiply_tables_compare::@6 multiply_tables_compare::@7 multiply_tables_compare::@8 multiply_tables_compare::@return multiply_tables_compare::@2 multiply_tables_compare::@5 multiply_tables_compare::@10 mulf_init_asm mulf_init_asm::@return mulf_init mulf_init::@1 mulf_init::@5 mulf_init::@2 mulf_init::@3 mulf_init::@4 mulf_init::@8 mulf_init::@return mulf_init::@12 print_cls print_cls::@1 print_cls::@return +Block Sequence Planned @begin @21 @end main main::@1 main::@2 main::@3 main::@4 main::@5 main::@return mul8s_slowfast_compare mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@4 mul8s_slowfast_compare::@return mul8s_slowfast_compare::@3 mul8s_slowfast_compare::@6 mul8s_slowfast_compare::@7 mul8s_slowfast_compare::@11 print_ln print_ln::@1 print_ln::@return print_str print_str::@1 print_str::@return print_str::@2 signed_multiply_error signed_multiply_error::@1 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@6 signed_multiply_error::@7 signed_multiply_error::@8 signed_multiply_error::@return print_sword print_sword::@2 print_sword::@4 print_sword::@1 print_sword::@return print_word print_word::@1 print_word::@return print_byte print_byte::@1 print_byte::@return print_char print_char::@return print_sbyte print_sbyte::@2 print_sbyte::@4 print_sbyte::@1 print_sbyte::@return mulf8s mulf8s::@6 mulf8s::@3 mulf8s::@1 mulf8s::@4 mulf8s::@2 mulf8s::@return mulf8u mulf8u::@return muls8s muls8s::@2 muls8s::@3 muls8s::@return muls8s::@1 muls8s::@5 mul8u_slowfast_compare mul8u_slowfast_compare::@1 mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@12 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@return mul8u_slowfast_compare::@5 mul8u_slowfast_compare::@10 mul8u_slowfast_compare::@11 mul8u_slowfast_compare::@16 mul8u_slowfast_compare::@20 multiply_error multiply_error::@1 multiply_error::@2 multiply_error::@3 multiply_error::@4 multiply_error::@5 multiply_error::@6 multiply_error::@7 multiply_error::@8 multiply_error::@9 multiply_error::@10 multiply_error::@return mul8u mul8u::@1 mul8u::@return mul8u::@2 mul8u::@7 mul8u::@4 muls8u muls8u::@2 muls8u::@1 muls8u::@return mulf_tables_cmp mulf_tables_cmp::@1 mulf_tables_cmp::@3 mulf_tables_cmp::@6 mulf_tables_cmp::@7 mulf_tables_cmp::@8 mulf_tables_cmp::@return mulf_tables_cmp::@2 mulf_tables_cmp::@5 mulf_tables_cmp::@10 mulf_init_asm mulf_init_asm::@return mulf_init mulf_init::@1 mulf_init::@5 mulf_init::@2 mulf_init::@3 mulf_init::@4 mulf_init::@8 mulf_init::@return mulf_init::@12 print_cls print_cls::@1 print_cls::@return Adding NOP phi() at start of @begin -Adding NOP phi() at start of @20 +Adding NOP phi() at start of @21 Adding NOP phi() at start of @end 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 main::@4 Adding NOP phi() at start of main::@5 -Adding NOP phi() at start of signed_multiply_results_compare -Adding NOP phi() at start of signed_multiply_results_compare::@11 +Adding NOP phi() at start of mul8s_slowfast_compare +Adding NOP phi() at start of mul8s_slowfast_compare::@11 Adding NOP phi() at start of signed_multiply_error::@2 Adding NOP phi() at start of signed_multiply_error::@4 Adding NOP phi() at start of signed_multiply_error::@6 Adding NOP phi() at start of signed_multiply_error::@8 Adding NOP phi() at start of print_sword::@2 Adding NOP phi() at start of print_sbyte::@2 -Adding NOP phi() at start of multiply_results_compare -Adding NOP phi() at start of multiply_results_compare::@7 -Adding NOP phi() at start of multiply_results_compare::@11 +Adding NOP phi() at start of mul8u_slowfast_compare +Adding NOP phi() at start of mul8u_slowfast_compare::@6 +Adding NOP phi() at start of mul8u_slowfast_compare::@11 +Adding NOP phi() at start of mul8u_slowfast_compare::@16 +Adding NOP phi() at start of mul8u_slowfast_compare::@20 Adding NOP phi() at start of multiply_error Adding NOP phi() at start of multiply_error::@2 Adding NOP phi() at start of multiply_error::@4 Adding NOP phi() at start of multiply_error::@6 Adding NOP phi() at start of multiply_error::@8 -Adding NOP phi() at start of multiply_tables_compare -Adding NOP phi() at start of multiply_tables_compare::@7 -Adding NOP phi() at start of multiply_tables_compare::@5 -Adding NOP phi() at start of multiply_tables_compare::@10 +Adding NOP phi() at start of multiply_error::@10 +Adding NOP phi() at start of mulf_tables_cmp +Adding NOP phi() at start of mulf_tables_cmp::@7 +Adding NOP phi() at start of mulf_tables_cmp::@5 +Adding NOP phi() at start of mulf_tables_cmp::@10 Adding NOP phi() at start of mulf_init Adding NOP phi() at start of mulf_init::@12 Adding NOP phi() at start of print_cls @@ -5166,18 +5775,27 @@ Propagating live ranges... Propagating live ranges... Propagating live ranges... Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... +Propagating live ranges... FINAL CONTROL FLOW GRAPH @begin: scope:[] from [0] phi() [ ] ( ) - to:@20 -@20: scope:[] from @begin + to:@21 +@21: scope:[] from @begin [1] phi() [ ] ( ) [2] call main param-assignment [ ] ( ) to:@end -@end: scope:[] from @20 +@end: scope:[] from @21 [3] phi() [ ] ( ) -main: scope:[main] from @20 +main: scope:[main] from @21 [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) [5] call print_cls param-assignment [ ] ( main:2 [ ] ) to:main::@1 @@ -5191,668 +5809,738 @@ main::@2: scope:[main] from main::@1 to:main::@3 main::@3: scope:[main] from main::@2 [10] phi() [ ] ( main:2 [ ] ) - [11] call multiply_tables_compare param-assignment [ line_cursor#10 char_cursor#30 ] ( main:2 [ line_cursor#10 char_cursor#30 ] ) + [11] call mulf_tables_cmp param-assignment [ line_cursor#10 char_cursor#30 ] ( main:2 [ line_cursor#10 char_cursor#30 ] ) to:main::@4 main::@4: scope:[main] from main::@3 [12] phi() [ line_cursor#10 char_cursor#30 ] ( main:2 [ line_cursor#10 char_cursor#30 ] ) - [13] call multiply_results_compare param-assignment [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) + [13] call mul8u_slowfast_compare param-assignment [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) to:main::@5 main::@5: scope:[main] from main::@4 [14] phi() [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) - [15] call signed_multiply_results_compare param-assignment [ ] ( main:2 [ ] ) + [15] call mul8s_slowfast_compare param-assignment [ ] ( main:2 [ ] ) to:main::@return main::@return: scope:[main] from main::@5 [16] return [ ] ( main:2 [ ] ) to:@return -signed_multiply_results_compare: scope:[signed_multiply_results_compare] from main::@5 - [17] phi() [ line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ line_cursor#1 ] ) - to:signed_multiply_results_compare::@1 -signed_multiply_results_compare::@1: scope:[signed_multiply_results_compare] from signed_multiply_results_compare signed_multiply_results_compare::@6 - [18] (signed byte) signed_multiply_results_compare::a#6 ← phi( signed_multiply_results_compare/-(byte/word/signed word/dword/signed dword) 128 signed_multiply_results_compare::@6/(signed byte) signed_multiply_results_compare::a#1 ) [ signed_multiply_results_compare::a#6 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 line_cursor#1 ] ) - to:signed_multiply_results_compare::@2 -signed_multiply_results_compare::@2: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@1 signed_multiply_results_compare::@3 - [19] (signed byte) signed_multiply_results_compare::b#2 ← phi( signed_multiply_results_compare::@1/-(byte/word/signed word/dword/signed dword) 128 signed_multiply_results_compare::@3/(signed byte) signed_multiply_results_compare::b#1 ) [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 ] ) - [20] (signed byte) muls8s::a#0 ← (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 line_cursor#1 ] ) - [21] (signed byte) muls8s::b#0 ← (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ) - [22] call muls8s param-assignment [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#0 line_cursor#1 ] ) - [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#2 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#2 line_cursor#1 ] ) - to:signed_multiply_results_compare::@8 -signed_multiply_results_compare::@8: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@2 - [24] (signed word) signed_multiply_results_compare::ms#0 ← (signed word) muls8s::return#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 ] ) - [25] (signed byte) mulf8s::a#0 ← (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ) - [26] (signed byte) mulf8s::b#0 ← (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ) - [27] call mulf8s param-assignment [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ) - [28] (signed word) mulf8s::return#2 ← (signed word)(word) mulf8s::m#4 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ) - to:signed_multiply_results_compare::@9 -signed_multiply_results_compare::@9: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@8 - [29] (signed word) signed_multiply_results_compare::ma#0 ← (signed word) mulf8s::return#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) - [30] if((signed word) signed_multiply_results_compare::ms#0==(signed word) signed_multiply_results_compare::ma#0) goto signed_multiply_results_compare::@3 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) - to:signed_multiply_results_compare::@4 -signed_multiply_results_compare::@4: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@9 - [31] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) - [32] (signed byte) signed_multiply_error::a#0 ← (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ) - [33] (signed byte) signed_multiply_error::b#0 ← (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ) - [34] (signed word) signed_multiply_error::ms#0 ← (signed word) signed_multiply_results_compare::ms#0 [ signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ) - [35] (signed word) signed_multiply_error::ma#0 ← (signed word) signed_multiply_results_compare::ma#0 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ) - [36] call signed_multiply_error param-assignment [ ] ( main:2::signed_multiply_results_compare:15 [ ] ) - to:signed_multiply_results_compare::@return -signed_multiply_results_compare::@return: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@11 signed_multiply_results_compare::@4 - [37] return [ ] ( main:2::signed_multiply_results_compare:15 [ ] ) +mul8s_slowfast_compare: scope:[mul8s_slowfast_compare] from main::@5 + [17] phi() [ line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ line_cursor#1 ] ) + to:mul8s_slowfast_compare::@1 +mul8s_slowfast_compare::@1: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare mul8s_slowfast_compare::@6 + [18] (signed byte) mul8s_slowfast_compare::a#6 ← phi( mul8s_slowfast_compare/-(byte/word/signed word/dword/signed dword) 128 mul8s_slowfast_compare::@6/(signed byte) mul8s_slowfast_compare::a#1 ) [ mul8s_slowfast_compare::a#6 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 line_cursor#1 ] ) + to:mul8s_slowfast_compare::@2 +mul8s_slowfast_compare::@2: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@3 + [19] (signed byte) mul8s_slowfast_compare::b#2 ← phi( mul8s_slowfast_compare::@1/-(byte/word/signed word/dword/signed dword) 128 mul8s_slowfast_compare::@3/(signed byte) mul8s_slowfast_compare::b#1 ) [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 ] ) + [20] (signed byte) muls8s::a#0 ← (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 line_cursor#1 ] ) + [21] (signed byte) muls8s::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ) + [22] call muls8s param-assignment [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#0 line_cursor#1 ] ) + [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#2 line_cursor#1 ] ) + to:mul8s_slowfast_compare::@8 +mul8s_slowfast_compare::@8: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@2 + [24] (signed word) mul8s_slowfast_compare::ms#0 ← (signed word) muls8s::return#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 ] ) + [25] (signed byte) mulf8s::a#0 ← (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ) + [26] (signed byte) mulf8s::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ) + [27] call mulf8s param-assignment [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ) + [28] (signed word) mulf8s::return#2 ← (signed word)(word) mulf8s::m#4 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ) + to:mul8s_slowfast_compare::@9 +mul8s_slowfast_compare::@9: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@8 + [29] (signed word) mul8s_slowfast_compare::ma#0 ← (signed word) mulf8s::return#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) + [30] if((signed word) mul8s_slowfast_compare::ms#0==(signed word) mul8s_slowfast_compare::ma#0) goto mul8s_slowfast_compare::@3 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) + to:mul8s_slowfast_compare::@4 +mul8s_slowfast_compare::@4: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@9 + [31] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) + [32] (signed byte) signed_multiply_error::a#0 ← (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ) + [33] (signed byte) signed_multiply_error::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ) + [34] (signed word) signed_multiply_error::ms#0 ← (signed word) mul8s_slowfast_compare::ms#0 [ mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ) + [35] (signed word) signed_multiply_error::ma#0 ← (signed word) mul8s_slowfast_compare::ma#0 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ) + [36] call signed_multiply_error param-assignment [ ] ( main:2::mul8s_slowfast_compare:15 [ ] ) + to:mul8s_slowfast_compare::@return +mul8s_slowfast_compare::@return: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@11 mul8s_slowfast_compare::@4 + [37] return [ ] ( main:2::mul8s_slowfast_compare:15 [ ] ) to:@return -signed_multiply_results_compare::@3: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@9 - [38] (signed byte) signed_multiply_results_compare::b#1 ← ++ (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ) - [39] if((signed byte) signed_multiply_results_compare::b#1!=-(byte/word/signed word/dword/signed dword) 128) goto signed_multiply_results_compare::@2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ) - to:signed_multiply_results_compare::@6 -signed_multiply_results_compare::@6: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@3 - [40] (signed byte) signed_multiply_results_compare::a#1 ← ++ (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ) - [41] if((signed byte) signed_multiply_results_compare::a#1!=-(byte/word/signed word/dword/signed dword) 128) goto signed_multiply_results_compare::@1 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ) - to:signed_multiply_results_compare::@7 -signed_multiply_results_compare::@7: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@6 - [42] (byte*~) char_cursor#180 ← (byte*) line_cursor#1 [ char_cursor#180 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ char_cursor#180 line_cursor#1 ] ) - [43] call print_str param-assignment [ line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15 [ line_cursor#1 char_cursor#122 ] ) - to:signed_multiply_results_compare::@11 -signed_multiply_results_compare::@11: scope:[signed_multiply_results_compare] from signed_multiply_results_compare::@7 - [44] phi() [ line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15 [ line_cursor#1 char_cursor#122 ] ) - [45] call print_ln param-assignment [ ] ( main:2::signed_multiply_results_compare:15 [ ] ) - to:signed_multiply_results_compare::@return -print_ln: scope:[print_ln] from multiply_error::@8 multiply_results_compare::@11 multiply_tables_compare::@10 signed_multiply_error::@8 signed_multiply_results_compare::@11 - [46] (byte*) char_cursor#123 ← phi( multiply_error::@8/(byte*) char_cursor#17 multiply_results_compare::@11/(byte*) char_cursor#122 multiply_tables_compare::@10/(byte*) char_cursor#122 signed_multiply_error::@8/(byte*) char_cursor#17 signed_multiply_results_compare::@11/(byte*) char_cursor#122 ) [ line_cursor#45 char_cursor#123 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#45 char_cursor#123 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#45 char_cursor#123 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#45 char_cursor#123 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#45 char_cursor#123 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#45 char_cursor#123 ] ) - [46] (byte*) line_cursor#45 ← phi( multiply_error::@8/(byte*) line_cursor#10 multiply_results_compare::@11/(byte*) line_cursor#10 multiply_tables_compare::@10/(const byte*) SCREEN#0 signed_multiply_error::@8/(byte*) line_cursor#1 signed_multiply_results_compare::@11/(byte*) line_cursor#1 ) [ line_cursor#45 char_cursor#123 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#45 char_cursor#123 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#45 char_cursor#123 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#45 char_cursor#123 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#45 char_cursor#123 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#45 char_cursor#123 ] ) +mul8s_slowfast_compare::@3: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@9 + [38] (signed byte) mul8s_slowfast_compare::b#1 ← ++ (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ) + [39] if((signed byte) mul8s_slowfast_compare::b#1!=-(byte/word/signed word/dword/signed dword) 128) goto mul8s_slowfast_compare::@2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ) + to:mul8s_slowfast_compare::@6 +mul8s_slowfast_compare::@6: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@3 + [40] (signed byte) mul8s_slowfast_compare::a#1 ← ++ (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ) + [41] if((signed byte) mul8s_slowfast_compare::a#1!=-(byte/word/signed word/dword/signed dword) 128) goto mul8s_slowfast_compare::@1 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ) + to:mul8s_slowfast_compare::@7 +mul8s_slowfast_compare::@7: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@6 + [42] (byte*~) char_cursor#179 ← (byte*) line_cursor#1 [ char_cursor#179 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ char_cursor#179 line_cursor#1 ] ) + [43] call print_str param-assignment [ line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15 [ line_cursor#1 char_cursor#126 ] ) + to:mul8s_slowfast_compare::@11 +mul8s_slowfast_compare::@11: scope:[mul8s_slowfast_compare] from mul8s_slowfast_compare::@7 + [44] phi() [ line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15 [ line_cursor#1 char_cursor#126 ] ) + [45] call print_ln param-assignment [ ] ( main:2::mul8s_slowfast_compare:15 [ ] ) + to:mul8s_slowfast_compare::@return +print_ln: scope:[print_ln] from mul8s_slowfast_compare::@11 mul8u_slowfast_compare::@16 mulf_tables_cmp::@10 multiply_error::@10 signed_multiply_error::@8 + [46] (byte*) char_cursor#127 ← phi( mul8s_slowfast_compare::@11/(byte*) char_cursor#126 mul8u_slowfast_compare::@16/(byte*) char_cursor#126 mulf_tables_cmp::@10/(byte*) char_cursor#126 multiply_error::@10/(byte*) char_cursor#17 signed_multiply_error::@8/(byte*) char_cursor#17 ) [ line_cursor#45 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#45 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#45 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#45 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#45 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#45 char_cursor#127 ] ) + [46] (byte*) line_cursor#45 ← phi( mul8s_slowfast_compare::@11/(byte*) line_cursor#1 mul8u_slowfast_compare::@16/(byte*) line_cursor#10 mulf_tables_cmp::@10/(const byte*) SCREEN#0 multiply_error::@10/(byte*) line_cursor#10 signed_multiply_error::@8/(byte*) line_cursor#1 ) [ line_cursor#45 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#45 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#45 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#45 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#45 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#45 char_cursor#127 ] ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - [47] (byte*) line_cursor#23 ← phi( print_ln/(byte*) line_cursor#45 print_ln::@1/(byte*) line_cursor#1 ) [ char_cursor#123 line_cursor#23 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ char_cursor#123 line_cursor#23 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ char_cursor#123 line_cursor#23 ] main:2::multiply_results_compare:13::print_ln:175 [ char_cursor#123 line_cursor#23 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ char_cursor#123 line_cursor#23 ] main:2::multiply_tables_compare:11::print_ln:221 [ char_cursor#123 line_cursor#23 ] ) - [48] (byte*) line_cursor#1 ← (byte*) line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#123 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 char_cursor#123 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 char_cursor#123 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 char_cursor#123 ] ) - [49] if((byte*) line_cursor#1<(byte*) char_cursor#123) goto print_ln::@1 [ line_cursor#1 char_cursor#123 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 char_cursor#123 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 char_cursor#123 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 char_cursor#123 ] ) + [47] (byte*) line_cursor#23 ← phi( print_ln/(byte*) line_cursor#45 print_ln::@1/(byte*) line_cursor#1 ) [ char_cursor#127 line_cursor#23 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ char_cursor#127 line_cursor#23 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ char_cursor#127 line_cursor#23 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ char_cursor#127 line_cursor#23 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ char_cursor#127 line_cursor#23 ] main:2::mulf_tables_cmp:11::print_ln:247 [ char_cursor#127 line_cursor#23 ] ) + [48] (byte*) line_cursor#1 ← (byte*) line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 char_cursor#127 ] ) + [49] if((byte*) line_cursor#1<(byte*) char_cursor#127) goto print_ln::@1 [ line_cursor#1 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 char_cursor#127 ] ) to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@1 - [50] return [ line_cursor#1 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 ] ) + [50] return [ line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 ] ) to:@return -print_str: scope:[print_str] from multiply_error multiply_error::@2 multiply_error::@4 multiply_error::@6 multiply_results_compare::@7 multiply_tables_compare::@3 multiply_tables_compare::@5 multiply_tables_compare::@7 signed_multiply_error signed_multiply_error::@2 signed_multiply_error::@4 signed_multiply_error::@6 signed_multiply_results_compare::@7 - [51] (byte*) char_cursor#141 ← phi( multiply_error/(byte*) char_cursor#30 multiply_error::@2/(byte*) char_cursor#17 multiply_error::@4/(byte*) char_cursor#17 multiply_error::@6/(byte*) char_cursor#17 multiply_results_compare::@7/(byte*) char_cursor#30 multiply_tables_compare::@3/(const byte*) SCREEN#0 multiply_tables_compare::@5/(const byte*) SCREEN#0 multiply_tables_compare::@7/(byte*) char_cursor#17 signed_multiply_error/(byte*~) char_cursor#176 signed_multiply_error::@2/(byte*) char_cursor#17 signed_multiply_error::@4/(byte*) char_cursor#17 signed_multiply_error::@6/(byte*) char_cursor#17 signed_multiply_results_compare::@7/(byte*~) char_cursor#180 ) [ print_str::str#16 char_cursor#141 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 print_str::str#16 char_cursor#141 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#16 char_cursor#141 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#16 char_cursor#141 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#16 char_cursor#141 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#16 char_cursor#141 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 print_str::str#16 char_cursor#141 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#16 char_cursor#141 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#16 char_cursor#141 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_str::str#16 char_cursor#141 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 print_str::str#16 char_cursor#141 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 print_str::str#16 char_cursor#141 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 print_str::str#16 char_cursor#141 ] main:2::multiply_tables_compare:11::print_str:219 [ print_str::str#16 char_cursor#141 ] ) - [51] (byte*) print_str::str#16 ← phi( multiply_error/(const string) multiply_error::str multiply_error::@2/(const string) multiply_error::str1 multiply_error::@4/(const string) multiply_error::str2 multiply_error::@6/(const string) multiply_error::str3 multiply_results_compare::@7/(const string) multiply_results_compare::str multiply_tables_compare::@3/(const string) multiply_tables_compare::str multiply_tables_compare::@5/(const string) multiply_tables_compare::str2 multiply_tables_compare::@7/(const string) multiply_tables_compare::str1 signed_multiply_error/(const string) signed_multiply_error::str signed_multiply_error::@2/(const string) signed_multiply_error::str1 signed_multiply_error::@4/(const string) signed_multiply_error::str2 signed_multiply_error::@6/(const string) signed_multiply_error::str3 signed_multiply_results_compare::@7/(const string) signed_multiply_results_compare::str ) [ print_str::str#16 char_cursor#141 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 print_str::str#16 char_cursor#141 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#16 char_cursor#141 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#16 char_cursor#141 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#16 char_cursor#141 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#16 char_cursor#141 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 print_str::str#16 char_cursor#141 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#16 char_cursor#141 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#16 char_cursor#141 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_str::str#16 char_cursor#141 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 print_str::str#16 char_cursor#141 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 print_str::str#16 char_cursor#141 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 print_str::str#16 char_cursor#141 ] main:2::multiply_tables_compare:11::print_str:219 [ print_str::str#16 char_cursor#141 ] ) +print_str: scope:[print_str] from mul8s_slowfast_compare::@7 mul8u_slowfast_compare::@11 mulf_tables_cmp::@3 mulf_tables_cmp::@5 mulf_tables_cmp::@7 multiply_error multiply_error::@2 multiply_error::@4 multiply_error::@6 multiply_error::@8 signed_multiply_error signed_multiply_error::@2 signed_multiply_error::@4 signed_multiply_error::@6 + [51] (byte*) char_cursor#145 ← phi( mul8s_slowfast_compare::@7/(byte*~) char_cursor#179 mul8u_slowfast_compare::@11/(byte*) char_cursor#30 mulf_tables_cmp::@3/(const byte*) SCREEN#0 mulf_tables_cmp::@5/(const byte*) SCREEN#0 mulf_tables_cmp::@7/(byte*) char_cursor#17 multiply_error/(byte*) char_cursor#30 multiply_error::@2/(byte*) char_cursor#17 multiply_error::@4/(byte*) char_cursor#17 multiply_error::@6/(byte*) char_cursor#17 multiply_error::@8/(byte*) char_cursor#17 signed_multiply_error/(byte*~) char_cursor#187 signed_multiply_error::@2/(byte*) char_cursor#17 signed_multiply_error::@4/(byte*) char_cursor#17 signed_multiply_error::@6/(byte*) char_cursor#17 ) [ print_str::str#17 char_cursor#145 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 print_str::str#17 char_cursor#145 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#17 char_cursor#145 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#17 char_cursor#145 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#17 char_cursor#145 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#17 char_cursor#145 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 print_str::str#17 char_cursor#145 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#17 char_cursor#145 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#17 char_cursor#145 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#17 char_cursor#145 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_str::str#17 char_cursor#145 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 print_str::str#17 char_cursor#145 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#17 char_cursor#145 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 print_str::str#17 char_cursor#145 ] main:2::mulf_tables_cmp:11::print_str:245 [ print_str::str#17 char_cursor#145 ] ) + [51] (byte*) print_str::str#17 ← phi( mul8s_slowfast_compare::@7/(const string) mul8s_slowfast_compare::str mul8u_slowfast_compare::@11/(const string) mul8u_slowfast_compare::str mulf_tables_cmp::@3/(const string) mulf_tables_cmp::str mulf_tables_cmp::@5/(const string) mulf_tables_cmp::str2 mulf_tables_cmp::@7/(const string) mulf_tables_cmp::str1 multiply_error/(const string) multiply_error::str multiply_error::@2/(const string) multiply_error::str1 multiply_error::@4/(const string) multiply_error::str2 multiply_error::@6/(const string) multiply_error::str3 multiply_error::@8/(const string) multiply_error::str4 signed_multiply_error/(const string) signed_multiply_error::str signed_multiply_error::@2/(const string) signed_multiply_error::str1 signed_multiply_error::@4/(const string) signed_multiply_error::str2 signed_multiply_error::@6/(const string) signed_multiply_error::str3 ) [ print_str::str#17 char_cursor#145 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 print_str::str#17 char_cursor#145 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#17 char_cursor#145 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#17 char_cursor#145 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#17 char_cursor#145 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#17 char_cursor#145 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 print_str::str#17 char_cursor#145 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#17 char_cursor#145 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#17 char_cursor#145 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#17 char_cursor#145 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_str::str#17 char_cursor#145 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 print_str::str#17 char_cursor#145 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#17 char_cursor#145 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 print_str::str#17 char_cursor#145 ] main:2::mulf_tables_cmp:11::print_str:245 [ print_str::str#17 char_cursor#145 ] ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - [52] (byte*) char_cursor#122 ← phi( print_str/(byte*) char_cursor#141 print_str::@2/(byte*) char_cursor#1 ) [ char_cursor#122 print_str::str#14 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 print_str::str#14 ] ) - [52] (byte*) print_str::str#14 ← phi( print_str/(byte*) print_str::str#16 print_str::@2/(byte*) print_str::str#0 ) [ char_cursor#122 print_str::str#14 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 print_str::str#14 ] ) - [53] if(*((byte*) print_str::str#14)!=(byte) '@') goto print_str::@2 [ char_cursor#122 print_str::str#14 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 print_str::str#14 ] ) + [52] (byte*) char_cursor#126 ← phi( print_str/(byte*) char_cursor#145 print_str::@2/(byte*) char_cursor#1 ) [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) + [52] (byte*) print_str::str#15 ← phi( print_str/(byte*) print_str::str#17 print_str::@2/(byte*) print_str::str#0 ) [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) + [53] if(*((byte*) print_str::str#15)!=(byte) '@') goto print_str::@2 [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) to:print_str::@return print_str::@return: scope:[print_str] from print_str::@1 - [54] return [ char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 ] ) + [54] return [ char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 ] ) to:@return print_str::@2: scope:[print_str] from print_str::@1 - [55] *((byte*) char_cursor#122) ← *((byte*) print_str::str#14) [ char_cursor#122 print_str::str#14 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 print_str::str#14 ] ) - [56] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#122 [ print_str::str#14 char_cursor#1 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 print_str::str#14 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 print_str::str#14 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:219 [ print_str::str#14 char_cursor#1 ] ) - [57] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#14 [ print_str::str#0 char_cursor#1 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 print_str::str#0 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 print_str::str#0 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:219 [ print_str::str#0 char_cursor#1 ] ) + [55] *((byte*) char_cursor#126) ← *((byte*) print_str::str#15) [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) + [56] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#126 [ print_str::str#15 char_cursor#1 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#15 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 print_str::str#15 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:245 [ print_str::str#15 char_cursor#1 ] ) + [57] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#15 [ print_str::str#0 char_cursor#1 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#0 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 print_str::str#0 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:245 [ print_str::str#0 char_cursor#1 ] ) to:print_str::@1 -signed_multiply_error: scope:[signed_multiply_error] from signed_multiply_results_compare::@4 - [58] (byte*~) char_cursor#176 ← (byte*) line_cursor#1 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#176 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#176 ] ) - [59] call print_str param-assignment [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) +signed_multiply_error: scope:[signed_multiply_error] from mul8s_slowfast_compare::@4 + [58] (byte*~) char_cursor#187 ← (byte*) line_cursor#1 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#187 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#187 ] ) + [59] call print_str param-assignment [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) to:signed_multiply_error::@1 signed_multiply_error::@1: scope:[signed_multiply_error] from signed_multiply_error - [60] (signed byte) print_sbyte::b#1 ← (signed byte) signed_multiply_error::a#0 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#1 ] ) - [61] call print_sbyte param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + [60] (signed byte) print_sbyte::b#1 ← (signed byte) signed_multiply_error::a#0 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#1 ] ) + [61] call print_sbyte param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) to:signed_multiply_error::@2 signed_multiply_error::@2: scope:[signed_multiply_error] from signed_multiply_error::@1 - [62] phi() [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) - [63] call print_str param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + [62] phi() [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + [63] call print_str param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) to:signed_multiply_error::@3 signed_multiply_error::@3: scope:[signed_multiply_error] from signed_multiply_error::@2 - [64] (signed byte) print_sbyte::b#2 ← (signed byte) signed_multiply_error::b#0 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#2 ] ) - [65] call print_sbyte param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + [64] (signed byte) print_sbyte::b#2 ← (signed byte) signed_multiply_error::b#0 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#2 ] ) + [65] call print_sbyte param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) to:signed_multiply_error::@4 signed_multiply_error::@4: scope:[signed_multiply_error] from signed_multiply_error::@3 - [66] phi() [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) - [67] call print_str param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + [66] phi() [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + [67] call print_str param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) to:signed_multiply_error::@5 signed_multiply_error::@5: scope:[signed_multiply_error] from signed_multiply_error::@4 - [68] (signed word) print_sword::w#1 ← (signed word) signed_multiply_error::ms#0 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#1 ] ) - [69] call print_sword param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + [68] (signed word) print_sword::w#1 ← (signed word) signed_multiply_error::ms#0 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#1 ] ) + [69] call print_sword param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) to:signed_multiply_error::@6 signed_multiply_error::@6: scope:[signed_multiply_error] from signed_multiply_error::@5 - [70] phi() [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) - [71] call print_str param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + [70] phi() [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + [71] call print_str param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) to:signed_multiply_error::@7 signed_multiply_error::@7: scope:[signed_multiply_error] from signed_multiply_error::@6 - [72] (signed word) print_sword::w#2 ← (signed word) signed_multiply_error::ma#0 [ line_cursor#1 char_cursor#122 print_sword::w#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#122 print_sword::w#2 ] ) - [73] call print_sword param-assignment [ line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#17 ] ) + [72] (signed word) print_sword::w#2 ← (signed word) signed_multiply_error::ma#0 [ line_cursor#1 char_cursor#126 print_sword::w#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#126 print_sword::w#2 ] ) + [73] call print_sword param-assignment [ line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#17 ] ) to:signed_multiply_error::@8 signed_multiply_error::@8: scope:[signed_multiply_error] from signed_multiply_error::@7 - [74] phi() [ line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#17 ] ) - [75] call print_ln param-assignment [ ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ ] ) + [74] phi() [ line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#17 ] ) + [75] call print_ln param-assignment [ ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ ] ) to:signed_multiply_error::@return signed_multiply_error::@return: scope:[signed_multiply_error] from signed_multiply_error::@8 - [76] return [ ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ ] ) + [76] return [ ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ ] ) to:@return print_sword: scope:[print_sword] from signed_multiply_error::@5 signed_multiply_error::@7 - [77] (signed word) print_sword::w#3 ← phi( signed_multiply_error::@5/(signed word) print_sword::w#1 signed_multiply_error::@7/(signed word) print_sword::w#2 ) [ char_cursor#122 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#122 print_sword::w#3 ] ) - [78] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#122 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#122 print_sword::w#3 ] ) + [77] (signed word) print_sword::w#3 ← phi( signed_multiply_error::@5/(signed word) print_sword::w#1 signed_multiply_error::@7/(signed word) print_sword::w#2 ) [ char_cursor#126 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#126 print_sword::w#3 ] ) + [78] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#126 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#126 print_sword::w#3 ] ) to:print_sword::@2 print_sword::@2: scope:[print_sword] from print_sword - [79] phi() [ char_cursor#122 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#122 print_sword::w#3 ] ) - [80] call print_char param-assignment [ char_cursor#17 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#3 ] ) + [79] phi() [ char_cursor#126 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#126 print_sword::w#3 ] ) + [80] call print_char param-assignment [ char_cursor#17 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#3 ] ) to:print_sword::@4 print_sword::@4: scope:[print_sword] from print_sword::@2 - [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) + [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) to:print_sword::@1 print_sword::@1: scope:[print_sword] from print_sword print_sword::@4 - [82] (byte*) char_cursor#124 ← phi( print_sword/(byte*) char_cursor#122 print_sword::@4/(byte*) char_cursor#17 ) [ print_sword::w#4 char_cursor#124 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#4 char_cursor#124 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 print_sword::w#4 char_cursor#124 ] ) - [82] (signed word) print_sword::w#4 ← phi( print_sword/(signed word) print_sword::w#3 print_sword::@4/(signed word) print_sword::w#0 ) [ print_sword::w#4 char_cursor#124 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#4 char_cursor#124 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 print_sword::w#4 char_cursor#124 ] ) - [83] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 [ char_cursor#124 print_word::w#11 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#124 print_word::w#11 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#124 print_word::w#11 ] ) - [84] call print_word param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) + [82] (byte*) char_cursor#128 ← phi( print_sword/(byte*) char_cursor#126 print_sword::@4/(byte*) char_cursor#17 ) [ print_sword::w#4 char_cursor#128 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#4 char_cursor#128 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 print_sword::w#4 char_cursor#128 ] ) + [82] (signed word) print_sword::w#4 ← phi( print_sword/(signed word) print_sword::w#3 print_sword::@4/(signed word) print_sword::w#0 ) [ print_sword::w#4 char_cursor#128 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#4 char_cursor#128 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 print_sword::w#4 char_cursor#128 ] ) + [83] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#4 [ char_cursor#128 print_word::w#13 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#128 print_word::w#13 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#128 print_word::w#13 ] ) + [84] call print_word param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) to:print_sword::@return print_sword::@return: scope:[print_sword] from print_sword::@1 - [85] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) + [85] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) to:@return -print_word: scope:[print_word] from multiply_error::@5 multiply_error::@7 multiply_tables_compare::@6 multiply_tables_compare::@8 print_sword::@1 - [86] (byte*) char_cursor#128 ← phi( multiply_error::@5/(byte*) char_cursor#122 multiply_error::@7/(byte*) char_cursor#122 multiply_tables_compare::@6/(byte*) char_cursor#122 multiply_tables_compare::@8/(byte*) char_cursor#122 print_sword::@1/(byte*) char_cursor#124 ) [ print_word::w#5 char_cursor#128 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#128 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#5 char_cursor#128 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#128 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 print_word::w#5 char_cursor#128 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#128 ] main:2::multiply_tables_compare:11::print_word:212 [ print_word::w#5 char_cursor#128 ] ) - [86] (word) print_word::w#5 ← phi( multiply_error::@5/(word) print_word::w#3 multiply_error::@7/(word) print_word::w#4 multiply_tables_compare::@6/(word~) print_word::w#9 multiply_tables_compare::@8/(word~) print_word::w#10 print_sword::@1/(word~) print_word::w#11 ) [ print_word::w#5 char_cursor#128 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#128 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#5 char_cursor#128 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#128 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 print_word::w#5 char_cursor#128 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#128 ] main:2::multiply_tables_compare:11::print_word:212 [ print_word::w#5 char_cursor#128 ] ) - [87] (byte) print_byte::b#1 ← > (word) print_word::w#5 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:212 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ) - [88] call print_byte param-assignment [ char_cursor#17 print_word::w#5 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_word::w#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_word::w#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_word::w#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 print_word::w#5 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_word::w#5 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 print_word::w#5 ] ) +print_word: scope:[print_word] from mulf_tables_cmp::@6 mulf_tables_cmp::@8 multiply_error::@5 multiply_error::@7 multiply_error::@9 print_sword::@1 + [86] (byte*) char_cursor#132 ← phi( mulf_tables_cmp::@6/(byte*) char_cursor#126 mulf_tables_cmp::@8/(byte*) char_cursor#126 multiply_error::@5/(byte*) char_cursor#126 multiply_error::@7/(byte*) char_cursor#126 multiply_error::@9/(byte*) char_cursor#126 print_sword::@1/(byte*) char_cursor#128 ) [ print_word::w#6 char_cursor#132 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#132 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#6 char_cursor#132 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#132 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#132 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 print_word::w#6 char_cursor#132 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#132 ] main:2::mulf_tables_cmp:11::print_word:238 [ print_word::w#6 char_cursor#132 ] ) + [86] (word) print_word::w#6 ← phi( mulf_tables_cmp::@6/(word~) print_word::w#8 mulf_tables_cmp::@8/(word~) print_word::w#9 multiply_error::@5/(word) print_word::w#3 multiply_error::@7/(word) print_word::w#4 multiply_error::@9/(word) print_word::w#5 print_sword::@1/(word~) print_word::w#13 ) [ print_word::w#6 char_cursor#132 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#132 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#6 char_cursor#132 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#132 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#132 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 print_word::w#6 char_cursor#132 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#132 ] main:2::mulf_tables_cmp:11::print_word:238 [ print_word::w#6 char_cursor#132 ] ) + [87] (byte) print_byte::b#1 ← > (word) print_word::w#6 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:238 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ) + [88] call print_byte param-assignment [ char_cursor#17 print_word::w#6 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_word::w#6 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 print_word::w#6 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_word::w#6 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 print_word::w#6 ] ) to:print_word::@1 print_word::@1: scope:[print_word] from print_word - [89] (byte) print_byte::b#2 ← < (word) print_word::w#5 [ char_cursor#17 print_byte::b#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 print_byte::b#2 ] ) - [90] call print_byte param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 ] ) + [89] (byte) print_byte::b#2 ← < (word) print_word::w#6 [ char_cursor#17 print_byte::b#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 print_byte::b#2 ] ) + [90] call print_byte param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 ] ) to:print_word::@return print_word::@return: scope:[print_word] from print_word::@1 - [91] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 ] ) + [91] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 ] ) to:@return print_byte: scope:[print_byte] from multiply_error::@1 multiply_error::@3 print_sbyte::@1 print_word print_word::@1 - [92] (byte*) char_cursor#129 ← phi( multiply_error::@1/(byte*) char_cursor#122 multiply_error::@3/(byte*) char_cursor#122 print_sbyte::@1/(byte*) char_cursor#126 print_word/(byte*) char_cursor#128 print_word::@1/(byte*) char_cursor#17 ) [ print_byte::b#5 char_cursor#129 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 ] ) - [92] (byte) print_byte::b#5 ← phi( multiply_error::@1/(byte) print_byte::b#3 multiply_error::@3/(byte) print_byte::b#4 print_sbyte::@1/(byte~) print_byte::b#9 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 ) [ print_byte::b#5 char_cursor#129 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 ] ) - [93] (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#129 print_byte::$0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] ) - [94] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#129 print_char::ch#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] ) - [95] call print_char param-assignment [ char_cursor#17 print_byte::b#5 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] ) + [92] (byte*) char_cursor#133 ← phi( multiply_error::@1/(byte*) char_cursor#126 multiply_error::@3/(byte*) char_cursor#126 print_sbyte::@1/(byte*) char_cursor#130 print_word/(byte*) char_cursor#132 print_word::@1/(byte*) char_cursor#17 ) [ print_byte::b#5 char_cursor#133 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] ) + [92] (byte) print_byte::b#5 ← phi( multiply_error::@1/(byte) print_byte::b#3 multiply_error::@3/(byte) print_byte::b#4 print_sbyte::@1/(byte~) print_byte::b#9 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 ) [ print_byte::b#5 char_cursor#133 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 ] ) + [93] (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#133 print_byte::$0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] ) + [94] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#133 print_char::ch#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] ) + [95] call print_char param-assignment [ char_cursor#17 print_byte::b#5 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] ) to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] ) - [97] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#17 print_char::ch#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] ) - [98] call print_char param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] ) + [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] ) + [97] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#17 print_char::ch#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] ) + [98] call print_char param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] ) to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@1 - [99] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] ) + [99] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] ) to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@2 print_sword::@2 - [100] (byte*) char_cursor#78 ← phi( print_byte/(byte*) char_cursor#129 print_byte::@1/(byte*) char_cursor#17 print_sbyte::@2/(byte*) char_cursor#122 print_sword::@2/(byte*) char_cursor#122 ) [ print_char::ch#4 char_cursor#78 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#78 ] ) - [100] (byte) print_char::ch#4 ← phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@2/(byte) '-' print_sword::@2/(byte) '-' ) [ print_char::ch#4 char_cursor#78 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_char::ch#4 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_char::ch#4 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#78 ] ) - [101] *((byte*) char_cursor#78) ← (byte) print_char::ch#4 [ char_cursor#78 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] ) - [102] (byte*) char_cursor#17 ← ++ (byte*) char_cursor#78 [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) + [100] (byte*) char_cursor#80 ← phi( print_byte/(byte*) char_cursor#133 print_byte::@1/(byte*) char_cursor#17 print_sbyte::@2/(byte*) char_cursor#126 print_sword::@2/(byte*) char_cursor#126 ) [ print_char::ch#4 char_cursor#80 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#80 ] ) + [100] (byte) print_char::ch#4 ← phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@2/(byte) '-' print_sword::@2/(byte) '-' ) [ print_char::ch#4 char_cursor#80 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_char::ch#4 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 print_char::ch#4 char_cursor#80 ] ) + [101] *((byte*) char_cursor#80) ← (byte) print_char::ch#4 [ char_cursor#80 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] ) + [102] (byte*) char_cursor#17 ← ++ (byte*) char_cursor#80 [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) to:print_char::@return print_char::@return: scope:[print_char] from print_char - [103] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) + [103] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) to:@return print_sbyte: scope:[print_sbyte] from signed_multiply_error::@1 signed_multiply_error::@3 - [104] (signed byte) print_sbyte::b#3 ← phi( signed_multiply_error::@1/(signed byte) print_sbyte::b#1 signed_multiply_error::@3/(signed byte) print_sbyte::b#2 ) [ char_cursor#122 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] ) - [105] if((signed byte) print_sbyte::b#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#122 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] ) + [104] (signed byte) print_sbyte::b#3 ← phi( signed_multiply_error::@1/(signed byte) print_sbyte::b#1 signed_multiply_error::@3/(signed byte) print_sbyte::b#2 ) [ char_cursor#126 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] ) + [105] if((signed byte) print_sbyte::b#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#126 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] ) to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte - [106] phi() [ char_cursor#122 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] ) - [107] call print_char param-assignment [ char_cursor#17 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] ) + [106] phi() [ char_cursor#126 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] ) + [107] call print_char param-assignment [ char_cursor#17 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] ) to:print_sbyte::@4 print_sbyte::@4: scope:[print_sbyte] from print_sbyte::@2 - [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) + [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) to:print_sbyte::@1 print_sbyte::@1: scope:[print_sbyte] from print_sbyte print_sbyte::@4 - [109] (byte*) char_cursor#126 ← phi( print_sbyte/(byte*) char_cursor#122 print_sbyte::@4/(byte*) char_cursor#17 ) [ char_cursor#126 print_sbyte::b#4 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#4 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#4 ] ) - [109] (signed byte) print_sbyte::b#4 ← phi( print_sbyte/(signed byte) print_sbyte::b#3 print_sbyte::@4/(signed byte) print_sbyte::b#0 ) [ char_cursor#126 print_sbyte::b#4 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#4 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#4 ] ) - [110] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#4 [ print_byte::b#9 char_cursor#126 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#126 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#126 ] ) - [111] call print_byte param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + [109] (byte*) char_cursor#130 ← phi( print_sbyte/(byte*) char_cursor#126 print_sbyte::@4/(byte*) char_cursor#17 ) [ char_cursor#130 print_sbyte::b#4 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#130 print_sbyte::b#4 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#130 print_sbyte::b#4 ] ) + [109] (signed byte) print_sbyte::b#4 ← phi( print_sbyte/(signed byte) print_sbyte::b#3 print_sbyte::@4/(signed byte) print_sbyte::b#0 ) [ char_cursor#130 print_sbyte::b#4 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#130 print_sbyte::b#4 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#130 print_sbyte::b#4 ] ) + [110] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#4 [ print_byte::b#9 char_cursor#130 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#130 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#130 ] ) + [111] call print_byte param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@1 - [112] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + [112] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) to:@return -mulf8s: scope:[mulf8s] from signed_multiply_results_compare::@8 - [113] (byte~) mulf8u::a#3 ← (byte)(signed byte) mulf8s::a#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 ] ) - [114] (byte~) mulf8u::b#3 ← (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 mulf8u::b#3 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 mulf8u::b#3 ] ) - [115] call mulf8u param-assignment [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ) - [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) +mulf8s: scope:[mulf8s] from mul8s_slowfast_compare::@8 + [113] (byte~) mulf8u::a#4 ← (byte)(signed byte) mulf8s::a#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 ] ) + [114] (byte~) mulf8u::b#4 ← (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 mulf8u::b#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 mulf8u::b#4 ] ) + [115] call mulf8u param-assignment [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ) + [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) to:mulf8s::@6 mulf8s::@6: scope:[mulf8s] from mulf8s - [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) - [118] if((signed byte) mulf8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@1 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) + [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) + [118] if((signed byte) mulf8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@1 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) to:mulf8s::@3 mulf8s::@3: scope:[mulf8s] from mulf8s::@6 - [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) - [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) - [121] (word) mulf8s::m#1 ← (word) mulf8s::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ) + [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) + [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) + [121] (word) mulf8s::m#1 ← (word) mulf8s::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ) to:mulf8s::@1 mulf8s::@1: scope:[mulf8s] from mulf8s::@3 mulf8s::@6 - [122] (word) mulf8s::m#5 ← phi( mulf8s::@3/(word) mulf8s::m#1 mulf8s::@6/(word) mulf8s::m#0 ) [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#5 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#5 ] ) - [123] if((signed byte) mulf8s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@2 [ mulf8s::a#0 mulf8s::m#5 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 ] ) + [122] (word) mulf8s::m#5 ← phi( mulf8s::@3/(word) mulf8s::m#1 mulf8s::@6/(word) mulf8s::m#0 ) [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#5 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#5 ] ) + [123] if((signed byte) mulf8s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@2 [ mulf8s::a#0 mulf8s::m#5 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 ] ) to:mulf8s::@4 mulf8s::@4: scope:[mulf8s] from mulf8s::@1 - [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) - [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) - [126] (word) mulf8s::m#2 ← (word) mulf8s::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 [ mulf8s::m#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#2 ] ) + [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) + [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) + [126] (word) mulf8s::m#2 ← (word) mulf8s::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 [ mulf8s::m#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#2 ] ) to:mulf8s::@2 mulf8s::@2: scope:[mulf8s] from mulf8s::@1 mulf8s::@4 - [127] (word) mulf8s::m#4 ← phi( mulf8s::@1/(word) mulf8s::m#5 mulf8s::@4/(word) mulf8s::m#2 ) [ mulf8s::m#4 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) + [127] (word) mulf8s::m#4 ← phi( mulf8s::@1/(word) mulf8s::m#5 mulf8s::@4/(word) mulf8s::m#2 ) [ mulf8s::m#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) to:mulf8s::@return mulf8s::@return: scope:[mulf8s] from mulf8s::@2 - [128] return [ mulf8s::m#4 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) + [128] return [ mulf8s::m#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) to:@return -mulf8u: scope:[mulf8u] from mulf8s multiply_results_compare::@8 - [129] (byte) mulf8u::b#2 ← phi( mulf8s/(byte~) mulf8u::b#3 multiply_results_compare::@8/(byte) mulf8u::b#1 ) [ mulf8u::a#2 mulf8u::b#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#2 mulf8u::b#2 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::a#2 mulf8u::b#2 ] ) - [129] (byte) mulf8u::a#2 ← phi( mulf8s/(byte~) mulf8u::a#3 multiply_results_compare::@8/(byte) mulf8u::a#1 ) [ mulf8u::a#2 mulf8u::b#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#2 mulf8u::b#2 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::a#2 mulf8u::b#2 ] ) - [130] *((const byte*) mulf8u::memA#0) ← (byte) mulf8u::a#2 [ mulf8u::b#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::b#2 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::b#2 ] ) - [131] *((const byte*) mulf8u::memB#0) ← (byte) mulf8u::b#2 [ ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) +mulf8u: scope:[mulf8u] from mul8u_slowfast_compare::@12 mulf8s + [129] (byte) mulf8u::b#2 ← phi( mul8u_slowfast_compare::@12/(byte) mulf8u::b#1 mulf8s/(byte~) mulf8u::b#4 ) [ mulf8u::a#2 mulf8u::b#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#2 mulf8u::b#2 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::a#2 mulf8u::b#2 ] ) + [129] (byte) mulf8u::a#2 ← phi( mul8u_slowfast_compare::@12/(byte) mulf8u::a#1 mulf8s/(byte~) mulf8u::a#4 ) [ mulf8u::a#2 mulf8u::b#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#2 mulf8u::b#2 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::a#2 mulf8u::b#2 ] ) + [130] *((const byte*) mulf8u::memA#0) ← (byte) mulf8u::a#2 [ mulf8u::b#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::b#2 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::b#2 ] ) + [131] *((const byte*) mulf8u::memB#0) ← (byte) mulf8u::b#2 [ ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) asm { ldamemA stasm1+1 stasm3+1 eor#$ff stasm2+1 stasm4+1 ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x stamemA sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } - [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#0 ] ) + [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#0 ] ) to:mulf8u::@return mulf8u::@return: scope:[mulf8u] from mulf8u - [134] return [ mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#0 ] ) + [134] return [ mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#0 ] ) to:@return -muls8s: scope:[muls8s] from signed_multiply_results_compare::@2 - [135] if((signed byte) muls8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@1 [ muls8s::a#0 muls8s::b#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) +muls8s: scope:[muls8s] from mul8s_slowfast_compare::@2 + [135] if((signed byte) muls8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@1 [ muls8s::a#0 muls8s::b#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) to:muls8s::@2 muls8s::@2: scope:[muls8s] from muls8s muls8s::@2 - [136] (signed byte) muls8s::i#2 ← phi( muls8s::@2/(signed byte) muls8s::i#1 muls8s/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ) - [136] (signed word) muls8s::m#3 ← phi( muls8s::@2/(signed word) muls8s::m#1 muls8s/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ) - [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) - [138] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) - [139] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) + [136] (signed byte) muls8s::i#2 ← phi( muls8s::@2/(signed byte) muls8s::i#1 muls8s/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ) + [136] (signed word) muls8s::m#3 ← phi( muls8s::@2/(signed word) muls8s::m#1 muls8s/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#3 muls8s::i#2 ] ) + [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) + [138] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) + [139] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) to:muls8s::@3 muls8s::@3: scope:[muls8s] from muls8s::@1 muls8s::@2 muls8s::@5 - [140] (signed word) muls8s::return#0 ← phi( muls8s::@2/(signed word) muls8s::m#1 muls8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@5/(signed word) muls8s::m#2 ) [ muls8s::return#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::return#0 ] ) + [140] (signed word) muls8s::return#0 ← phi( muls8s::@2/(signed word) muls8s::m#1 muls8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@5/(signed word) muls8s::m#2 ) [ muls8s::return#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::return#0 ] ) to:muls8s::@return muls8s::@return: scope:[muls8s] from muls8s::@3 - [141] return [ muls8s::return#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::return#0 ] ) + [141] return [ muls8s::return#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::return#0 ] ) to:@return muls8s::@1: scope:[muls8s] from muls8s - [142] if((signed byte) muls8s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@3 [ muls8s::a#0 muls8s::b#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) + [142] if((signed byte) muls8s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@3 [ muls8s::a#0 muls8s::b#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) to:muls8s::@5 muls8s::@5: scope:[muls8s] from muls8s::@1 muls8s::@5 - [143] (signed byte) muls8s::j#2 ← phi( muls8s::@5/(signed byte) muls8s::j#1 muls8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ) - [143] (signed word) muls8s::m#5 ← phi( muls8s::@5/(signed word) muls8s::m#2 muls8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ) - [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) - [145] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) - [146] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@5 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) + [143] (signed byte) muls8s::j#2 ← phi( muls8s::@5/(signed byte) muls8s::j#1 muls8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ) + [143] (signed word) muls8s::m#5 ← phi( muls8s::@5/(signed word) muls8s::m#2 muls8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#5 muls8s::j#2 ] ) + [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) + [145] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) + [146] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@5 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) to:muls8s::@3 -multiply_results_compare: scope:[multiply_results_compare] from main::@4 - [147] phi() [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 ] ) - to:multiply_results_compare::@1 -multiply_results_compare::@1: scope:[multiply_results_compare] from multiply_results_compare multiply_results_compare::@6 - [148] (byte) multiply_results_compare::a#6 ← phi( multiply_results_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 multiply_results_compare::@6/(byte) multiply_results_compare::a#1 ) [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 ] ) - to:multiply_results_compare::@2 -multiply_results_compare::@2: scope:[multiply_results_compare] from multiply_results_compare::@1 multiply_results_compare::@3 - [149] (byte) multiply_results_compare::b#2 ← phi( multiply_results_compare::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 multiply_results_compare::@3/(byte) multiply_results_compare::b#1 ) [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 ] ) - [150] (byte) muls8u::a#0 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 ] ) - [151] (byte) muls8u::b#0 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ) - [152] call muls8u param-assignment [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ) - [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ) - to:multiply_results_compare::@8 -multiply_results_compare::@8: scope:[multiply_results_compare] from multiply_results_compare::@2 - [154] (word) multiply_results_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - [155] (byte) mulf8u::a#1 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 mulf8u::a#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - [156] (byte) mulf8u::b#1 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - [157] call mulf8u param-assignment [ line_cursor#10 char_cursor#30 mulf8u::return#0 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::return#0 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ) - to:multiply_results_compare::@9 -multiply_results_compare::@9: scope:[multiply_results_compare] from multiply_results_compare::@8 - [159] (word) multiply_results_compare::ma#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) - [160] if((word) multiply_results_compare::ms#0==(word) multiply_results_compare::ma#0) goto multiply_results_compare::@3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) - to:multiply_results_compare::@4 -multiply_results_compare::@4: scope:[multiply_results_compare] from multiply_results_compare::@9 - [161] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) - [162] (byte) multiply_error::a#0 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 ] ) - [163] (byte) multiply_error::b#0 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 ] ) - [164] (word) multiply_error::ms#0 ← (word) multiply_results_compare::ms#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) - [165] (word) multiply_error::ma#0 ← (word) multiply_results_compare::ma#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - [166] call multiply_error param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) - to:multiply_results_compare::@return -multiply_results_compare::@return: scope:[multiply_results_compare] from multiply_results_compare::@11 multiply_results_compare::@4 - [167] return [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) +mul8u_slowfast_compare: scope:[mul8u_slowfast_compare] from main::@4 + [147] phi() [ line_cursor#10 char_cursor#30 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 ] ) + to:mul8u_slowfast_compare::@1 +mul8u_slowfast_compare::@1: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare mul8u_slowfast_compare::@10 + [148] (byte) mul8u_slowfast_compare::a#7 ← phi( mul8u_slowfast_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u_slowfast_compare::@10/(byte) mul8u_slowfast_compare::a#1 ) [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 ] ) + to:mul8u_slowfast_compare::@2 +mul8u_slowfast_compare::@2: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@1 mul8u_slowfast_compare::@5 + [149] (byte) mul8u_slowfast_compare::b#10 ← phi( mul8u_slowfast_compare::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u_slowfast_compare::@5/(byte) mul8u_slowfast_compare::b#1 ) [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 ] ) + [150] (byte) muls8u::a#0 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 ] ) + [151] (byte) muls8u::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ) + [152] call muls8u param-assignment [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ) + [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ) + to:mul8u_slowfast_compare::@12 +mul8u_slowfast_compare::@12: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@2 + [154] (word) mul8u_slowfast_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + [155] (byte) mulf8u::a#1 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + [156] (byte) mulf8u::b#1 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + [157] call mulf8u param-assignment [ line_cursor#10 char_cursor#30 mulf8u::return#0 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::return#0 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ) + to:mul8u_slowfast_compare::@13 +mul8u_slowfast_compare::@13: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@12 + [159] (word) mul8u_slowfast_compare::mf#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ) + [160] (byte) mul8u::a#1 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 ] ) + [161] (byte) mul8u::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::b#0 ] ) + [162] call mul8u param-assignment [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ) + [163] (word) mul8u::return#2 ← (word) mul8u::res#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ) + to:mul8u_slowfast_compare::@14 +mul8u_slowfast_compare::@14: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@13 + [164] (word) mul8u_slowfast_compare::mn#0 ← (word) mul8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) + [165] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mf#0) goto mul8u_slowfast_compare::@3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) + to:mul8u_slowfast_compare::@6 +mul8u_slowfast_compare::@6: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@14 + [166] phi() [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) + to:mul8u_slowfast_compare::@3 +mul8u_slowfast_compare::@3: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 + [167] (byte) mul8u_slowfast_compare::ok#4 ← phi( mul8u_slowfast_compare::@14/(byte/signed byte/word/signed word/dword/signed dword) 1 mul8u_slowfast_compare::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ) + [168] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mn#0) goto mul8u_slowfast_compare::@20 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ) + to:mul8u_slowfast_compare::@4 +mul8u_slowfast_compare::@4: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@20 mul8u_slowfast_compare::@3 + [169] (byte) mul8u_slowfast_compare::ok#3 ← phi( mul8u_slowfast_compare::@20/(byte) mul8u_slowfast_compare::ok#4 mul8u_slowfast_compare::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#3 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#3 ] ) + [170] if((byte) mul8u_slowfast_compare::ok#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@5 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) + to:mul8u_slowfast_compare::@8 +mul8u_slowfast_compare::@8: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@4 + [171] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) + [172] (byte) multiply_error::a#0 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 ] ) + [173] (byte) multiply_error::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 ] ) + [174] (word) multiply_error::ms#0 ← (word) mul8u_slowfast_compare::ms#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) + [175] (word) multiply_error::mn#0 ← (word) mul8u_slowfast_compare::mn#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ) + [176] (word) multiply_error::mf#0 ← (word) mul8u_slowfast_compare::mf#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + [177] call multiply_error param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) + to:mul8u_slowfast_compare::@return +mul8u_slowfast_compare::@return: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@16 mul8u_slowfast_compare::@8 + [178] return [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) to:@return -multiply_results_compare::@3: scope:[multiply_results_compare] from multiply_results_compare::@9 - [168] (byte) multiply_results_compare::b#1 ← ++ (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ) - [169] if((byte) multiply_results_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto multiply_results_compare::@2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ) - to:multiply_results_compare::@6 -multiply_results_compare::@6: scope:[multiply_results_compare] from multiply_results_compare::@3 - [170] (byte) multiply_results_compare::a#1 ← ++ (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ) - [171] if((byte) multiply_results_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto multiply_results_compare::@1 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ) - to:multiply_results_compare::@7 -multiply_results_compare::@7: scope:[multiply_results_compare] from multiply_results_compare::@6 - [172] phi() [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 ] ) - [173] call print_str param-assignment [ char_cursor#122 line_cursor#10 ] ( main:2::multiply_results_compare:13 [ char_cursor#122 line_cursor#10 ] ) - to:multiply_results_compare::@11 -multiply_results_compare::@11: scope:[multiply_results_compare] from multiply_results_compare::@7 - [174] phi() [ char_cursor#122 line_cursor#10 ] ( main:2::multiply_results_compare:13 [ char_cursor#122 line_cursor#10 ] ) - [175] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) - to:multiply_results_compare::@return -multiply_error: scope:[multiply_error] from multiply_results_compare::@4 - [176] phi() [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - [177] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) +mul8u_slowfast_compare::@5: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@4 + [179] (byte) mul8u_slowfast_compare::b#1 ← ++ (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ) + [180] if((byte) mul8u_slowfast_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ) + to:mul8u_slowfast_compare::@10 +mul8u_slowfast_compare::@10: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@5 + [181] (byte) mul8u_slowfast_compare::a#1 ← ++ (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ) + [182] if((byte) mul8u_slowfast_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@1 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ) + to:mul8u_slowfast_compare::@11 +mul8u_slowfast_compare::@11: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@10 + [183] phi() [ line_cursor#10 char_cursor#30 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 ] ) + [184] call print_str param-assignment [ char_cursor#126 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13 [ char_cursor#126 line_cursor#10 ] ) + to:mul8u_slowfast_compare::@16 +mul8u_slowfast_compare::@16: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@11 + [185] phi() [ char_cursor#126 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13 [ char_cursor#126 line_cursor#10 ] ) + [186] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) + to:mul8u_slowfast_compare::@return +mul8u_slowfast_compare::@20: scope:[mul8u_slowfast_compare] from mul8u_slowfast_compare::@3 + [187] phi() [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ) + to:mul8u_slowfast_compare::@4 +multiply_error: scope:[multiply_error] from mul8u_slowfast_compare::@8 + [188] phi() [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + [189] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@1 multiply_error::@1: scope:[multiply_error] from multiply_error - [178] (byte) print_byte::b#3 ← (byte) multiply_error::a#0 [ char_cursor#122 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - [179] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) + [190] (byte) print_byte::b#3 ← (byte) multiply_error::a#0 [ char_cursor#126 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + [191] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@2 multiply_error::@2: scope:[multiply_error] from multiply_error::@1 - [180] phi() [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - [181] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) + [192] phi() [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + [193] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@3 multiply_error::@3: scope:[multiply_error] from multiply_error::@2 - [182] (byte) print_byte::b#4 ← (byte) multiply_error::b#0 [ char_cursor#122 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::ma#0 ] ) - [183] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ) + [194] (byte) print_byte::b#4 ← (byte) multiply_error::b#0 [ char_cursor#126 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + [195] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@4 multiply_error::@4: scope:[multiply_error] from multiply_error::@3 - [184] phi() [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ) - [185] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ) + [196] phi() [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + [197] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@5 multiply_error::@5: scope:[multiply_error] from multiply_error::@4 - [186] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ) - [187] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ) + [198] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ) + [199] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@6 multiply_error::@6: scope:[multiply_error] from multiply_error::@5 - [188] phi() [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ) - [189] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::ma#0 ] ) + [200] phi() [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ) + [201] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ) to:multiply_error::@7 multiply_error::@7: scope:[multiply_error] from multiply_error::@6 - [190] (word) print_word::w#4 ← (word) multiply_error::ma#0 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ) - [191] call print_word param-assignment [ char_cursor#17 line_cursor#10 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 ] ) + [202] (word) print_word::w#4 ← (word) multiply_error::mn#0 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ) + [203] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ) to:multiply_error::@8 multiply_error::@8: scope:[multiply_error] from multiply_error::@7 - [192] phi() [ char_cursor#17 line_cursor#10 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 ] ) - [193] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ line_cursor#1 ] ) + [204] phi() [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ) + [205] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::mf#0 ] ) + to:multiply_error::@9 +multiply_error::@9: scope:[multiply_error] from multiply_error::@8 + [206] (word) print_word::w#5 ← (word) multiply_error::mf#0 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ) + [207] call print_word param-assignment [ char_cursor#17 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 ] ) + to:multiply_error::@10 +multiply_error::@10: scope:[multiply_error] from multiply_error::@9 + [208] phi() [ char_cursor#17 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 ] ) + [209] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ line_cursor#1 ] ) to:multiply_error::@return -multiply_error::@return: scope:[multiply_error] from multiply_error::@8 - [194] return [ line_cursor#1 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ line_cursor#1 ] ) +multiply_error::@return: scope:[multiply_error] from multiply_error::@10 + [210] return [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ line_cursor#1 ] ) to:@return -muls8u: scope:[muls8u] from multiply_results_compare::@2 - [195] if((byte) muls8u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8u::@1 [ muls8u::a#0 muls8u::b#0 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ) +mul8u: scope:[mul8u] from mul8u_slowfast_compare::@13 + [211] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::mb#0 ] ) + to:mul8u::@1 +mul8u::@1: scope:[mul8u] from mul8u mul8u::@4 + [212] (word) mul8u::mb#2 ← phi( mul8u/(word) mul8u::mb#0 mul8u::@4/(word) mul8u::mb#1 ) [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) + [212] (word) mul8u::res#2 ← phi( mul8u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u::@4/(word) mul8u::res#6 ) [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) + [212] (byte) mul8u::a#2 ← phi( mul8u/(byte) mul8u::a#1 mul8u::@4/(byte) mul8u::a#0 ) [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) + [213] if((byte) mul8u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@2 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) + to:mul8u::@return +mul8u::@return: scope:[mul8u] from mul8u::@1 + [214] return [ mul8u::res#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ) + to:@return +mul8u::@2: scope:[mul8u] from mul8u::@1 + [215] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) + [216] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@4 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) + to:mul8u::@7 +mul8u::@7: scope:[mul8u] from mul8u::@2 + [217] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) + to:mul8u::@4 +mul8u::@4: scope:[mul8u] from mul8u::@2 mul8u::@7 + [218] (word) mul8u::res#6 ← phi( mul8u::@2/(word) mul8u::res#2 mul8u::@7/(word) mul8u::res#1 ) [ mul8u::a#2 mul8u::mb#2 mul8u::res#6 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#2 mul8u::mb#2 mul8u::res#6 ] ) + [219] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::mb#2 mul8u::a#0 mul8u::res#6 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::mb#2 mul8u::a#0 mul8u::res#6 ] ) + [220] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::a#0 mul8u::res#6 mul8u::mb#1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#0 mul8u::res#6 mul8u::mb#1 ] ) + to:mul8u::@1 +muls8u: scope:[muls8u] from mul8u_slowfast_compare::@2 + [221] if((byte) muls8u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8u::@1 [ muls8u::a#0 muls8u::b#0 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ) to:muls8u::@2 muls8u::@2: scope:[muls8u] from muls8u muls8u::@2 - [196] (byte) muls8u::i#2 ← phi( muls8u::@2/(byte) muls8u::i#1 muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ) - [196] (word) muls8u::m#3 ← phi( muls8u::@2/(word) muls8u::m#1 muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ) - [197] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) - [198] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) - [199] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) + [222] (byte) muls8u::i#2 ← phi( muls8u::@2/(byte) muls8u::i#1 muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ) + [222] (word) muls8u::m#3 ← phi( muls8u::@2/(word) muls8u::m#1 muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [ muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#3 muls8u::i#2 ] ) + [223] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) + [224] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) + [225] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) to:muls8u::@1 muls8u::@1: scope:[muls8u] from muls8u muls8u::@2 - [200] (word) muls8u::return#0 ← phi( muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8u::@2/(word) muls8u::m#1 ) [ muls8u::return#0 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ) + [226] (word) muls8u::return#0 ← phi( muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8u::@2/(word) muls8u::m#1 ) [ muls8u::return#0 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ) to:muls8u::@return muls8u::@return: scope:[muls8u] from muls8u::@1 - [201] return [ muls8u::return#0 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ) + [227] return [ muls8u::return#0 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ) to:@return -multiply_tables_compare: scope:[multiply_tables_compare] from main::@3 - [202] phi() [ ] ( main:2::multiply_tables_compare:11 [ ] ) - to:multiply_tables_compare::@1 -multiply_tables_compare::@1: scope:[multiply_tables_compare] from multiply_tables_compare multiply_tables_compare::@2 - [203] (byte*) multiply_tables_compare::asm_sqr#2 ← phi( multiply_tables_compare/(const byte[512]) mula_sqr1_lo#0 multiply_tables_compare::@2/(byte*) multiply_tables_compare::asm_sqr#1 ) [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - [203] (byte*) multiply_tables_compare::kc_sqr#2 ← phi( multiply_tables_compare/(const byte[512]) mulf_sqr1_lo#0 multiply_tables_compare::@2/(byte*) multiply_tables_compare::kc_sqr#1 ) [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - [204] if(*((byte*) multiply_tables_compare::kc_sqr#2)==*((byte*) multiply_tables_compare::asm_sqr#2)) goto multiply_tables_compare::@2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - to:multiply_tables_compare::@3 -multiply_tables_compare::@3: scope:[multiply_tables_compare] from multiply_tables_compare::@1 - [205] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - [206] call print_str param-assignment [ char_cursor#122 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - to:multiply_tables_compare::@6 -multiply_tables_compare::@6: scope:[multiply_tables_compare] from multiply_tables_compare::@3 - [207] (word~) print_word::w#9 ← (word)(byte*) multiply_tables_compare::asm_sqr#2 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ) - [208] call print_word param-assignment [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ) - to:multiply_tables_compare::@7 -multiply_tables_compare::@7: scope:[multiply_tables_compare] from multiply_tables_compare::@6 - [209] phi() [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ) - [210] call print_str param-assignment [ char_cursor#122 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 multiply_tables_compare::kc_sqr#2 ] ) - to:multiply_tables_compare::@8 -multiply_tables_compare::@8: scope:[multiply_tables_compare] from multiply_tables_compare::@7 - [211] (word~) print_word::w#10 ← (word)(byte*) multiply_tables_compare::kc_sqr#2 [ char_cursor#122 print_word::w#10 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#10 ] ) - [212] call print_word param-assignment [ char_cursor#17 ] ( main:2::multiply_tables_compare:11 [ char_cursor#17 ] ) - to:multiply_tables_compare::@return -multiply_tables_compare::@return: scope:[multiply_tables_compare] from multiply_tables_compare::@10 multiply_tables_compare::@8 - [213] (byte*) line_cursor#10 ← phi( multiply_tables_compare::@10/(byte*) line_cursor#1 multiply_tables_compare::@8/(const byte*) SCREEN#0 ) [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_tables_compare:11 [ line_cursor#10 char_cursor#30 ] ) - [213] (byte*) char_cursor#30 ← phi( multiply_tables_compare::@10/(byte*~) char_cursor#201 multiply_tables_compare::@8/(byte*) char_cursor#17 ) [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_tables_compare:11 [ line_cursor#10 char_cursor#30 ] ) - [214] return [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_tables_compare:11 [ line_cursor#10 char_cursor#30 ] ) +mulf_tables_cmp: scope:[mulf_tables_cmp] from main::@3 + [228] phi() [ ] ( main:2::mulf_tables_cmp:11 [ ] ) + to:mulf_tables_cmp::@1 +mulf_tables_cmp::@1: scope:[mulf_tables_cmp] from mulf_tables_cmp mulf_tables_cmp::@2 + [229] (byte*) mulf_tables_cmp::asm_sqr#2 ← phi( mulf_tables_cmp/(const byte[512]) mula_sqr1_lo#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::asm_sqr#1 ) [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + [229] (byte*) mulf_tables_cmp::kc_sqr#2 ← phi( mulf_tables_cmp/(const byte[512]) mulf_sqr1_lo#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::kc_sqr#1 ) [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + [230] if(*((byte*) mulf_tables_cmp::kc_sqr#2)==*((byte*) mulf_tables_cmp::asm_sqr#2)) goto mulf_tables_cmp::@2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + to:mulf_tables_cmp::@3 +mulf_tables_cmp::@3: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1 + [231] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + [232] call print_str param-assignment [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + to:mulf_tables_cmp::@6 +mulf_tables_cmp::@6: scope:[mulf_tables_cmp] from mulf_tables_cmp::@3 + [233] (word~) print_word::w#8 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ) + [234] call print_word param-assignment [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ) + to:mulf_tables_cmp::@7 +mulf_tables_cmp::@7: scope:[mulf_tables_cmp] from mulf_tables_cmp::@6 + [235] phi() [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ) + [236] call print_str param-assignment [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 ] ) + to:mulf_tables_cmp::@8 +mulf_tables_cmp::@8: scope:[mulf_tables_cmp] from mulf_tables_cmp::@7 + [237] (word~) print_word::w#9 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 [ char_cursor#126 print_word::w#9 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#9 ] ) + [238] call print_word param-assignment [ char_cursor#17 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#17 ] ) + to:mulf_tables_cmp::@return +mulf_tables_cmp::@return: scope:[mulf_tables_cmp] from mulf_tables_cmp::@10 mulf_tables_cmp::@8 + [239] (byte*) line_cursor#10 ← phi( mulf_tables_cmp::@10/(byte*) line_cursor#1 mulf_tables_cmp::@8/(const byte*) SCREEN#0 ) [ line_cursor#10 char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#10 char_cursor#30 ] ) + [239] (byte*) char_cursor#30 ← phi( mulf_tables_cmp::@10/(byte*~) char_cursor#212 mulf_tables_cmp::@8/(byte*) char_cursor#17 ) [ line_cursor#10 char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#10 char_cursor#30 ] ) + [240] return [ line_cursor#10 char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#10 char_cursor#30 ] ) to:@return -multiply_tables_compare::@2: scope:[multiply_tables_compare] from multiply_tables_compare::@1 - [215] (byte*) multiply_tables_compare::asm_sqr#1 ← ++ (byte*) multiply_tables_compare::asm_sqr#2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#1 ] ) - [216] (byte*) multiply_tables_compare::kc_sqr#1 ← ++ (byte*) multiply_tables_compare::kc_sqr#2 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ) - [217] if((byte*) multiply_tables_compare::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto multiply_tables_compare::@1 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ) - to:multiply_tables_compare::@5 -multiply_tables_compare::@5: scope:[multiply_tables_compare] from multiply_tables_compare::@2 - [218] phi() [ ] ( main:2::multiply_tables_compare:11 [ ] ) - [219] call print_str param-assignment [ char_cursor#122 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 ] ) - to:multiply_tables_compare::@10 -multiply_tables_compare::@10: scope:[multiply_tables_compare] from multiply_tables_compare::@5 - [220] phi() [ char_cursor#122 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 ] ) - [221] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_tables_compare:11 [ line_cursor#1 ] ) - [222] (byte*~) char_cursor#201 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#201 ] ( main:2::multiply_tables_compare:11 [ line_cursor#1 char_cursor#201 ] ) - to:multiply_tables_compare::@return +mulf_tables_cmp::@2: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1 + [241] (byte*) mulf_tables_cmp::asm_sqr#1 ← ++ (byte*) mulf_tables_cmp::asm_sqr#2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#1 ] ) + [242] (byte*) mulf_tables_cmp::kc_sqr#1 ← ++ (byte*) mulf_tables_cmp::kc_sqr#2 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) + [243] if((byte*) mulf_tables_cmp::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto mulf_tables_cmp::@1 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) + to:mulf_tables_cmp::@5 +mulf_tables_cmp::@5: scope:[mulf_tables_cmp] from mulf_tables_cmp::@2 + [244] phi() [ ] ( main:2::mulf_tables_cmp:11 [ ] ) + [245] call print_str param-assignment [ char_cursor#126 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 ] ) + to:mulf_tables_cmp::@10 +mulf_tables_cmp::@10: scope:[mulf_tables_cmp] from mulf_tables_cmp::@5 + [246] phi() [ char_cursor#126 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 ] ) + [247] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#1 ] ) + [248] (byte*~) char_cursor#212 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#212 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#1 char_cursor#212 ] ) + to:mulf_tables_cmp::@return mulf_init_asm: scope:[mulf_init_asm] from main::@2 asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } - [224] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) - [225] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) - [226] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) - [227] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) + [250] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) + [251] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) + [252] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) + [253] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) to:mulf_init_asm::@return mulf_init_asm::@return: scope:[mulf_init_asm] from mulf_init_asm - [228] return [ ] ( main:2::mulf_init_asm:9 [ ] ) + [254] return [ ] ( main:2::mulf_init_asm:9 [ ] ) to:@return mulf_init: scope:[mulf_init] from main::@1 - [229] phi() [ ] ( main:2::mulf_init:7 [ ] ) + [255] phi() [ ] ( main:2::mulf_init:7 [ ] ) to:mulf_init::@1 mulf_init::@1: scope:[mulf_init] from mulf_init mulf_init::@2 - [230] (byte) mulf_init::x_2#3 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::x_2#2 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) - [230] (byte*) mulf_init::sqr1_hi#2 ← phi( mulf_init/(const byte[512]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_hi#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) - [230] (byte*) mulf_init::sqr1_lo#2 ← phi( mulf_init/(const byte[512]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_lo#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) - [230] (word) mulf_init::sqr#4 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(word) mulf_init::sqr#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) - [230] (byte) mulf_init::c#2 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::c#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) - [231] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) - [232] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) - [233] if((byte~) mulf_init::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) + [256] (byte) mulf_init::x_2#3 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::x_2#2 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) + [256] (byte*) mulf_init::sqr1_hi#2 ← phi( mulf_init/(const byte[512]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_hi#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) + [256] (byte*) mulf_init::sqr1_lo#2 ← phi( mulf_init/(const byte[512]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_lo#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) + [256] (word) mulf_init::sqr#4 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(word) mulf_init::sqr#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) + [256] (byte) mulf_init::c#2 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::c#1 ) [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ( main:2::mulf_init:7 [ mulf_init::c#2 mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 ] ) + [257] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) + [258] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) + [259] if((byte~) mulf_init::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) to:mulf_init::@5 mulf_init::@5: scope:[mulf_init] from mulf_init::@1 - [234] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ) - [235] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ) + [260] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ) + [261] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ) to:mulf_init::@2 mulf_init::@2: scope:[mulf_init] from mulf_init::@1 mulf_init::@5 - [236] (byte) mulf_init::x_2#2 ← phi( mulf_init::@1/(byte) mulf_init::x_2#3 mulf_init::@5/(byte) mulf_init::x_2#1 ) [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) - [236] (word) mulf_init::sqr#3 ← phi( mulf_init::@1/(word) mulf_init::sqr#4 mulf_init::@5/(word) mulf_init::sqr#2 ) [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) - [237] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) - [238] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) - [239] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) - [240] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) - [241] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) - [242] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) - [243] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) - [244] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) + [262] (byte) mulf_init::x_2#2 ← phi( mulf_init::@1/(byte) mulf_init::x_2#3 mulf_init::@5/(byte) mulf_init::x_2#1 ) [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) + [262] (word) mulf_init::sqr#3 ← phi( mulf_init::@1/(word) mulf_init::sqr#4 mulf_init::@5/(word) mulf_init::sqr#2 ) [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) + [263] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) + [264] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) + [265] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) + [266] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) + [267] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) + [268] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) + [269] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) + [270] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) to:mulf_init::@3 mulf_init::@3: scope:[mulf_init] from mulf_init::@2 mulf_init::@4 - [245] (byte) mulf_init::dir#2 ← phi( mulf_init::@4/(byte) mulf_init::dir#3 mulf_init::@2/(byte/word/signed word/dword/signed dword) 255 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) - [245] (byte*) mulf_init::sqr2_hi#2 ← phi( mulf_init::@4/(byte*) mulf_init::sqr2_hi#1 mulf_init::@2/(const byte[512]) mulf_sqr2_hi#0 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) - [245] (byte*) mulf_init::sqr2_lo#2 ← phi( mulf_init::@4/(byte*) mulf_init::sqr2_lo#1 mulf_init::@2/(const byte[512]) mulf_sqr2_lo#0 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) - [245] (byte) mulf_init::x_255#2 ← phi( mulf_init::@4/(byte) mulf_init::x_255#1 mulf_init::@2/((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) - [246] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) - [247] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) - [248] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ) - [249] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) - [250] if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@12 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) + [271] (byte) mulf_init::dir#2 ← phi( mulf_init::@4/(byte) mulf_init::dir#3 mulf_init::@2/(byte/word/signed word/dword/signed dword) 255 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) + [271] (byte*) mulf_init::sqr2_hi#2 ← phi( mulf_init::@4/(byte*) mulf_init::sqr2_hi#1 mulf_init::@2/(const byte[512]) mulf_sqr2_hi#0 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) + [271] (byte*) mulf_init::sqr2_lo#2 ← phi( mulf_init::@4/(byte*) mulf_init::sqr2_lo#1 mulf_init::@2/(const byte[512]) mulf_sqr2_lo#0 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) + [271] (byte) mulf_init::x_255#2 ← phi( mulf_init::@4/(byte) mulf_init::x_255#1 mulf_init::@2/((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) + [272] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) + [273] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) + [274] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ) + [275] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) + [276] if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@12 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) to:mulf_init::@4 mulf_init::@4: scope:[mulf_init] from mulf_init::@12 mulf_init::@3 - [251] (byte) mulf_init::dir#3 ← phi( mulf_init::@12/(byte) mulf_init::dir#2 mulf_init::@3/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ mulf_init::sqr2_lo#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) - [252] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) - [253] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) + [277] (byte) mulf_init::dir#3 ← phi( mulf_init::@12/(byte) mulf_init::dir#2 mulf_init::@3/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [ mulf_init::sqr2_lo#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) + [278] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) + [279] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) to:mulf_init::@8 mulf_init::@8: scope:[mulf_init] from mulf_init::@4 - [254] *((const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) - [255] *((const byte[512]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) + [280] *((const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) + [281] *((const byte[512]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) to:mulf_init::@return mulf_init::@return: scope:[mulf_init] from mulf_init::@8 - [256] return [ ] ( main:2::mulf_init:7 [ ] ) + [282] return [ ] ( main:2::mulf_init:7 [ ] ) to:@return mulf_init::@12: scope:[mulf_init] from mulf_init::@3 - [257] phi() [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) + [283] phi() [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) to:mulf_init::@4 print_cls: scope:[print_cls] from main - [258] phi() [ ] ( main:2::print_cls:5 [ ] ) + [284] phi() [ ] ( main:2::print_cls:5 [ ] ) to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [259] (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 [ print_cls::sc#2 ] ) - [260] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) - [261] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) - [262] 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 [ print_cls::sc#1 ] ) + [285] (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 [ print_cls::sc#2 ] ) + [286] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) + [287] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) + [288] 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 [ print_cls::sc#1 ] ) to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 - [263] return [ ] ( main:2::print_cls:5 [ ] ) + [289] return [ ] ( main:2::print_cls:5 [ ] ) to:@return DOMINATORS @begin dominated by @begin -@20 dominated by @20 @begin -@end dominated by @20 @end @begin -main dominated by @20 main @begin -main::@1 dominated by main::@1 @20 main @begin -main::@2 dominated by main::@1 main::@2 @20 main @begin -main::@3 dominated by main::@1 main::@2 main::@3 @20 main @begin -main::@4 dominated by main::@1 main::@2 main::@3 main::@4 @20 main @begin -main::@5 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 @20 main @begin -main::@return dominated by main::@1 main::@2 main::@5 main::@3 main::@4 main::@return @20 main @begin -signed_multiply_results_compare dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare @20 main @begin -signed_multiply_results_compare::@1 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@1 signed_multiply_results_compare @20 main @begin -signed_multiply_results_compare::@2 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare @20 main @begin -signed_multiply_results_compare::@8 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@8 signed_multiply_results_compare @20 main @begin -signed_multiply_results_compare::@9 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare @20 main @begin -signed_multiply_results_compare::@4 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare @20 main @begin -signed_multiply_results_compare::@return dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare signed_multiply_results_compare::@return @20 main @begin -signed_multiply_results_compare::@3 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@3 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare @20 main @begin -signed_multiply_results_compare::@6 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@3 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@6 signed_multiply_results_compare @20 main @begin -signed_multiply_results_compare::@7 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@3 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@7 signed_multiply_results_compare::@6 signed_multiply_results_compare @20 main @begin -signed_multiply_results_compare::@11 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@3 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@7 signed_multiply_results_compare::@6 signed_multiply_results_compare @20 main @begin signed_multiply_results_compare::@11 -print_ln dominated by main::@1 main::@2 main::@3 print_ln @20 main @begin -print_ln::@1 dominated by main::@1 main::@2 main::@3 print_ln @20 print_ln::@1 main @begin -print_ln::@return dominated by print_ln::@return main::@1 main::@2 main::@3 print_ln @20 print_ln::@1 main @begin -print_str dominated by main::@1 main::@2 main::@3 print_str @20 main @begin -print_str::@1 dominated by main::@1 main::@2 main::@3 print_str::@1 print_str @20 main @begin -print_str::@return dominated by main::@1 main::@2 main::@3 print_str::@return print_str::@1 print_str @20 main @begin -print_str::@2 dominated by main::@1 main::@2 main::@3 print_str::@1 print_str::@2 print_str @20 main @begin -signed_multiply_error dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare @20 main @begin signed_multiply_error -signed_multiply_error::@1 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare @20 main signed_multiply_error::@1 @begin signed_multiply_error -signed_multiply_error::@2 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare @20 main signed_multiply_error::@2 signed_multiply_error::@1 @begin signed_multiply_error -signed_multiply_error::@3 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare @20 main signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error -signed_multiply_error::@4 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare @20 main signed_multiply_error::@4 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error -signed_multiply_error::@5 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare @20 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error -signed_multiply_error::@6 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare @20 signed_multiply_error::@6 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error -signed_multiply_error::@7 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare @20 signed_multiply_error::@6 signed_multiply_error::@7 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error -signed_multiply_error::@8 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare @20 signed_multiply_error::@8 signed_multiply_error::@6 signed_multiply_error::@7 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error -signed_multiply_error::@return dominated by signed_multiply_error::@return main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare @20 signed_multiply_error::@8 signed_multiply_error::@6 signed_multiply_error::@7 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error -print_sword dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare print_sword @20 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error -print_sword::@2 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare print_sword @20 print_sword::@2 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error -print_sword::@4 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare print_sword @20 print_sword::@2 print_sword::@4 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error -print_sword::@1 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare print_sword @20 print_sword::@1 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error -print_sword::@return dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare print_sword @20 print_sword::@1 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error print_sword::@return -print_word dominated by print_word main::@1 main::@2 main::@3 @20 main @begin -print_word::@1 dominated by print_word main::@1 main::@2 main::@3 print_word::@1 @20 main @begin -print_word::@return dominated by print_word main::@1 main::@2 main::@3 print_word::@return print_word::@1 @20 main @begin -print_byte dominated by main::@1 main::@2 main::@3 print_byte @20 main @begin -print_byte::@1 dominated by main::@1 main::@2 main::@3 print_byte::@1 print_byte @20 main @begin -print_byte::@return dominated by main::@1 main::@2 main::@3 print_byte::@1 print_byte @20 main @begin print_byte::@return -print_char dominated by main::@1 main::@2 main::@3 @20 main print_char @begin -print_char::@return dominated by main::@1 main::@2 main::@3 @20 main print_char print_char::@return @begin -print_sbyte dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare print_sbyte @20 main signed_multiply_error::@1 @begin signed_multiply_error -print_sbyte::@2 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare print_sbyte @20 main print_sbyte::@2 signed_multiply_error::@1 @begin signed_multiply_error -print_sbyte::@4 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare print_sbyte @20 main print_sbyte::@4 print_sbyte::@2 signed_multiply_error::@1 @begin signed_multiply_error -print_sbyte::@1 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare print_sbyte @20 main print_sbyte::@1 signed_multiply_error::@1 @begin signed_multiply_error -print_sbyte::@return dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@4 signed_multiply_results_compare print_sbyte @20 main print_sbyte::@1 signed_multiply_error::@1 @begin print_sbyte::@return signed_multiply_error -mulf8s dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@8 signed_multiply_results_compare @20 mulf8s main @begin -mulf8s::@6 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@8 signed_multiply_results_compare @20 mulf8s main @begin mulf8s::@6 -mulf8s::@3 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@8 signed_multiply_results_compare @20 mulf8s main @begin mulf8s::@3 mulf8s::@6 -mulf8s::@1 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@8 signed_multiply_results_compare @20 mulf8s main @begin mulf8s::@1 mulf8s::@6 -mulf8s::@4 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@8 signed_multiply_results_compare @20 mulf8s main @begin mulf8s::@1 mulf8s::@4 mulf8s::@6 -mulf8s::@2 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@8 signed_multiply_results_compare @20 mulf8s main @begin mulf8s::@2 mulf8s::@1 mulf8s::@6 -mulf8s::@return dominated by main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare::@8 signed_multiply_results_compare @20 mulf8s main @begin mulf8s::@2 mulf8s::@1 mulf8s::@return mulf8s::@6 -mulf8u dominated by main::@1 main::@2 main::@3 main::@4 mulf8u @20 main @begin -mulf8u::@return dominated by main::@1 main::@2 main::@3 main::@4 mulf8u @20 main @begin mulf8u::@return -muls8s dominated by muls8s main::@1 main::@2 main::@5 main::@3 main::@4 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare @20 main @begin -muls8s::@2 dominated by muls8s main::@1 main::@2 main::@5 main::@3 main::@4 muls8s::@2 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare @20 main @begin -muls8s::@3 dominated by muls8s main::@1 main::@2 main::@5 main::@3 main::@4 muls8s::@3 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare @20 main @begin -muls8s::@return dominated by muls8s main::@1 main::@2 main::@5 main::@3 main::@4 muls8s::@3 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare @20 muls8s::@return main @begin -muls8s::@1 dominated by muls8s main::@1 main::@2 main::@5 main::@3 main::@4 muls8s::@1 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare @20 main @begin -muls8s::@5 dominated by muls8s main::@1 main::@2 main::@5 main::@3 main::@4 muls8s::@5 muls8s::@1 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 signed_multiply_results_compare @20 main @begin -multiply_results_compare dominated by main::@1 main::@2 main::@3 main::@4 multiply_results_compare @20 main @begin -multiply_results_compare::@1 dominated by main::@1 main::@2 main::@3 main::@4 multiply_results_compare multiply_results_compare::@1 @20 main @begin -multiply_results_compare::@2 dominated by main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 @20 main @begin -multiply_results_compare::@8 dominated by main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@8 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 @20 main @begin -multiply_results_compare::@9 dominated by main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 @20 main @begin -multiply_results_compare::@4 dominated by main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@4 @20 main @begin -multiply_results_compare::@return dominated by main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@return multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 @20 main @begin -multiply_results_compare::@3 dominated by main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@3 @20 main @begin -multiply_results_compare::@6 dominated by main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@3 multiply_results_compare::@6 @20 main @begin -multiply_results_compare::@7 dominated by main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@8 multiply_results_compare::@7 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@3 multiply_results_compare::@6 @20 main @begin -multiply_results_compare::@11 dominated by main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@8 multiply_results_compare::@7 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@3 multiply_results_compare::@6 @20 main @begin multiply_results_compare::@11 -multiply_error dominated by main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@4 @20 multiply_error main @begin -multiply_error::@1 dominated by main::@1 main::@2 main::@3 main::@4 multiply_error::@1 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@4 @20 multiply_error main @begin -multiply_error::@2 dominated by main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@4 @20 multiply_error main @begin -multiply_error::@3 dominated by multiply_error::@3 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@4 @20 multiply_error main @begin -multiply_error::@4 dominated by multiply_error::@4 multiply_error::@3 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@4 @20 multiply_error main @begin -multiply_error::@5 dominated by multiply_error::@5 multiply_error::@4 multiply_error::@3 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@4 @20 multiply_error main @begin -multiply_error::@6 dominated by multiply_error::@6 multiply_error::@5 multiply_error::@4 multiply_error::@3 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@4 @20 multiply_error main @begin -multiply_error::@7 dominated by multiply_error::@6 multiply_error::@5 multiply_error::@4 multiply_error::@3 multiply_error::@7 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@4 @20 multiply_error main @begin -multiply_error::@8 dominated by multiply_error::@6 multiply_error::@5 multiply_error::@4 multiply_error::@3 multiply_error::@8 multiply_error::@7 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@4 @20 multiply_error main @begin -multiply_error::@return dominated by multiply_error::@6 multiply_error::@5 multiply_error::@4 multiply_error::@3 multiply_error::@8 multiply_error::@7 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 multiply_results_compare::@8 multiply_results_compare::@9 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 multiply_results_compare::@4 @20 multiply_error main @begin multiply_error::@return -muls8u dominated by muls8u main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 @20 main @begin -muls8u::@2 dominated by muls8u main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 @20 main @begin muls8u::@2 -muls8u::@1 dominated by muls8u main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 @20 main @begin muls8u::@1 -muls8u::@return dominated by muls8u main::@1 main::@2 main::@3 main::@4 multiply_results_compare::@2 multiply_results_compare multiply_results_compare::@1 @20 main @begin muls8u::@1 muls8u::@return -multiply_tables_compare dominated by main::@1 main::@2 main::@3 @20 main @begin multiply_tables_compare -multiply_tables_compare::@1 dominated by main::@1 main::@2 main::@3 multiply_tables_compare::@1 @20 main @begin multiply_tables_compare -multiply_tables_compare::@3 dominated by main::@1 main::@2 main::@3 multiply_tables_compare::@3 multiply_tables_compare::@1 @20 main @begin multiply_tables_compare -multiply_tables_compare::@6 dominated by main::@1 main::@2 main::@3 multiply_tables_compare::@6 multiply_tables_compare::@3 multiply_tables_compare::@1 @20 main @begin multiply_tables_compare -multiply_tables_compare::@7 dominated by main::@1 main::@2 main::@3 multiply_tables_compare::@7 multiply_tables_compare::@6 multiply_tables_compare::@3 multiply_tables_compare::@1 @20 main @begin multiply_tables_compare -multiply_tables_compare::@8 dominated by main::@1 main::@2 main::@3 multiply_tables_compare::@7 multiply_tables_compare::@6 multiply_tables_compare::@8 multiply_tables_compare::@3 multiply_tables_compare::@1 @20 main @begin multiply_tables_compare -multiply_tables_compare::@return dominated by main::@1 main::@2 main::@3 multiply_tables_compare::@1 @20 main @begin multiply_tables_compare::@return multiply_tables_compare -multiply_tables_compare::@2 dominated by main::@1 main::@2 main::@3 multiply_tables_compare::@2 multiply_tables_compare::@1 @20 main @begin multiply_tables_compare -multiply_tables_compare::@5 dominated by main::@1 main::@2 main::@3 multiply_tables_compare::@2 multiply_tables_compare::@5 multiply_tables_compare::@1 @20 main @begin multiply_tables_compare -multiply_tables_compare::@10 dominated by main::@1 main::@2 main::@3 multiply_tables_compare::@2 multiply_tables_compare::@5 multiply_tables_compare::@1 multiply_tables_compare::@10 @20 main @begin multiply_tables_compare -mulf_init_asm dominated by main::@1 main::@2 mulf_init_asm @20 main @begin -mulf_init_asm::@return dominated by main::@1 main::@2 mulf_init_asm::@return mulf_init_asm @20 main @begin -mulf_init dominated by main::@1 @20 main @begin mulf_init -mulf_init::@1 dominated by main::@1 @20 main @begin mulf_init mulf_init::@1 -mulf_init::@5 dominated by main::@1 @20 main @begin mulf_init mulf_init::@1 mulf_init::@5 -mulf_init::@2 dominated by main::@1 @20 main @begin mulf_init mulf_init::@2 mulf_init::@1 -mulf_init::@3 dominated by main::@1 @20 main @begin mulf_init mulf_init::@2 mulf_init::@1 mulf_init::@3 -mulf_init::@4 dominated by main::@1 @20 main @begin mulf_init mulf_init::@2 mulf_init::@1 mulf_init::@4 mulf_init::@3 -mulf_init::@8 dominated by main::@1 @20 main @begin mulf_init mulf_init::@2 mulf_init::@1 mulf_init::@4 mulf_init::@3 mulf_init::@8 -mulf_init::@return dominated by main::@1 mulf_init::@return @20 main @begin mulf_init mulf_init::@2 mulf_init::@1 mulf_init::@4 mulf_init::@3 mulf_init::@8 -mulf_init::@12 dominated by mulf_init::@12 main::@1 @20 main @begin mulf_init mulf_init::@2 mulf_init::@1 mulf_init::@3 -print_cls dominated by print_cls @20 main @begin -print_cls::@1 dominated by print_cls @20 main @begin print_cls::@1 -print_cls::@return dominated by print_cls @20 main @begin print_cls::@return print_cls::@1 +@21 dominated by @21 @begin +@end dominated by @21 @end @begin +main dominated by @21 main @begin +main::@1 dominated by main::@1 @21 main @begin +main::@2 dominated by main::@1 main::@2 @21 main @begin +main::@3 dominated by main::@1 main::@2 main::@3 @21 main @begin +main::@4 dominated by main::@1 main::@2 main::@3 main::@4 @21 main @begin +main::@5 dominated by main::@1 main::@2 main::@5 main::@3 main::@4 @21 main @begin +main::@return dominated by main::@1 main::@2 main::@5 main::@3 main::@4 main::@return @21 main @begin +mul8s_slowfast_compare dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 @21 main @begin +mul8s_slowfast_compare::@1 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@1 @21 main @begin +mul8s_slowfast_compare::@2 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 @21 main @begin +mul8s_slowfast_compare::@8 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 @21 main @begin +mul8s_slowfast_compare::@9 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 @21 main @begin +mul8s_slowfast_compare::@4 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 @21 main @begin +mul8s_slowfast_compare::@return dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 @21 mul8s_slowfast_compare::@return main @begin +mul8s_slowfast_compare::@3 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@3 @21 main @begin +mul8s_slowfast_compare::@6 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@6 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@3 @21 main @begin +mul8s_slowfast_compare::@7 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@6 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@7 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@3 @21 main @begin +mul8s_slowfast_compare::@11 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@6 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@7 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@3 mul8s_slowfast_compare::@11 @21 main @begin +print_ln dominated by main::@1 main::@2 main::@3 print_ln @21 main @begin +print_ln::@1 dominated by main::@1 main::@2 main::@3 print_ln @21 print_ln::@1 main @begin +print_ln::@return dominated by print_ln::@return main::@1 main::@2 main::@3 print_ln @21 print_ln::@1 main @begin +print_str dominated by main::@1 main::@2 main::@3 print_str @21 main @begin +print_str::@1 dominated by main::@1 main::@2 main::@3 print_str::@1 print_str @21 main @begin +print_str::@return dominated by main::@1 main::@2 main::@3 print_str::@return print_str::@1 print_str @21 main @begin +print_str::@2 dominated by main::@1 main::@2 main::@3 print_str::@1 print_str::@2 print_str @21 main @begin +signed_multiply_error dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 @21 main @begin signed_multiply_error +signed_multiply_error::@1 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 @21 main signed_multiply_error::@1 @begin signed_multiply_error +signed_multiply_error::@2 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 @21 main signed_multiply_error::@2 signed_multiply_error::@1 @begin signed_multiply_error +signed_multiply_error::@3 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 @21 main signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error +signed_multiply_error::@4 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 @21 main signed_multiply_error::@4 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error +signed_multiply_error::@5 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 @21 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error +signed_multiply_error::@6 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 @21 signed_multiply_error::@6 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error +signed_multiply_error::@7 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 @21 signed_multiply_error::@6 signed_multiply_error::@7 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error +signed_multiply_error::@8 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 @21 signed_multiply_error::@8 signed_multiply_error::@6 signed_multiply_error::@7 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error +signed_multiply_error::@return dominated by signed_multiply_error::@return mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 @21 signed_multiply_error::@8 signed_multiply_error::@6 signed_multiply_error::@7 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error +print_sword dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 print_sword @21 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error +print_sword::@2 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 print_sword @21 print_sword::@2 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error +print_sword::@4 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 print_sword @21 print_sword::@2 print_sword::@4 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error +print_sword::@1 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 print_sword @21 print_sword::@1 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error +print_sword::@return dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 print_sword @21 print_sword::@1 main signed_multiply_error::@4 signed_multiply_error::@5 signed_multiply_error::@2 signed_multiply_error::@3 signed_multiply_error::@1 @begin signed_multiply_error print_sword::@return +print_word dominated by print_word main::@1 main::@2 main::@3 @21 main @begin +print_word::@1 dominated by print_word main::@1 main::@2 main::@3 print_word::@1 @21 main @begin +print_word::@return dominated by print_word main::@1 main::@2 main::@3 print_word::@return print_word::@1 @21 main @begin +print_byte dominated by main::@1 main::@2 main::@3 print_byte @21 main @begin +print_byte::@1 dominated by main::@1 main::@2 main::@3 print_byte::@1 print_byte @21 main @begin +print_byte::@return dominated by main::@1 main::@2 main::@3 print_byte::@1 print_byte @21 main @begin print_byte::@return +print_char dominated by main::@1 main::@2 main::@3 @21 main print_char @begin +print_char::@return dominated by main::@1 main::@2 main::@3 @21 main print_char print_char::@return @begin +print_sbyte dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 print_sbyte @21 main signed_multiply_error::@1 @begin signed_multiply_error +print_sbyte::@2 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 print_sbyte @21 main print_sbyte::@2 signed_multiply_error::@1 @begin signed_multiply_error +print_sbyte::@4 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 print_sbyte @21 main print_sbyte::@4 print_sbyte::@2 signed_multiply_error::@1 @begin signed_multiply_error +print_sbyte::@1 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 print_sbyte @21 main print_sbyte::@1 signed_multiply_error::@1 @begin signed_multiply_error +print_sbyte::@return dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mul8s_slowfast_compare::@4 print_sbyte @21 main print_sbyte::@1 signed_multiply_error::@1 @begin print_sbyte::@return signed_multiply_error +mulf8s dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mulf8s @21 main @begin +mulf8s::@6 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mulf8s @21 main @begin mulf8s::@6 +mulf8s::@3 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mulf8s @21 main @begin mulf8s::@3 mulf8s::@6 +mulf8s::@1 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mulf8s @21 main @begin mulf8s::@1 mulf8s::@6 +mulf8s::@4 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mulf8s @21 main @begin mulf8s::@1 mulf8s::@4 mulf8s::@6 +mulf8s::@2 dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mulf8s @21 main @begin mulf8s::@2 mulf8s::@1 mulf8s::@6 +mulf8s::@return dominated by mul8s_slowfast_compare main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 mulf8s @21 main @begin mulf8s::@2 mulf8s::@1 mulf8s::@return mulf8s::@6 +mulf8u dominated by main::@1 main::@2 main::@3 main::@4 mulf8u @21 main @begin +mulf8u::@return dominated by main::@1 main::@2 main::@3 main::@4 mulf8u @21 main @begin mulf8u::@return +muls8s dominated by mul8s_slowfast_compare muls8s main::@1 main::@2 main::@5 main::@3 main::@4 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 @21 main @begin +muls8s::@2 dominated by mul8s_slowfast_compare muls8s main::@1 main::@2 main::@5 main::@3 main::@4 muls8s::@2 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 @21 main @begin +muls8s::@3 dominated by mul8s_slowfast_compare muls8s main::@1 main::@2 main::@5 main::@3 main::@4 muls8s::@3 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 @21 main @begin +muls8s::@return dominated by mul8s_slowfast_compare muls8s main::@1 main::@2 main::@5 main::@3 main::@4 muls8s::@3 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 @21 muls8s::@return main @begin +muls8s::@1 dominated by mul8s_slowfast_compare muls8s main::@1 main::@2 main::@5 main::@3 main::@4 muls8s::@1 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 @21 main @begin +muls8s::@5 dominated by mul8s_slowfast_compare muls8s main::@1 main::@2 main::@5 main::@3 main::@4 muls8s::@5 muls8s::@1 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 @21 main @begin +mul8u_slowfast_compare dominated by main::@1 main::@2 main::@3 main::@4 @21 main @begin mul8u_slowfast_compare +mul8u_slowfast_compare::@1 dominated by main::@1 main::@2 main::@3 main::@4 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare +mul8u_slowfast_compare::@2 dominated by main::@1 main::@2 main::@3 main::@4 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 +mul8u_slowfast_compare::@12 dominated by main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 +mul8u_slowfast_compare::@13 dominated by main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 +mul8u_slowfast_compare::@14 dominated by main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 +mul8u_slowfast_compare::@6 dominated by main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@6 +mul8u_slowfast_compare::@3 dominated by main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 +mul8u_slowfast_compare::@4 dominated by main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +mul8u_slowfast_compare::@8 dominated by main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +mul8u_slowfast_compare::@return dominated by main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@return mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +mul8u_slowfast_compare::@5 dominated by main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@5 +mul8u_slowfast_compare::@10 dominated by mul8u_slowfast_compare::@10 main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@5 +mul8u_slowfast_compare::@11 dominated by mul8u_slowfast_compare::@11 mul8u_slowfast_compare::@10 main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@5 +mul8u_slowfast_compare::@16 dominated by mul8u_slowfast_compare::@11 mul8u_slowfast_compare::@10 main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 mul8u_slowfast_compare::@16 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@5 +mul8u_slowfast_compare::@20 dominated by main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@20 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 +multiply_error dominated by main::@1 main::@2 main::@3 main::@4 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 multiply_error main @begin mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +multiply_error::@1 dominated by main::@1 main::@2 main::@3 main::@4 multiply_error::@1 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 multiply_error main @begin mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +multiply_error::@2 dominated by main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 multiply_error main @begin mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +multiply_error::@3 dominated by multiply_error::@3 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 multiply_error main @begin mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +multiply_error::@4 dominated by multiply_error::@4 multiply_error::@3 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 multiply_error main @begin mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +multiply_error::@5 dominated by multiply_error::@5 multiply_error::@4 multiply_error::@3 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 multiply_error main @begin mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +multiply_error::@6 dominated by multiply_error::@6 multiply_error::@5 multiply_error::@4 multiply_error::@3 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 multiply_error main @begin mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +multiply_error::@7 dominated by multiply_error::@6 multiply_error::@5 multiply_error::@4 multiply_error::@3 multiply_error::@7 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 multiply_error main @begin mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +multiply_error::@8 dominated by multiply_error::@6 multiply_error::@5 multiply_error::@4 multiply_error::@3 multiply_error::@8 multiply_error::@7 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 multiply_error main @begin mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +multiply_error::@9 dominated by multiply_error::@6 multiply_error::@5 multiply_error::@4 multiply_error::@3 multiply_error::@9 multiply_error::@8 multiply_error::@7 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 multiply_error main @begin mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +multiply_error::@10 dominated by multiply_error::@6 multiply_error::@5 multiply_error::@4 multiply_error::@3 multiply_error::@9 multiply_error::@8 multiply_error::@7 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 multiply_error::@10 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 multiply_error main @begin mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +multiply_error::@return dominated by multiply_error::@6 multiply_error::@5 multiply_error::@4 multiply_error::@3 multiply_error::@9 multiply_error::@8 multiply_error::@7 main::@1 main::@2 main::@3 main::@4 multiply_error::@2 multiply_error::@1 multiply_error::@10 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 multiply_error main @begin multiply_error::@return mul8u_slowfast_compare::@8 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@4 +mul8u dominated by main::@1 main::@2 main::@3 main::@4 mul8u mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 +mul8u::@1 dominated by main::@1 main::@2 main::@3 main::@4 mul8u mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u::@1 +mul8u::@return dominated by main::@1 main::@2 main::@3 main::@4 mul8u mul8u::@return mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u::@1 +mul8u::@2 dominated by main::@1 main::@2 main::@3 main::@4 mul8u mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u::@2 mul8u::@1 +mul8u::@7 dominated by main::@1 main::@2 main::@3 main::@4 mul8u mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u::@7 mul8u::@2 mul8u::@1 +mul8u::@4 dominated by main::@1 main::@2 main::@3 main::@4 mul8u mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 mul8u::@2 mul8u::@1 mul8u::@4 +muls8u dominated by muls8u main::@1 main::@2 main::@3 main::@4 @21 main @begin mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 +muls8u::@2 dominated by muls8u main::@1 main::@2 main::@3 main::@4 @21 main @begin muls8u::@2 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 +muls8u::@1 dominated by muls8u main::@1 main::@2 main::@3 main::@4 @21 main @begin muls8u::@1 mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 +muls8u::@return dominated by muls8u main::@1 main::@2 main::@3 main::@4 @21 main @begin muls8u::@1 muls8u::@return mul8u_slowfast_compare::@1 mul8u_slowfast_compare mul8u_slowfast_compare::@2 +mulf_tables_cmp dominated by main::@1 main::@2 main::@3 @21 main @begin mulf_tables_cmp +mulf_tables_cmp::@1 dominated by main::@1 main::@2 main::@3 @21 main @begin mulf_tables_cmp mulf_tables_cmp::@1 +mulf_tables_cmp::@3 dominated by main::@1 main::@2 main::@3 @21 main @begin mulf_tables_cmp mulf_tables_cmp::@1 mulf_tables_cmp::@3 +mulf_tables_cmp::@6 dominated by main::@1 main::@2 main::@3 @21 main @begin mulf_tables_cmp mulf_tables_cmp::@1 mulf_tables_cmp::@6 mulf_tables_cmp::@3 +mulf_tables_cmp::@7 dominated by main::@1 main::@2 main::@3 @21 main @begin mulf_tables_cmp mulf_tables_cmp::@7 mulf_tables_cmp::@1 mulf_tables_cmp::@6 mulf_tables_cmp::@3 +mulf_tables_cmp::@8 dominated by main::@1 main::@2 main::@3 @21 main @begin mulf_tables_cmp mulf_tables_cmp::@8 mulf_tables_cmp::@7 mulf_tables_cmp::@1 mulf_tables_cmp::@6 mulf_tables_cmp::@3 +mulf_tables_cmp::@return dominated by main::@1 main::@2 main::@3 @21 main mulf_tables_cmp::@return @begin mulf_tables_cmp mulf_tables_cmp::@1 +mulf_tables_cmp::@2 dominated by main::@1 main::@2 main::@3 @21 main @begin mulf_tables_cmp mulf_tables_cmp::@2 mulf_tables_cmp::@1 +mulf_tables_cmp::@5 dominated by main::@1 main::@2 main::@3 @21 main @begin mulf_tables_cmp mulf_tables_cmp::@2 mulf_tables_cmp::@1 mulf_tables_cmp::@5 +mulf_tables_cmp::@10 dominated by main::@1 main::@2 main::@3 @21 main @begin mulf_tables_cmp mulf_tables_cmp::@10 mulf_tables_cmp::@2 mulf_tables_cmp::@1 mulf_tables_cmp::@5 +mulf_init_asm dominated by main::@1 main::@2 mulf_init_asm @21 main @begin +mulf_init_asm::@return dominated by main::@1 main::@2 mulf_init_asm::@return mulf_init_asm @21 main @begin +mulf_init dominated by main::@1 @21 main @begin mulf_init +mulf_init::@1 dominated by main::@1 @21 main @begin mulf_init mulf_init::@1 +mulf_init::@5 dominated by main::@1 @21 main @begin mulf_init mulf_init::@1 mulf_init::@5 +mulf_init::@2 dominated by main::@1 @21 main @begin mulf_init mulf_init::@2 mulf_init::@1 +mulf_init::@3 dominated by main::@1 @21 main @begin mulf_init mulf_init::@2 mulf_init::@1 mulf_init::@3 +mulf_init::@4 dominated by main::@1 @21 main @begin mulf_init mulf_init::@2 mulf_init::@1 mulf_init::@4 mulf_init::@3 +mulf_init::@8 dominated by main::@1 @21 main @begin mulf_init mulf_init::@2 mulf_init::@1 mulf_init::@4 mulf_init::@3 mulf_init::@8 +mulf_init::@return dominated by main::@1 mulf_init::@return @21 main @begin mulf_init mulf_init::@2 mulf_init::@1 mulf_init::@4 mulf_init::@3 mulf_init::@8 +mulf_init::@12 dominated by mulf_init::@12 main::@1 @21 main @begin mulf_init mulf_init::@2 mulf_init::@1 mulf_init::@3 +print_cls dominated by print_cls @21 main @begin +print_cls::@1 dominated by print_cls @21 main @begin print_cls::@1 +print_cls::@return dominated by print_cls @21 main @begin print_cls::@return print_cls::@1 NATURAL LOOPS -Found back edge: Loop head: signed_multiply_results_compare::@2 tails: signed_multiply_results_compare::@3 blocks: null -Found back edge: Loop head: signed_multiply_results_compare::@1 tails: signed_multiply_results_compare::@6 blocks: null +Found back edge: Loop head: mul8s_slowfast_compare::@2 tails: mul8s_slowfast_compare::@3 blocks: null +Found back edge: Loop head: mul8s_slowfast_compare::@1 tails: mul8s_slowfast_compare::@6 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: muls8s::@2 tails: muls8s::@2 blocks: null Found back edge: Loop head: muls8s::@5 tails: muls8s::@5 blocks: null -Found back edge: Loop head: multiply_results_compare::@2 tails: multiply_results_compare::@3 blocks: null -Found back edge: Loop head: multiply_results_compare::@1 tails: multiply_results_compare::@6 blocks: null +Found back edge: Loop head: mul8u_slowfast_compare::@2 tails: mul8u_slowfast_compare::@5 blocks: null +Found back edge: Loop head: mul8u_slowfast_compare::@1 tails: mul8u_slowfast_compare::@10 blocks: null +Found back edge: Loop head: mul8u::@1 tails: mul8u::@4 blocks: null Found back edge: Loop head: muls8u::@2 tails: muls8u::@2 blocks: null -Found back edge: Loop head: multiply_tables_compare::@1 tails: multiply_tables_compare::@2 blocks: null +Found back edge: Loop head: mulf_tables_cmp::@1 tails: mulf_tables_cmp::@2 blocks: null Found back edge: Loop head: mulf_init::@1 tails: mulf_init::@2 blocks: null Found back edge: Loop head: mulf_init::@3 tails: mulf_init::@4 blocks: null Found back edge: Loop head: print_cls::@1 tails: print_cls::@1 blocks: null -Populated: Loop head: signed_multiply_results_compare::@2 tails: signed_multiply_results_compare::@3 blocks: signed_multiply_results_compare::@3 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@2 -Populated: Loop head: signed_multiply_results_compare::@1 tails: signed_multiply_results_compare::@6 blocks: signed_multiply_results_compare::@6 signed_multiply_results_compare::@3 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 +Populated: Loop head: mul8s_slowfast_compare::@2 tails: mul8s_slowfast_compare::@3 blocks: mul8s_slowfast_compare::@3 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 +Populated: Loop head: mul8s_slowfast_compare::@1 tails: mul8s_slowfast_compare::@6 blocks: mul8s_slowfast_compare::@6 mul8s_slowfast_compare::@3 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@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: muls8s::@2 tails: muls8s::@2 blocks: muls8s::@2 Populated: Loop head: muls8s::@5 tails: muls8s::@5 blocks: muls8s::@5 -Populated: Loop head: multiply_results_compare::@2 tails: multiply_results_compare::@3 blocks: multiply_results_compare::@3 multiply_results_compare::@9 multiply_results_compare::@8 multiply_results_compare::@2 -Populated: Loop head: multiply_results_compare::@1 tails: multiply_results_compare::@6 blocks: multiply_results_compare::@6 multiply_results_compare::@3 multiply_results_compare::@9 multiply_results_compare::@8 multiply_results_compare::@2 multiply_results_compare::@1 +Populated: Loop head: mul8u_slowfast_compare::@2 tails: mul8u_slowfast_compare::@5 blocks: mul8u_slowfast_compare::@5 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@20 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 mul8u_slowfast_compare::@2 +Populated: Loop head: mul8u_slowfast_compare::@1 tails: mul8u_slowfast_compare::@10 blocks: mul8u_slowfast_compare::@10 mul8u_slowfast_compare::@5 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@20 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@1 +Populated: Loop head: mul8u::@1 tails: mul8u::@4 blocks: mul8u::@4 mul8u::@2 mul8u::@7 mul8u::@1 Populated: Loop head: muls8u::@2 tails: muls8u::@2 blocks: muls8u::@2 -Populated: Loop head: multiply_tables_compare::@1 tails: multiply_tables_compare::@2 blocks: multiply_tables_compare::@2 multiply_tables_compare::@1 +Populated: Loop head: mulf_tables_cmp::@1 tails: mulf_tables_cmp::@2 blocks: mulf_tables_cmp::@2 mulf_tables_cmp::@1 Populated: Loop head: mulf_init::@1 tails: mulf_init::@2 blocks: mulf_init::@2 mulf_init::@1 mulf_init::@5 Populated: Loop head: mulf_init::@3 tails: mulf_init::@4 blocks: mulf_init::@4 mulf_init::@12 mulf_init::@3 Populated: Loop head: print_cls::@1 tails: print_cls::@1 blocks: print_cls::@1 -Loop head: signed_multiply_results_compare::@2 tails: signed_multiply_results_compare::@3 blocks: signed_multiply_results_compare::@3 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@2 -Loop head: signed_multiply_results_compare::@1 tails: signed_multiply_results_compare::@6 blocks: signed_multiply_results_compare::@6 signed_multiply_results_compare::@3 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 +Loop head: mul8s_slowfast_compare::@2 tails: mul8s_slowfast_compare::@3 blocks: mul8s_slowfast_compare::@3 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 +Loop head: mul8s_slowfast_compare::@1 tails: mul8s_slowfast_compare::@6 blocks: mul8s_slowfast_compare::@6 mul8s_slowfast_compare::@3 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@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: muls8s::@2 tails: muls8s::@2 blocks: muls8s::@2 Loop head: muls8s::@5 tails: muls8s::@5 blocks: muls8s::@5 -Loop head: multiply_results_compare::@2 tails: multiply_results_compare::@3 blocks: multiply_results_compare::@3 multiply_results_compare::@9 multiply_results_compare::@8 multiply_results_compare::@2 -Loop head: multiply_results_compare::@1 tails: multiply_results_compare::@6 blocks: multiply_results_compare::@6 multiply_results_compare::@3 multiply_results_compare::@9 multiply_results_compare::@8 multiply_results_compare::@2 multiply_results_compare::@1 +Loop head: mul8u_slowfast_compare::@2 tails: mul8u_slowfast_compare::@5 blocks: mul8u_slowfast_compare::@5 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@20 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 mul8u_slowfast_compare::@2 +Loop head: mul8u_slowfast_compare::@1 tails: mul8u_slowfast_compare::@10 blocks: mul8u_slowfast_compare::@10 mul8u_slowfast_compare::@5 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@20 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@1 +Loop head: mul8u::@1 tails: mul8u::@4 blocks: mul8u::@4 mul8u::@2 mul8u::@7 mul8u::@1 Loop head: muls8u::@2 tails: muls8u::@2 blocks: muls8u::@2 -Loop head: multiply_tables_compare::@1 tails: multiply_tables_compare::@2 blocks: multiply_tables_compare::@2 multiply_tables_compare::@1 +Loop head: mulf_tables_cmp::@1 tails: mulf_tables_cmp::@2 blocks: mulf_tables_cmp::@2 mulf_tables_cmp::@1 Loop head: mulf_init::@1 tails: mulf_init::@2 blocks: mulf_init::@2 mulf_init::@1 mulf_init::@5 Loop head: mulf_init::@3 tails: mulf_init::@4 blocks: mulf_init::@4 mulf_init::@12 mulf_init::@3 Loop head: print_cls::@1 tails: print_cls::@1 blocks: print_cls::@1 @@ -5866,14 +6554,14 @@ Found 2 loops in scope [mulf_init] Loop head: mulf_init::@1 tails: mulf_init::@2 blocks: mulf_init::@2 mulf_init::@1 mulf_init::@5 Loop head: mulf_init::@3 tails: mulf_init::@4 blocks: mulf_init::@4 mulf_init::@12 mulf_init::@3 Found 0 loops in scope [mulf_init_asm] -Found 1 loops in scope [multiply_tables_compare] - Loop head: multiply_tables_compare::@1 tails: multiply_tables_compare::@2 blocks: multiply_tables_compare::@2 multiply_tables_compare::@1 -Found 2 loops in scope [multiply_results_compare] - Loop head: multiply_results_compare::@2 tails: multiply_results_compare::@3 blocks: multiply_results_compare::@3 multiply_results_compare::@9 multiply_results_compare::@8 multiply_results_compare::@2 - Loop head: multiply_results_compare::@1 tails: multiply_results_compare::@6 blocks: multiply_results_compare::@6 multiply_results_compare::@3 multiply_results_compare::@9 multiply_results_compare::@8 multiply_results_compare::@2 multiply_results_compare::@1 -Found 2 loops in scope [signed_multiply_results_compare] - Loop head: signed_multiply_results_compare::@2 tails: signed_multiply_results_compare::@3 blocks: signed_multiply_results_compare::@3 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@2 - Loop head: signed_multiply_results_compare::@1 tails: signed_multiply_results_compare::@6 blocks: signed_multiply_results_compare::@6 signed_multiply_results_compare::@3 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 +Found 1 loops in scope [mulf_tables_cmp] + Loop head: mulf_tables_cmp::@1 tails: mulf_tables_cmp::@2 blocks: mulf_tables_cmp::@2 mulf_tables_cmp::@1 +Found 2 loops in scope [mul8u_slowfast_compare] + Loop head: mul8u_slowfast_compare::@2 tails: mul8u_slowfast_compare::@5 blocks: mul8u_slowfast_compare::@5 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@20 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 mul8u_slowfast_compare::@2 + Loop head: mul8u_slowfast_compare::@1 tails: mul8u_slowfast_compare::@10 blocks: mul8u_slowfast_compare::@10 mul8u_slowfast_compare::@5 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@20 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@1 +Found 2 loops in scope [mul8s_slowfast_compare] + Loop head: mul8s_slowfast_compare::@2 tails: mul8s_slowfast_compare::@3 blocks: mul8s_slowfast_compare::@3 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 + Loop head: mul8s_slowfast_compare::@1 tails: mul8s_slowfast_compare::@6 blocks: mul8s_slowfast_compare::@6 mul8s_slowfast_compare::@3 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 Found 1 loops in scope [print_str] Loop head: print_str::@1 tails: print_str::@2 blocks: print_str::@2 print_str::@1 Found 0 loops in scope [print_word] @@ -5882,6 +6570,8 @@ Found 1 loops in scope [print_ln] Found 1 loops in scope [muls8u] Loop head: muls8u::@2 tails: muls8u::@2 blocks: muls8u::@2 Found 0 loops in scope [mulf8u] +Found 1 loops in scope [mul8u] + Loop head: mul8u::@1 tails: mul8u::@4 blocks: mul8u::@4 mul8u::@2 mul8u::@7 mul8u::@1 Found 0 loops in scope [multiply_error] Found 2 loops in scope [muls8s] Loop head: muls8s::@2 tails: muls8s::@2 blocks: muls8s::@2 @@ -5892,16 +6582,17 @@ Found 0 loops in scope [print_byte] Found 0 loops in scope [print_sbyte] Found 0 loops in scope [print_sword] Found 0 loops in scope [print_char] -Loop head: signed_multiply_results_compare::@2 tails: signed_multiply_results_compare::@3 blocks: signed_multiply_results_compare::@3 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@2 depth: 2 -Loop head: signed_multiply_results_compare::@1 tails: signed_multiply_results_compare::@6 blocks: signed_multiply_results_compare::@6 signed_multiply_results_compare::@3 signed_multiply_results_compare::@9 signed_multiply_results_compare::@8 signed_multiply_results_compare::@2 signed_multiply_results_compare::@1 depth: 1 +Loop head: mul8s_slowfast_compare::@2 tails: mul8s_slowfast_compare::@3 blocks: mul8s_slowfast_compare::@3 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 depth: 2 +Loop head: mul8s_slowfast_compare::@1 tails: mul8s_slowfast_compare::@6 blocks: mul8s_slowfast_compare::@6 mul8s_slowfast_compare::@3 mul8s_slowfast_compare::@9 mul8s_slowfast_compare::@8 mul8s_slowfast_compare::@2 mul8s_slowfast_compare::@1 depth: 1 Loop head: print_ln::@1 tails: print_ln::@1 blocks: print_ln::@1 depth: 1 Loop head: print_str::@1 tails: print_str::@2 blocks: print_str::@2 print_str::@1 depth: 1 Loop head: muls8s::@2 tails: muls8s::@2 blocks: muls8s::@2 depth: 3 Loop head: muls8s::@5 tails: muls8s::@5 blocks: muls8s::@5 depth: 3 -Loop head: multiply_results_compare::@2 tails: multiply_results_compare::@3 blocks: multiply_results_compare::@3 multiply_results_compare::@9 multiply_results_compare::@8 multiply_results_compare::@2 depth: 2 -Loop head: multiply_results_compare::@1 tails: multiply_results_compare::@6 blocks: multiply_results_compare::@6 multiply_results_compare::@3 multiply_results_compare::@9 multiply_results_compare::@8 multiply_results_compare::@2 multiply_results_compare::@1 depth: 1 +Loop head: mul8u_slowfast_compare::@2 tails: mul8u_slowfast_compare::@5 blocks: mul8u_slowfast_compare::@5 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@20 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 mul8u_slowfast_compare::@2 depth: 2 +Loop head: mul8u_slowfast_compare::@1 tails: mul8u_slowfast_compare::@10 blocks: mul8u_slowfast_compare::@10 mul8u_slowfast_compare::@5 mul8u_slowfast_compare::@4 mul8u_slowfast_compare::@20 mul8u_slowfast_compare::@3 mul8u_slowfast_compare::@14 mul8u_slowfast_compare::@6 mul8u_slowfast_compare::@13 mul8u_slowfast_compare::@12 mul8u_slowfast_compare::@2 mul8u_slowfast_compare::@1 depth: 1 +Loop head: mul8u::@1 tails: mul8u::@4 blocks: mul8u::@4 mul8u::@2 mul8u::@7 mul8u::@1 depth: 3 Loop head: muls8u::@2 tails: muls8u::@2 blocks: muls8u::@2 depth: 3 -Loop head: multiply_tables_compare::@1 tails: multiply_tables_compare::@2 blocks: multiply_tables_compare::@2 multiply_tables_compare::@1 depth: 1 +Loop head: mulf_tables_cmp::@1 tails: mulf_tables_cmp::@2 blocks: mulf_tables_cmp::@2 mulf_tables_cmp::@1 depth: 1 Loop head: mulf_init::@1 tails: mulf_init::@2 blocks: mulf_init::@2 mulf_init::@1 mulf_init::@5 depth: 1 Loop head: mulf_init::@3 tails: mulf_init::@4 blocks: mulf_init::@4 mulf_init::@12 mulf_init::@3 depth: 1 Loop head: print_cls::@1 tails: print_cls::@1 blocks: print_cls::@1 depth: 1 @@ -5912,25 +6603,70 @@ VARIABLE REGISTER WEIGHTS (byte*) SCREEN (byte*) char_cursor (byte*) char_cursor#1 11.0 -(byte*) char_cursor#122 1.6944444444444446 -(byte*) char_cursor#123 5.25 -(byte*) char_cursor#124 3.0 -(byte*) char_cursor#126 3.0 -(byte*) char_cursor#128 6.0 -(byte*) char_cursor#129 3.9999999999999996 -(byte*) char_cursor#141 24.0 -(byte*) char_cursor#17 0.7894736842105261 -(byte*~) char_cursor#176 4.0 -(byte*~) char_cursor#180 4.0 -(byte*~) char_cursor#201 4.0 -(byte*) char_cursor#30 0.27586206896551724 -(byte*) char_cursor#78 6.0 +(byte*) char_cursor#126 1.6578947368421046 +(byte*) char_cursor#127 5.25 +(byte*) char_cursor#128 3.0 +(byte*) char_cursor#130 3.0 +(byte*) char_cursor#132 7.0 +(byte*) char_cursor#133 3.9999999999999996 +(byte*) char_cursor#145 26.0 +(byte*) char_cursor#17 0.8000000000000002 +(byte*~) char_cursor#179 4.0 +(byte*~) char_cursor#187 4.0 +(byte*~) char_cursor#212 4.0 +(byte*) char_cursor#30 0.1951219512195122 +(byte*) char_cursor#80 6.0 (byte*) line_cursor (byte*) line_cursor#1 0.8181818181818181 -(byte*) line_cursor#10 0.1276595744680851 +(byte*) line_cursor#10 0.09523809523809523 (byte*) line_cursor#23 24.0 (byte*) line_cursor#45 10.0 (void()) main() +(void()) mul8s_slowfast_compare() +(signed byte) mul8s_slowfast_compare::a +(signed byte) mul8s_slowfast_compare::a#1 16.5 +(signed byte) mul8s_slowfast_compare::a#6 14.125 +(signed byte) mul8s_slowfast_compare::b +(signed byte) mul8s_slowfast_compare::b#1 151.5 +(signed byte) mul8s_slowfast_compare::b#2 29.0 +(signed word) mul8s_slowfast_compare::ma +(signed word) mul8s_slowfast_compare::ma#0 34.0 +(signed word) mul8s_slowfast_compare::ms +(signed word) mul8s_slowfast_compare::ms#0 20.4 +(word()) mul8u((byte) mul8u::a , (byte) mul8u::b) +(byte~) mul8u::$1 2002.0 +(byte) mul8u::a +(byte) mul8u::a#0 1001.0 +(byte) mul8u::a#1 34.33333333333333 +(byte) mul8u::a#2 667.6666666666667 +(byte) mul8u::b +(byte) mul8u::b#0 103.0 +(word) mul8u::mb +(word) mul8u::mb#0 4.0 +(word) mul8u::mb#1 2002.0 +(word) mul8u::mb#2 429.2857142857143 +(word) mul8u::res +(word) mul8u::res#1 2002.0 +(word) mul8u::res#2 517.3333333333334 +(word) mul8u::res#6 1001.0 +(word) mul8u::return +(word) mul8u::return#2 202.0 +(void()) mul8u_slowfast_compare() +(byte) mul8u_slowfast_compare::a +(byte) mul8u_slowfast_compare::a#1 16.5 +(byte) mul8u_slowfast_compare::a#7 12.11111111111111 +(byte) mul8u_slowfast_compare::b +(byte) mul8u_slowfast_compare::b#1 151.5 +(byte) mul8u_slowfast_compare::b#10 20.279999999999998 +(word) mul8u_slowfast_compare::mf +(word) mul8u_slowfast_compare::mf#0 11.333333333333332 +(word) mul8u_slowfast_compare::mn +(word) mul8u_slowfast_compare::mn#0 17.0 +(word) mul8u_slowfast_compare::ms +(word) mul8u_slowfast_compare::ms#0 14.523809523809522 +(byte) mul8u_slowfast_compare::ok +(byte) mul8u_slowfast_compare::ok#3 202.0 +(byte) mul8u_slowfast_compare::ok#4 33.666666666666664 (byte[512]) mula_sqr1_hi (byte[512]) mula_sqr1_lo (byte[512]) mula_sqr2_hi @@ -5956,11 +6692,11 @@ VARIABLE REGISTER WEIGHTS (byte) mulf8u::a (byte) mulf8u::a#1 101.0 (byte) mulf8u::a#2 105.0 -(byte~) mulf8u::a#3 2.0 +(byte~) mulf8u::a#4 2.0 (byte) mulf8u::b (byte) mulf8u::b#1 202.0 (byte) mulf8u::b#2 52.5 -(byte~) mulf8u::b#3 4.0 +(byte~) mulf8u::b#4 4.0 (byte*) mulf8u::memA (byte*) mulf8u::memB (word) mulf8u::return @@ -6007,6 +6743,13 @@ VARIABLE REGISTER WEIGHTS (byte[512]) mulf_sqr1_lo (byte[512]) mulf_sqr2_hi (byte[512]) mulf_sqr2_lo +(void()) mulf_tables_cmp() +(byte*) mulf_tables_cmp::asm_sqr +(byte*) mulf_tables_cmp::asm_sqr#1 7.333333333333333 +(byte*) mulf_tables_cmp::asm_sqr#2 8.25 +(byte*) mulf_tables_cmp::kc_sqr +(byte*) mulf_tables_cmp::kc_sqr#1 16.5 +(byte*) mulf_tables_cmp::kc_sqr#2 3.666666666666667 (signed word()) muls8s((signed byte) muls8s::a , (signed byte) muls8s::b) (signed byte) muls8s::a (signed byte) muls8s::a#0 175.58333333333334 @@ -6040,33 +6783,17 @@ VARIABLE REGISTER WEIGHTS (word) muls8u::return (word) muls8u::return#0 367.33333333333337 (word) muls8u::return#2 202.0 -(void()) multiply_error((byte) multiply_error::a , (byte) multiply_error::b , (word) multiply_error::ms , (word) multiply_error::ma) +(void()) multiply_error((byte) multiply_error::a , (byte) multiply_error::b , (word) multiply_error::ms , (word) multiply_error::mn , (word) multiply_error::mf) (byte) multiply_error::a -(byte) multiply_error::a#0 0.6666666666666666 +(byte) multiply_error::a#0 0.5714285714285714 (byte) multiply_error::b -(byte) multiply_error::b#0 0.4444444444444444 -(word) multiply_error::ma -(word) multiply_error::ma#0 0.26666666666666666 +(byte) multiply_error::b#0 0.4 +(word) multiply_error::mf +(word) multiply_error::mf#0 0.21052631578947367 +(word) multiply_error::mn +(word) multiply_error::mn#0 0.25 (word) multiply_error::ms -(word) multiply_error::ms#0 0.3333333333333333 -(void()) multiply_results_compare() -(byte) multiply_results_compare::a -(byte) multiply_results_compare::a#1 16.5 -(byte) multiply_results_compare::a#6 14.125 -(byte) multiply_results_compare::b -(byte) multiply_results_compare::b#1 151.5 -(byte) multiply_results_compare::b#2 29.0 -(word) multiply_results_compare::ma -(word) multiply_results_compare::ma#0 34.0 -(word) multiply_results_compare::ms -(word) multiply_results_compare::ms#0 20.4 -(void()) multiply_tables_compare() -(byte*) multiply_tables_compare::asm_sqr -(byte*) multiply_tables_compare::asm_sqr#1 7.333333333333333 -(byte*) multiply_tables_compare::asm_sqr#2 8.25 -(byte*) multiply_tables_compare::kc_sqr -(byte*) multiply_tables_compare::kc_sqr#1 16.5 -(byte*) multiply_tables_compare::kc_sqr#2 3.666666666666667 +(word) multiply_error::ms#0 0.3076923076923077 (void()) print_byte((byte) print_byte::b) (byte~) print_byte::$0 4.0 (byte~) print_byte::$2 4.0 @@ -6098,8 +6825,8 @@ VARIABLE REGISTER WEIGHTS (void()) print_str((byte*) print_str::str) (byte*) print_str::str (byte*) print_str::str#0 22.0 -(byte*) print_str::str#14 11.5 -(byte*) print_str::str#16 2.0 +(byte*) print_str::str#15 11.5 +(byte*) print_str::str#17 2.0 (void()) print_sword((signed word) print_sword::w) (signed word) print_sword::w (signed word) print_sword::w#0 4.0 @@ -6109,11 +6836,12 @@ VARIABLE REGISTER WEIGHTS (signed word) print_sword::w#4 4.0 (void()) print_word((word) print_word::w) (word) print_word::w -(word~) print_word::w#10 4.0 -(word~) print_word::w#11 4.0 +(word~) print_word::w#13 4.0 (word) print_word::w#3 4.0 (word) print_word::w#4 4.0 -(word) print_word::w#5 4.666666666666666 +(word) print_word::w#5 4.0 +(word) print_word::w#6 5.333333333333333 +(word~) print_word::w#8 4.0 (word~) print_word::w#9 4.0 (void()) signed_multiply_error((signed byte) signed_multiply_error::a , (signed byte) signed_multiply_error::b , (signed word) signed_multiply_error::ms , (signed word) signed_multiply_error::ma) (signed byte) signed_multiply_error::a @@ -6124,41 +6852,34 @@ VARIABLE REGISTER WEIGHTS (signed word) signed_multiply_error::ma#0 0.26666666666666666 (signed word) signed_multiply_error::ms (signed word) signed_multiply_error::ms#0 0.3333333333333333 -(void()) signed_multiply_results_compare() -(signed byte) signed_multiply_results_compare::a -(signed byte) signed_multiply_results_compare::a#1 16.5 -(signed byte) signed_multiply_results_compare::a#6 14.125 -(signed byte) signed_multiply_results_compare::b -(signed byte) signed_multiply_results_compare::b#1 151.5 -(signed byte) signed_multiply_results_compare::b#2 29.0 -(signed word) signed_multiply_results_compare::ma -(signed word) signed_multiply_results_compare::ma#0 34.0 -(signed word) signed_multiply_results_compare::ms -(signed word) signed_multiply_results_compare::ms#0 20.4 Initial phi equivalence classes -[ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 ] -[ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 ] -[ line_cursor#23 line_cursor#45 line_cursor#10 line_cursor#1 ] -[ print_str::str#14 print_str::str#16 print_str::str#0 ] +[ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 ] +[ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 ] +[ line_cursor#23 line_cursor#45 line_cursor#1 line_cursor#10 ] +[ print_str::str#15 print_str::str#17 print_str::str#0 ] [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 ] -[ print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 ] +[ print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 ] [ print_byte::b#5 print_byte::b#3 print_byte::b#4 print_byte::b#9 print_byte::b#1 print_byte::b#2 ] [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ] -[ char_cursor#78 char_cursor#129 char_cursor#128 char_cursor#124 char_cursor#141 char_cursor#30 char_cursor#123 char_cursor#17 char_cursor#122 char_cursor#176 char_cursor#180 char_cursor#1 char_cursor#126 char_cursor#201 ] +[ char_cursor#80 char_cursor#133 char_cursor#132 char_cursor#128 char_cursor#145 char_cursor#179 char_cursor#30 char_cursor#127 char_cursor#126 char_cursor#17 char_cursor#187 char_cursor#1 char_cursor#130 char_cursor#212 ] [ print_sbyte::b#4 print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#0 ] [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 ] -[ mulf8u::a#2 mulf8u::a#3 mulf8u::a#1 ] -[ mulf8u::b#2 mulf8u::b#3 mulf8u::b#1 ] +[ mulf8u::a#2 mulf8u::a#1 mulf8u::a#4 ] +[ mulf8u::b#2 mulf8u::b#1 mulf8u::b#4 ] [ muls8s::i#2 muls8s::i#1 ] [ muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 ] [ muls8s::j#2 muls8s::j#1 ] -[ multiply_results_compare::a#6 multiply_results_compare::a#1 ] -[ multiply_results_compare::b#2 multiply_results_compare::b#1 ] +[ mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 ] +[ mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::b#1 ] +[ mul8u_slowfast_compare::ok#3 mul8u_slowfast_compare::ok#4 ] +[ mul8u::a#2 mul8u::a#1 mul8u::a#0 ] +[ mul8u::res#2 mul8u::res#6 mul8u::res#1 ] +[ mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 ] [ muls8u::i#2 muls8u::i#1 ] [ muls8u::return#0 muls8u::m#3 muls8u::m#1 ] -[ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::kc_sqr#1 ] -[ multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 ] +[ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::kc_sqr#1 ] +[ mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 ] [ mulf_init::c#2 mulf_init::c#1 ] [ mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] [ mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] @@ -6172,11 +6893,11 @@ Initial phi equivalence classes Added variable muls8s::a#0 to zero page equivalence class [ muls8s::a#0 ] Added variable muls8s::b#0 to zero page equivalence class [ muls8s::b#0 ] Added variable muls8s::return#2 to zero page equivalence class [ muls8s::return#2 ] -Added variable signed_multiply_results_compare::ms#0 to zero page equivalence class [ signed_multiply_results_compare::ms#0 ] +Added variable mul8s_slowfast_compare::ms#0 to zero page equivalence class [ mul8s_slowfast_compare::ms#0 ] Added variable mulf8s::a#0 to zero page equivalence class [ mulf8s::a#0 ] Added variable mulf8s::b#0 to zero page equivalence class [ mulf8s::b#0 ] Added variable mulf8s::return#2 to zero page equivalence class [ mulf8s::return#2 ] -Added variable signed_multiply_results_compare::ma#0 to zero page equivalence class [ signed_multiply_results_compare::ma#0 ] +Added variable mul8s_slowfast_compare::ma#0 to zero page equivalence class [ mul8s_slowfast_compare::ma#0 ] Added variable signed_multiply_error::a#0 to zero page equivalence class [ signed_multiply_error::a#0 ] Added variable signed_multiply_error::b#0 to zero page equivalence class [ signed_multiply_error::b#0 ] Added variable signed_multiply_error::ms#0 to zero page equivalence class [ signed_multiply_error::ms#0 ] @@ -6192,39 +6913,48 @@ Added variable mulf8u::return#0 to zero page equivalence class [ mulf8u::return# Added variable muls8u::a#0 to zero page equivalence class [ muls8u::a#0 ] Added variable muls8u::b#0 to zero page equivalence class [ muls8u::b#0 ] Added variable muls8u::return#2 to zero page equivalence class [ muls8u::return#2 ] -Added variable multiply_results_compare::ms#0 to zero page equivalence class [ multiply_results_compare::ms#0 ] +Added variable mul8u_slowfast_compare::ms#0 to zero page equivalence class [ mul8u_slowfast_compare::ms#0 ] Added variable mulf8u::return#3 to zero page equivalence class [ mulf8u::return#3 ] -Added variable multiply_results_compare::ma#0 to zero page equivalence class [ multiply_results_compare::ma#0 ] +Added variable mul8u_slowfast_compare::mf#0 to zero page equivalence class [ mul8u_slowfast_compare::mf#0 ] +Added variable mul8u::b#0 to zero page equivalence class [ mul8u::b#0 ] +Added variable mul8u::return#2 to zero page equivalence class [ mul8u::return#2 ] +Added variable mul8u_slowfast_compare::mn#0 to zero page equivalence class [ mul8u_slowfast_compare::mn#0 ] Added variable multiply_error::a#0 to zero page equivalence class [ multiply_error::a#0 ] Added variable multiply_error::b#0 to zero page equivalence class [ multiply_error::b#0 ] Added variable multiply_error::ms#0 to zero page equivalence class [ multiply_error::ms#0 ] -Added variable multiply_error::ma#0 to zero page equivalence class [ multiply_error::ma#0 ] +Added variable multiply_error::mn#0 to zero page equivalence class [ multiply_error::mn#0 ] +Added variable multiply_error::mf#0 to zero page equivalence class [ multiply_error::mf#0 ] +Added variable mul8u::$1 to zero page equivalence class [ mul8u::$1 ] Added variable mulf_init::$2 to zero page equivalence class [ mulf_init::$2 ] Added variable mulf_init::$5 to zero page equivalence class [ mulf_init::$5 ] Added variable mulf_init::$6 to zero page equivalence class [ mulf_init::$6 ] Complete equivalence classes -[ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 ] -[ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 ] -[ line_cursor#23 line_cursor#45 line_cursor#10 line_cursor#1 ] -[ print_str::str#14 print_str::str#16 print_str::str#0 ] +[ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 ] +[ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 ] +[ line_cursor#23 line_cursor#45 line_cursor#1 line_cursor#10 ] +[ print_str::str#15 print_str::str#17 print_str::str#0 ] [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 ] -[ print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 ] +[ print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 ] [ print_byte::b#5 print_byte::b#3 print_byte::b#4 print_byte::b#9 print_byte::b#1 print_byte::b#2 ] [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ] -[ char_cursor#78 char_cursor#129 char_cursor#128 char_cursor#124 char_cursor#141 char_cursor#30 char_cursor#123 char_cursor#17 char_cursor#122 char_cursor#176 char_cursor#180 char_cursor#1 char_cursor#126 char_cursor#201 ] +[ char_cursor#80 char_cursor#133 char_cursor#132 char_cursor#128 char_cursor#145 char_cursor#179 char_cursor#30 char_cursor#127 char_cursor#126 char_cursor#17 char_cursor#187 char_cursor#1 char_cursor#130 char_cursor#212 ] [ print_sbyte::b#4 print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#0 ] [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 ] -[ mulf8u::a#2 mulf8u::a#3 mulf8u::a#1 ] -[ mulf8u::b#2 mulf8u::b#3 mulf8u::b#1 ] +[ mulf8u::a#2 mulf8u::a#1 mulf8u::a#4 ] +[ mulf8u::b#2 mulf8u::b#1 mulf8u::b#4 ] [ muls8s::i#2 muls8s::i#1 ] [ muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 ] [ muls8s::j#2 muls8s::j#1 ] -[ multiply_results_compare::a#6 multiply_results_compare::a#1 ] -[ multiply_results_compare::b#2 multiply_results_compare::b#1 ] +[ mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 ] +[ mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::b#1 ] +[ mul8u_slowfast_compare::ok#3 mul8u_slowfast_compare::ok#4 ] +[ mul8u::a#2 mul8u::a#1 mul8u::a#0 ] +[ mul8u::res#2 mul8u::res#6 mul8u::res#1 ] +[ mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 ] [ muls8u::i#2 muls8u::i#1 ] [ muls8u::return#0 muls8u::m#3 muls8u::m#1 ] -[ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::kc_sqr#1 ] -[ multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 ] +[ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::kc_sqr#1 ] +[ mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 ] [ mulf_init::c#2 mulf_init::c#1 ] [ mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] [ mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] @@ -6238,11 +6968,11 @@ Complete equivalence classes [ muls8s::a#0 ] [ muls8s::b#0 ] [ muls8s::return#2 ] -[ signed_multiply_results_compare::ms#0 ] +[ mul8s_slowfast_compare::ms#0 ] [ mulf8s::a#0 ] [ mulf8s::b#0 ] [ mulf8s::return#2 ] -[ signed_multiply_results_compare::ma#0 ] +[ mul8s_slowfast_compare::ma#0 ] [ signed_multiply_error::a#0 ] [ signed_multiply_error::b#0 ] [ signed_multiply_error::ms#0 ] @@ -6258,81 +6988,95 @@ Complete equivalence classes [ muls8u::a#0 ] [ muls8u::b#0 ] [ muls8u::return#2 ] -[ multiply_results_compare::ms#0 ] +[ mul8u_slowfast_compare::ms#0 ] [ mulf8u::return#3 ] -[ multiply_results_compare::ma#0 ] +[ mul8u_slowfast_compare::mf#0 ] +[ mul8u::b#0 ] +[ mul8u::return#2 ] +[ mul8u_slowfast_compare::mn#0 ] [ multiply_error::a#0 ] [ multiply_error::b#0 ] [ multiply_error::ms#0 ] -[ multiply_error::ma#0 ] +[ multiply_error::mn#0 ] +[ multiply_error::mf#0 ] +[ mul8u::$1 ] [ mulf_init::$2 ] [ mulf_init::$5 ] [ mulf_init::$6 ] -Allocated zp ZP_BYTE:2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 ] -Allocated zp ZP_BYTE:3 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 ] -Allocated zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#10 line_cursor#1 ] -Allocated zp ZP_WORD:6 [ print_str::str#14 print_str::str#16 print_str::str#0 ] +Allocated zp ZP_BYTE:2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 ] +Allocated zp ZP_BYTE:3 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 ] +Allocated zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#1 line_cursor#10 ] +Allocated zp ZP_WORD:6 [ print_str::str#15 print_str::str#17 print_str::str#0 ] Allocated zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 ] -Allocated zp ZP_WORD:10 [ print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 ] +Allocated zp ZP_WORD:10 [ print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 ] Allocated zp ZP_BYTE:12 [ print_byte::b#5 print_byte::b#3 print_byte::b#4 print_byte::b#9 print_byte::b#1 print_byte::b#2 ] Allocated zp ZP_BYTE:13 [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ] -Allocated zp ZP_WORD:14 [ char_cursor#78 char_cursor#129 char_cursor#128 char_cursor#124 char_cursor#141 char_cursor#30 char_cursor#123 char_cursor#17 char_cursor#122 char_cursor#176 char_cursor#180 char_cursor#1 char_cursor#126 char_cursor#201 ] +Allocated zp ZP_WORD:14 [ char_cursor#80 char_cursor#133 char_cursor#132 char_cursor#128 char_cursor#145 char_cursor#179 char_cursor#30 char_cursor#127 char_cursor#126 char_cursor#17 char_cursor#187 char_cursor#1 char_cursor#130 char_cursor#212 ] Allocated zp ZP_BYTE:16 [ print_sbyte::b#4 print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#0 ] Allocated zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 ] -Allocated zp ZP_BYTE:19 [ mulf8u::a#2 mulf8u::a#3 mulf8u::a#1 ] -Allocated zp ZP_BYTE:20 [ mulf8u::b#2 mulf8u::b#3 mulf8u::b#1 ] +Allocated zp ZP_BYTE:19 [ mulf8u::a#2 mulf8u::a#1 mulf8u::a#4 ] +Allocated zp ZP_BYTE:20 [ mulf8u::b#2 mulf8u::b#1 mulf8u::b#4 ] Allocated zp ZP_BYTE:21 [ muls8s::i#2 muls8s::i#1 ] Allocated zp ZP_WORD:22 [ muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 ] Allocated zp ZP_BYTE:24 [ muls8s::j#2 muls8s::j#1 ] -Allocated zp ZP_BYTE:25 [ multiply_results_compare::a#6 multiply_results_compare::a#1 ] -Allocated zp ZP_BYTE:26 [ multiply_results_compare::b#2 multiply_results_compare::b#1 ] -Allocated zp ZP_BYTE:27 [ muls8u::i#2 muls8u::i#1 ] -Allocated zp ZP_WORD:28 [ muls8u::return#0 muls8u::m#3 muls8u::m#1 ] -Allocated zp ZP_WORD:30 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::kc_sqr#1 ] -Allocated zp ZP_WORD:32 [ multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 ] -Allocated zp ZP_BYTE:34 [ mulf_init::c#2 mulf_init::c#1 ] -Allocated zp ZP_WORD:35 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] -Allocated zp ZP_WORD:37 [ mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] -Allocated zp ZP_BYTE:39 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] -Allocated zp ZP_WORD:40 [ mulf_init::sqr#3 mulf_init::sqr#4 mulf_init::sqr#1 mulf_init::sqr#2 ] -Allocated zp ZP_BYTE:42 [ mulf_init::x_255#2 mulf_init::x_255#1 ] -Allocated zp ZP_WORD:43 [ mulf_init::sqr2_lo#2 mulf_init::sqr2_lo#1 ] -Allocated zp ZP_WORD:45 [ mulf_init::sqr2_hi#2 mulf_init::sqr2_hi#1 ] -Allocated zp ZP_BYTE:47 [ mulf_init::dir#2 mulf_init::dir#3 ] -Allocated zp ZP_WORD:48 [ print_cls::sc#2 print_cls::sc#1 ] -Allocated zp ZP_BYTE:50 [ muls8s::a#0 ] -Allocated zp ZP_BYTE:51 [ muls8s::b#0 ] -Allocated zp ZP_WORD:52 [ muls8s::return#2 ] -Allocated zp ZP_WORD:54 [ signed_multiply_results_compare::ms#0 ] -Allocated zp ZP_BYTE:56 [ mulf8s::a#0 ] -Allocated zp ZP_BYTE:57 [ mulf8s::b#0 ] -Allocated zp ZP_WORD:58 [ mulf8s::return#2 ] -Allocated zp ZP_WORD:60 [ signed_multiply_results_compare::ma#0 ] -Allocated zp ZP_BYTE:62 [ signed_multiply_error::a#0 ] -Allocated zp ZP_BYTE:63 [ signed_multiply_error::b#0 ] -Allocated zp ZP_WORD:64 [ signed_multiply_error::ms#0 ] -Allocated zp ZP_WORD:66 [ signed_multiply_error::ma#0 ] -Allocated zp ZP_BYTE:68 [ print_byte::$0 ] -Allocated zp ZP_BYTE:69 [ print_byte::$2 ] -Allocated zp ZP_WORD:70 [ mulf8u::return#2 ] -Allocated zp ZP_BYTE:72 [ mulf8s::$6 ] -Allocated zp ZP_BYTE:73 [ mulf8s::$16 ] -Allocated zp ZP_BYTE:74 [ mulf8s::$12 ] -Allocated zp ZP_BYTE:75 [ mulf8s::$17 ] -Allocated zp ZP_WORD:76 [ mulf8u::return#0 ] -Allocated zp ZP_BYTE:78 [ muls8u::a#0 ] -Allocated zp ZP_BYTE:79 [ muls8u::b#0 ] -Allocated zp ZP_WORD:80 [ muls8u::return#2 ] -Allocated zp ZP_WORD:82 [ multiply_results_compare::ms#0 ] -Allocated zp ZP_WORD:84 [ mulf8u::return#3 ] -Allocated zp ZP_WORD:86 [ multiply_results_compare::ma#0 ] -Allocated zp ZP_BYTE:88 [ multiply_error::a#0 ] -Allocated zp ZP_BYTE:89 [ multiply_error::b#0 ] -Allocated zp ZP_WORD:90 [ multiply_error::ms#0 ] -Allocated zp ZP_WORD:92 [ multiply_error::ma#0 ] -Allocated zp ZP_BYTE:94 [ mulf_init::$2 ] -Allocated zp ZP_BYTE:95 [ mulf_init::$5 ] -Allocated zp ZP_BYTE:96 [ mulf_init::$6 ] +Allocated zp ZP_BYTE:25 [ mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 ] +Allocated zp ZP_BYTE:26 [ mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::b#1 ] +Allocated zp ZP_BYTE:27 [ mul8u_slowfast_compare::ok#3 mul8u_slowfast_compare::ok#4 ] +Allocated zp ZP_BYTE:28 [ mul8u::a#2 mul8u::a#1 mul8u::a#0 ] +Allocated zp ZP_WORD:29 [ mul8u::res#2 mul8u::res#6 mul8u::res#1 ] +Allocated zp ZP_WORD:31 [ mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 ] +Allocated zp ZP_BYTE:33 [ muls8u::i#2 muls8u::i#1 ] +Allocated zp ZP_WORD:34 [ muls8u::return#0 muls8u::m#3 muls8u::m#1 ] +Allocated zp ZP_WORD:36 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::kc_sqr#1 ] +Allocated zp ZP_WORD:38 [ mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 ] +Allocated zp ZP_BYTE:40 [ mulf_init::c#2 mulf_init::c#1 ] +Allocated zp ZP_WORD:41 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] +Allocated zp ZP_WORD:43 [ mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] +Allocated zp ZP_BYTE:45 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] +Allocated zp ZP_WORD:46 [ mulf_init::sqr#3 mulf_init::sqr#4 mulf_init::sqr#1 mulf_init::sqr#2 ] +Allocated zp ZP_BYTE:48 [ mulf_init::x_255#2 mulf_init::x_255#1 ] +Allocated zp ZP_WORD:49 [ mulf_init::sqr2_lo#2 mulf_init::sqr2_lo#1 ] +Allocated zp ZP_WORD:51 [ mulf_init::sqr2_hi#2 mulf_init::sqr2_hi#1 ] +Allocated zp ZP_BYTE:53 [ mulf_init::dir#2 mulf_init::dir#3 ] +Allocated zp ZP_WORD:54 [ print_cls::sc#2 print_cls::sc#1 ] +Allocated zp ZP_BYTE:56 [ muls8s::a#0 ] +Allocated zp ZP_BYTE:57 [ muls8s::b#0 ] +Allocated zp ZP_WORD:58 [ muls8s::return#2 ] +Allocated zp ZP_WORD:60 [ mul8s_slowfast_compare::ms#0 ] +Allocated zp ZP_BYTE:62 [ mulf8s::a#0 ] +Allocated zp ZP_BYTE:63 [ mulf8s::b#0 ] +Allocated zp ZP_WORD:64 [ mulf8s::return#2 ] +Allocated zp ZP_WORD:66 [ mul8s_slowfast_compare::ma#0 ] +Allocated zp ZP_BYTE:68 [ signed_multiply_error::a#0 ] +Allocated zp ZP_BYTE:69 [ signed_multiply_error::b#0 ] +Allocated zp ZP_WORD:70 [ signed_multiply_error::ms#0 ] +Allocated zp ZP_WORD:72 [ signed_multiply_error::ma#0 ] +Allocated zp ZP_BYTE:74 [ print_byte::$0 ] +Allocated zp ZP_BYTE:75 [ print_byte::$2 ] +Allocated zp ZP_WORD:76 [ mulf8u::return#2 ] +Allocated zp ZP_BYTE:78 [ mulf8s::$6 ] +Allocated zp ZP_BYTE:79 [ mulf8s::$16 ] +Allocated zp ZP_BYTE:80 [ mulf8s::$12 ] +Allocated zp ZP_BYTE:81 [ mulf8s::$17 ] +Allocated zp ZP_WORD:82 [ mulf8u::return#0 ] +Allocated zp ZP_BYTE:84 [ muls8u::a#0 ] +Allocated zp ZP_BYTE:85 [ muls8u::b#0 ] +Allocated zp ZP_WORD:86 [ muls8u::return#2 ] +Allocated zp ZP_WORD:88 [ mul8u_slowfast_compare::ms#0 ] +Allocated zp ZP_WORD:90 [ mulf8u::return#3 ] +Allocated zp ZP_WORD:92 [ mul8u_slowfast_compare::mf#0 ] +Allocated zp ZP_BYTE:94 [ mul8u::b#0 ] +Allocated zp ZP_WORD:95 [ mul8u::return#2 ] +Allocated zp ZP_WORD:97 [ mul8u_slowfast_compare::mn#0 ] +Allocated zp ZP_BYTE:99 [ multiply_error::a#0 ] +Allocated zp ZP_BYTE:100 [ multiply_error::b#0 ] +Allocated zp ZP_WORD:101 [ multiply_error::ms#0 ] +Allocated zp ZP_WORD:103 [ multiply_error::mn#0 ] +Allocated zp ZP_WORD:105 [ multiply_error::mf#0 ] +Allocated zp ZP_BYTE:107 [ mul8u::$1 ] +Allocated zp ZP_BYTE:108 [ mulf_init::$2 ] +Allocated zp ZP_BYTE:109 [ mulf_init::$5 ] +Allocated zp ZP_BYTE:110 [ mulf_init::$6 ] INITIAL ASM //SEG0 Basic Upstart @@ -6346,15 +7090,15 @@ INITIAL ASM .label line_cursor = 4 //SEG2 @begin bbegin: -//SEG3 [1] phi from @begin to @20 [phi:@begin->@20] -b20_from_bbegin: - jmp b20 -//SEG4 @20 -b20: +//SEG3 [1] phi from @begin to @21 [phi:@begin->@21] +b21_from_bbegin: + jmp b21 +//SEG4 @21 +b21: //SEG5 [2] call main param-assignment [ ] ( ) jsr main -//SEG6 [3] phi from @20 to @end [phi:@20->@end] -bend_from_b20: +//SEG6 [3] phi from @21 to @end [phi:@21->@end] +bend_from_b21: jmp bend //SEG7 @end bend: @@ -6364,7 +7108,7 @@ main: { lda #5 sta BGCOL //SEG10 [5] call print_cls param-assignment [ ] ( main:2 [ ] ) - //SEG11 [258] phi from main to print_cls [phi:main->print_cls] + //SEG11 [284] 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] @@ -6373,7 +7117,7 @@ main: { //SEG13 main::@1 b1: //SEG14 [7] call mulf_init param-assignment [ ] ( main:2 [ ] ) - //SEG15 [229] phi from main::@1 to mulf_init [phi:main::@1->mulf_init] + //SEG15 [255] phi from main::@1 to mulf_init [phi:main::@1->mulf_init] mulf_init_from_b1: jsr mulf_init //SEG16 [8] phi from main::@1 to main::@2 [phi:main::@1->main::@2] @@ -6388,107 +7132,107 @@ main: { jmp b3 //SEG20 main::@3 b3: - //SEG21 [11] call multiply_tables_compare param-assignment [ line_cursor#10 char_cursor#30 ] ( main:2 [ line_cursor#10 char_cursor#30 ] ) - //SEG22 [202] phi from main::@3 to multiply_tables_compare [phi:main::@3->multiply_tables_compare] - multiply_tables_compare_from_b3: - jsr multiply_tables_compare + //SEG21 [11] call mulf_tables_cmp param-assignment [ line_cursor#10 char_cursor#30 ] ( main:2 [ line_cursor#10 char_cursor#30 ] ) + //SEG22 [228] phi from main::@3 to mulf_tables_cmp [phi:main::@3->mulf_tables_cmp] + mulf_tables_cmp_from_b3: + jsr mulf_tables_cmp //SEG23 [12] phi from main::@3 to main::@4 [phi:main::@3->main::@4] b4_from_b3: jmp b4 //SEG24 main::@4 b4: - //SEG25 [13] call multiply_results_compare param-assignment [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) - //SEG26 [147] phi from main::@4 to multiply_results_compare [phi:main::@4->multiply_results_compare] - multiply_results_compare_from_b4: - jsr multiply_results_compare + //SEG25 [13] call mul8u_slowfast_compare param-assignment [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) + //SEG26 [147] phi from main::@4 to mul8u_slowfast_compare [phi:main::@4->mul8u_slowfast_compare] + mul8u_slowfast_compare_from_b4: + jsr mul8u_slowfast_compare //SEG27 [14] phi from main::@4 to main::@5 [phi:main::@4->main::@5] b5_from_b4: jmp b5 //SEG28 main::@5 b5: - //SEG29 [15] call signed_multiply_results_compare param-assignment [ ] ( main:2 [ ] ) - //SEG30 [17] phi from main::@5 to signed_multiply_results_compare [phi:main::@5->signed_multiply_results_compare] - signed_multiply_results_compare_from_b5: - jsr signed_multiply_results_compare + //SEG29 [15] call mul8s_slowfast_compare param-assignment [ ] ( main:2 [ ] ) + //SEG30 [17] phi from main::@5 to mul8s_slowfast_compare [phi:main::@5->mul8s_slowfast_compare] + mul8s_slowfast_compare_from_b5: + jsr mul8s_slowfast_compare jmp breturn //SEG31 main::@return breturn: //SEG32 [16] return [ ] ( main:2 [ ] ) rts } -//SEG33 signed_multiply_results_compare -signed_multiply_results_compare: { - .label ms = $36 - .label ma = $3c +//SEG33 mul8s_slowfast_compare +mul8s_slowfast_compare: { + .label ms = $3c + .label ma = $42 .label b = 3 .label a = 2 - //SEG34 [18] phi from signed_multiply_results_compare to signed_multiply_results_compare::@1 [phi:signed_multiply_results_compare->signed_multiply_results_compare::@1] - b1_from_signed_multiply_results_compare: - //SEG35 [18] phi (signed byte) signed_multiply_results_compare::a#6 = -(byte/word/signed word/dword/signed dword) 128 [phi:signed_multiply_results_compare->signed_multiply_results_compare::@1#0] -- vbsz1=vbsc1 + //SEG34 [18] phi from mul8s_slowfast_compare to mul8s_slowfast_compare::@1 [phi:mul8s_slowfast_compare->mul8s_slowfast_compare::@1] + b1_from_mul8s_slowfast_compare: + //SEG35 [18] phi (signed byte) mul8s_slowfast_compare::a#6 = -(byte/word/signed word/dword/signed dword) 128 [phi:mul8s_slowfast_compare->mul8s_slowfast_compare::@1#0] -- vbsz1=vbsc1 lda #-$80 sta a jmp b1 - //SEG36 [18] phi from signed_multiply_results_compare::@6 to signed_multiply_results_compare::@1 [phi:signed_multiply_results_compare::@6->signed_multiply_results_compare::@1] + //SEG36 [18] phi from mul8s_slowfast_compare::@6 to mul8s_slowfast_compare::@1 [phi:mul8s_slowfast_compare::@6->mul8s_slowfast_compare::@1] b1_from_b6: - //SEG37 [18] phi (signed byte) signed_multiply_results_compare::a#6 = (signed byte) signed_multiply_results_compare::a#1 [phi:signed_multiply_results_compare::@6->signed_multiply_results_compare::@1#0] -- register_copy + //SEG37 [18] phi (signed byte) mul8s_slowfast_compare::a#6 = (signed byte) mul8s_slowfast_compare::a#1 [phi:mul8s_slowfast_compare::@6->mul8s_slowfast_compare::@1#0] -- register_copy jmp b1 - //SEG38 signed_multiply_results_compare::@1 + //SEG38 mul8s_slowfast_compare::@1 b1: - //SEG39 [19] phi from signed_multiply_results_compare::@1 to signed_multiply_results_compare::@2 [phi:signed_multiply_results_compare::@1->signed_multiply_results_compare::@2] + //SEG39 [19] phi from mul8s_slowfast_compare::@1 to mul8s_slowfast_compare::@2 [phi:mul8s_slowfast_compare::@1->mul8s_slowfast_compare::@2] b2_from_b1: - //SEG40 [19] phi (signed byte) signed_multiply_results_compare::b#2 = -(byte/word/signed word/dword/signed dword) 128 [phi:signed_multiply_results_compare::@1->signed_multiply_results_compare::@2#0] -- vbsz1=vbsc1 + //SEG40 [19] phi (signed byte) mul8s_slowfast_compare::b#2 = -(byte/word/signed word/dword/signed dword) 128 [phi:mul8s_slowfast_compare::@1->mul8s_slowfast_compare::@2#0] -- vbsz1=vbsc1 lda #-$80 sta b jmp b2 - //SEG41 [19] phi from signed_multiply_results_compare::@3 to signed_multiply_results_compare::@2 [phi:signed_multiply_results_compare::@3->signed_multiply_results_compare::@2] + //SEG41 [19] phi from mul8s_slowfast_compare::@3 to mul8s_slowfast_compare::@2 [phi:mul8s_slowfast_compare::@3->mul8s_slowfast_compare::@2] b2_from_b3: - //SEG42 [19] phi (signed byte) signed_multiply_results_compare::b#2 = (signed byte) signed_multiply_results_compare::b#1 [phi:signed_multiply_results_compare::@3->signed_multiply_results_compare::@2#0] -- register_copy + //SEG42 [19] phi (signed byte) mul8s_slowfast_compare::b#2 = (signed byte) mul8s_slowfast_compare::b#1 [phi:mul8s_slowfast_compare::@3->mul8s_slowfast_compare::@2#0] -- register_copy jmp b2 - //SEG43 signed_multiply_results_compare::@2 + //SEG43 mul8s_slowfast_compare::@2 b2: - //SEG44 [20] (signed byte) muls8s::a#0 ← (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 line_cursor#1 ] ) -- vbsz1=vbsz2 + //SEG44 [20] (signed byte) muls8s::a#0 ← (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 line_cursor#1 ] ) -- vbsz1=vbsz2 lda a sta muls8s.a - //SEG45 [21] (signed byte) muls8s::b#0 ← (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ) -- vbsz1=vbsz2 + //SEG45 [21] (signed byte) muls8s::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ) -- vbsz1=vbsz2 lda b sta muls8s.b - //SEG46 [22] call muls8s param-assignment [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#0 line_cursor#1 ] ) + //SEG46 [22] call muls8s param-assignment [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#0 line_cursor#1 ] ) jsr muls8s - //SEG47 [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#2 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#2 line_cursor#1 ] ) -- vwsz1=vwsz2 + //SEG47 [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#2 line_cursor#1 ] ) -- vwsz1=vwsz2 lda muls8s.return sta muls8s.return_2 lda muls8s.return+1 sta muls8s.return_2+1 jmp b8 - //SEG48 signed_multiply_results_compare::@8 + //SEG48 mul8s_slowfast_compare::@8 b8: - //SEG49 [24] (signed word) signed_multiply_results_compare::ms#0 ← (signed word) muls8s::return#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 ] ) -- vwsz1=vwsz2 + //SEG49 [24] (signed word) mul8s_slowfast_compare::ms#0 ← (signed word) muls8s::return#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 ] ) -- vwsz1=vwsz2 lda muls8s.return_2 sta ms lda muls8s.return_2+1 sta ms+1 - //SEG50 [25] (signed byte) mulf8s::a#0 ← (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ) -- vbsz1=vbsz2 + //SEG50 [25] (signed byte) mulf8s::a#0 ← (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ) -- vbsz1=vbsz2 lda a sta mulf8s.a - //SEG51 [26] (signed byte) mulf8s::b#0 ← (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ) -- vbsz1=vbsz2 + //SEG51 [26] (signed byte) mulf8s::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ) -- vbsz1=vbsz2 lda b sta mulf8s.b - //SEG52 [27] call mulf8s param-assignment [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ) + //SEG52 [27] call mulf8s param-assignment [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ) jsr mulf8s - //SEG53 [28] (signed word) mulf8s::return#2 ← (signed word)(word) mulf8s::m#4 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ) -- vwsz1=vwsz2 + //SEG53 [28] (signed word) mulf8s::return#2 ← (signed word)(word) mulf8s::m#4 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ) -- vwsz1=vwsz2 lda mulf8s.m sta mulf8s.return lda mulf8s.m+1 sta mulf8s.return+1 jmp b9 - //SEG54 signed_multiply_results_compare::@9 + //SEG54 mul8s_slowfast_compare::@9 b9: - //SEG55 [29] (signed word) signed_multiply_results_compare::ma#0 ← (signed word) mulf8s::return#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) -- vwsz1=vwsz2 + //SEG55 [29] (signed word) mul8s_slowfast_compare::ma#0 ← (signed word) mulf8s::return#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) -- vwsz1=vwsz2 lda mulf8s.return sta ma lda mulf8s.return+1 sta ma+1 - //SEG56 [30] if((signed word) signed_multiply_results_compare::ms#0==(signed word) signed_multiply_results_compare::ma#0) goto signed_multiply_results_compare::@3 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) -- vwsz1_eq_vwsz2_then_la1 + //SEG56 [30] if((signed word) mul8s_slowfast_compare::ms#0==(signed word) mul8s_slowfast_compare::ma#0) goto mul8s_slowfast_compare::@3 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) -- vwsz1_eq_vwsz2_then_la1 lda ms cmp ma bne !+ @@ -6497,79 +7241,79 @@ signed_multiply_results_compare: { beq b3 !: jmp b4 - //SEG57 signed_multiply_results_compare::@4 + //SEG57 mul8s_slowfast_compare::@4 b4: - //SEG58 [31] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) -- _deref_pbuc1=vbuc2 + //SEG58 [31] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG59 [32] (signed byte) signed_multiply_error::a#0 ← (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ) -- vbsz1=vbsz2 + //SEG59 [32] (signed byte) signed_multiply_error::a#0 ← (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ) -- vbsz1=vbsz2 lda a sta signed_multiply_error.a - //SEG60 [33] (signed byte) signed_multiply_error::b#0 ← (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ) -- vbsz1=vbsz2 + //SEG60 [33] (signed byte) signed_multiply_error::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ) -- vbsz1=vbsz2 lda b sta signed_multiply_error.b - //SEG61 [34] (signed word) signed_multiply_error::ms#0 ← (signed word) signed_multiply_results_compare::ms#0 [ signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ) -- vwsz1=vwsz2 + //SEG61 [34] (signed word) signed_multiply_error::ms#0 ← (signed word) mul8s_slowfast_compare::ms#0 [ mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ) -- vwsz1=vwsz2 lda ms sta signed_multiply_error.ms lda ms+1 sta signed_multiply_error.ms+1 - //SEG62 [35] (signed word) signed_multiply_error::ma#0 ← (signed word) signed_multiply_results_compare::ma#0 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ) -- vwsz1=vwsz2 + //SEG62 [35] (signed word) signed_multiply_error::ma#0 ← (signed word) mul8s_slowfast_compare::ma#0 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ) -- vwsz1=vwsz2 lda ma sta signed_multiply_error.ma lda ma+1 sta signed_multiply_error.ma+1 - //SEG63 [36] call signed_multiply_error param-assignment [ ] ( main:2::signed_multiply_results_compare:15 [ ] ) + //SEG63 [36] call signed_multiply_error param-assignment [ ] ( main:2::mul8s_slowfast_compare:15 [ ] ) jsr signed_multiply_error jmp breturn - //SEG64 signed_multiply_results_compare::@return + //SEG64 mul8s_slowfast_compare::@return breturn: - //SEG65 [37] return [ ] ( main:2::signed_multiply_results_compare:15 [ ] ) + //SEG65 [37] return [ ] ( main:2::mul8s_slowfast_compare:15 [ ] ) rts - //SEG66 signed_multiply_results_compare::@3 + //SEG66 mul8s_slowfast_compare::@3 b3: - //SEG67 [38] (signed byte) signed_multiply_results_compare::b#1 ← ++ (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ) -- vbsz1=_inc_vbsz1 + //SEG67 [38] (signed byte) mul8s_slowfast_compare::b#1 ← ++ (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ) -- vbsz1=_inc_vbsz1 inc b - //SEG68 [39] if((signed byte) signed_multiply_results_compare::b#1!=-(byte/word/signed word/dword/signed dword) 128) goto signed_multiply_results_compare::@2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ) -- vbsz1_neq_vbsc1_then_la1 + //SEG68 [39] if((signed byte) mul8s_slowfast_compare::b#1!=-(byte/word/signed word/dword/signed dword) 128) goto mul8s_slowfast_compare::@2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ) -- vbsz1_neq_vbsc1_then_la1 lda b cmp #-$80 bne b2_from_b3 jmp b6 - //SEG69 signed_multiply_results_compare::@6 + //SEG69 mul8s_slowfast_compare::@6 b6: - //SEG70 [40] (signed byte) signed_multiply_results_compare::a#1 ← ++ (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ) -- vbsz1=_inc_vbsz1 + //SEG70 [40] (signed byte) mul8s_slowfast_compare::a#1 ← ++ (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ) -- vbsz1=_inc_vbsz1 inc a - //SEG71 [41] if((signed byte) signed_multiply_results_compare::a#1!=-(byte/word/signed word/dword/signed dword) 128) goto signed_multiply_results_compare::@1 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ) -- vbsz1_neq_vbsc1_then_la1 + //SEG71 [41] if((signed byte) mul8s_slowfast_compare::a#1!=-(byte/word/signed word/dword/signed dword) 128) goto mul8s_slowfast_compare::@1 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ) -- vbsz1_neq_vbsc1_then_la1 lda a cmp #-$80 bne b1_from_b6 jmp b7 - //SEG72 signed_multiply_results_compare::@7 + //SEG72 mul8s_slowfast_compare::@7 b7: - //SEG73 [42] (byte*~) char_cursor#180 ← (byte*) line_cursor#1 [ char_cursor#180 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ char_cursor#180 line_cursor#1 ] ) -- pbuz1=pbuz2 + //SEG73 [42] (byte*~) char_cursor#179 ← (byte*) line_cursor#1 [ char_cursor#179 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ char_cursor#179 line_cursor#1 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG74 [43] call print_str param-assignment [ line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15 [ line_cursor#1 char_cursor#122 ] ) - //SEG75 [51] phi from signed_multiply_results_compare::@7 to print_str [phi:signed_multiply_results_compare::@7->print_str] + //SEG74 [43] call print_str param-assignment [ line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15 [ line_cursor#1 char_cursor#126 ] ) + //SEG75 [51] phi from mul8s_slowfast_compare::@7 to print_str [phi:mul8s_slowfast_compare::@7->print_str] print_str_from_b7: - //SEG76 [51] phi (byte*) char_cursor#141 = (byte*~) char_cursor#180 [phi:signed_multiply_results_compare::@7->print_str#0] -- register_copy - //SEG77 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_results_compare::str [phi:signed_multiply_results_compare::@7->print_str#1] -- pbuz1=pbuc1 + //SEG76 [51] phi (byte*) char_cursor#145 = (byte*~) char_cursor#179 [phi:mul8s_slowfast_compare::@7->print_str#0] -- register_copy + //SEG77 [51] phi (byte*) print_str::str#17 = (const string) mul8s_slowfast_compare::str [phi:mul8s_slowfast_compare::@7->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str - //SEG78 [44] phi from signed_multiply_results_compare::@7 to signed_multiply_results_compare::@11 [phi:signed_multiply_results_compare::@7->signed_multiply_results_compare::@11] + //SEG78 [44] phi from mul8s_slowfast_compare::@7 to mul8s_slowfast_compare::@11 [phi:mul8s_slowfast_compare::@7->mul8s_slowfast_compare::@11] b11_from_b7: jmp b11 - //SEG79 signed_multiply_results_compare::@11 + //SEG79 mul8s_slowfast_compare::@11 b11: - //SEG80 [45] call print_ln param-assignment [ ] ( main:2::signed_multiply_results_compare:15 [ ] ) - //SEG81 [46] phi from signed_multiply_results_compare::@11 to print_ln [phi:signed_multiply_results_compare::@11->print_ln] + //SEG80 [45] call print_ln param-assignment [ ] ( main:2::mul8s_slowfast_compare:15 [ ] ) + //SEG81 [46] phi from mul8s_slowfast_compare::@11 to print_ln [phi:mul8s_slowfast_compare::@11->print_ln] print_ln_from_b11: - //SEG82 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#122 [phi:signed_multiply_results_compare::@11->print_ln#0] -- register_copy - //SEG83 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#1 [phi:signed_multiply_results_compare::@11->print_ln#1] -- register_copy + //SEG82 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#126 [phi:mul8s_slowfast_compare::@11->print_ln#0] -- register_copy + //SEG83 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#1 [phi:mul8s_slowfast_compare::@11->print_ln#1] -- register_copy jsr print_ln jmp breturn str: .text "signed multiply results match!@" @@ -6583,7 +7327,7 @@ print_ln: { jmp b1 //SEG87 print_ln::@1 b1: - //SEG88 [48] (byte*) line_cursor#1 ← (byte*) line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#123 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 char_cursor#123 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 char_cursor#123 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 char_cursor#123 ] ) -- pbuz1=pbuz1_plus_vbuc1 + //SEG88 [48] (byte*) line_cursor#1 ← (byte*) line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 char_cursor#127 ] ) -- pbuz1=pbuz1_plus_vbuc1 lda line_cursor clc adc #$28 @@ -6591,7 +7335,7 @@ print_ln: { bcc !+ inc line_cursor+1 !: - //SEG89 [49] if((byte*) line_cursor#1<(byte*) char_cursor#123) goto print_ln::@1 [ line_cursor#1 char_cursor#123 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 char_cursor#123 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 char_cursor#123 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 char_cursor#123 ] ) -- pbuz1_lt_pbuz2_then_la1 + //SEG89 [49] if((byte*) line_cursor#1<(byte*) char_cursor#127) goto print_ln::@1 [ line_cursor#1 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 char_cursor#127 ] ) -- pbuz1_lt_pbuz2_then_la1 lda line_cursor+1 cmp char_cursor+1 bcc b1_from_b1 @@ -6603,7 +7347,7 @@ print_ln: { jmp breturn //SEG90 print_ln::@return breturn: - //SEG91 [50] return [ line_cursor#1 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 ] ) + //SEG91 [50] return [ line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 ] ) rts } //SEG92 print_str @@ -6612,12 +7356,12 @@ print_str: { //SEG93 [52] 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: - //SEG94 [52] phi (byte*) char_cursor#122 = (byte*) char_cursor#141 [phi:print_str/print_str::@2->print_str::@1#0] -- register_copy - //SEG95 [52] phi (byte*) print_str::str#14 = (byte*) print_str::str#16 [phi:print_str/print_str::@2->print_str::@1#1] -- register_copy + //SEG94 [52] phi (byte*) char_cursor#126 = (byte*) char_cursor#145 [phi:print_str/print_str::@2->print_str::@1#0] -- register_copy + //SEG95 [52] phi (byte*) print_str::str#15 = (byte*) print_str::str#17 [phi:print_str/print_str::@2->print_str::@1#1] -- register_copy jmp b1 //SEG96 print_str::@1 b1: - //SEG97 [53] if(*((byte*) print_str::str#14)!=(byte) '@') goto print_str::@2 [ char_cursor#122 print_str::str#14 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 print_str::str#14 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 + //SEG97 [53] if(*((byte*) print_str::str#15)!=(byte) '@') goto print_str::@2 [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 ldy #0 lda (str),y cmp #'@' @@ -6625,21 +7369,21 @@ print_str: { jmp breturn //SEG98 print_str::@return breturn: - //SEG99 [54] return [ char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 ] ) + //SEG99 [54] return [ char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 ] ) rts //SEG100 print_str::@2 b2: - //SEG101 [55] *((byte*) char_cursor#122) ← *((byte*) print_str::str#14) [ char_cursor#122 print_str::str#14 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 print_str::str#14 ] ) -- _deref_pbuz1=_deref_pbuz2 + //SEG101 [55] *((byte*) char_cursor#126) ← *((byte*) print_str::str#15) [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (char_cursor),y - //SEG102 [56] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#122 [ print_str::str#14 char_cursor#1 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 print_str::str#14 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 print_str::str#14 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:219 [ print_str::str#14 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG102 [56] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#126 [ print_str::str#15 char_cursor#1 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#15 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 print_str::str#15 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:245 [ print_str::str#15 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc char_cursor bne !+ inc char_cursor+1 !: - //SEG103 [57] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#14 [ print_str::str#0 char_cursor#1 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 print_str::str#0 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 print_str::str#0 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:219 [ print_str::str#0 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG103 [57] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#15 [ print_str::str#0 char_cursor#1 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#0 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 print_str::str#0 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:245 [ print_str::str#0 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -6648,20 +7392,20 @@ print_str: { } //SEG104 signed_multiply_error signed_multiply_error: { - .label a = $3e - .label b = $3f - .label ms = $40 - .label ma = $42 - //SEG105 [58] (byte*~) char_cursor#176 ← (byte*) line_cursor#1 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#176 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#176 ] ) -- pbuz1=pbuz2 + .label a = $44 + .label b = $45 + .label ms = $46 + .label ma = $48 + //SEG105 [58] (byte*~) char_cursor#187 ← (byte*) line_cursor#1 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#187 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#187 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG106 [59] call print_str param-assignment [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + //SEG106 [59] call print_str param-assignment [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) //SEG107 [51] phi from signed_multiply_error to print_str [phi:signed_multiply_error->print_str] print_str_from_signed_multiply_error: - //SEG108 [51] phi (byte*) char_cursor#141 = (byte*~) char_cursor#176 [phi:signed_multiply_error->print_str#0] -- register_copy - //SEG109 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_error::str [phi:signed_multiply_error->print_str#1] -- pbuz1=pbuc1 + //SEG108 [51] phi (byte*) char_cursor#145 = (byte*~) char_cursor#187 [phi:signed_multiply_error->print_str#0] -- register_copy + //SEG109 [51] phi (byte*) print_str::str#17 = (const string) signed_multiply_error::str [phi:signed_multiply_error->print_str#1] -- pbuz1=pbuc1 lda #str @@ -6670,10 +7414,10 @@ signed_multiply_error: { jmp b1 //SEG110 signed_multiply_error::@1 b1: - //SEG111 [60] (signed byte) print_sbyte::b#1 ← (signed byte) signed_multiply_error::a#0 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#1 ] ) -- vbsz1=vbsz2 + //SEG111 [60] (signed byte) print_sbyte::b#1 ← (signed byte) signed_multiply_error::a#0 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#1 ] ) -- vbsz1=vbsz2 lda a sta print_sbyte.b - //SEG112 [61] call print_sbyte param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG112 [61] call print_sbyte param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) //SEG113 [104] phi from signed_multiply_error::@1 to print_sbyte [phi:signed_multiply_error::@1->print_sbyte] print_sbyte_from_b1: //SEG114 [104] phi (signed byte) print_sbyte::b#3 = (signed byte) print_sbyte::b#1 [phi:signed_multiply_error::@1->print_sbyte#0] -- register_copy @@ -6683,11 +7427,11 @@ signed_multiply_error: { jmp b2 //SEG116 signed_multiply_error::@2 b2: - //SEG117 [63] call print_str param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + //SEG117 [63] call print_str param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) //SEG118 [51] phi from signed_multiply_error::@2 to print_str [phi:signed_multiply_error::@2->print_str] print_str_from_b2: - //SEG119 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:signed_multiply_error::@2->print_str#0] -- register_copy - //SEG120 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_error::str1 [phi:signed_multiply_error::@2->print_str#1] -- pbuz1=pbuc1 + //SEG119 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:signed_multiply_error::@2->print_str#0] -- register_copy + //SEG120 [51] phi (byte*) print_str::str#17 = (const string) signed_multiply_error::str1 [phi:signed_multiply_error::@2->print_str#1] -- pbuz1=pbuc1 lda #str1 @@ -6696,10 +7440,10 @@ signed_multiply_error: { jmp b3 //SEG121 signed_multiply_error::@3 b3: - //SEG122 [64] (signed byte) print_sbyte::b#2 ← (signed byte) signed_multiply_error::b#0 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#2 ] ) -- vbsz1=vbsz2 + //SEG122 [64] (signed byte) print_sbyte::b#2 ← (signed byte) signed_multiply_error::b#0 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#2 ] ) -- vbsz1=vbsz2 lda b sta print_sbyte.b - //SEG123 [65] call print_sbyte param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG123 [65] call print_sbyte param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) //SEG124 [104] phi from signed_multiply_error::@3 to print_sbyte [phi:signed_multiply_error::@3->print_sbyte] print_sbyte_from_b3: //SEG125 [104] phi (signed byte) print_sbyte::b#3 = (signed byte) print_sbyte::b#2 [phi:signed_multiply_error::@3->print_sbyte#0] -- register_copy @@ -6709,11 +7453,11 @@ signed_multiply_error: { jmp b4 //SEG127 signed_multiply_error::@4 b4: - //SEG128 [67] call print_str param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + //SEG128 [67] call print_str param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) //SEG129 [51] phi from signed_multiply_error::@4 to print_str [phi:signed_multiply_error::@4->print_str] print_str_from_b4: - //SEG130 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:signed_multiply_error::@4->print_str#0] -- register_copy - //SEG131 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_error::str2 [phi:signed_multiply_error::@4->print_str#1] -- pbuz1=pbuc1 + //SEG130 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:signed_multiply_error::@4->print_str#0] -- register_copy + //SEG131 [51] phi (byte*) print_str::str#17 = (const string) signed_multiply_error::str2 [phi:signed_multiply_error::@4->print_str#1] -- pbuz1=pbuc1 lda #str2 @@ -6722,12 +7466,12 @@ signed_multiply_error: { jmp b5 //SEG132 signed_multiply_error::@5 b5: - //SEG133 [68] (signed word) print_sword::w#1 ← (signed word) signed_multiply_error::ms#0 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#1 ] ) -- vwsz1=vwsz2 + //SEG133 [68] (signed word) print_sword::w#1 ← (signed word) signed_multiply_error::ms#0 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#1 ] ) -- vwsz1=vwsz2 lda ms sta print_sword.w lda ms+1 sta print_sword.w+1 - //SEG134 [69] call print_sword param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG134 [69] call print_sword param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) //SEG135 [77] phi from signed_multiply_error::@5 to print_sword [phi:signed_multiply_error::@5->print_sword] print_sword_from_b5: //SEG136 [77] phi (signed word) print_sword::w#3 = (signed word) print_sword::w#1 [phi:signed_multiply_error::@5->print_sword#0] -- register_copy @@ -6737,11 +7481,11 @@ signed_multiply_error: { jmp b6 //SEG138 signed_multiply_error::@6 b6: - //SEG139 [71] call print_str param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + //SEG139 [71] call print_str param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) //SEG140 [51] phi from signed_multiply_error::@6 to print_str [phi:signed_multiply_error::@6->print_str] print_str_from_b6: - //SEG141 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:signed_multiply_error::@6->print_str#0] -- register_copy - //SEG142 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_error::str3 [phi:signed_multiply_error::@6->print_str#1] -- pbuz1=pbuc1 + //SEG141 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:signed_multiply_error::@6->print_str#0] -- register_copy + //SEG142 [51] phi (byte*) print_str::str#17 = (const string) signed_multiply_error::str3 [phi:signed_multiply_error::@6->print_str#1] -- pbuz1=pbuc1 lda #str3 @@ -6750,12 +7494,12 @@ signed_multiply_error: { jmp b7 //SEG143 signed_multiply_error::@7 b7: - //SEG144 [72] (signed word) print_sword::w#2 ← (signed word) signed_multiply_error::ma#0 [ line_cursor#1 char_cursor#122 print_sword::w#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#122 print_sword::w#2 ] ) -- vwsz1=vwsz2 + //SEG144 [72] (signed word) print_sword::w#2 ← (signed word) signed_multiply_error::ma#0 [ line_cursor#1 char_cursor#126 print_sword::w#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#126 print_sword::w#2 ] ) -- vwsz1=vwsz2 lda ma sta print_sword.w lda ma+1 sta print_sword.w+1 - //SEG145 [73] call print_sword param-assignment [ line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#17 ] ) + //SEG145 [73] call print_sword param-assignment [ line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#17 ] ) //SEG146 [77] phi from signed_multiply_error::@7 to print_sword [phi:signed_multiply_error::@7->print_sword] print_sword_from_b7: //SEG147 [77] phi (signed word) print_sword::w#3 = (signed word) print_sword::w#2 [phi:signed_multiply_error::@7->print_sword#0] -- register_copy @@ -6765,16 +7509,16 @@ signed_multiply_error: { jmp b8 //SEG149 signed_multiply_error::@8 b8: - //SEG150 [75] call print_ln param-assignment [ ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ ] ) + //SEG150 [75] call print_ln param-assignment [ ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ ] ) //SEG151 [46] phi from signed_multiply_error::@8 to print_ln [phi:signed_multiply_error::@8->print_ln] print_ln_from_b8: - //SEG152 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#17 [phi:signed_multiply_error::@8->print_ln#0] -- register_copy + //SEG152 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#17 [phi:signed_multiply_error::@8->print_ln#0] -- register_copy //SEG153 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#1 [phi:signed_multiply_error::@8->print_ln#1] -- register_copy jsr print_ln jmp breturn //SEG154 signed_multiply_error::@return breturn: - //SEG155 [76] return [ ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ ] ) + //SEG155 [76] return [ ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ ] ) rts str: .text "signed multiply mismatch @" str1: .text "*@" @@ -6784,7 +7528,7 @@ signed_multiply_error: { //SEG156 print_sword print_sword: { .label w = 8 - //SEG157 [78] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#122 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#122 print_sword::w#3 ] ) -- vwsz1_ge_0_then_la1 + //SEG157 [78] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#126 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#126 print_sword::w#3 ] ) -- vwsz1_ge_0_then_la1 lda w+1 bpl b1_from_print_sword //SEG158 [79] phi from print_sword to print_sword::@2 [phi:print_sword->print_sword::@2] @@ -6792,10 +7536,10 @@ print_sword: { jmp b2 //SEG159 print_sword::@2 b2: - //SEG160 [80] call print_char param-assignment [ char_cursor#17 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#3 ] ) + //SEG160 [80] call print_char param-assignment [ char_cursor#17 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#3 ] ) //SEG161 [100] phi from print_sword::@2 to print_char [phi:print_sword::@2->print_char] print_char_from_b2: - //SEG162 [100] phi (byte*) char_cursor#78 = (byte*) char_cursor#122 [phi:print_sword::@2->print_char#0] -- register_copy + //SEG162 [100] phi (byte*) char_cursor#80 = (byte*) char_cursor#126 [phi:print_sword::@2->print_char#0] -- register_copy //SEG163 [100] phi (byte) print_char::ch#4 = (byte) '-' [phi:print_sword::@2->print_char#1] -- vbuz1=vbuc1 lda #'-' sta print_char.ch @@ -6803,7 +7547,7 @@ print_sword: { jmp b4 //SEG164 print_sword::@4 b4: - //SEG165 [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) -- vwsz1=_neg_vwsz1 + //SEG165 [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -6816,112 +7560,112 @@ print_sword: { //SEG166 [82] phi from print_sword print_sword::@4 to print_sword::@1 [phi:print_sword/print_sword::@4->print_sword::@1] b1_from_print_sword: b1_from_b4: - //SEG167 [82] phi (byte*) char_cursor#124 = (byte*) char_cursor#122 [phi:print_sword/print_sword::@4->print_sword::@1#0] -- register_copy + //SEG167 [82] phi (byte*) char_cursor#128 = (byte*) char_cursor#126 [phi:print_sword/print_sword::@4->print_sword::@1#0] -- register_copy //SEG168 [82] phi (signed word) print_sword::w#4 = (signed word) print_sword::w#3 [phi:print_sword/print_sword::@4->print_sword::@1#1] -- register_copy jmp b1 //SEG169 print_sword::@1 b1: - //SEG170 [83] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 [ char_cursor#124 print_word::w#11 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#124 print_word::w#11 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#124 print_word::w#11 ] ) -- vwuz1=vwuz2 + //SEG170 [83] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#4 [ char_cursor#128 print_word::w#13 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#128 print_word::w#13 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#128 print_word::w#13 ] ) -- vwuz1=vwuz2 lda w sta print_word.w lda w+1 sta print_word.w+1 - //SEG171 [84] call print_word param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) + //SEG171 [84] call print_word param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) //SEG172 [86] phi from print_sword::@1 to print_word [phi:print_sword::@1->print_word] print_word_from_b1: - //SEG173 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#124 [phi:print_sword::@1->print_word#0] -- register_copy - //SEG174 [86] phi (word) print_word::w#5 = (word~) print_word::w#11 [phi:print_sword::@1->print_word#1] -- register_copy + //SEG173 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#128 [phi:print_sword::@1->print_word#0] -- register_copy + //SEG174 [86] phi (word) print_word::w#6 = (word~) print_word::w#13 [phi:print_sword::@1->print_word#1] -- register_copy jsr print_word jmp breturn //SEG175 print_sword::@return breturn: - //SEG176 [85] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) + //SEG176 [85] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) rts } //SEG177 print_word print_word: { .label w = $a - //SEG178 [87] (byte) print_byte::b#1 ← > (word) print_word::w#5 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:212 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ) -- vbuz1=_hi_vwuz2 + //SEG178 [87] (byte) print_byte::b#1 ← > (word) print_word::w#6 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:238 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ) -- vbuz1=_hi_vwuz2 lda w+1 sta print_byte.b - //SEG179 [88] call print_byte param-assignment [ char_cursor#17 print_word::w#5 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_word::w#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_word::w#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_word::w#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 print_word::w#5 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_word::w#5 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 print_word::w#5 ] ) + //SEG179 [88] call print_byte param-assignment [ char_cursor#17 print_word::w#6 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_word::w#6 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 print_word::w#6 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_word::w#6 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 print_word::w#6 ] ) //SEG180 [92] phi from print_word to print_byte [phi:print_word->print_byte] print_byte_from_print_word: - //SEG181 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#128 [phi:print_word->print_byte#0] -- register_copy + //SEG181 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#132 [phi:print_word->print_byte#0] -- register_copy //SEG182 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#1 [phi:print_word->print_byte#1] -- register_copy jsr print_byte jmp b1 //SEG183 print_word::@1 b1: - //SEG184 [89] (byte) print_byte::b#2 ← < (word) print_word::w#5 [ char_cursor#17 print_byte::b#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 print_byte::b#2 ] ) -- vbuz1=_lo_vwuz2 + //SEG184 [89] (byte) print_byte::b#2 ← < (word) print_word::w#6 [ char_cursor#17 print_byte::b#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 print_byte::b#2 ] ) -- vbuz1=_lo_vwuz2 lda w sta print_byte.b - //SEG185 [90] call print_byte param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 ] ) + //SEG185 [90] call print_byte param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 ] ) //SEG186 [92] phi from print_word::@1 to print_byte [phi:print_word::@1->print_byte] print_byte_from_b1: - //SEG187 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#17 [phi:print_word::@1->print_byte#0] -- register_copy + //SEG187 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#17 [phi:print_word::@1->print_byte#0] -- register_copy //SEG188 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#2 [phi:print_word::@1->print_byte#1] -- register_copy jsr print_byte jmp breturn //SEG189 print_word::@return breturn: - //SEG190 [91] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 ] ) + //SEG190 [91] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 ] ) rts } //SEG191 print_byte print_byte: { - .label _0 = $44 - .label _2 = $45 + .label _0 = $4a + .label _2 = $4b .label b = $c - //SEG192 [93] (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#129 print_byte::$0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] ) -- vbuz1=vbuz2_ror_4 + //SEG192 [93] (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#133 print_byte::$0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] ) -- vbuz1=vbuz2_ror_4 lda b lsr lsr lsr lsr sta _0 - //SEG193 [94] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#129 print_char::ch#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG193 [94] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#133 print_char::ch#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _0 lda hextab,y sta print_char.ch - //SEG194 [95] call print_char param-assignment [ char_cursor#17 print_byte::b#5 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] ) + //SEG194 [95] call print_char param-assignment [ char_cursor#17 print_byte::b#5 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] ) //SEG195 [100] phi from print_byte to print_char [phi:print_byte->print_char] print_char_from_print_byte: - //SEG196 [100] phi (byte*) char_cursor#78 = (byte*) char_cursor#129 [phi:print_byte->print_char#0] -- register_copy + //SEG196 [100] phi (byte*) char_cursor#80 = (byte*) char_cursor#133 [phi:print_byte->print_char#0] -- register_copy //SEG197 [100] phi (byte) print_char::ch#4 = (byte) print_char::ch#2 [phi:print_byte->print_char#1] -- register_copy jsr print_char jmp b1 //SEG198 print_byte::@1 b1: - //SEG199 [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] ) -- vbuz1=vbuz2_band_vbuc1 + //SEG199 [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] ) -- vbuz1=vbuz2_band_vbuc1 lda #$f and b sta _2 - //SEG200 [97] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#17 print_char::ch#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG200 [97] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#17 print_char::ch#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] ) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _2 lda hextab,y sta print_char.ch - //SEG201 [98] call print_char param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] ) + //SEG201 [98] call print_char param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] ) //SEG202 [100] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] print_char_from_b1: - //SEG203 [100] phi (byte*) char_cursor#78 = (byte*) char_cursor#17 [phi:print_byte::@1->print_char#0] -- register_copy + //SEG203 [100] phi (byte*) char_cursor#80 = (byte*) char_cursor#17 [phi:print_byte::@1->print_char#0] -- register_copy //SEG204 [100] phi (byte) print_char::ch#4 = (byte) print_char::ch#3 [phi:print_byte::@1->print_char#1] -- register_copy jsr print_char jmp breturn //SEG205 print_byte::@return breturn: - //SEG206 [99] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] ) + //SEG206 [99] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] ) rts hextab: .text "0123456789abcdef" } //SEG207 print_char print_char: { .label ch = $d - //SEG208 [101] *((byte*) char_cursor#78) ← (byte) print_char::ch#4 [ char_cursor#78 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] ) -- _deref_pbuz1=vbuz2 + //SEG208 [101] *((byte*) char_cursor#80) ← (byte) print_char::ch#4 [ char_cursor#80 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] ) -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (char_cursor),y - //SEG209 [102] (byte*) char_cursor#17 ← ++ (byte*) char_cursor#78 [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) -- pbuz1=_inc_pbuz1 + //SEG209 [102] (byte*) char_cursor#17 ← ++ (byte*) char_cursor#80 [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) -- pbuz1=_inc_pbuz1 inc char_cursor bne !+ inc char_cursor+1 @@ -6929,13 +7673,13 @@ print_char: { jmp breturn //SEG210 print_char::@return breturn: - //SEG211 [103] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) + //SEG211 [103] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) rts } //SEG212 print_sbyte print_sbyte: { .label b = $10 - //SEG213 [105] if((signed byte) print_sbyte::b#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#122 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] ) -- vbsz1_ge_0_then_la1 + //SEG213 [105] if((signed byte) print_sbyte::b#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#126 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] ) -- vbsz1_ge_0_then_la1 lda b cmp #0 bpl b1_from_print_sbyte @@ -6944,10 +7688,10 @@ print_sbyte: { jmp b2 //SEG215 print_sbyte::@2 b2: - //SEG216 [107] call print_char param-assignment [ char_cursor#17 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] ) + //SEG216 [107] call print_char param-assignment [ char_cursor#17 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] ) //SEG217 [100] phi from print_sbyte::@2 to print_char [phi:print_sbyte::@2->print_char] print_char_from_b2: - //SEG218 [100] phi (byte*) char_cursor#78 = (byte*) char_cursor#122 [phi:print_sbyte::@2->print_char#0] -- register_copy + //SEG218 [100] phi (byte*) char_cursor#80 = (byte*) char_cursor#126 [phi:print_sbyte::@2->print_char#0] -- register_copy //SEG219 [100] phi (byte) print_char::ch#4 = (byte) '-' [phi:print_sbyte::@2->print_char#1] -- vbuz1=vbuc1 lda #'-' sta print_char.ch @@ -6955,7 +7699,7 @@ print_sbyte: { jmp b4 //SEG220 print_sbyte::@4 b4: - //SEG221 [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) -- vbsz1=_neg_vbsz1 + //SEG221 [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -6964,49 +7708,49 @@ print_sbyte: { //SEG222 [109] 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: - //SEG223 [109] phi (byte*) char_cursor#126 = (byte*) char_cursor#122 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#0] -- register_copy + //SEG223 [109] phi (byte*) char_cursor#130 = (byte*) char_cursor#126 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#0] -- register_copy //SEG224 [109] phi (signed byte) print_sbyte::b#4 = (signed byte) print_sbyte::b#3 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#1] -- register_copy jmp b1 //SEG225 print_sbyte::@1 b1: - //SEG226 [110] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#4 [ print_byte::b#9 char_cursor#126 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#126 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#126 ] ) -- vbuz1=vbuz2 + //SEG226 [110] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#4 [ print_byte::b#9 char_cursor#130 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#130 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#130 ] ) -- vbuz1=vbuz2 lda b sta print_byte.b - //SEG227 [111] call print_byte param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG227 [111] call print_byte param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) //SEG228 [92] phi from print_sbyte::@1 to print_byte [phi:print_sbyte::@1->print_byte] print_byte_from_b1: - //SEG229 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#126 [phi:print_sbyte::@1->print_byte#0] -- register_copy + //SEG229 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#130 [phi:print_sbyte::@1->print_byte#0] -- register_copy //SEG230 [92] phi (byte) print_byte::b#5 = (byte~) print_byte::b#9 [phi:print_sbyte::@1->print_byte#1] -- register_copy jsr print_byte jmp breturn //SEG231 print_sbyte::@return breturn: - //SEG232 [112] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG232 [112] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) rts } //SEG233 mulf8s mulf8s: { - .label _6 = $48 - .label _12 = $4a - .label _16 = $49 - .label _17 = $4b + .label _6 = $4e + .label _12 = $50 + .label _16 = $4f + .label _17 = $51 .label m = $11 - .label a = $38 - .label b = $39 - .label return = $3a - //SEG234 [113] (byte~) mulf8u::a#3 ← (byte)(signed byte) mulf8s::a#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 ] ) -- vbuz1=vbuz2 + .label a = $3e + .label b = $3f + .label return = $40 + //SEG234 [113] (byte~) mulf8u::a#4 ← (byte)(signed byte) mulf8s::a#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 ] ) -- vbuz1=vbuz2 lda a sta mulf8u.a - //SEG235 [114] (byte~) mulf8u::b#3 ← (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 mulf8u::b#3 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 mulf8u::b#3 ] ) -- vbuz1=vbuz2 + //SEG235 [114] (byte~) mulf8u::b#4 ← (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 mulf8u::b#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 mulf8u::b#4 ] ) -- vbuz1=vbuz2 lda b sta mulf8u.b - //SEG236 [115] call mulf8u param-assignment [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ) + //SEG236 [115] call mulf8u param-assignment [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ) //SEG237 [129] phi from mulf8s to mulf8u [phi:mulf8s->mulf8u] mulf8u_from_mulf8s: - //SEG238 [129] phi (byte) mulf8u::b#2 = (byte~) mulf8u::b#3 [phi:mulf8s->mulf8u#0] -- register_copy - //SEG239 [129] phi (byte) mulf8u::a#2 = (byte~) mulf8u::a#3 [phi:mulf8s->mulf8u#1] -- register_copy + //SEG238 [129] phi (byte) mulf8u::b#2 = (byte~) mulf8u::b#4 [phi:mulf8s->mulf8u#0] -- register_copy + //SEG239 [129] phi (byte) mulf8u::a#2 = (byte~) mulf8u::a#4 [phi:mulf8s->mulf8u#1] -- register_copy jsr mulf8u - //SEG240 [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) -- vwuz1=vwuz2 + //SEG240 [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) -- vwuz1=vwuz2 lda mulf8u.return sta mulf8u.return_2 lda mulf8u.return+1 @@ -7014,27 +7758,27 @@ mulf8s: { jmp b6 //SEG241 mulf8s::@6 b6: - //SEG242 [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) -- vwuz1=vwuz2 + //SEG242 [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) -- vwuz1=vwuz2 lda mulf8u.return_2 sta m lda mulf8u.return_2+1 sta m+1 - //SEG243 [118] if((signed byte) mulf8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@1 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) -- vbsz1_ge_0_then_la1 + //SEG243 [118] if((signed byte) mulf8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@1 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) -- vbsz1_ge_0_then_la1 lda a cmp #0 bpl b1_from_b6 jmp b3 //SEG244 mulf8s::@3 b3: - //SEG245 [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) -- vbuz1=_hi_vwuz2 + //SEG245 [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) -- vbuz1=_hi_vwuz2 lda m+1 sta _6 - //SEG246 [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) -- vbuz1=vbuz2_minus_vbuz3 + //SEG246 [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) -- vbuz1=vbuz2_minus_vbuz3 lda _6 sec sbc b sta _16 - //SEG247 [121] (word) mulf8s::m#1 ← (word) mulf8s::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ) -- vwuz1=vwuz1_sethi_vbuz2 + //SEG247 [121] (word) mulf8s::m#1 ← (word) mulf8s::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ) -- vwuz1=vwuz1_sethi_vbuz2 lda _16 sta m+1 //SEG248 [122] phi from mulf8s::@3 mulf8s::@6 to mulf8s::@1 [phi:mulf8s::@3/mulf8s::@6->mulf8s::@1] @@ -7044,22 +7788,22 @@ mulf8s: { jmp b1 //SEG250 mulf8s::@1 b1: - //SEG251 [123] if((signed byte) mulf8s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@2 [ mulf8s::a#0 mulf8s::m#5 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 ] ) -- vbsz1_ge_0_then_la1 + //SEG251 [123] if((signed byte) mulf8s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@2 [ mulf8s::a#0 mulf8s::m#5 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 ] ) -- vbsz1_ge_0_then_la1 lda b cmp #0 bpl b2_from_b1 jmp b4 //SEG252 mulf8s::@4 b4: - //SEG253 [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) -- vbuz1=_hi_vwuz2 + //SEG253 [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) -- vbuz1=_hi_vwuz2 lda m+1 sta _12 - //SEG254 [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) -- vbuz1=vbuz2_minus_vbuz3 + //SEG254 [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) -- vbuz1=vbuz2_minus_vbuz3 lda _12 sec sbc a sta _17 - //SEG255 [126] (word) mulf8s::m#2 ← (word) mulf8s::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 [ mulf8s::m#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#2 ] ) -- vwuz1=vwuz1_sethi_vbuz2 + //SEG255 [126] (word) mulf8s::m#2 ← (word) mulf8s::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 [ mulf8s::m#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#2 ] ) -- vwuz1=vwuz1_sethi_vbuz2 lda _17 sta m+1 //SEG256 [127] phi from mulf8s::@1 mulf8s::@4 to mulf8s::@2 [phi:mulf8s::@1/mulf8s::@4->mulf8s::@2] @@ -7072,22 +7816,22 @@ mulf8s: { jmp breturn //SEG259 mulf8s::@return breturn: - //SEG260 [128] return [ mulf8s::m#4 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) + //SEG260 [128] return [ mulf8s::m#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) rts } //SEG261 mulf8u mulf8u: { .label memA = $fe .label memB = $ff - .label return = $4c - .label return_2 = $46 + .label return = $52 + .label return_2 = $4c .label a = $13 .label b = $14 - .label return_3 = $54 - //SEG262 [130] *((const byte*) mulf8u::memA#0) ← (byte) mulf8u::a#2 [ mulf8u::b#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::b#2 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::b#2 ] ) -- _deref_pbuc1=vbuz1 + .label return_3 = $5a + //SEG262 [130] *((const byte*) mulf8u::memA#0) ← (byte) mulf8u::a#2 [ mulf8u::b#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::b#2 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::b#2 ] ) -- _deref_pbuc1=vbuz1 lda a sta memA - //SEG263 [131] *((const byte*) mulf8u::memB#0) ← (byte) mulf8u::b#2 [ ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) -- _deref_pbuc1=vbuz1 + //SEG263 [131] *((const byte*) mulf8u::memB#0) ← (byte) mulf8u::b#2 [ ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) -- _deref_pbuc1=vbuz1 lda b sta memB //SEG264 asm { ldamemA stasm1+1 stasm3+1 eor#$ff stasm2+1 stasm4+1 ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x stamemA sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } @@ -7109,7 +7853,7 @@ mulf8u: { sm4: sbc mulf_sqr2_hi,x sta memB - //SEG265 [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#0 ] ) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG265 [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#0 ] ) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda memA sta return lda memB @@ -7117,7 +7861,7 @@ mulf8u: { jmp breturn //SEG266 mulf8u::@return breturn: - //SEG267 [134] return [ mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#0 ] ) + //SEG267 [134] return [ mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#0 ] ) rts } //SEG268 muls8s @@ -7126,10 +7870,10 @@ muls8s: { .label i = $15 .label return = $16 .label j = $18 - .label a = $32 - .label b = $33 - .label return_2 = $34 - //SEG269 [135] if((signed byte) muls8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@1 [ muls8s::a#0 muls8s::b#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) -- vbsz1_ge_0_then_la1 + .label a = $38 + .label b = $39 + .label return_2 = $3a + //SEG269 [135] if((signed byte) muls8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@1 [ muls8s::a#0 muls8s::b#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) -- vbsz1_ge_0_then_la1 lda a cmp #0 bpl b1 @@ -7151,7 +7895,7 @@ muls8s: { jmp b2 //SEG276 muls8s::@2 b2: - //SEG277 [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) -- vwsz1=vwsz1_minus_vbsz2 + //SEG277 [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) -- vwsz1=vwsz1_minus_vbsz2 lda b sta $fe ora #$7f @@ -7166,9 +7910,9 @@ muls8s: { lda m+1 sbc $ff sta m+1 - //SEG278 [138] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) -- vbsz1=_dec_vbsz1 + //SEG278 [138] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) -- vbsz1=_dec_vbsz1 dec i - //SEG279 [139] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) -- vbsz1_neq_vbsz2_then_la1 + //SEG279 [139] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) -- vbsz1_neq_vbsz2_then_la1 lda i cmp a bne b2_from_b2 @@ -7190,11 +7934,11 @@ muls8s: { jmp breturn //SEG285 muls8s::@return breturn: - //SEG286 [141] return [ muls8s::return#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::return#0 ] ) + //SEG286 [141] return [ muls8s::return#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::return#0 ] ) rts //SEG287 muls8s::@1 b1: - //SEG288 [142] if((signed byte) muls8s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@3 [ muls8s::a#0 muls8s::b#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) -- vbsz1_le_0_then_la1 + //SEG288 [142] if((signed byte) muls8s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@3 [ muls8s::a#0 muls8s::b#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) -- vbsz1_le_0_then_la1 lda a cmp #1 bmi b3_from_b1 @@ -7216,7 +7960,7 @@ muls8s: { jmp b5 //SEG295 muls8s::@5 b5: - //SEG296 [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) -- vwsz1=vwsz1_plus_vbsz2 + //SEG296 [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) -- vwsz1=vwsz1_plus_vbsz2 lda b sta $fe ora #$7f @@ -7231,337 +7975,515 @@ muls8s: { lda m+1 adc $ff sta m+1 - //SEG297 [145] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) -- vbsz1=_inc_vbsz1 + //SEG297 [145] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) -- vbsz1=_inc_vbsz1 inc j - //SEG298 [146] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@5 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) -- vbsz1_neq_vbsz2_then_la1 + //SEG298 [146] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@5 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) -- vbsz1_neq_vbsz2_then_la1 lda j cmp a bne b5_from_b5 jmp b3_from_b5 } -//SEG299 multiply_results_compare -multiply_results_compare: { - .label ms = $52 - .label ma = $56 +//SEG299 mul8u_slowfast_compare +mul8u_slowfast_compare: { + .label ms = $58 + .label mf = $5c + .label mn = $61 .label b = $1a .label a = $19 - //SEG300 [148] phi from multiply_results_compare to multiply_results_compare::@1 [phi:multiply_results_compare->multiply_results_compare::@1] - b1_from_multiply_results_compare: - //SEG301 [148] phi (byte) multiply_results_compare::a#6 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:multiply_results_compare->multiply_results_compare::@1#0] -- vbuz1=vbuc1 + .label ok = $1b + //SEG300 [148] phi from mul8u_slowfast_compare to mul8u_slowfast_compare::@1 [phi:mul8u_slowfast_compare->mul8u_slowfast_compare::@1] + b1_from_mul8u_slowfast_compare: + //SEG301 [148] phi (byte) mul8u_slowfast_compare::a#7 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u_slowfast_compare->mul8u_slowfast_compare::@1#0] -- vbuz1=vbuc1 lda #0 sta a jmp b1 - //SEG302 [148] phi from multiply_results_compare::@6 to multiply_results_compare::@1 [phi:multiply_results_compare::@6->multiply_results_compare::@1] - b1_from_b6: - //SEG303 [148] phi (byte) multiply_results_compare::a#6 = (byte) multiply_results_compare::a#1 [phi:multiply_results_compare::@6->multiply_results_compare::@1#0] -- register_copy + //SEG302 [148] phi from mul8u_slowfast_compare::@10 to mul8u_slowfast_compare::@1 [phi:mul8u_slowfast_compare::@10->mul8u_slowfast_compare::@1] + b1_from_b10: + //SEG303 [148] phi (byte) mul8u_slowfast_compare::a#7 = (byte) mul8u_slowfast_compare::a#1 [phi:mul8u_slowfast_compare::@10->mul8u_slowfast_compare::@1#0] -- register_copy jmp b1 - //SEG304 multiply_results_compare::@1 + //SEG304 mul8u_slowfast_compare::@1 b1: - //SEG305 [149] phi from multiply_results_compare::@1 to multiply_results_compare::@2 [phi:multiply_results_compare::@1->multiply_results_compare::@2] + //SEG305 [149] phi from mul8u_slowfast_compare::@1 to mul8u_slowfast_compare::@2 [phi:mul8u_slowfast_compare::@1->mul8u_slowfast_compare::@2] b2_from_b1: - //SEG306 [149] phi (byte) multiply_results_compare::b#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:multiply_results_compare::@1->multiply_results_compare::@2#0] -- vbuz1=vbuc1 + //SEG306 [149] phi (byte) mul8u_slowfast_compare::b#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u_slowfast_compare::@1->mul8u_slowfast_compare::@2#0] -- vbuz1=vbuc1 lda #0 sta b jmp b2 - //SEG307 [149] phi from multiply_results_compare::@3 to multiply_results_compare::@2 [phi:multiply_results_compare::@3->multiply_results_compare::@2] - b2_from_b3: - //SEG308 [149] phi (byte) multiply_results_compare::b#2 = (byte) multiply_results_compare::b#1 [phi:multiply_results_compare::@3->multiply_results_compare::@2#0] -- register_copy + //SEG307 [149] phi from mul8u_slowfast_compare::@5 to mul8u_slowfast_compare::@2 [phi:mul8u_slowfast_compare::@5->mul8u_slowfast_compare::@2] + b2_from_b5: + //SEG308 [149] phi (byte) mul8u_slowfast_compare::b#10 = (byte) mul8u_slowfast_compare::b#1 [phi:mul8u_slowfast_compare::@5->mul8u_slowfast_compare::@2#0] -- register_copy jmp b2 - //SEG309 multiply_results_compare::@2 + //SEG309 mul8u_slowfast_compare::@2 b2: - //SEG310 [150] (byte) muls8u::a#0 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 ] ) -- vbuz1=vbuz2 + //SEG310 [150] (byte) muls8u::a#0 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 ] ) -- vbuz1=vbuz2 lda a sta muls8u.a - //SEG311 [151] (byte) muls8u::b#0 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ) -- vbuz1=vbuz2 + //SEG311 [151] (byte) muls8u::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ) -- vbuz1=vbuz2 lda b sta muls8u.b - //SEG312 [152] call muls8u param-assignment [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ) + //SEG312 [152] call muls8u param-assignment [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ) jsr muls8u - //SEG313 [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ) -- vwuz1=vwuz2 + //SEG313 [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ) -- vwuz1=vwuz2 lda muls8u.return sta muls8u.return_2 lda muls8u.return+1 sta muls8u.return_2+1 - jmp b8 - //SEG314 multiply_results_compare::@8 - b8: - //SEG315 [154] (word) multiply_results_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) -- vwuz1=vwuz2 + jmp b12 + //SEG314 mul8u_slowfast_compare::@12 + b12: + //SEG315 [154] (word) mul8u_slowfast_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) -- vwuz1=vwuz2 lda muls8u.return_2 sta ms lda muls8u.return_2+1 sta ms+1 - //SEG316 [155] (byte) mulf8u::a#1 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 mulf8u::a#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) -- vbuz1=vbuz2 + //SEG316 [155] (byte) mulf8u::a#1 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) -- vbuz1=vbuz2 lda a sta mulf8u.a - //SEG317 [156] (byte) mulf8u::b#1 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) -- vbuz1=vbuz2 + //SEG317 [156] (byte) mulf8u::b#1 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) -- vbuz1=vbuz2 lda b sta mulf8u.b - //SEG318 [157] call mulf8u param-assignment [ line_cursor#10 char_cursor#30 mulf8u::return#0 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::return#0 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - //SEG319 [129] phi from multiply_results_compare::@8 to mulf8u [phi:multiply_results_compare::@8->mulf8u] - mulf8u_from_b8: - //SEG320 [129] phi (byte) mulf8u::b#2 = (byte) mulf8u::b#1 [phi:multiply_results_compare::@8->mulf8u#0] -- register_copy - //SEG321 [129] phi (byte) mulf8u::a#2 = (byte) mulf8u::a#1 [phi:multiply_results_compare::@8->mulf8u#1] -- register_copy + //SEG318 [157] call mulf8u param-assignment [ line_cursor#10 char_cursor#30 mulf8u::return#0 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::return#0 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + //SEG319 [129] phi from mul8u_slowfast_compare::@12 to mulf8u [phi:mul8u_slowfast_compare::@12->mulf8u] + mulf8u_from_b12: + //SEG320 [129] phi (byte) mulf8u::b#2 = (byte) mulf8u::b#1 [phi:mul8u_slowfast_compare::@12->mulf8u#0] -- register_copy + //SEG321 [129] phi (byte) mulf8u::a#2 = (byte) mulf8u::a#1 [phi:mul8u_slowfast_compare::@12->mulf8u#1] -- register_copy jsr mulf8u - //SEG322 [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ) -- vwuz1=vwuz2 + //SEG322 [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ) -- vwuz1=vwuz2 lda mulf8u.return sta mulf8u.return_3 lda mulf8u.return+1 sta mulf8u.return_3+1 - jmp b9 - //SEG323 multiply_results_compare::@9 - b9: - //SEG324 [159] (word) multiply_results_compare::ma#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) -- vwuz1=vwuz2 + jmp b13 + //SEG323 mul8u_slowfast_compare::@13 + b13: + //SEG324 [159] (word) mul8u_slowfast_compare::mf#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ) -- vwuz1=vwuz2 lda mulf8u.return_3 - sta ma + sta mf lda mulf8u.return_3+1 - sta ma+1 - //SEG325 [160] if((word) multiply_results_compare::ms#0==(word) multiply_results_compare::ma#0) goto multiply_results_compare::@3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) -- vwuz1_eq_vwuz2_then_la1 + sta mf+1 + //SEG325 [160] (byte) mul8u::a#1 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 ] ) -- vbuz1=vbuz2 + lda a + sta mul8u.a + //SEG326 [161] (byte) mul8u::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::b#0 ] ) -- vbuz1=vbuz2 + lda b + sta mul8u.b + //SEG327 [162] call mul8u param-assignment [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ) + jsr mul8u + //SEG328 [163] (word) mul8u::return#2 ← (word) mul8u::res#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ) -- vwuz1=vwuz2 + lda mul8u.res + sta mul8u.return + lda mul8u.res+1 + sta mul8u.return+1 + jmp b14 + //SEG329 mul8u_slowfast_compare::@14 + b14: + //SEG330 [164] (word) mul8u_slowfast_compare::mn#0 ← (word) mul8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) -- vwuz1=vwuz2 + lda mul8u.return + sta mn + lda mul8u.return+1 + sta mn+1 + //SEG331 [165] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mf#0) goto mul8u_slowfast_compare::@3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) -- vwuz1_eq_vwuz2_then_la1 lda ms - cmp ma + cmp mf bne !+ lda ms+1 - cmp ma+1 - beq b3 + cmp mf+1 + beq b3_from_b14 !: + //SEG332 [166] phi from mul8u_slowfast_compare::@14 to mul8u_slowfast_compare::@6 [phi:mul8u_slowfast_compare::@14->mul8u_slowfast_compare::@6] + b6_from_b14: + jmp b6 + //SEG333 mul8u_slowfast_compare::@6 + b6: + //SEG334 [167] phi from mul8u_slowfast_compare::@6 to mul8u_slowfast_compare::@3 [phi:mul8u_slowfast_compare::@6->mul8u_slowfast_compare::@3] + b3_from_b6: + //SEG335 [167] phi (byte) mul8u_slowfast_compare::ok#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u_slowfast_compare::@6->mul8u_slowfast_compare::@3#0] -- vbuz1=vbuc1 + lda #0 + sta ok + jmp b3 + //SEG336 [167] phi from mul8u_slowfast_compare::@14 to mul8u_slowfast_compare::@3 [phi:mul8u_slowfast_compare::@14->mul8u_slowfast_compare::@3] + b3_from_b14: + //SEG337 [167] phi (byte) mul8u_slowfast_compare::ok#4 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mul8u_slowfast_compare::@14->mul8u_slowfast_compare::@3#0] -- vbuz1=vbuc1 + lda #1 + sta ok + jmp b3 + //SEG338 mul8u_slowfast_compare::@3 + b3: + //SEG339 [168] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mn#0) goto mul8u_slowfast_compare::@20 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ) -- vwuz1_eq_vwuz2_then_la1 + lda ms + cmp mn + bne !+ + lda ms+1 + cmp mn+1 + beq b20_from_b3 + !: + //SEG340 [169] phi from mul8u_slowfast_compare::@3 to mul8u_slowfast_compare::@4 [phi:mul8u_slowfast_compare::@3->mul8u_slowfast_compare::@4] + b4_from_b3: + //SEG341 [169] phi (byte) mul8u_slowfast_compare::ok#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u_slowfast_compare::@3->mul8u_slowfast_compare::@4#0] -- vbuz1=vbuc1 + lda #0 + sta ok jmp b4 - //SEG326 multiply_results_compare::@4 + //SEG342 mul8u_slowfast_compare::@4 b4: - //SEG327 [161] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) -- _deref_pbuc1=vbuc2 + //SEG343 [170] if((byte) mul8u_slowfast_compare::ok#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@5 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) -- vbuz1_neq_0_then_la1 + lda ok + bne b5 + jmp b8 + //SEG344 mul8u_slowfast_compare::@8 + b8: + //SEG345 [171] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG328 [162] (byte) multiply_error::a#0 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 ] ) -- vbuz1=vbuz2 + //SEG346 [172] (byte) multiply_error::a#0 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 ] ) -- vbuz1=vbuz2 lda a sta multiply_error.a - //SEG329 [163] (byte) multiply_error::b#0 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 ] ) -- vbuz1=vbuz2 + //SEG347 [173] (byte) multiply_error::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 ] ) -- vbuz1=vbuz2 lda b sta multiply_error.b - //SEG330 [164] (word) multiply_error::ms#0 ← (word) multiply_results_compare::ms#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) -- vwuz1=vwuz2 + //SEG348 [174] (word) multiply_error::ms#0 ← (word) mul8u_slowfast_compare::ms#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) -- vwuz1=vwuz2 lda ms sta multiply_error.ms lda ms+1 sta multiply_error.ms+1 - //SEG331 [165] (word) multiply_error::ma#0 ← (word) multiply_results_compare::ma#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) -- vwuz1=vwuz2 - lda ma - sta multiply_error.ma - lda ma+1 - sta multiply_error.ma+1 - //SEG332 [166] call multiply_error param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) - //SEG333 [176] phi from multiply_results_compare::@4 to multiply_error [phi:multiply_results_compare::@4->multiply_error] - multiply_error_from_b4: + //SEG349 [175] (word) multiply_error::mn#0 ← (word) mul8u_slowfast_compare::mn#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ) -- vwuz1=vwuz2 + lda mn + sta multiply_error.mn + lda mn+1 + sta multiply_error.mn+1 + //SEG350 [176] (word) multiply_error::mf#0 ← (word) mul8u_slowfast_compare::mf#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) -- vwuz1=vwuz2 + lda mf + sta multiply_error.mf + lda mf+1 + sta multiply_error.mf+1 + //SEG351 [177] call multiply_error param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) + //SEG352 [188] phi from mul8u_slowfast_compare::@8 to multiply_error [phi:mul8u_slowfast_compare::@8->multiply_error] + multiply_error_from_b8: jsr multiply_error jmp breturn - //SEG334 multiply_results_compare::@return + //SEG353 mul8u_slowfast_compare::@return breturn: - //SEG335 [167] return [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) + //SEG354 [178] return [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) rts - //SEG336 multiply_results_compare::@3 - b3: - //SEG337 [168] (byte) multiply_results_compare::b#1 ← ++ (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ) -- vbuz1=_inc_vbuz1 + //SEG355 mul8u_slowfast_compare::@5 + b5: + //SEG356 [179] (byte) mul8u_slowfast_compare::b#1 ← ++ (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ) -- vbuz1=_inc_vbuz1 inc b - //SEG338 [169] if((byte) multiply_results_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto multiply_results_compare::@2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ) -- vbuz1_neq_0_then_la1 + //SEG357 [180] if((byte) mul8u_slowfast_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ) -- vbuz1_neq_0_then_la1 lda b - bne b2_from_b3 - jmp b6 - //SEG339 multiply_results_compare::@6 - b6: - //SEG340 [170] (byte) multiply_results_compare::a#1 ← ++ (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ) -- vbuz1=_inc_vbuz1 + bne b2_from_b5 + jmp b10 + //SEG358 mul8u_slowfast_compare::@10 + b10: + //SEG359 [181] (byte) mul8u_slowfast_compare::a#1 ← ++ (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ) -- vbuz1=_inc_vbuz1 inc a - //SEG341 [171] if((byte) multiply_results_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto multiply_results_compare::@1 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ) -- vbuz1_neq_0_then_la1 + //SEG360 [182] if((byte) mul8u_slowfast_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@1 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ) -- vbuz1_neq_0_then_la1 lda a - bne b1_from_b6 - //SEG342 [172] phi from multiply_results_compare::@6 to multiply_results_compare::@7 [phi:multiply_results_compare::@6->multiply_results_compare::@7] - b7_from_b6: - jmp b7 - //SEG343 multiply_results_compare::@7 - b7: - //SEG344 [173] call print_str param-assignment [ char_cursor#122 line_cursor#10 ] ( main:2::multiply_results_compare:13 [ char_cursor#122 line_cursor#10 ] ) - //SEG345 [51] phi from multiply_results_compare::@7 to print_str [phi:multiply_results_compare::@7->print_str] - print_str_from_b7: - //SEG346 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#30 [phi:multiply_results_compare::@7->print_str#0] -- register_copy - //SEG347 [51] phi (byte*) print_str::str#16 = (const string) multiply_results_compare::str [phi:multiply_results_compare::@7->print_str#1] -- pbuz1=pbuc1 + bne b1_from_b10 + //SEG361 [183] phi from mul8u_slowfast_compare::@10 to mul8u_slowfast_compare::@11 [phi:mul8u_slowfast_compare::@10->mul8u_slowfast_compare::@11] + b11_from_b10: + jmp b11 + //SEG362 mul8u_slowfast_compare::@11 + b11: + //SEG363 [184] call print_str param-assignment [ char_cursor#126 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13 [ char_cursor#126 line_cursor#10 ] ) + //SEG364 [51] phi from mul8u_slowfast_compare::@11 to print_str [phi:mul8u_slowfast_compare::@11->print_str] + print_str_from_b11: + //SEG365 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#30 [phi:mul8u_slowfast_compare::@11->print_str#0] -- register_copy + //SEG366 [51] phi (byte*) print_str::str#17 = (const string) mul8u_slowfast_compare::str [phi:mul8u_slowfast_compare::@11->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str - //SEG348 [174] phi from multiply_results_compare::@7 to multiply_results_compare::@11 [phi:multiply_results_compare::@7->multiply_results_compare::@11] - b11_from_b7: - jmp b11 - //SEG349 multiply_results_compare::@11 - b11: - //SEG350 [175] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) - //SEG351 [46] phi from multiply_results_compare::@11 to print_ln [phi:multiply_results_compare::@11->print_ln] - print_ln_from_b11: - //SEG352 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#122 [phi:multiply_results_compare::@11->print_ln#0] -- register_copy - //SEG353 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#10 [phi:multiply_results_compare::@11->print_ln#1] -- register_copy + //SEG367 [185] phi from mul8u_slowfast_compare::@11 to mul8u_slowfast_compare::@16 [phi:mul8u_slowfast_compare::@11->mul8u_slowfast_compare::@16] + b16_from_b11: + jmp b16 + //SEG368 mul8u_slowfast_compare::@16 + b16: + //SEG369 [186] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) + //SEG370 [46] phi from mul8u_slowfast_compare::@16 to print_ln [phi:mul8u_slowfast_compare::@16->print_ln] + print_ln_from_b16: + //SEG371 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#126 [phi:mul8u_slowfast_compare::@16->print_ln#0] -- register_copy + //SEG372 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#10 [phi:mul8u_slowfast_compare::@16->print_ln#1] -- register_copy jsr print_ln jmp breturn + //SEG373 [187] phi from mul8u_slowfast_compare::@3 to mul8u_slowfast_compare::@20 [phi:mul8u_slowfast_compare::@3->mul8u_slowfast_compare::@20] + b20_from_b3: + jmp b20 + //SEG374 mul8u_slowfast_compare::@20 + b20: + //SEG375 [169] phi from mul8u_slowfast_compare::@20 to mul8u_slowfast_compare::@4 [phi:mul8u_slowfast_compare::@20->mul8u_slowfast_compare::@4] + b4_from_b20: + //SEG376 [169] phi (byte) mul8u_slowfast_compare::ok#3 = (byte) mul8u_slowfast_compare::ok#4 [phi:mul8u_slowfast_compare::@20->mul8u_slowfast_compare::@4#0] -- register_copy + jmp b4 str: .text "multiply results match!@" } -//SEG354 multiply_error +//SEG377 multiply_error multiply_error: { - .label a = $58 - .label b = $59 - .label ms = $5a - .label ma = $5c - //SEG355 [177] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG356 [51] phi from multiply_error to print_str [phi:multiply_error->print_str] + .label a = $63 + .label b = $64 + .label ms = $65 + .label mn = $67 + .label mf = $69 + //SEG378 [189] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG379 [51] phi from multiply_error to print_str [phi:multiply_error->print_str] print_str_from_multiply_error: - //SEG357 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#30 [phi:multiply_error->print_str#0] -- register_copy - //SEG358 [51] phi (byte*) print_str::str#16 = (const string) multiply_error::str [phi:multiply_error->print_str#1] -- pbuz1=pbuc1 + //SEG380 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#30 [phi:multiply_error->print_str#0] -- register_copy + //SEG381 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str [phi:multiply_error->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str jmp b1 - //SEG359 multiply_error::@1 + //SEG382 multiply_error::@1 b1: - //SEG360 [178] (byte) print_byte::b#3 ← (byte) multiply_error::a#0 [ char_cursor#122 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) -- vbuz1=vbuz2 + //SEG383 [190] (byte) print_byte::b#3 ← (byte) multiply_error::a#0 [ char_cursor#126 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) -- vbuz1=vbuz2 lda a sta print_byte.b - //SEG361 [179] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG362 [92] phi from multiply_error::@1 to print_byte [phi:multiply_error::@1->print_byte] + //SEG384 [191] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG385 [92] phi from multiply_error::@1 to print_byte [phi:multiply_error::@1->print_byte] print_byte_from_b1: - //SEG363 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#122 [phi:multiply_error::@1->print_byte#0] -- register_copy - //SEG364 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#3 [phi:multiply_error::@1->print_byte#1] -- register_copy + //SEG386 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#126 [phi:multiply_error::@1->print_byte#0] -- register_copy + //SEG387 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#3 [phi:multiply_error::@1->print_byte#1] -- register_copy jsr print_byte - //SEG365 [180] phi from multiply_error::@1 to multiply_error::@2 [phi:multiply_error::@1->multiply_error::@2] + //SEG388 [192] phi from multiply_error::@1 to multiply_error::@2 [phi:multiply_error::@1->multiply_error::@2] b2_from_b1: jmp b2 - //SEG366 multiply_error::@2 + //SEG389 multiply_error::@2 b2: - //SEG367 [181] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG368 [51] phi from multiply_error::@2 to print_str [phi:multiply_error::@2->print_str] + //SEG390 [193] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG391 [51] phi from multiply_error::@2 to print_str [phi:multiply_error::@2->print_str] print_str_from_b2: - //SEG369 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:multiply_error::@2->print_str#0] -- register_copy - //SEG370 [51] phi (byte*) print_str::str#16 = (const string) multiply_error::str1 [phi:multiply_error::@2->print_str#1] -- pbuz1=pbuc1 + //SEG392 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:multiply_error::@2->print_str#0] -- register_copy + //SEG393 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str1 [phi:multiply_error::@2->print_str#1] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str jmp b3 - //SEG371 multiply_error::@3 + //SEG394 multiply_error::@3 b3: - //SEG372 [182] (byte) print_byte::b#4 ← (byte) multiply_error::b#0 [ char_cursor#122 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::ma#0 ] ) -- vbuz1=vbuz2 + //SEG395 [194] (byte) print_byte::b#4 ← (byte) multiply_error::b#0 [ char_cursor#126 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) -- vbuz1=vbuz2 lda b sta print_byte.b - //SEG373 [183] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG374 [92] phi from multiply_error::@3 to print_byte [phi:multiply_error::@3->print_byte] + //SEG396 [195] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG397 [92] phi from multiply_error::@3 to print_byte [phi:multiply_error::@3->print_byte] print_byte_from_b3: - //SEG375 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#122 [phi:multiply_error::@3->print_byte#0] -- register_copy - //SEG376 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#4 [phi:multiply_error::@3->print_byte#1] -- register_copy + //SEG398 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#126 [phi:multiply_error::@3->print_byte#0] -- register_copy + //SEG399 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#4 [phi:multiply_error::@3->print_byte#1] -- register_copy jsr print_byte - //SEG377 [184] phi from multiply_error::@3 to multiply_error::@4 [phi:multiply_error::@3->multiply_error::@4] + //SEG400 [196] phi from multiply_error::@3 to multiply_error::@4 [phi:multiply_error::@3->multiply_error::@4] b4_from_b3: jmp b4 - //SEG378 multiply_error::@4 + //SEG401 multiply_error::@4 b4: - //SEG379 [185] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG380 [51] phi from multiply_error::@4 to print_str [phi:multiply_error::@4->print_str] + //SEG402 [197] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG403 [51] phi from multiply_error::@4 to print_str [phi:multiply_error::@4->print_str] print_str_from_b4: - //SEG381 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:multiply_error::@4->print_str#0] -- register_copy - //SEG382 [51] phi (byte*) print_str::str#16 = (const string) multiply_error::str2 [phi:multiply_error::@4->print_str#1] -- pbuz1=pbuc1 + //SEG404 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:multiply_error::@4->print_str#0] -- register_copy + //SEG405 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str2 [phi:multiply_error::@4->print_str#1] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str jmp b5 - //SEG383 multiply_error::@5 + //SEG406 multiply_error::@5 b5: - //SEG384 [186] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ) -- vwuz1=vwuz2 + //SEG407 [198] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ) -- vwuz1=vwuz2 lda ms sta print_word.w lda ms+1 sta print_word.w+1 - //SEG385 [187] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ) - //SEG386 [86] phi from multiply_error::@5 to print_word [phi:multiply_error::@5->print_word] + //SEG408 [199] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG409 [86] phi from multiply_error::@5 to print_word [phi:multiply_error::@5->print_word] print_word_from_b5: - //SEG387 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#122 [phi:multiply_error::@5->print_word#0] -- register_copy - //SEG388 [86] phi (word) print_word::w#5 = (word) print_word::w#3 [phi:multiply_error::@5->print_word#1] -- register_copy + //SEG410 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:multiply_error::@5->print_word#0] -- register_copy + //SEG411 [86] phi (word) print_word::w#6 = (word) print_word::w#3 [phi:multiply_error::@5->print_word#1] -- register_copy jsr print_word - //SEG389 [188] phi from multiply_error::@5 to multiply_error::@6 [phi:multiply_error::@5->multiply_error::@6] + //SEG412 [200] phi from multiply_error::@5 to multiply_error::@6 [phi:multiply_error::@5->multiply_error::@6] b6_from_b5: jmp b6 - //SEG390 multiply_error::@6 + //SEG413 multiply_error::@6 b6: - //SEG391 [189] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::ma#0 ] ) - //SEG392 [51] phi from multiply_error::@6 to print_str [phi:multiply_error::@6->print_str] + //SEG414 [201] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG415 [51] phi from multiply_error::@6 to print_str [phi:multiply_error::@6->print_str] print_str_from_b6: - //SEG393 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:multiply_error::@6->print_str#0] -- register_copy - //SEG394 [51] phi (byte*) print_str::str#16 = (const string) multiply_error::str3 [phi:multiply_error::@6->print_str#1] -- pbuz1=pbuc1 + //SEG416 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:multiply_error::@6->print_str#0] -- register_copy + //SEG417 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str3 [phi:multiply_error::@6->print_str#1] -- pbuz1=pbuc1 lda #str3 sta print_str.str+1 jsr print_str jmp b7 - //SEG395 multiply_error::@7 + //SEG418 multiply_error::@7 b7: - //SEG396 [190] (word) print_word::w#4 ← (word) multiply_error::ma#0 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ) -- vwuz1=vwuz2 - lda ma + //SEG419 [202] (word) print_word::w#4 ← (word) multiply_error::mn#0 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ) -- vwuz1=vwuz2 + lda mn sta print_word.w - lda ma+1 + lda mn+1 sta print_word.w+1 - //SEG397 [191] call print_word param-assignment [ char_cursor#17 line_cursor#10 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 ] ) - //SEG398 [86] phi from multiply_error::@7 to print_word [phi:multiply_error::@7->print_word] + //SEG420 [203] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ) + //SEG421 [86] phi from multiply_error::@7 to print_word [phi:multiply_error::@7->print_word] print_word_from_b7: - //SEG399 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#122 [phi:multiply_error::@7->print_word#0] -- register_copy - //SEG400 [86] phi (word) print_word::w#5 = (word) print_word::w#4 [phi:multiply_error::@7->print_word#1] -- register_copy + //SEG422 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:multiply_error::@7->print_word#0] -- register_copy + //SEG423 [86] phi (word) print_word::w#6 = (word) print_word::w#4 [phi:multiply_error::@7->print_word#1] -- register_copy jsr print_word - //SEG401 [192] phi from multiply_error::@7 to multiply_error::@8 [phi:multiply_error::@7->multiply_error::@8] + //SEG424 [204] phi from multiply_error::@7 to multiply_error::@8 [phi:multiply_error::@7->multiply_error::@8] b8_from_b7: jmp b8 - //SEG402 multiply_error::@8 + //SEG425 multiply_error::@8 b8: - //SEG403 [193] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ line_cursor#1 ] ) - //SEG404 [46] phi from multiply_error::@8 to print_ln [phi:multiply_error::@8->print_ln] - print_ln_from_b8: - //SEG405 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#17 [phi:multiply_error::@8->print_ln#0] -- register_copy - //SEG406 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#10 [phi:multiply_error::@8->print_ln#1] -- register_copy + //SEG426 [205] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::mf#0 ] ) + //SEG427 [51] phi from multiply_error::@8 to print_str [phi:multiply_error::@8->print_str] + print_str_from_b8: + //SEG428 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:multiply_error::@8->print_str#0] -- register_copy + //SEG429 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str4 [phi:multiply_error::@8->print_str#1] -- pbuz1=pbuc1 + lda #str4 + sta print_str.str+1 + jsr print_str + jmp b9 + //SEG430 multiply_error::@9 + b9: + //SEG431 [206] (word) print_word::w#5 ← (word) multiply_error::mf#0 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ) -- vwuz1=vwuz2 + lda mf + sta print_word.w + lda mf+1 + sta print_word.w+1 + //SEG432 [207] call print_word param-assignment [ char_cursor#17 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 ] ) + //SEG433 [86] phi from multiply_error::@9 to print_word [phi:multiply_error::@9->print_word] + print_word_from_b9: + //SEG434 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:multiply_error::@9->print_word#0] -- register_copy + //SEG435 [86] phi (word) print_word::w#6 = (word) print_word::w#5 [phi:multiply_error::@9->print_word#1] -- register_copy + jsr print_word + //SEG436 [208] phi from multiply_error::@9 to multiply_error::@10 [phi:multiply_error::@9->multiply_error::@10] + b10_from_b9: + jmp b10 + //SEG437 multiply_error::@10 + b10: + //SEG438 [209] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ line_cursor#1 ] ) + //SEG439 [46] phi from multiply_error::@10 to print_ln [phi:multiply_error::@10->print_ln] + print_ln_from_b10: + //SEG440 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#17 [phi:multiply_error::@10->print_ln#0] -- register_copy + //SEG441 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#10 [phi:multiply_error::@10->print_ln#1] -- register_copy jsr print_ln jmp breturn - //SEG407 multiply_error::@return + //SEG442 multiply_error::@return breturn: - //SEG408 [194] return [ line_cursor#1 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ line_cursor#1 ] ) + //SEG443 [210] return [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ line_cursor#1 ] ) rts str: .text "multiply mismatch @" str1: .text "*@" str2: .text " slow:@" - str3: .text " / fast asm:@" + str3: .text " / normal:@" + str4: .text " / fast:@" } -//SEG409 muls8u +//SEG444 mul8u +mul8u: { + .label _1 = $6b + .label mb = $1f + .label a = $1c + .label res = $1d + .label b = $5e + .label return = $5f + //SEG445 [211] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::mb#0 ] ) -- vwuz1=_word_vbuz2 + lda b + sta mb + lda #0 + sta mb+1 + //SEG446 [212] phi from mul8u to mul8u::@1 [phi:mul8u->mul8u::@1] + b1_from_mul8u: + //SEG447 [212] phi (word) mul8u::mb#2 = (word) mul8u::mb#0 [phi:mul8u->mul8u::@1#0] -- register_copy + //SEG448 [212] phi (word) mul8u::res#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u->mul8u::@1#1] -- vwuz1=vbuc1 + lda #0 + sta res + lda #0 + sta res+1 + //SEG449 [212] phi (byte) mul8u::a#2 = (byte) mul8u::a#1 [phi:mul8u->mul8u::@1#2] -- register_copy + jmp b1 + //SEG450 mul8u::@1 + b1: + //SEG451 [213] if((byte) mul8u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@2 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) -- vbuz1_neq_0_then_la1 + lda a + bne b2 + jmp breturn + //SEG452 mul8u::@return + breturn: + //SEG453 [214] return [ mul8u::res#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ) + rts + //SEG454 mul8u::@2 + b2: + //SEG455 [215] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) -- vbuz1=vbuz2_band_vbuc1 + lda #1 + and a + sta _1 + //SEG456 [216] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@4 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) -- vbuz1_eq_0_then_la1 + lda _1 + beq b4_from_b2 + jmp b7 + //SEG457 mul8u::@7 + b7: + //SEG458 [217] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) -- vwuz1=vwuz1_plus_vwuz2 + lda res + clc + adc mb + sta res + lda res+1 + adc mb+1 + sta res+1 + //SEG459 [218] phi from mul8u::@2 mul8u::@7 to mul8u::@4 [phi:mul8u::@2/mul8u::@7->mul8u::@4] + b4_from_b2: + b4_from_b7: + //SEG460 [218] phi (word) mul8u::res#6 = (word) mul8u::res#2 [phi:mul8u::@2/mul8u::@7->mul8u::@4#0] -- register_copy + jmp b4 + //SEG461 mul8u::@4 + b4: + //SEG462 [219] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::mb#2 mul8u::a#0 mul8u::res#6 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::mb#2 mul8u::a#0 mul8u::res#6 ] ) -- vbuz1=vbuz1_ror_1 + lsr a + //SEG463 [220] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::a#0 mul8u::res#6 mul8u::mb#1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#0 mul8u::res#6 mul8u::mb#1 ] ) -- vwuz1=vwuz1_rol_1 + asl mb + rol mb+1 + //SEG464 [212] phi from mul8u::@4 to mul8u::@1 [phi:mul8u::@4->mul8u::@1] + b1_from_b4: + //SEG465 [212] phi (word) mul8u::mb#2 = (word) mul8u::mb#1 [phi:mul8u::@4->mul8u::@1#0] -- register_copy + //SEG466 [212] phi (word) mul8u::res#2 = (word) mul8u::res#6 [phi:mul8u::@4->mul8u::@1#1] -- register_copy + //SEG467 [212] phi (byte) mul8u::a#2 = (byte) mul8u::a#0 [phi:mul8u::@4->mul8u::@1#2] -- register_copy + jmp b1 +} +//SEG468 muls8u muls8u: { - .label return = $1c - .label m = $1c - .label i = $1b - .label a = $4e - .label b = $4f - .label return_2 = $50 - //SEG410 [195] if((byte) muls8u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8u::@1 [ muls8u::a#0 muls8u::b#0 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ) -- vbuz1_eq_0_then_la1 + .label return = $22 + .label m = $22 + .label i = $21 + .label a = $54 + .label b = $55 + .label return_2 = $56 + //SEG469 [221] if((byte) muls8u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8u::@1 [ muls8u::a#0 muls8u::b#0 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ) -- vbuz1_eq_0_then_la1 lda a beq b1_from_muls8u - //SEG411 [196] phi from muls8u to muls8u::@2 [phi:muls8u->muls8u::@2] + //SEG470 [222] phi from muls8u to muls8u::@2 [phi:muls8u->muls8u::@2] b2_from_muls8u: - //SEG412 [196] phi (byte) muls8u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@2#0] -- vbuz1=vbuc1 + //SEG471 [222] phi (byte) muls8u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@2#0] -- vbuz1=vbuc1 lda #0 sta i - //SEG413 [196] phi (word) muls8u::m#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@2#1] -- vwuz1=vbuc1 + //SEG472 [222] phi (word) muls8u::m#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@2#1] -- vwuz1=vbuc1 lda #0 sta m lda #0 sta m+1 jmp b2 - //SEG414 [196] phi from muls8u::@2 to muls8u::@2 [phi:muls8u::@2->muls8u::@2] + //SEG473 [222] phi from muls8u::@2 to muls8u::@2 [phi:muls8u::@2->muls8u::@2] b2_from_b2: - //SEG415 [196] phi (byte) muls8u::i#2 = (byte) muls8u::i#1 [phi:muls8u::@2->muls8u::@2#0] -- register_copy - //SEG416 [196] phi (word) muls8u::m#3 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@2#1] -- register_copy + //SEG474 [222] phi (byte) muls8u::i#2 = (byte) muls8u::i#1 [phi:muls8u::@2->muls8u::@2#0] -- register_copy + //SEG475 [222] phi (word) muls8u::m#3 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@2#1] -- register_copy jmp b2 - //SEG417 muls8u::@2 + //SEG476 muls8u::@2 b2: - //SEG418 [197] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) -- vwuz1=vwuz1_plus_vbuz2 + //SEG477 [223] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) -- vwuz1=vwuz1_plus_vbuz2 lda b clc adc m @@ -7569,151 +8491,151 @@ muls8u: { lda #0 adc m+1 sta m+1 - //SEG419 [198] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) -- vbuz1=_inc_vbuz1 + //SEG478 [224] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) -- vbuz1=_inc_vbuz1 inc i - //SEG420 [199] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) -- vbuz1_neq_vbuz2_then_la1 + //SEG479 [225] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) -- vbuz1_neq_vbuz2_then_la1 lda i cmp a bne b2_from_b2 - //SEG421 [200] phi from muls8u::@2 to muls8u::@1 [phi:muls8u::@2->muls8u::@1] + //SEG480 [226] phi from muls8u::@2 to muls8u::@1 [phi:muls8u::@2->muls8u::@1] b1_from_b2: - //SEG422 [200] phi (word) muls8u::return#0 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@1#0] -- register_copy + //SEG481 [226] phi (word) muls8u::return#0 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@1#0] -- register_copy jmp b1 - //SEG423 [200] phi from muls8u to muls8u::@1 [phi:muls8u->muls8u::@1] + //SEG482 [226] phi from muls8u to muls8u::@1 [phi:muls8u->muls8u::@1] b1_from_muls8u: - //SEG424 [200] phi (word) muls8u::return#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@1#0] -- vwuz1=vbuc1 + //SEG483 [226] phi (word) muls8u::return#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@1#0] -- vwuz1=vbuc1 lda #0 sta return lda #0 sta return+1 jmp b1 - //SEG425 muls8u::@1 + //SEG484 muls8u::@1 b1: jmp breturn - //SEG426 muls8u::@return + //SEG485 muls8u::@return breturn: - //SEG427 [201] return [ muls8u::return#0 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ) + //SEG486 [227] return [ muls8u::return#0 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ) rts } -//SEG428 multiply_tables_compare -multiply_tables_compare: { - .label asm_sqr = $20 - .label kc_sqr = $1e - //SEG429 [203] phi from multiply_tables_compare to multiply_tables_compare::@1 [phi:multiply_tables_compare->multiply_tables_compare::@1] - b1_from_multiply_tables_compare: - //SEG430 [203] phi (byte*) multiply_tables_compare::asm_sqr#2 = (const byte[512]) mula_sqr1_lo#0 [phi:multiply_tables_compare->multiply_tables_compare::@1#0] -- pbuz1=pbuc1 +//SEG487 mulf_tables_cmp +mulf_tables_cmp: { + .label asm_sqr = $26 + .label kc_sqr = $24 + //SEG488 [229] phi from mulf_tables_cmp to mulf_tables_cmp::@1 [phi:mulf_tables_cmp->mulf_tables_cmp::@1] + b1_from_mulf_tables_cmp: + //SEG489 [229] phi (byte*) mulf_tables_cmp::asm_sqr#2 = (const byte[512]) mula_sqr1_lo#0 [phi:mulf_tables_cmp->mulf_tables_cmp::@1#0] -- pbuz1=pbuc1 lda #mula_sqr1_lo sta asm_sqr+1 - //SEG431 [203] phi (byte*) multiply_tables_compare::kc_sqr#2 = (const byte[512]) mulf_sqr1_lo#0 [phi:multiply_tables_compare->multiply_tables_compare::@1#1] -- pbuz1=pbuc1 + //SEG490 [229] phi (byte*) mulf_tables_cmp::kc_sqr#2 = (const byte[512]) mulf_sqr1_lo#0 [phi:mulf_tables_cmp->mulf_tables_cmp::@1#1] -- pbuz1=pbuc1 lda #mulf_sqr1_lo sta kc_sqr+1 jmp b1 - //SEG432 [203] phi from multiply_tables_compare::@2 to multiply_tables_compare::@1 [phi:multiply_tables_compare::@2->multiply_tables_compare::@1] + //SEG491 [229] phi from mulf_tables_cmp::@2 to mulf_tables_cmp::@1 [phi:mulf_tables_cmp::@2->mulf_tables_cmp::@1] b1_from_b2: - //SEG433 [203] phi (byte*) multiply_tables_compare::asm_sqr#2 = (byte*) multiply_tables_compare::asm_sqr#1 [phi:multiply_tables_compare::@2->multiply_tables_compare::@1#0] -- register_copy - //SEG434 [203] phi (byte*) multiply_tables_compare::kc_sqr#2 = (byte*) multiply_tables_compare::kc_sqr#1 [phi:multiply_tables_compare::@2->multiply_tables_compare::@1#1] -- register_copy + //SEG492 [229] phi (byte*) mulf_tables_cmp::asm_sqr#2 = (byte*) mulf_tables_cmp::asm_sqr#1 [phi:mulf_tables_cmp::@2->mulf_tables_cmp::@1#0] -- register_copy + //SEG493 [229] phi (byte*) mulf_tables_cmp::kc_sqr#2 = (byte*) mulf_tables_cmp::kc_sqr#1 [phi:mulf_tables_cmp::@2->mulf_tables_cmp::@1#1] -- register_copy jmp b1 - //SEG435 multiply_tables_compare::@1 + //SEG494 mulf_tables_cmp::@1 b1: - //SEG436 [204] if(*((byte*) multiply_tables_compare::kc_sqr#2)==*((byte*) multiply_tables_compare::asm_sqr#2)) goto multiply_tables_compare::@2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) -- _deref_pbuz1_eq__deref_pbuz2_then_la1 + //SEG495 [230] if(*((byte*) mulf_tables_cmp::kc_sqr#2)==*((byte*) mulf_tables_cmp::asm_sqr#2)) goto mulf_tables_cmp::@2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) -- _deref_pbuz1_eq__deref_pbuz2_then_la1 ldy #0 lda (kc_sqr),y ldy #0 cmp (asm_sqr),y beq b2 jmp b3 - //SEG437 multiply_tables_compare::@3 + //SEG496 mulf_tables_cmp::@3 b3: - //SEG438 [205] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) -- _deref_pbuc1=vbuc2 + //SEG497 [231] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG439 [206] call print_str param-assignment [ char_cursor#122 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - //SEG440 [51] phi from multiply_tables_compare::@3 to print_str [phi:multiply_tables_compare::@3->print_str] + //SEG498 [232] call print_str param-assignment [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + //SEG499 [51] phi from mulf_tables_cmp::@3 to print_str [phi:mulf_tables_cmp::@3->print_str] print_str_from_b3: - //SEG441 [51] phi (byte*) char_cursor#141 = (const byte*) SCREEN#0 [phi:multiply_tables_compare::@3->print_str#0] -- pbuz1=pbuc1 + //SEG500 [51] phi (byte*) char_cursor#145 = (const byte*) SCREEN#0 [phi:mulf_tables_cmp::@3->print_str#0] -- pbuz1=pbuc1 lda #SCREEN sta char_cursor+1 - //SEG442 [51] phi (byte*) print_str::str#16 = (const string) multiply_tables_compare::str [phi:multiply_tables_compare::@3->print_str#1] -- pbuz1=pbuc1 + //SEG501 [51] phi (byte*) print_str::str#17 = (const string) mulf_tables_cmp::str [phi:mulf_tables_cmp::@3->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str jmp b6 - //SEG443 multiply_tables_compare::@6 + //SEG502 mulf_tables_cmp::@6 b6: - //SEG444 [207] (word~) print_word::w#9 ← (word)(byte*) multiply_tables_compare::asm_sqr#2 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ) -- vwuz1=vwuz2 + //SEG503 [233] (word~) print_word::w#8 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ) -- vwuz1=vwuz2 lda asm_sqr sta print_word.w lda asm_sqr+1 sta print_word.w+1 - //SEG445 [208] call print_word param-assignment [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ) - //SEG446 [86] phi from multiply_tables_compare::@6 to print_word [phi:multiply_tables_compare::@6->print_word] + //SEG504 [234] call print_word param-assignment [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ) + //SEG505 [86] phi from mulf_tables_cmp::@6 to print_word [phi:mulf_tables_cmp::@6->print_word] print_word_from_b6: - //SEG447 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#122 [phi:multiply_tables_compare::@6->print_word#0] -- register_copy - //SEG448 [86] phi (word) print_word::w#5 = (word~) print_word::w#9 [phi:multiply_tables_compare::@6->print_word#1] -- register_copy + //SEG506 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:mulf_tables_cmp::@6->print_word#0] -- register_copy + //SEG507 [86] phi (word) print_word::w#6 = (word~) print_word::w#8 [phi:mulf_tables_cmp::@6->print_word#1] -- register_copy jsr print_word - //SEG449 [209] phi from multiply_tables_compare::@6 to multiply_tables_compare::@7 [phi:multiply_tables_compare::@6->multiply_tables_compare::@7] + //SEG508 [235] phi from mulf_tables_cmp::@6 to mulf_tables_cmp::@7 [phi:mulf_tables_cmp::@6->mulf_tables_cmp::@7] b7_from_b6: jmp b7 - //SEG450 multiply_tables_compare::@7 + //SEG509 mulf_tables_cmp::@7 b7: - //SEG451 [210] call print_str param-assignment [ char_cursor#122 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 multiply_tables_compare::kc_sqr#2 ] ) - //SEG452 [51] phi from multiply_tables_compare::@7 to print_str [phi:multiply_tables_compare::@7->print_str] + //SEG510 [236] call print_str param-assignment [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 ] ) + //SEG511 [51] phi from mulf_tables_cmp::@7 to print_str [phi:mulf_tables_cmp::@7->print_str] print_str_from_b7: - //SEG453 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:multiply_tables_compare::@7->print_str#0] -- register_copy - //SEG454 [51] phi (byte*) print_str::str#16 = (const string) multiply_tables_compare::str1 [phi:multiply_tables_compare::@7->print_str#1] -- pbuz1=pbuc1 + //SEG512 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:mulf_tables_cmp::@7->print_str#0] -- register_copy + //SEG513 [51] phi (byte*) print_str::str#17 = (const string) mulf_tables_cmp::str1 [phi:mulf_tables_cmp::@7->print_str#1] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str jmp b8 - //SEG455 multiply_tables_compare::@8 + //SEG514 mulf_tables_cmp::@8 b8: - //SEG456 [211] (word~) print_word::w#10 ← (word)(byte*) multiply_tables_compare::kc_sqr#2 [ char_cursor#122 print_word::w#10 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#10 ] ) -- vwuz1=vwuz2 + //SEG515 [237] (word~) print_word::w#9 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 [ char_cursor#126 print_word::w#9 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#9 ] ) -- vwuz1=vwuz2 lda kc_sqr sta print_word.w lda kc_sqr+1 sta print_word.w+1 - //SEG457 [212] call print_word param-assignment [ char_cursor#17 ] ( main:2::multiply_tables_compare:11 [ char_cursor#17 ] ) - //SEG458 [86] phi from multiply_tables_compare::@8 to print_word [phi:multiply_tables_compare::@8->print_word] + //SEG516 [238] call print_word param-assignment [ char_cursor#17 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#17 ] ) + //SEG517 [86] phi from mulf_tables_cmp::@8 to print_word [phi:mulf_tables_cmp::@8->print_word] print_word_from_b8: - //SEG459 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#122 [phi:multiply_tables_compare::@8->print_word#0] -- register_copy - //SEG460 [86] phi (word) print_word::w#5 = (word~) print_word::w#10 [phi:multiply_tables_compare::@8->print_word#1] -- register_copy + //SEG518 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:mulf_tables_cmp::@8->print_word#0] -- register_copy + //SEG519 [86] phi (word) print_word::w#6 = (word~) print_word::w#9 [phi:mulf_tables_cmp::@8->print_word#1] -- register_copy jsr print_word - //SEG461 [213] phi from multiply_tables_compare::@8 to multiply_tables_compare::@return [phi:multiply_tables_compare::@8->multiply_tables_compare::@return] + //SEG520 [239] phi from mulf_tables_cmp::@8 to mulf_tables_cmp::@return [phi:mulf_tables_cmp::@8->mulf_tables_cmp::@return] breturn_from_b8: - //SEG462 [213] phi (byte*) line_cursor#10 = (const byte*) SCREEN#0 [phi:multiply_tables_compare::@8->multiply_tables_compare::@return#0] -- pbuz1=pbuc1 + //SEG521 [239] phi (byte*) line_cursor#10 = (const byte*) SCREEN#0 [phi:mulf_tables_cmp::@8->mulf_tables_cmp::@return#0] -- pbuz1=pbuc1 lda #SCREEN sta line_cursor+1 - //SEG463 [213] phi (byte*) char_cursor#30 = (byte*) char_cursor#17 [phi:multiply_tables_compare::@8->multiply_tables_compare::@return#1] -- register_copy + //SEG522 [239] phi (byte*) char_cursor#30 = (byte*) char_cursor#17 [phi:mulf_tables_cmp::@8->mulf_tables_cmp::@return#1] -- register_copy jmp breturn - //SEG464 multiply_tables_compare::@return + //SEG523 mulf_tables_cmp::@return breturn: - //SEG465 [214] return [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_tables_compare:11 [ line_cursor#10 char_cursor#30 ] ) + //SEG524 [240] return [ line_cursor#10 char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#10 char_cursor#30 ] ) rts - //SEG466 multiply_tables_compare::@2 + //SEG525 mulf_tables_cmp::@2 b2: - //SEG467 [215] (byte*) multiply_tables_compare::asm_sqr#1 ← ++ (byte*) multiply_tables_compare::asm_sqr#2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG526 [241] (byte*) mulf_tables_cmp::asm_sqr#1 ← ++ (byte*) mulf_tables_cmp::asm_sqr#2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#1 ] ) -- pbuz1=_inc_pbuz1 inc asm_sqr bne !+ inc asm_sqr+1 !: - //SEG468 [216] (byte*) multiply_tables_compare::kc_sqr#1 ← ++ (byte*) multiply_tables_compare::kc_sqr#2 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG527 [242] (byte*) mulf_tables_cmp::kc_sqr#1 ← ++ (byte*) mulf_tables_cmp::kc_sqr#2 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) -- pbuz1=_inc_pbuz1 inc kc_sqr bne !+ inc kc_sqr+1 !: - //SEG469 [217] if((byte*) multiply_tables_compare::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto multiply_tables_compare::@1 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ) -- pbuz1_lt_pbuc1_then_la1 + //SEG528 [243] if((byte*) mulf_tables_cmp::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto mulf_tables_cmp::@1 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) -- pbuz1_lt_pbuc1_then_la1 lda kc_sqr+1 cmp #>mulf_sqr1_lo+$200*4 bcc b1_from_b2 @@ -7722,58 +8644,58 @@ multiply_tables_compare: { cmp #multiply_tables_compare::@5] + //SEG529 [244] phi from mulf_tables_cmp::@2 to mulf_tables_cmp::@5 [phi:mulf_tables_cmp::@2->mulf_tables_cmp::@5] b5_from_b2: jmp b5 - //SEG471 multiply_tables_compare::@5 + //SEG530 mulf_tables_cmp::@5 b5: - //SEG472 [219] call print_str param-assignment [ char_cursor#122 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 ] ) - //SEG473 [51] phi from multiply_tables_compare::@5 to print_str [phi:multiply_tables_compare::@5->print_str] + //SEG531 [245] call print_str param-assignment [ char_cursor#126 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 ] ) + //SEG532 [51] phi from mulf_tables_cmp::@5 to print_str [phi:mulf_tables_cmp::@5->print_str] print_str_from_b5: - //SEG474 [51] phi (byte*) char_cursor#141 = (const byte*) SCREEN#0 [phi:multiply_tables_compare::@5->print_str#0] -- pbuz1=pbuc1 + //SEG533 [51] phi (byte*) char_cursor#145 = (const byte*) SCREEN#0 [phi:mulf_tables_cmp::@5->print_str#0] -- pbuz1=pbuc1 lda #SCREEN sta char_cursor+1 - //SEG475 [51] phi (byte*) print_str::str#16 = (const string) multiply_tables_compare::str2 [phi:multiply_tables_compare::@5->print_str#1] -- pbuz1=pbuc1 + //SEG534 [51] phi (byte*) print_str::str#17 = (const string) mulf_tables_cmp::str2 [phi:mulf_tables_cmp::@5->print_str#1] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str - //SEG476 [220] phi from multiply_tables_compare::@5 to multiply_tables_compare::@10 [phi:multiply_tables_compare::@5->multiply_tables_compare::@10] + //SEG535 [246] phi from mulf_tables_cmp::@5 to mulf_tables_cmp::@10 [phi:mulf_tables_cmp::@5->mulf_tables_cmp::@10] b10_from_b5: jmp b10 - //SEG477 multiply_tables_compare::@10 + //SEG536 mulf_tables_cmp::@10 b10: - //SEG478 [221] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_tables_compare:11 [ line_cursor#1 ] ) - //SEG479 [46] phi from multiply_tables_compare::@10 to print_ln [phi:multiply_tables_compare::@10->print_ln] + //SEG537 [247] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#1 ] ) + //SEG538 [46] phi from mulf_tables_cmp::@10 to print_ln [phi:mulf_tables_cmp::@10->print_ln] print_ln_from_b10: - //SEG480 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#122 [phi:multiply_tables_compare::@10->print_ln#0] -- register_copy - //SEG481 [46] phi (byte*) line_cursor#45 = (const byte*) SCREEN#0 [phi:multiply_tables_compare::@10->print_ln#1] -- pbuz1=pbuc1 + //SEG539 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#126 [phi:mulf_tables_cmp::@10->print_ln#0] -- register_copy + //SEG540 [46] phi (byte*) line_cursor#45 = (const byte*) SCREEN#0 [phi:mulf_tables_cmp::@10->print_ln#1] -- pbuz1=pbuc1 lda #SCREEN sta line_cursor+1 jsr print_ln - //SEG482 [222] (byte*~) char_cursor#201 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#201 ] ( main:2::multiply_tables_compare:11 [ line_cursor#1 char_cursor#201 ] ) -- pbuz1=pbuz2 + //SEG541 [248] (byte*~) char_cursor#212 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#212 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#1 char_cursor#212 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG483 [213] phi from multiply_tables_compare::@10 to multiply_tables_compare::@return [phi:multiply_tables_compare::@10->multiply_tables_compare::@return] + //SEG542 [239] phi from mulf_tables_cmp::@10 to mulf_tables_cmp::@return [phi:mulf_tables_cmp::@10->mulf_tables_cmp::@return] breturn_from_b10: - //SEG484 [213] phi (byte*) line_cursor#10 = (byte*) line_cursor#1 [phi:multiply_tables_compare::@10->multiply_tables_compare::@return#0] -- register_copy - //SEG485 [213] phi (byte*) char_cursor#30 = (byte*~) char_cursor#201 [phi:multiply_tables_compare::@10->multiply_tables_compare::@return#1] -- register_copy + //SEG543 [239] phi (byte*) line_cursor#10 = (byte*) line_cursor#1 [phi:mulf_tables_cmp::@10->mulf_tables_cmp::@return#0] -- register_copy + //SEG544 [239] phi (byte*) char_cursor#30 = (byte*~) char_cursor#212 [phi:mulf_tables_cmp::@10->mulf_tables_cmp::@return#1] -- register_copy jmp breturn str: .text "multiply table mismatch at @" str1: .text " / @" str2: .text "multiply tables match!@" } -//SEG486 mulf_init_asm +//SEG545 mulf_init_asm mulf_init_asm: { .label mem = $ff - //SEG487 asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } + //SEG546 asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } ldx #0 txa .byte $c9 @@ -7812,119 +8734,119 @@ mulf_init_asm: { dey inx bne !- - //SEG488 [224] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 + //SEG547 [250] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr1_lo sta mem - //SEG489 [225] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 + //SEG548 [251] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr1_hi sta mem - //SEG490 [226] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 + //SEG549 [252] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr2_lo sta mem - //SEG491 [227] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 + //SEG550 [253] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr2_hi sta mem jmp breturn - //SEG492 mulf_init_asm::@return + //SEG551 mulf_init_asm::@return breturn: - //SEG493 [228] return [ ] ( main:2::mulf_init_asm:9 [ ] ) + //SEG552 [254] return [ ] ( main:2::mulf_init_asm:9 [ ] ) rts } -//SEG494 mulf_init +//SEG553 mulf_init mulf_init: { - .label _2 = $5e - .label _5 = $5f - .label _6 = $60 - .label c = $22 - .label sqr1_hi = $25 - .label sqr = $28 - .label sqr1_lo = $23 - .label x_2 = $27 - .label sqr2_hi = $2d - .label x_255 = $2a - .label sqr2_lo = $2b - .label dir = $2f - //SEG495 [230] phi from mulf_init to mulf_init::@1 [phi:mulf_init->mulf_init::@1] + .label _2 = $6c + .label _5 = $6d + .label _6 = $6e + .label c = $28 + .label sqr1_hi = $2b + .label sqr = $2e + .label sqr1_lo = $29 + .label x_2 = $2d + .label sqr2_hi = $33 + .label x_255 = $30 + .label sqr2_lo = $31 + .label dir = $35 + //SEG554 [256] phi from mulf_init to mulf_init::@1 [phi:mulf_init->mulf_init::@1] b1_from_mulf_init: - //SEG496 [230] phi (byte) mulf_init::x_2#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#0] -- vbuz1=vbuc1 + //SEG555 [256] phi (byte) mulf_init::x_2#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#0] -- vbuz1=vbuc1 lda #0 sta x_2 - //SEG497 [230] phi (byte*) mulf_init::sqr1_hi#2 = (const byte[512]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init->mulf_init::@1#1] -- pbuz1=pbuc1 + //SEG556 [256] phi (byte*) mulf_init::sqr1_hi#2 = (const byte[512]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init->mulf_init::@1#1] -- pbuz1=pbuc1 lda #mulf_sqr1_hi+1 sta sqr1_hi+1 - //SEG498 [230] phi (byte*) mulf_init::sqr1_lo#2 = (const byte[512]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init->mulf_init::@1#2] -- pbuz1=pbuc1 + //SEG557 [256] phi (byte*) mulf_init::sqr1_lo#2 = (const byte[512]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init->mulf_init::@1#2] -- pbuz1=pbuc1 lda #mulf_sqr1_lo+1 sta sqr1_lo+1 - //SEG499 [230] phi (word) mulf_init::sqr#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#3] -- vwuz1=vbuc1 + //SEG558 [256] phi (word) mulf_init::sqr#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#3] -- vwuz1=vbuc1 lda #0 sta sqr lda #0 sta sqr+1 - //SEG500 [230] phi (byte) mulf_init::c#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#4] -- vbuz1=vbuc1 + //SEG559 [256] phi (byte) mulf_init::c#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#4] -- vbuz1=vbuc1 lda #0 sta c jmp b1 - //SEG501 [230] phi from mulf_init::@2 to mulf_init::@1 [phi:mulf_init::@2->mulf_init::@1] + //SEG560 [256] phi from mulf_init::@2 to mulf_init::@1 [phi:mulf_init::@2->mulf_init::@1] b1_from_b2: - //SEG502 [230] phi (byte) mulf_init::x_2#3 = (byte) mulf_init::x_2#2 [phi:mulf_init::@2->mulf_init::@1#0] -- register_copy - //SEG503 [230] phi (byte*) mulf_init::sqr1_hi#2 = (byte*) mulf_init::sqr1_hi#1 [phi:mulf_init::@2->mulf_init::@1#1] -- register_copy - //SEG504 [230] phi (byte*) mulf_init::sqr1_lo#2 = (byte*) mulf_init::sqr1_lo#1 [phi:mulf_init::@2->mulf_init::@1#2] -- register_copy - //SEG505 [230] phi (word) mulf_init::sqr#4 = (word) mulf_init::sqr#1 [phi:mulf_init::@2->mulf_init::@1#3] -- register_copy - //SEG506 [230] phi (byte) mulf_init::c#2 = (byte) mulf_init::c#1 [phi:mulf_init::@2->mulf_init::@1#4] -- register_copy + //SEG561 [256] phi (byte) mulf_init::x_2#3 = (byte) mulf_init::x_2#2 [phi:mulf_init::@2->mulf_init::@1#0] -- register_copy + //SEG562 [256] phi (byte*) mulf_init::sqr1_hi#2 = (byte*) mulf_init::sqr1_hi#1 [phi:mulf_init::@2->mulf_init::@1#1] -- register_copy + //SEG563 [256] phi (byte*) mulf_init::sqr1_lo#2 = (byte*) mulf_init::sqr1_lo#1 [phi:mulf_init::@2->mulf_init::@1#2] -- register_copy + //SEG564 [256] phi (word) mulf_init::sqr#4 = (word) mulf_init::sqr#1 [phi:mulf_init::@2->mulf_init::@1#3] -- register_copy + //SEG565 [256] phi (byte) mulf_init::c#2 = (byte) mulf_init::c#1 [phi:mulf_init::@2->mulf_init::@1#4] -- register_copy jmp b1 - //SEG507 mulf_init::@1 + //SEG566 mulf_init::@1 b1: - //SEG508 [231] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) -- vbuz1=_inc_vbuz1 + //SEG567 [257] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) -- vbuz1=_inc_vbuz1 inc c - //SEG509 [232] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) -- vbuz1=vbuz2_band_vbuc1 + //SEG568 [258] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) -- vbuz1=vbuz2_band_vbuc1 lda #1 and c sta _2 - //SEG510 [233] if((byte~) mulf_init::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) -- vbuz1_neq_0_then_la1 + //SEG569 [259] if((byte~) mulf_init::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) -- vbuz1_neq_0_then_la1 lda _2 bne b2_from_b1 jmp b5 - //SEG511 mulf_init::@5 + //SEG570 mulf_init::@5 b5: - //SEG512 [234] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ) -- vbuz1=_inc_vbuz1 + //SEG571 [260] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ) -- vbuz1=_inc_vbuz1 inc x_2 - //SEG513 [235] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ) -- vwuz1=_inc_vwuz1 + //SEG572 [261] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ) -- vwuz1=_inc_vwuz1 inc sqr bne !+ inc sqr+1 !: - //SEG514 [236] phi from mulf_init::@1 mulf_init::@5 to mulf_init::@2 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2] + //SEG573 [262] phi from mulf_init::@1 mulf_init::@5 to mulf_init::@2 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2] b2_from_b1: b2_from_b5: - //SEG515 [236] phi (byte) mulf_init::x_2#2 = (byte) mulf_init::x_2#3 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2#0] -- register_copy - //SEG516 [236] phi (word) mulf_init::sqr#3 = (word) mulf_init::sqr#4 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2#1] -- register_copy + //SEG574 [262] phi (byte) mulf_init::x_2#2 = (byte) mulf_init::x_2#3 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2#0] -- register_copy + //SEG575 [262] phi (word) mulf_init::sqr#3 = (word) mulf_init::sqr#4 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2#1] -- register_copy jmp b2 - //SEG517 mulf_init::@2 + //SEG576 mulf_init::@2 b2: - //SEG518 [237] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) -- vbuz1=_lo_vwuz2 + //SEG577 [263] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) -- vbuz1=_lo_vwuz2 lda sqr sta _5 - //SEG519 [238] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- _deref_pbuz1=vbuz2 + //SEG578 [264] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- _deref_pbuz1=vbuz2 lda _5 ldy #0 sta (sqr1_lo),y - //SEG520 [239] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) -- vbuz1=_hi_vwuz2 + //SEG579 [265] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) -- vbuz1=_hi_vwuz2 lda sqr+1 sta _6 - //SEG521 [240] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- _deref_pbuz1=vbuz2 + //SEG580 [266] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- _deref_pbuz1=vbuz2 lda _6 ldy #0 sta (sqr1_hi),y - //SEG522 [241] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- pbuz1=_inc_pbuz1 + //SEG581 [267] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- pbuz1=_inc_pbuz1 inc sqr1_hi bne !+ inc sqr1_hi+1 !: - //SEG523 [242] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- vwuz1=vwuz1_plus_vbuz2 + //SEG582 [268] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- vwuz1=vwuz1_plus_vbuz2 lda x_2 clc adc sqr @@ -7932,83 +8854,83 @@ mulf_init: { lda #0 adc sqr+1 sta sqr+1 - //SEG524 [243] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- pbuz1=_inc_pbuz1 + //SEG583 [269] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- pbuz1=_inc_pbuz1 inc sqr1_lo bne !+ inc sqr1_lo+1 !: - //SEG525 [244] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- pbuz1_neq_pbuc1_then_la1 + //SEG584 [270] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- pbuz1_neq_pbuc1_then_la1 lda sqr1_lo+1 cmp #>mulf_sqr1_lo+$200 bne b1_from_b2 lda sqr1_lo cmp #mulf_init::@3] + //SEG585 [271] phi from mulf_init::@2 to mulf_init::@3 [phi:mulf_init::@2->mulf_init::@3] b3_from_b2: - //SEG527 [245] phi (byte) mulf_init::dir#2 = (byte/word/signed word/dword/signed dword) 255 [phi:mulf_init::@2->mulf_init::@3#0] -- vbuz1=vbuc1 + //SEG586 [271] phi (byte) mulf_init::dir#2 = (byte/word/signed word/dword/signed dword) 255 [phi:mulf_init::@2->mulf_init::@3#0] -- vbuz1=vbuc1 lda #$ff sta dir - //SEG528 [245] phi (byte*) mulf_init::sqr2_hi#2 = (const byte[512]) mulf_sqr2_hi#0 [phi:mulf_init::@2->mulf_init::@3#1] -- pbuz1=pbuc1 + //SEG587 [271] phi (byte*) mulf_init::sqr2_hi#2 = (const byte[512]) mulf_sqr2_hi#0 [phi:mulf_init::@2->mulf_init::@3#1] -- pbuz1=pbuc1 lda #mulf_sqr2_hi sta sqr2_hi+1 - //SEG529 [245] phi (byte*) mulf_init::sqr2_lo#2 = (const byte[512]) mulf_sqr2_lo#0 [phi:mulf_init::@2->mulf_init::@3#2] -- pbuz1=pbuc1 + //SEG588 [271] phi (byte*) mulf_init::sqr2_lo#2 = (const byte[512]) mulf_sqr2_lo#0 [phi:mulf_init::@2->mulf_init::@3#2] -- pbuz1=pbuc1 lda #mulf_sqr2_lo sta sqr2_lo+1 - //SEG530 [245] phi (byte) mulf_init::x_255#2 = ((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init::@2->mulf_init::@3#3] -- vbuz1=vbuc1 + //SEG589 [271] phi (byte) mulf_init::x_255#2 = ((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init::@2->mulf_init::@3#3] -- vbuz1=vbuc1 lda #-1 sta x_255 jmp b3 - //SEG531 [245] phi from mulf_init::@4 to mulf_init::@3 [phi:mulf_init::@4->mulf_init::@3] + //SEG590 [271] phi from mulf_init::@4 to mulf_init::@3 [phi:mulf_init::@4->mulf_init::@3] b3_from_b4: - //SEG532 [245] phi (byte) mulf_init::dir#2 = (byte) mulf_init::dir#3 [phi:mulf_init::@4->mulf_init::@3#0] -- register_copy - //SEG533 [245] phi (byte*) mulf_init::sqr2_hi#2 = (byte*) mulf_init::sqr2_hi#1 [phi:mulf_init::@4->mulf_init::@3#1] -- register_copy - //SEG534 [245] phi (byte*) mulf_init::sqr2_lo#2 = (byte*) mulf_init::sqr2_lo#1 [phi:mulf_init::@4->mulf_init::@3#2] -- register_copy - //SEG535 [245] phi (byte) mulf_init::x_255#2 = (byte) mulf_init::x_255#1 [phi:mulf_init::@4->mulf_init::@3#3] -- register_copy + //SEG591 [271] phi (byte) mulf_init::dir#2 = (byte) mulf_init::dir#3 [phi:mulf_init::@4->mulf_init::@3#0] -- register_copy + //SEG592 [271] phi (byte*) mulf_init::sqr2_hi#2 = (byte*) mulf_init::sqr2_hi#1 [phi:mulf_init::@4->mulf_init::@3#1] -- register_copy + //SEG593 [271] phi (byte*) mulf_init::sqr2_lo#2 = (byte*) mulf_init::sqr2_lo#1 [phi:mulf_init::@4->mulf_init::@3#2] -- register_copy + //SEG594 [271] phi (byte) mulf_init::x_255#2 = (byte) mulf_init::x_255#1 [phi:mulf_init::@4->mulf_init::@3#3] -- register_copy jmp b3 - //SEG536 mulf_init::@3 + //SEG595 mulf_init::@3 b3: - //SEG537 [246] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG596 [272] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy x_255 lda mulf_sqr1_lo,y ldy #0 sta (sqr2_lo),y - //SEG538 [247] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG597 [273] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy x_255 lda mulf_sqr1_hi,y ldy #0 sta (sqr2_hi),y - //SEG539 [248] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG598 [274] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ) -- pbuz1=_inc_pbuz1 inc sqr2_hi bne !+ inc sqr2_hi+1 !: - //SEG540 [249] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) -- vbuz1=vbuz1_plus_vbuz2 + //SEG599 [275] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) -- vbuz1=vbuz1_plus_vbuz2 lda x_255 clc adc dir sta x_255 - //SEG541 [250] if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@12 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) -- vbuz1_neq_0_then_la1 + //SEG600 [276] if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@12 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) -- vbuz1_neq_0_then_la1 lda x_255 bne b12_from_b3 - //SEG542 [251] phi from mulf_init::@3 to mulf_init::@4 [phi:mulf_init::@3->mulf_init::@4] + //SEG601 [277] phi from mulf_init::@3 to mulf_init::@4 [phi:mulf_init::@3->mulf_init::@4] b4_from_b3: - //SEG543 [251] phi (byte) mulf_init::dir#3 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init::@3->mulf_init::@4#0] -- vbuz1=vbuc1 + //SEG602 [277] phi (byte) mulf_init::dir#3 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init::@3->mulf_init::@4#0] -- vbuz1=vbuc1 lda #1 sta dir jmp b4 - //SEG544 mulf_init::@4 + //SEG603 mulf_init::@4 b4: - //SEG545 [252] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) -- pbuz1=_inc_pbuz1 + //SEG604 [278] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) -- pbuz1=_inc_pbuz1 inc sqr2_lo bne !+ inc sqr2_lo+1 !: - //SEG546 [253] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) -- pbuz1_neq_pbuc1_then_la1 + //SEG605 [279] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) -- pbuz1_neq_pbuc1_then_la1 lda sqr2_lo+1 cmp #>mulf_sqr2_lo+$1ff bne b3_from_b4 @@ -8016,56 +8938,56 @@ mulf_init: { cmp #mulf_init::@12] + //SEG611 [283] phi from mulf_init::@3 to mulf_init::@12 [phi:mulf_init::@3->mulf_init::@12] b12_from_b3: jmp b12 - //SEG553 mulf_init::@12 + //SEG612 mulf_init::@12 b12: - //SEG554 [251] phi from mulf_init::@12 to mulf_init::@4 [phi:mulf_init::@12->mulf_init::@4] + //SEG613 [277] phi from mulf_init::@12 to mulf_init::@4 [phi:mulf_init::@12->mulf_init::@4] b4_from_b12: - //SEG555 [251] phi (byte) mulf_init::dir#3 = (byte) mulf_init::dir#2 [phi:mulf_init::@12->mulf_init::@4#0] -- register_copy + //SEG614 [277] phi (byte) mulf_init::dir#3 = (byte) mulf_init::dir#2 [phi:mulf_init::@12->mulf_init::@4#0] -- register_copy jmp b4 } -//SEG556 print_cls +//SEG615 print_cls print_cls: { - .label sc = $30 - //SEG557 [259] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] + .label sc = $36 + //SEG616 [285] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] b1_from_print_cls: - //SEG558 [259] phi (byte*) print_cls::sc#2 = (const byte*) SCREEN#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 + //SEG617 [285] 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 - //SEG559 [259] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] + //SEG618 [285] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] b1_from_b1: - //SEG560 [259] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy + //SEG619 [285] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy jmp b1 - //SEG561 print_cls::@1 + //SEG620 print_cls::@1 b1: - //SEG562 [260] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 + //SEG621 [286] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG563 [261] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG622 [287] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 !: - //SEG564 [262] 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 [ print_cls::sc#1 ] ) -- pbuz1_neq_pbuc1_then_la1 + //SEG623 [288] 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 [ print_cls::sc#1 ] ) -- pbuz1_neq_pbuc1_then_la1 lda sc+1 cmp #>SCREEN+$3e8 bne b1_from_b1 @@ -8073,9 +8995,9 @@ print_cls: { cmp #=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#122 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#122 print_sword::w#3 ] ) always clobbers reg byte a -Statement [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) always clobbers reg byte a -Statement [83] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 [ char_cursor#124 print_word::w#11 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#124 print_word::w#11 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#124 print_word::w#11 ] ) always clobbers reg byte a -Statement [87] (byte) print_byte::b#1 ← > (word) print_word::w#5 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:212 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ) always clobbers reg byte a -Statement [89] (byte) print_byte::b#2 ← < (word) print_word::w#5 [ char_cursor#17 print_byte::b#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 print_byte::b#2 ] ) always clobbers reg byte a -Statement [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] ) always clobbers reg byte a -Statement [101] *((byte*) char_cursor#78) ← (byte) print_char::ch#4 [ char_cursor#78 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] ) always clobbers reg byte y +Statement [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#2 line_cursor#1 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:3 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 ] +Statement [24] (signed word) mul8s_slowfast_compare::ms#0 ← (signed word) muls8s::return#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [28] (signed word) mulf8s::return#2 ← (signed word)(word) mulf8s::m#4 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ) always clobbers reg byte a +Statement [29] (signed word) mul8s_slowfast_compare::ma#0 ← (signed word) mulf8s::return#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [30] if((signed word) mul8s_slowfast_compare::ms#0==(signed word) mul8s_slowfast_compare::ma#0) goto mul8s_slowfast_compare::@3 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [31] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [34] (signed word) signed_multiply_error::ms#0 ← (signed word) mul8s_slowfast_compare::ms#0 [ mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:68 [ signed_multiply_error::a#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:69 [ signed_multiply_error::b#0 ] +Statement [35] (signed word) signed_multiply_error::ma#0 ← (signed word) mul8s_slowfast_compare::ma#0 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [42] (byte*~) char_cursor#179 ← (byte*) line_cursor#1 [ char_cursor#179 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ char_cursor#179 line_cursor#1 ] ) always clobbers reg byte a +Statement [48] (byte*) line_cursor#1 ← (byte*) line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 char_cursor#127 ] ) always clobbers reg byte a +Statement [49] if((byte*) line_cursor#1<(byte*) char_cursor#127) goto print_ln::@1 [ line_cursor#1 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 char_cursor#127 ] ) always clobbers reg byte a +Statement [53] if(*((byte*) print_str::str#15)!=(byte) '@') goto print_str::@2 [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) always clobbers reg byte a reg byte y +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:68 [ signed_multiply_error::a#0 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:69 [ signed_multiply_error::b#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:99 [ multiply_error::a#0 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:99 [ multiply_error::a#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:100 [ multiply_error::b#0 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:100 [ multiply_error::b#0 ] +Statement [55] *((byte*) char_cursor#126) ← *((byte*) print_str::str#15) [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) always clobbers reg byte a reg byte y +Statement [58] (byte*~) char_cursor#187 ← (byte*) line_cursor#1 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#187 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#187 ] ) always clobbers reg byte a +Statement [68] (signed word) print_sword::w#1 ← (signed word) signed_multiply_error::ms#0 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#1 ] ) always clobbers reg byte a +Statement [72] (signed word) print_sword::w#2 ← (signed word) signed_multiply_error::ma#0 [ line_cursor#1 char_cursor#126 print_sword::w#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#126 print_sword::w#2 ] ) always clobbers reg byte a +Statement [78] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#126 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#126 print_sword::w#3 ] ) always clobbers reg byte a +Statement [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) always clobbers reg byte a +Statement [83] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#4 [ char_cursor#128 print_word::w#13 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#128 print_word::w#13 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#128 print_word::w#13 ] ) always clobbers reg byte a +Statement [87] (byte) print_byte::b#1 ← > (word) print_word::w#6 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:238 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ) always clobbers reg byte a +Statement [89] (byte) print_byte::b#2 ← < (word) print_word::w#6 [ char_cursor#17 print_byte::b#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 print_byte::b#2 ] ) always clobbers reg byte a +Statement [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] ) always clobbers reg byte a +Statement [101] *((byte*) char_cursor#80) ← (byte) print_char::ch#4 [ char_cursor#80 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:12 [ print_byte::b#5 print_byte::b#3 print_byte::b#4 print_byte::b#9 print_byte::b#1 print_byte::b#2 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:16 [ print_sbyte::b#4 print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#0 ] -Statement [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:56 [ mulf8s::a#0 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:57 [ mulf8s::b#0 ] -Statement [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) always clobbers reg byte a -Statement [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) always clobbers reg byte a -Statement [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) always clobbers reg byte a -Statement [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) always clobbers reg byte a -Statement [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) always clobbers reg byte a +Statement [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:62 [ mulf8s::a#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:63 [ mulf8s::b#0 ] +Statement [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) always clobbers reg byte a +Statement [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) always clobbers reg byte a +Statement [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) always clobbers reg byte a +Statement [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) always clobbers reg byte a +Statement [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) always clobbers reg byte a Statement asm { ldamemA stasm1+1 stasm3+1 eor#$ff stasm2+1 stasm4+1 ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x stamemA sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } always clobbers reg byte a reg byte x -Removing always clobbered register reg byte x as potential for zp ZP_BYTE:2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 ] -Removing always clobbered register reg byte x as potential for zp ZP_BYTE:3 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 ] -Removing always clobbered register reg byte x as potential for zp ZP_BYTE:56 [ mulf8s::a#0 ] -Removing always clobbered register reg byte x as potential for zp ZP_BYTE:57 [ mulf8s::b#0 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:25 [ multiply_results_compare::a#6 multiply_results_compare::a#1 ] -Removing always clobbered register reg byte x as potential for zp ZP_BYTE:25 [ multiply_results_compare::a#6 multiply_results_compare::a#1 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:26 [ multiply_results_compare::b#2 multiply_results_compare::b#1 ] -Removing always clobbered register reg byte x as potential for zp ZP_BYTE:26 [ multiply_results_compare::b#2 multiply_results_compare::b#1 ] -Statement [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#0 ] ) always clobbers reg byte a -Statement [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:50 [ muls8s::a#0 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:51 [ muls8s::b#0 ] +Removing always clobbered register reg byte x as potential for zp ZP_BYTE:2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 ] +Removing always clobbered register reg byte x as potential for zp ZP_BYTE:3 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 ] +Removing always clobbered register reg byte x as potential for zp ZP_BYTE:62 [ mulf8s::a#0 ] +Removing always clobbered register reg byte x as potential for zp ZP_BYTE:63 [ mulf8s::b#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:25 [ mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 ] +Removing always clobbered register reg byte x as potential for zp ZP_BYTE:25 [ mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:26 [ mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::b#1 ] +Removing always clobbered register reg byte x as potential for zp ZP_BYTE:26 [ mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::b#1 ] +Statement [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#0 ] ) always clobbers reg byte a +Statement [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:56 [ muls8s::a#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:57 [ muls8s::b#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:21 [ muls8s::i#2 muls8s::i#1 ] -Statement [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) always clobbers reg byte a +Statement [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:24 [ muls8s::j#2 muls8s::j#1 ] -Statement [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ) always clobbers reg byte a -Statement [154] (word) multiply_results_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) always clobbers reg byte a -Statement [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ) always clobbers reg byte a -Statement [159] (word) multiply_results_compare::ma#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) always clobbers reg byte a -Statement [160] if((word) multiply_results_compare::ms#0==(word) multiply_results_compare::ma#0) goto multiply_results_compare::@3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) always clobbers reg byte a -Statement [161] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) always clobbers reg byte a -Statement [164] (word) multiply_error::ms#0 ← (word) multiply_results_compare::ms#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) always clobbers reg byte a -Statement [165] (word) multiply_error::ma#0 ← (word) multiply_results_compare::ma#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) always clobbers reg byte a -Statement [186] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ) always clobbers reg byte a -Statement [190] (word) print_word::w#4 ← (word) multiply_error::ma#0 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ) always clobbers reg byte a -Statement [197] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:78 [ muls8u::a#0 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:79 [ muls8u::b#0 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:27 [ muls8u::i#2 muls8u::i#1 ] -Statement [204] if(*((byte*) multiply_tables_compare::kc_sqr#2)==*((byte*) multiply_tables_compare::asm_sqr#2)) goto multiply_tables_compare::@2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) always clobbers reg byte a reg byte y -Statement [205] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) always clobbers reg byte a -Statement [207] (word~) print_word::w#9 ← (word)(byte*) multiply_tables_compare::asm_sqr#2 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ) always clobbers reg byte a -Statement [211] (word~) print_word::w#10 ← (word)(byte*) multiply_tables_compare::kc_sqr#2 [ char_cursor#122 print_word::w#10 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#10 ] ) always clobbers reg byte a -Statement [217] if((byte*) multiply_tables_compare::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto multiply_tables_compare::@1 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ) always clobbers reg byte a -Statement [222] (byte*~) char_cursor#201 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#201 ] ( main:2::multiply_tables_compare:11 [ line_cursor#1 char_cursor#201 ] ) always clobbers reg byte a +Statement [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ) always clobbers reg byte a +Statement [154] (word) mul8u_slowfast_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) always clobbers reg byte a +Statement [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ) always clobbers reg byte a +Statement [159] (word) mul8u_slowfast_compare::mf#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ) always clobbers reg byte a +Statement [163] (word) mul8u::return#2 ← (word) mul8u::res#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ) always clobbers reg byte a +Statement [164] (word) mul8u_slowfast_compare::mn#0 ← (word) mul8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) always clobbers reg byte a +Statement [165] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mf#0) goto mul8u_slowfast_compare::@3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) always clobbers reg byte a +Statement [168] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mn#0) goto mul8u_slowfast_compare::@20 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:27 [ mul8u_slowfast_compare::ok#3 mul8u_slowfast_compare::ok#4 ] +Statement [171] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) always clobbers reg byte a +Statement [174] (word) multiply_error::ms#0 ← (word) mul8u_slowfast_compare::ms#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) always clobbers reg byte a +Statement [175] (word) multiply_error::mn#0 ← (word) mul8u_slowfast_compare::mn#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ) always clobbers reg byte a +Statement [176] (word) multiply_error::mf#0 ← (word) mul8u_slowfast_compare::mf#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) always clobbers reg byte a +Statement [198] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ) always clobbers reg byte a +Statement [202] (word) print_word::w#4 ← (word) multiply_error::mn#0 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ) always clobbers reg byte a +Statement [206] (word) print_word::w#5 ← (word) multiply_error::mf#0 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ) always clobbers reg byte a +Statement [211] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::mb#0 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:28 [ mul8u::a#2 mul8u::a#1 mul8u::a#0 ] +Statement [215] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a +Statement [217] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a +Statement [223] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:84 [ muls8u::a#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:85 [ muls8u::b#0 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:33 [ muls8u::i#2 muls8u::i#1 ] +Statement [230] if(*((byte*) mulf_tables_cmp::kc_sqr#2)==*((byte*) mulf_tables_cmp::asm_sqr#2)) goto mulf_tables_cmp::@2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) always clobbers reg byte a reg byte y +Statement [231] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) always clobbers reg byte a +Statement [233] (word~) print_word::w#8 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ) always clobbers reg byte a +Statement [237] (word~) print_word::w#9 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 [ char_cursor#126 print_word::w#9 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#9 ] ) always clobbers reg byte a +Statement [243] if((byte*) mulf_tables_cmp::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto mulf_tables_cmp::@1 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) always clobbers reg byte a +Statement [248] (byte*~) char_cursor#212 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#212 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#1 char_cursor#212 ] ) always clobbers reg byte a Statement asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } always clobbers reg byte a reg byte x reg byte y -Statement [224] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [225] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [226] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [227] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [232] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) always clobbers reg byte a -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:39 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:34 [ mulf_init::c#2 mulf_init::c#1 ] -Statement [237] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) always clobbers reg byte a -Statement [238] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:34 [ mulf_init::c#2 mulf_init::c#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:39 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] -Statement [239] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) always clobbers reg byte a -Statement [240] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y -Statement [242] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a -Statement [244] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a -Statement [246] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:42 [ mulf_init::x_255#2 mulf_init::x_255#1 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:42 [ mulf_init::x_255#2 mulf_init::x_255#1 ] -Removing always clobbered register reg byte a as potential for zp ZP_BYTE:47 [ mulf_init::dir#2 mulf_init::dir#3 ] -Removing always clobbered register reg byte y as potential for zp ZP_BYTE:47 [ mulf_init::dir#2 mulf_init::dir#3 ] -Statement [247] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y -Statement [249] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) always clobbers reg byte a -Statement [253] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) always clobbers reg byte a -Statement [254] *((const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a -Statement [255] *((const byte[512]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a -Statement [260] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y -Statement [262] 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 [ print_cls::sc#1 ] ) always clobbers reg byte a +Statement [250] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [251] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [252] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [253] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [258] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) always clobbers reg byte a +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:45 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:40 [ mulf_init::c#2 mulf_init::c#1 ] +Statement [263] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) always clobbers reg byte a +Statement [264] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:40 [ mulf_init::c#2 mulf_init::c#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:45 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] +Statement [265] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) always clobbers reg byte a +Statement [266] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y +Statement [268] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a +Statement [270] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a +Statement [272] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:48 [ mulf_init::x_255#2 mulf_init::x_255#1 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:48 [ mulf_init::x_255#2 mulf_init::x_255#1 ] +Removing always clobbered register reg byte a as potential for zp ZP_BYTE:53 [ mulf_init::dir#2 mulf_init::dir#3 ] +Removing always clobbered register reg byte y as potential for zp ZP_BYTE:53 [ mulf_init::dir#2 mulf_init::dir#3 ] +Statement [273] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y +Statement [275] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) always clobbers reg byte a +Statement [279] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) always clobbers reg byte a +Statement [280] *((const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a +Statement [281] *((const byte[512]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a +Statement [286] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [288] 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 [ print_cls::sc#1 ] ) always clobbers reg byte a Statement [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#2 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#2 line_cursor#1 ] ) always clobbers reg byte a -Statement [24] (signed word) signed_multiply_results_compare::ms#0 ← (signed word) muls8s::return#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 ] ) always clobbers reg byte a -Statement [28] (signed word) mulf8s::return#2 ← (signed word)(word) mulf8s::m#4 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ) always clobbers reg byte a -Statement [29] (signed word) signed_multiply_results_compare::ma#0 ← (signed word) mulf8s::return#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) always clobbers reg byte a -Statement [30] if((signed word) signed_multiply_results_compare::ms#0==(signed word) signed_multiply_results_compare::ma#0) goto signed_multiply_results_compare::@3 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) always clobbers reg byte a -Statement [31] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) always clobbers reg byte a -Statement [34] (signed word) signed_multiply_error::ms#0 ← (signed word) signed_multiply_results_compare::ms#0 [ signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ) always clobbers reg byte a -Statement [35] (signed word) signed_multiply_error::ma#0 ← (signed word) signed_multiply_results_compare::ma#0 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ) always clobbers reg byte a -Statement [42] (byte*~) char_cursor#180 ← (byte*) line_cursor#1 [ char_cursor#180 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ char_cursor#180 line_cursor#1 ] ) always clobbers reg byte a -Statement [48] (byte*) line_cursor#1 ← (byte*) line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#123 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 char_cursor#123 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 char_cursor#123 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 char_cursor#123 ] ) always clobbers reg byte a -Statement [49] if((byte*) line_cursor#1<(byte*) char_cursor#123) goto print_ln::@1 [ line_cursor#1 char_cursor#123 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 char_cursor#123 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 char_cursor#123 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 char_cursor#123 ] ) always clobbers reg byte a -Statement [53] if(*((byte*) print_str::str#14)!=(byte) '@') goto print_str::@2 [ char_cursor#122 print_str::str#14 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 print_str::str#14 ] ) always clobbers reg byte a reg byte y -Statement [55] *((byte*) char_cursor#122) ← *((byte*) print_str::str#14) [ char_cursor#122 print_str::str#14 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 print_str::str#14 ] ) always clobbers reg byte a reg byte y -Statement [58] (byte*~) char_cursor#176 ← (byte*) line_cursor#1 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#176 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#176 ] ) always clobbers reg byte a -Statement [68] (signed word) print_sword::w#1 ← (signed word) signed_multiply_error::ms#0 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#1 ] ) always clobbers reg byte a -Statement [72] (signed word) print_sword::w#2 ← (signed word) signed_multiply_error::ma#0 [ line_cursor#1 char_cursor#122 print_sword::w#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#122 print_sword::w#2 ] ) always clobbers reg byte a -Statement [78] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#122 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#122 print_sword::w#3 ] ) always clobbers reg byte a -Statement [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) always clobbers reg byte a -Statement [83] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 [ char_cursor#124 print_word::w#11 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#124 print_word::w#11 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#124 print_word::w#11 ] ) always clobbers reg byte a -Statement [87] (byte) print_byte::b#1 ← > (word) print_word::w#5 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:212 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ) always clobbers reg byte a -Statement [89] (byte) print_byte::b#2 ← < (word) print_word::w#5 [ char_cursor#17 print_byte::b#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 print_byte::b#2 ] ) always clobbers reg byte a -Statement [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] ) always clobbers reg byte a -Statement [101] *((byte*) char_cursor#78) ← (byte) print_char::ch#4 [ char_cursor#78 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] ) always clobbers reg byte y -Statement [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) always clobbers reg byte a -Statement [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) always clobbers reg byte a -Statement [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) always clobbers reg byte a -Statement [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) always clobbers reg byte a -Statement [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) always clobbers reg byte a -Statement [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) always clobbers reg byte a +Statement [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#2 line_cursor#1 ] ) always clobbers reg byte a +Statement [24] (signed word) mul8s_slowfast_compare::ms#0 ← (signed word) muls8s::return#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [28] (signed word) mulf8s::return#2 ← (signed word)(word) mulf8s::m#4 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ) always clobbers reg byte a +Statement [29] (signed word) mul8s_slowfast_compare::ma#0 ← (signed word) mulf8s::return#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [30] if((signed word) mul8s_slowfast_compare::ms#0==(signed word) mul8s_slowfast_compare::ma#0) goto mul8s_slowfast_compare::@3 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [31] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [34] (signed word) signed_multiply_error::ms#0 ← (signed word) mul8s_slowfast_compare::ms#0 [ mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [35] (signed word) signed_multiply_error::ma#0 ← (signed word) mul8s_slowfast_compare::ma#0 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ) always clobbers reg byte a +Statement [42] (byte*~) char_cursor#179 ← (byte*) line_cursor#1 [ char_cursor#179 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ char_cursor#179 line_cursor#1 ] ) always clobbers reg byte a +Statement [48] (byte*) line_cursor#1 ← (byte*) line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 char_cursor#127 ] ) always clobbers reg byte a +Statement [49] if((byte*) line_cursor#1<(byte*) char_cursor#127) goto print_ln::@1 [ line_cursor#1 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 char_cursor#127 ] ) always clobbers reg byte a +Statement [53] if(*((byte*) print_str::str#15)!=(byte) '@') goto print_str::@2 [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) always clobbers reg byte a reg byte y +Statement [55] *((byte*) char_cursor#126) ← *((byte*) print_str::str#15) [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) always clobbers reg byte a reg byte y +Statement [58] (byte*~) char_cursor#187 ← (byte*) line_cursor#1 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#187 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#187 ] ) always clobbers reg byte a +Statement [68] (signed word) print_sword::w#1 ← (signed word) signed_multiply_error::ms#0 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#1 ] ) always clobbers reg byte a +Statement [72] (signed word) print_sword::w#2 ← (signed word) signed_multiply_error::ma#0 [ line_cursor#1 char_cursor#126 print_sword::w#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#126 print_sword::w#2 ] ) always clobbers reg byte a +Statement [78] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#126 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#126 print_sword::w#3 ] ) always clobbers reg byte a +Statement [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) always clobbers reg byte a +Statement [83] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#4 [ char_cursor#128 print_word::w#13 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#128 print_word::w#13 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#128 print_word::w#13 ] ) always clobbers reg byte a +Statement [87] (byte) print_byte::b#1 ← > (word) print_word::w#6 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:238 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ) always clobbers reg byte a +Statement [89] (byte) print_byte::b#2 ← < (word) print_word::w#6 [ char_cursor#17 print_byte::b#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 print_byte::b#2 ] ) always clobbers reg byte a +Statement [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] ) always clobbers reg byte a +Statement [101] *((byte*) char_cursor#80) ← (byte) print_char::ch#4 [ char_cursor#80 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] ) always clobbers reg byte y +Statement [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) always clobbers reg byte a +Statement [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) always clobbers reg byte a +Statement [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) always clobbers reg byte a +Statement [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) always clobbers reg byte a +Statement [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) always clobbers reg byte a +Statement [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) always clobbers reg byte a Statement asm { ldamemA stasm1+1 stasm3+1 eor#$ff stasm2+1 stasm4+1 ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x stamemA sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } always clobbers reg byte a reg byte x -Statement [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#0 ] ) always clobbers reg byte a -Statement [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) always clobbers reg byte a -Statement [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) always clobbers reg byte a -Statement [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ) always clobbers reg byte a -Statement [154] (word) multiply_results_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) always clobbers reg byte a -Statement [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ) always clobbers reg byte a -Statement [159] (word) multiply_results_compare::ma#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) always clobbers reg byte a -Statement [160] if((word) multiply_results_compare::ms#0==(word) multiply_results_compare::ma#0) goto multiply_results_compare::@3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) always clobbers reg byte a -Statement [161] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) always clobbers reg byte a -Statement [164] (word) multiply_error::ms#0 ← (word) multiply_results_compare::ms#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) always clobbers reg byte a -Statement [165] (word) multiply_error::ma#0 ← (word) multiply_results_compare::ma#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) always clobbers reg byte a -Statement [186] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ) always clobbers reg byte a -Statement [190] (word) print_word::w#4 ← (word) multiply_error::ma#0 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ) always clobbers reg byte a -Statement [197] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) always clobbers reg byte a -Statement [204] if(*((byte*) multiply_tables_compare::kc_sqr#2)==*((byte*) multiply_tables_compare::asm_sqr#2)) goto multiply_tables_compare::@2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) always clobbers reg byte a reg byte y -Statement [205] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) always clobbers reg byte a -Statement [207] (word~) print_word::w#9 ← (word)(byte*) multiply_tables_compare::asm_sqr#2 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ) always clobbers reg byte a -Statement [211] (word~) print_word::w#10 ← (word)(byte*) multiply_tables_compare::kc_sqr#2 [ char_cursor#122 print_word::w#10 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#10 ] ) always clobbers reg byte a -Statement [217] if((byte*) multiply_tables_compare::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto multiply_tables_compare::@1 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ) always clobbers reg byte a -Statement [222] (byte*~) char_cursor#201 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#201 ] ( main:2::multiply_tables_compare:11 [ line_cursor#1 char_cursor#201 ] ) always clobbers reg byte a +Statement [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#0 ] ) always clobbers reg byte a +Statement [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) always clobbers reg byte a +Statement [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) always clobbers reg byte a +Statement [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ) always clobbers reg byte a +Statement [154] (word) mul8u_slowfast_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) always clobbers reg byte a +Statement [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ) always clobbers reg byte a +Statement [159] (word) mul8u_slowfast_compare::mf#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ) always clobbers reg byte a +Statement [163] (word) mul8u::return#2 ← (word) mul8u::res#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ) always clobbers reg byte a +Statement [164] (word) mul8u_slowfast_compare::mn#0 ← (word) mul8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) always clobbers reg byte a +Statement [165] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mf#0) goto mul8u_slowfast_compare::@3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) always clobbers reg byte a +Statement [168] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mn#0) goto mul8u_slowfast_compare::@20 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ) always clobbers reg byte a +Statement [171] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) always clobbers reg byte a +Statement [174] (word) multiply_error::ms#0 ← (word) mul8u_slowfast_compare::ms#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) always clobbers reg byte a +Statement [175] (word) multiply_error::mn#0 ← (word) mul8u_slowfast_compare::mn#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ) always clobbers reg byte a +Statement [176] (word) multiply_error::mf#0 ← (word) mul8u_slowfast_compare::mf#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) always clobbers reg byte a +Statement [198] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ) always clobbers reg byte a +Statement [202] (word) print_word::w#4 ← (word) multiply_error::mn#0 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ) always clobbers reg byte a +Statement [206] (word) print_word::w#5 ← (word) multiply_error::mf#0 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ) always clobbers reg byte a +Statement [211] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::mb#0 ] ) always clobbers reg byte a +Statement [215] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a +Statement [217] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a +Statement [223] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) always clobbers reg byte a +Statement [230] if(*((byte*) mulf_tables_cmp::kc_sqr#2)==*((byte*) mulf_tables_cmp::asm_sqr#2)) goto mulf_tables_cmp::@2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) always clobbers reg byte a reg byte y +Statement [231] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) always clobbers reg byte a +Statement [233] (word~) print_word::w#8 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ) always clobbers reg byte a +Statement [237] (word~) print_word::w#9 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 [ char_cursor#126 print_word::w#9 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#9 ] ) always clobbers reg byte a +Statement [243] if((byte*) mulf_tables_cmp::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto mulf_tables_cmp::@1 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) always clobbers reg byte a +Statement [248] (byte*~) char_cursor#212 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#212 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#1 char_cursor#212 ] ) always clobbers reg byte a Statement asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } always clobbers reg byte a reg byte x reg byte y -Statement [224] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [225] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [226] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [227] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [232] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) always clobbers reg byte a -Statement [237] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) always clobbers reg byte a -Statement [238] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y -Statement [239] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) always clobbers reg byte a -Statement [240] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y -Statement [242] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a -Statement [244] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a -Statement [246] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y -Statement [247] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y -Statement [249] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) always clobbers reg byte a -Statement [253] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) always clobbers reg byte a -Statement [254] *((const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a -Statement [255] *((const byte[512]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a -Statement [260] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y -Statement [262] 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 [ print_cls::sc#1 ] ) always clobbers reg byte a -Potential registers zp ZP_BYTE:2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 ] : zp ZP_BYTE:2 , reg byte y , -Potential registers zp ZP_BYTE:3 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 ] : zp ZP_BYTE:3 , reg byte y , -Potential registers zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#10 line_cursor#1 ] : zp ZP_WORD:4 , -Potential registers zp ZP_WORD:6 [ print_str::str#14 print_str::str#16 print_str::str#0 ] : zp ZP_WORD:6 , +Statement [250] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [251] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [252] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [253] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [258] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) always clobbers reg byte a +Statement [263] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) always clobbers reg byte a +Statement [264] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y +Statement [265] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) always clobbers reg byte a +Statement [266] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y +Statement [268] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a +Statement [270] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a +Statement [272] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y +Statement [273] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y +Statement [275] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) always clobbers reg byte a +Statement [279] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) always clobbers reg byte a +Statement [280] *((const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a +Statement [281] *((const byte[512]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) 511) ← *((const byte[512]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) 256) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a +Statement [286] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [288] 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 [ print_cls::sc#1 ] ) always clobbers reg byte a +Potential registers zp ZP_BYTE:2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 ] : zp ZP_BYTE:2 , reg byte y , +Potential registers zp ZP_BYTE:3 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 ] : zp ZP_BYTE:3 , reg byte y , +Potential registers zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#1 line_cursor#10 ] : zp ZP_WORD:4 , +Potential registers zp ZP_WORD:6 [ print_str::str#15 print_str::str#17 print_str::str#0 ] : zp ZP_WORD:6 , Potential registers zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 ] : zp ZP_WORD:8 , -Potential registers zp ZP_WORD:10 [ print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 ] : zp ZP_WORD:10 , +Potential registers zp ZP_WORD:10 [ print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 ] : zp ZP_WORD:10 , Potential registers zp ZP_BYTE:12 [ print_byte::b#5 print_byte::b#3 print_byte::b#4 print_byte::b#9 print_byte::b#1 print_byte::b#2 ] : zp ZP_BYTE:12 , reg byte a , reg byte x , Potential registers zp ZP_BYTE:13 [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ] : zp ZP_BYTE:13 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:14 [ char_cursor#78 char_cursor#129 char_cursor#128 char_cursor#124 char_cursor#141 char_cursor#30 char_cursor#123 char_cursor#17 char_cursor#122 char_cursor#176 char_cursor#180 char_cursor#1 char_cursor#126 char_cursor#201 ] : zp ZP_WORD:14 , +Potential registers zp ZP_WORD:14 [ char_cursor#80 char_cursor#133 char_cursor#132 char_cursor#128 char_cursor#145 char_cursor#179 char_cursor#30 char_cursor#127 char_cursor#126 char_cursor#17 char_cursor#187 char_cursor#1 char_cursor#130 char_cursor#212 ] : zp ZP_WORD:14 , Potential registers zp ZP_BYTE:16 [ print_sbyte::b#4 print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#0 ] : zp ZP_BYTE:16 , reg byte a , reg byte x , Potential registers zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 ] : zp ZP_WORD:17 , -Potential registers zp ZP_BYTE:19 [ mulf8u::a#2 mulf8u::a#3 mulf8u::a#1 ] : zp ZP_BYTE:19 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:20 [ mulf8u::b#2 mulf8u::b#3 mulf8u::b#1 ] : zp ZP_BYTE:20 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:19 [ mulf8u::a#2 mulf8u::a#1 mulf8u::a#4 ] : zp ZP_BYTE:19 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:20 [ mulf8u::b#2 mulf8u::b#1 mulf8u::b#4 ] : zp ZP_BYTE:20 , reg byte a , reg byte x , reg byte y , Potential registers zp ZP_BYTE:21 [ muls8s::i#2 muls8s::i#1 ] : zp ZP_BYTE:21 , reg byte x , reg byte y , Potential registers zp ZP_WORD:22 [ muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 ] : zp ZP_WORD:22 , Potential registers zp ZP_BYTE:24 [ muls8s::j#2 muls8s::j#1 ] : zp ZP_BYTE:24 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:25 [ multiply_results_compare::a#6 multiply_results_compare::a#1 ] : zp ZP_BYTE:25 , reg byte y , -Potential registers zp ZP_BYTE:26 [ multiply_results_compare::b#2 multiply_results_compare::b#1 ] : zp ZP_BYTE:26 , reg byte y , -Potential registers zp ZP_BYTE:27 [ muls8u::i#2 muls8u::i#1 ] : zp ZP_BYTE:27 , reg byte x , reg byte y , -Potential registers zp ZP_WORD:28 [ muls8u::return#0 muls8u::m#3 muls8u::m#1 ] : zp ZP_WORD:28 , -Potential registers zp ZP_WORD:30 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::kc_sqr#1 ] : zp ZP_WORD:30 , -Potential registers zp ZP_WORD:32 [ multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 ] : zp ZP_WORD:32 , -Potential registers zp ZP_BYTE:34 [ mulf_init::c#2 mulf_init::c#1 ] : zp ZP_BYTE:34 , reg byte x , -Potential registers zp ZP_WORD:35 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] : zp ZP_WORD:35 , -Potential registers zp ZP_WORD:37 [ mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] : zp ZP_WORD:37 , -Potential registers zp ZP_BYTE:39 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] : zp ZP_BYTE:39 , reg byte x , -Potential registers zp ZP_WORD:40 [ mulf_init::sqr#3 mulf_init::sqr#4 mulf_init::sqr#1 mulf_init::sqr#2 ] : zp ZP_WORD:40 , -Potential registers zp ZP_BYTE:42 [ mulf_init::x_255#2 mulf_init::x_255#1 ] : zp ZP_BYTE:42 , reg byte x , -Potential registers zp ZP_WORD:43 [ mulf_init::sqr2_lo#2 mulf_init::sqr2_lo#1 ] : zp ZP_WORD:43 , -Potential registers zp ZP_WORD:45 [ mulf_init::sqr2_hi#2 mulf_init::sqr2_hi#1 ] : zp ZP_WORD:45 , -Potential registers zp ZP_BYTE:47 [ mulf_init::dir#2 mulf_init::dir#3 ] : zp ZP_BYTE:47 , reg byte x , -Potential registers zp ZP_WORD:48 [ print_cls::sc#2 print_cls::sc#1 ] : zp ZP_WORD:48 , -Potential registers zp ZP_BYTE:50 [ muls8s::a#0 ] : zp ZP_BYTE:50 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:51 [ muls8s::b#0 ] : zp ZP_BYTE:51 , reg byte x , reg byte y , -Potential registers zp ZP_WORD:52 [ muls8s::return#2 ] : zp ZP_WORD:52 , -Potential registers zp ZP_WORD:54 [ signed_multiply_results_compare::ms#0 ] : zp ZP_WORD:54 , -Potential registers zp ZP_BYTE:56 [ mulf8s::a#0 ] : zp ZP_BYTE:56 , reg byte y , -Potential registers zp ZP_BYTE:57 [ mulf8s::b#0 ] : zp ZP_BYTE:57 , reg byte y , -Potential registers zp ZP_WORD:58 [ mulf8s::return#2 ] : zp ZP_WORD:58 , -Potential registers zp ZP_WORD:60 [ signed_multiply_results_compare::ma#0 ] : zp ZP_WORD:60 , -Potential registers zp ZP_BYTE:62 [ signed_multiply_error::a#0 ] : zp ZP_BYTE:62 , reg byte x , -Potential registers zp ZP_BYTE:63 [ signed_multiply_error::b#0 ] : zp ZP_BYTE:63 , reg byte x , -Potential registers zp ZP_WORD:64 [ signed_multiply_error::ms#0 ] : zp ZP_WORD:64 , -Potential registers zp ZP_WORD:66 [ signed_multiply_error::ma#0 ] : zp ZP_WORD:66 , -Potential registers zp ZP_BYTE:68 [ print_byte::$0 ] : zp ZP_BYTE:68 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:69 [ print_byte::$2 ] : zp ZP_BYTE:69 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:70 [ mulf8u::return#2 ] : zp ZP_WORD:70 , -Potential registers zp ZP_BYTE:72 [ mulf8s::$6 ] : zp ZP_BYTE:72 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:73 [ mulf8s::$16 ] : zp ZP_BYTE:73 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:74 [ mulf8s::$12 ] : zp ZP_BYTE:74 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:75 [ mulf8s::$17 ] : zp ZP_BYTE:75 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_WORD:76 [ mulf8u::return#0 ] : zp ZP_WORD:76 , -Potential registers zp ZP_BYTE:78 [ muls8u::a#0 ] : zp ZP_BYTE:78 , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:79 [ muls8u::b#0 ] : zp ZP_BYTE:79 , reg byte x , reg byte y , -Potential registers zp ZP_WORD:80 [ muls8u::return#2 ] : zp ZP_WORD:80 , -Potential registers zp ZP_WORD:82 [ multiply_results_compare::ms#0 ] : zp ZP_WORD:82 , -Potential registers zp ZP_WORD:84 [ mulf8u::return#3 ] : zp ZP_WORD:84 , -Potential registers zp ZP_WORD:86 [ multiply_results_compare::ma#0 ] : zp ZP_WORD:86 , -Potential registers zp ZP_BYTE:88 [ multiply_error::a#0 ] : zp ZP_BYTE:88 , reg byte x , -Potential registers zp ZP_BYTE:89 [ multiply_error::b#0 ] : zp ZP_BYTE:89 , reg byte x , -Potential registers zp ZP_WORD:90 [ multiply_error::ms#0 ] : zp ZP_WORD:90 , -Potential registers zp ZP_WORD:92 [ multiply_error::ma#0 ] : zp ZP_WORD:92 , -Potential registers zp ZP_BYTE:94 [ mulf_init::$2 ] : zp ZP_BYTE:94 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:95 [ mulf_init::$5 ] : zp ZP_BYTE:95 , reg byte a , reg byte x , reg byte y , -Potential registers zp ZP_BYTE:96 [ mulf_init::$6 ] : zp ZP_BYTE:96 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:25 [ mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 ] : zp ZP_BYTE:25 , reg byte y , +Potential registers zp ZP_BYTE:26 [ mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::b#1 ] : zp ZP_BYTE:26 , reg byte y , +Potential registers zp ZP_BYTE:27 [ mul8u_slowfast_compare::ok#3 mul8u_slowfast_compare::ok#4 ] : zp ZP_BYTE:27 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:28 [ mul8u::a#2 mul8u::a#1 mul8u::a#0 ] : zp ZP_BYTE:28 , reg byte x , reg byte y , +Potential registers zp ZP_WORD:29 [ mul8u::res#2 mul8u::res#6 mul8u::res#1 ] : zp ZP_WORD:29 , +Potential registers zp ZP_WORD:31 [ mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 ] : zp ZP_WORD:31 , +Potential registers zp ZP_BYTE:33 [ muls8u::i#2 muls8u::i#1 ] : zp ZP_BYTE:33 , reg byte x , reg byte y , +Potential registers zp ZP_WORD:34 [ muls8u::return#0 muls8u::m#3 muls8u::m#1 ] : zp ZP_WORD:34 , +Potential registers zp ZP_WORD:36 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::kc_sqr#1 ] : zp ZP_WORD:36 , +Potential registers zp ZP_WORD:38 [ mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 ] : zp ZP_WORD:38 , +Potential registers zp ZP_BYTE:40 [ mulf_init::c#2 mulf_init::c#1 ] : zp ZP_BYTE:40 , reg byte x , +Potential registers zp ZP_WORD:41 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] : zp ZP_WORD:41 , +Potential registers zp ZP_WORD:43 [ mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] : zp ZP_WORD:43 , +Potential registers zp ZP_BYTE:45 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] : zp ZP_BYTE:45 , reg byte x , +Potential registers zp ZP_WORD:46 [ mulf_init::sqr#3 mulf_init::sqr#4 mulf_init::sqr#1 mulf_init::sqr#2 ] : zp ZP_WORD:46 , +Potential registers zp ZP_BYTE:48 [ mulf_init::x_255#2 mulf_init::x_255#1 ] : zp ZP_BYTE:48 , reg byte x , +Potential registers zp ZP_WORD:49 [ mulf_init::sqr2_lo#2 mulf_init::sqr2_lo#1 ] : zp ZP_WORD:49 , +Potential registers zp ZP_WORD:51 [ mulf_init::sqr2_hi#2 mulf_init::sqr2_hi#1 ] : zp ZP_WORD:51 , +Potential registers zp ZP_BYTE:53 [ mulf_init::dir#2 mulf_init::dir#3 ] : zp ZP_BYTE:53 , reg byte x , +Potential registers zp ZP_WORD:54 [ print_cls::sc#2 print_cls::sc#1 ] : zp ZP_WORD:54 , +Potential registers zp ZP_BYTE:56 [ muls8s::a#0 ] : zp ZP_BYTE:56 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:57 [ muls8s::b#0 ] : zp ZP_BYTE:57 , reg byte x , reg byte y , +Potential registers zp ZP_WORD:58 [ muls8s::return#2 ] : zp ZP_WORD:58 , +Potential registers zp ZP_WORD:60 [ mul8s_slowfast_compare::ms#0 ] : zp ZP_WORD:60 , +Potential registers zp ZP_BYTE:62 [ mulf8s::a#0 ] : zp ZP_BYTE:62 , reg byte y , +Potential registers zp ZP_BYTE:63 [ mulf8s::b#0 ] : zp ZP_BYTE:63 , reg byte y , +Potential registers zp ZP_WORD:64 [ mulf8s::return#2 ] : zp ZP_WORD:64 , +Potential registers zp ZP_WORD:66 [ mul8s_slowfast_compare::ma#0 ] : zp ZP_WORD:66 , +Potential registers zp ZP_BYTE:68 [ signed_multiply_error::a#0 ] : zp ZP_BYTE:68 , reg byte x , +Potential registers zp ZP_BYTE:69 [ signed_multiply_error::b#0 ] : zp ZP_BYTE:69 , reg byte x , +Potential registers zp ZP_WORD:70 [ signed_multiply_error::ms#0 ] : zp ZP_WORD:70 , +Potential registers zp ZP_WORD:72 [ signed_multiply_error::ma#0 ] : zp ZP_WORD:72 , +Potential registers zp ZP_BYTE:74 [ print_byte::$0 ] : zp ZP_BYTE:74 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:75 [ print_byte::$2 ] : zp ZP_BYTE:75 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_WORD:76 [ mulf8u::return#2 ] : zp ZP_WORD:76 , +Potential registers zp ZP_BYTE:78 [ mulf8s::$6 ] : zp ZP_BYTE:78 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:79 [ mulf8s::$16 ] : zp ZP_BYTE:79 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:80 [ mulf8s::$12 ] : zp ZP_BYTE:80 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:81 [ mulf8s::$17 ] : zp ZP_BYTE:81 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_WORD:82 [ mulf8u::return#0 ] : zp ZP_WORD:82 , +Potential registers zp ZP_BYTE:84 [ muls8u::a#0 ] : zp ZP_BYTE:84 , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:85 [ muls8u::b#0 ] : zp ZP_BYTE:85 , reg byte x , reg byte y , +Potential registers zp ZP_WORD:86 [ muls8u::return#2 ] : zp ZP_WORD:86 , +Potential registers zp ZP_WORD:88 [ mul8u_slowfast_compare::ms#0 ] : zp ZP_WORD:88 , +Potential registers zp ZP_WORD:90 [ mulf8u::return#3 ] : zp ZP_WORD:90 , +Potential registers zp ZP_WORD:92 [ mul8u_slowfast_compare::mf#0 ] : zp ZP_WORD:92 , +Potential registers zp ZP_BYTE:94 [ mul8u::b#0 ] : zp ZP_BYTE:94 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_WORD:95 [ mul8u::return#2 ] : zp ZP_WORD:95 , +Potential registers zp ZP_WORD:97 [ mul8u_slowfast_compare::mn#0 ] : zp ZP_WORD:97 , +Potential registers zp ZP_BYTE:99 [ multiply_error::a#0 ] : zp ZP_BYTE:99 , reg byte x , +Potential registers zp ZP_BYTE:100 [ multiply_error::b#0 ] : zp ZP_BYTE:100 , reg byte x , +Potential registers zp ZP_WORD:101 [ multiply_error::ms#0 ] : zp ZP_WORD:101 , +Potential registers zp ZP_WORD:103 [ multiply_error::mn#0 ] : zp ZP_WORD:103 , +Potential registers zp ZP_WORD:105 [ multiply_error::mf#0 ] : zp ZP_WORD:105 , +Potential registers zp ZP_BYTE:107 [ mul8u::$1 ] : zp ZP_BYTE:107 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:108 [ mulf_init::$2 ] : zp ZP_BYTE:108 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:109 [ mulf_init::$5 ] : zp ZP_BYTE:109 , reg byte a , reg byte x , reg byte y , +Potential registers zp ZP_BYTE:110 [ mulf_init::$6 ] : zp ZP_BYTE:110 , reg byte a , reg byte x , reg byte y , REGISTER UPLIFT SCOPES -Uplift Scope [muls8s] 6,707: zp ZP_WORD:22 [ muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 ] 2,502.5: zp ZP_BYTE:21 [ muls8s::i#2 muls8s::i#1 ] 2,502.5: zp ZP_BYTE:24 [ muls8s::j#2 muls8s::j#1 ] 202: zp ZP_WORD:52 [ muls8s::return#2 ] 191.18: zp ZP_BYTE:51 [ muls8s::b#0 ] 175.58: zp ZP_BYTE:50 [ muls8s::a#0 ] -Uplift Scope [muls8u] 3,370.33: zp ZP_WORD:28 [ muls8u::return#0 muls8u::m#3 muls8u::m#1 ] 2,502.5: zp ZP_BYTE:27 [ muls8u::i#2 muls8u::i#1 ] 202: zp ZP_WORD:80 [ muls8u::return#2 ] 183.67: zp ZP_BYTE:79 [ muls8u::b#0 ] 157.71: zp ZP_BYTE:78 [ muls8u::a#0 ] -Uplift Scope [mulf8u] 258.5: zp ZP_BYTE:20 [ mulf8u::b#2 mulf8u::b#3 mulf8u::b#1 ] 208: zp ZP_BYTE:19 [ mulf8u::a#2 mulf8u::a#3 mulf8u::a#1 ] 202: zp ZP_WORD:84 [ mulf8u::return#3 ] 26.25: zp ZP_WORD:76 [ mulf8u::return#0 ] 4: zp ZP_WORD:70 [ mulf8u::return#2 ] -Uplift Scope [multiply_results_compare] 180.5: zp ZP_BYTE:26 [ multiply_results_compare::b#2 multiply_results_compare::b#1 ] 34: zp ZP_WORD:86 [ multiply_results_compare::ma#0 ] 30.62: zp ZP_BYTE:25 [ multiply_results_compare::a#6 multiply_results_compare::a#1 ] 20.4: zp ZP_WORD:82 [ multiply_results_compare::ms#0 ] -Uplift Scope [signed_multiply_results_compare] 180.5: zp ZP_BYTE:3 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 ] 34: zp ZP_WORD:60 [ signed_multiply_results_compare::ma#0 ] 30.62: zp ZP_BYTE:2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 ] 20.4: zp ZP_WORD:54 [ signed_multiply_results_compare::ms#0 ] -Uplift Scope [mulf_init] 45.1: zp ZP_WORD:40 [ mulf_init::sqr#3 mulf_init::sqr#4 mulf_init::sqr#1 mulf_init::sqr#2 ] 24.36: zp ZP_BYTE:34 [ mulf_init::c#2 mulf_init::c#1 ] 24.14: zp ZP_BYTE:39 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] 22: zp ZP_BYTE:94 [ mulf_init::$2 ] 22: zp ZP_BYTE:95 [ mulf_init::$5 ] 22: zp ZP_BYTE:96 [ mulf_init::$6 ] 20.62: zp ZP_WORD:43 [ mulf_init::sqr2_lo#2 mulf_init::sqr2_lo#1 ] 19.04: zp ZP_WORD:35 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] 16.5: zp ZP_BYTE:42 [ mulf_init::x_255#2 mulf_init::x_255#1 ] 14.14: zp ZP_WORD:45 [ mulf_init::sqr2_hi#2 mulf_init::sqr2_hi#1 ] 12.05: zp ZP_BYTE:47 [ mulf_init::dir#2 mulf_init::dir#3 ] 8.5: zp ZP_WORD:37 [ mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] -Uplift Scope [mulf8s] 202: zp ZP_WORD:58 [ mulf8s::return#2 ] 13.83: zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 ] 9.36: zp ZP_BYTE:57 [ mulf8s::b#0 ] 7.36: zp ZP_BYTE:56 [ mulf8s::a#0 ] 4: zp ZP_BYTE:72 [ mulf8s::$6 ] 4: zp ZP_BYTE:73 [ mulf8s::$16 ] 4: zp ZP_BYTE:74 [ mulf8s::$12 ] 4: zp ZP_BYTE:75 [ mulf8s::$17 ] -Uplift Scope [] 77.01: zp ZP_WORD:14 [ char_cursor#78 char_cursor#129 char_cursor#128 char_cursor#124 char_cursor#141 char_cursor#30 char_cursor#123 char_cursor#17 char_cursor#122 char_cursor#176 char_cursor#180 char_cursor#1 char_cursor#126 char_cursor#201 ] 34.95: zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#10 line_cursor#1 ] -Uplift Scope [multiply_tables_compare] 20.17: zp ZP_WORD:30 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::kc_sqr#1 ] 15.58: zp ZP_WORD:32 [ multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 ] -Uplift Scope [print_str] 35.5: zp ZP_WORD:6 [ print_str::str#14 print_str::str#16 print_str::str#0 ] -Uplift Scope [print_cls] 33: zp ZP_WORD:48 [ print_cls::sc#2 print_cls::sc#1 ] -Uplift Scope [print_byte] 23.5: zp ZP_BYTE:12 [ print_byte::b#5 print_byte::b#3 print_byte::b#4 print_byte::b#9 print_byte::b#1 print_byte::b#2 ] 4: zp ZP_BYTE:68 [ print_byte::$0 ] 4: zp ZP_BYTE:69 [ print_byte::$2 ] -Uplift Scope [print_word] 24.67: zp ZP_WORD:10 [ print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 ] +Uplift Scope [muls8s] 6,707: zp ZP_WORD:22 [ muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 ] 2,502.5: zp ZP_BYTE:21 [ muls8s::i#2 muls8s::i#1 ] 2,502.5: zp ZP_BYTE:24 [ muls8s::j#2 muls8s::j#1 ] 202: zp ZP_WORD:58 [ muls8s::return#2 ] 191.18: zp ZP_BYTE:57 [ muls8s::b#0 ] 175.58: zp ZP_BYTE:56 [ muls8s::a#0 ] +Uplift Scope [mul8u] 3,520.33: zp ZP_WORD:29 [ mul8u::res#2 mul8u::res#6 mul8u::res#1 ] 2,435.29: zp ZP_WORD:31 [ mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 ] 2,002: zp ZP_BYTE:107 [ mul8u::$1 ] 1,703: zp ZP_BYTE:28 [ mul8u::a#2 mul8u::a#1 mul8u::a#0 ] 202: zp ZP_WORD:95 [ mul8u::return#2 ] 103: zp ZP_BYTE:94 [ mul8u::b#0 ] +Uplift Scope [muls8u] 3,370.33: zp ZP_WORD:34 [ muls8u::return#0 muls8u::m#3 muls8u::m#1 ] 2,502.5: zp ZP_BYTE:33 [ muls8u::i#2 muls8u::i#1 ] 202: zp ZP_WORD:86 [ muls8u::return#2 ] 183.67: zp ZP_BYTE:85 [ muls8u::b#0 ] 157.71: zp ZP_BYTE:84 [ muls8u::a#0 ] +Uplift Scope [mulf8u] 258.5: zp ZP_BYTE:20 [ mulf8u::b#2 mulf8u::b#1 mulf8u::b#4 ] 208: zp ZP_BYTE:19 [ mulf8u::a#2 mulf8u::a#1 mulf8u::a#4 ] 202: zp ZP_WORD:90 [ mulf8u::return#3 ] 26.25: zp ZP_WORD:82 [ mulf8u::return#0 ] 4: zp ZP_WORD:76 [ mulf8u::return#2 ] +Uplift Scope [mul8u_slowfast_compare] 235.67: zp ZP_BYTE:27 [ mul8u_slowfast_compare::ok#3 mul8u_slowfast_compare::ok#4 ] 171.78: zp ZP_BYTE:26 [ mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::b#1 ] 28.61: zp ZP_BYTE:25 [ mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 ] 17: zp ZP_WORD:97 [ mul8u_slowfast_compare::mn#0 ] 14.52: zp ZP_WORD:88 [ mul8u_slowfast_compare::ms#0 ] 11.33: zp ZP_WORD:92 [ mul8u_slowfast_compare::mf#0 ] +Uplift Scope [mul8s_slowfast_compare] 180.5: zp ZP_BYTE:3 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 ] 34: zp ZP_WORD:66 [ mul8s_slowfast_compare::ma#0 ] 30.62: zp ZP_BYTE:2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 ] 20.4: zp ZP_WORD:60 [ mul8s_slowfast_compare::ms#0 ] +Uplift Scope [mulf_init] 45.1: zp ZP_WORD:46 [ mulf_init::sqr#3 mulf_init::sqr#4 mulf_init::sqr#1 mulf_init::sqr#2 ] 24.36: zp ZP_BYTE:40 [ mulf_init::c#2 mulf_init::c#1 ] 24.14: zp ZP_BYTE:45 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] 22: zp ZP_BYTE:108 [ mulf_init::$2 ] 22: zp ZP_BYTE:109 [ mulf_init::$5 ] 22: zp ZP_BYTE:110 [ mulf_init::$6 ] 20.62: zp ZP_WORD:49 [ mulf_init::sqr2_lo#2 mulf_init::sqr2_lo#1 ] 19.04: zp ZP_WORD:41 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] 16.5: zp ZP_BYTE:48 [ mulf_init::x_255#2 mulf_init::x_255#1 ] 14.14: zp ZP_WORD:51 [ mulf_init::sqr2_hi#2 mulf_init::sqr2_hi#1 ] 12.05: zp ZP_BYTE:53 [ mulf_init::dir#2 mulf_init::dir#3 ] 8.5: zp ZP_WORD:43 [ mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] +Uplift Scope [mulf8s] 202: zp ZP_WORD:64 [ mulf8s::return#2 ] 13.83: zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 ] 9.36: zp ZP_BYTE:63 [ mulf8s::b#0 ] 7.36: zp ZP_BYTE:62 [ mulf8s::a#0 ] 4: zp ZP_BYTE:78 [ mulf8s::$6 ] 4: zp ZP_BYTE:79 [ mulf8s::$16 ] 4: zp ZP_BYTE:80 [ mulf8s::$12 ] 4: zp ZP_BYTE:81 [ mulf8s::$17 ] +Uplift Scope [] 79.9: zp ZP_WORD:14 [ char_cursor#80 char_cursor#133 char_cursor#132 char_cursor#128 char_cursor#145 char_cursor#179 char_cursor#30 char_cursor#127 char_cursor#126 char_cursor#17 char_cursor#187 char_cursor#1 char_cursor#130 char_cursor#212 ] 34.91: zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#1 line_cursor#10 ] +Uplift Scope [mulf_tables_cmp] 20.17: zp ZP_WORD:36 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::kc_sqr#1 ] 15.58: zp ZP_WORD:38 [ mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 ] +Uplift Scope [print_str] 35.5: zp ZP_WORD:6 [ print_str::str#15 print_str::str#17 print_str::str#0 ] +Uplift Scope [print_cls] 33: zp ZP_WORD:54 [ print_cls::sc#2 print_cls::sc#1 ] +Uplift Scope [print_byte] 23.5: zp ZP_BYTE:12 [ print_byte::b#5 print_byte::b#3 print_byte::b#4 print_byte::b#9 print_byte::b#1 print_byte::b#2 ] 4: zp ZP_BYTE:74 [ print_byte::$0 ] 4: zp ZP_BYTE:75 [ print_byte::$2 ] +Uplift Scope [print_word] 29.33: zp ZP_WORD:10 [ print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 ] Uplift Scope [print_sword] 18.5: zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 ] Uplift Scope [print_sbyte] 18.5: zp ZP_BYTE:16 [ print_sbyte::b#4 print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#0 ] Uplift Scope [print_char] 14: zp ZP_BYTE:13 [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ] -Uplift Scope [multiply_error] 0.67: zp ZP_BYTE:88 [ multiply_error::a#0 ] 0.44: zp ZP_BYTE:89 [ multiply_error::b#0 ] 0.33: zp ZP_WORD:90 [ multiply_error::ms#0 ] 0.27: zp ZP_WORD:92 [ multiply_error::ma#0 ] -Uplift Scope [signed_multiply_error] 0.67: zp ZP_BYTE:62 [ signed_multiply_error::a#0 ] 0.44: zp ZP_BYTE:63 [ signed_multiply_error::b#0 ] 0.33: zp ZP_WORD:64 [ signed_multiply_error::ms#0 ] 0.27: zp ZP_WORD:66 [ signed_multiply_error::ma#0 ] +Uplift Scope [multiply_error] 0.57: zp ZP_BYTE:99 [ multiply_error::a#0 ] 0.4: zp ZP_BYTE:100 [ multiply_error::b#0 ] 0.31: zp ZP_WORD:101 [ multiply_error::ms#0 ] 0.25: zp ZP_WORD:103 [ multiply_error::mn#0 ] 0.21: zp ZP_WORD:105 [ multiply_error::mf#0 ] +Uplift Scope [signed_multiply_error] 0.67: zp ZP_BYTE:68 [ signed_multiply_error::a#0 ] 0.44: zp ZP_BYTE:69 [ signed_multiply_error::b#0 ] 0.33: zp ZP_WORD:70 [ signed_multiply_error::ms#0 ] 0.27: zp ZP_WORD:72 [ signed_multiply_error::ma#0 ] Uplift Scope [print_ln] Uplift Scope [main] Uplift Scope [mulf_init_asm] -Uplifting [muls8s] best 214499 combination zp ZP_WORD:22 [ muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 ] reg byte y [ muls8s::i#2 muls8s::i#1 ] reg byte y [ muls8s::j#2 muls8s::j#1 ] zp ZP_WORD:52 [ muls8s::return#2 ] reg byte x [ muls8s::b#0 ] zp ZP_BYTE:50 [ muls8s::a#0 ] -Uplifting [muls8u] best 204199 combination zp ZP_WORD:28 [ muls8u::return#0 muls8u::m#3 muls8u::m#1 ] reg byte y [ muls8u::i#2 muls8u::i#1 ] zp ZP_WORD:80 [ muls8u::return#2 ] reg byte x [ muls8u::b#0 ] zp ZP_BYTE:78 [ muls8u::a#0 ] -Uplifting [mulf8u] best 203587 combination reg byte x [ mulf8u::b#2 mulf8u::b#3 mulf8u::b#1 ] reg byte a [ mulf8u::a#2 mulf8u::a#3 mulf8u::a#1 ] zp ZP_WORD:84 [ mulf8u::return#3 ] zp ZP_WORD:76 [ mulf8u::return#0 ] zp ZP_WORD:70 [ mulf8u::return#2 ] -Uplifting [multiply_results_compare] best 203587 combination zp ZP_BYTE:26 [ multiply_results_compare::b#2 multiply_results_compare::b#1 ] zp ZP_WORD:86 [ multiply_results_compare::ma#0 ] zp ZP_BYTE:25 [ multiply_results_compare::a#6 multiply_results_compare::a#1 ] zp ZP_WORD:82 [ multiply_results_compare::ms#0 ] -Uplifting [signed_multiply_results_compare] best 203587 combination zp ZP_BYTE:3 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 ] zp ZP_WORD:60 [ signed_multiply_results_compare::ma#0 ] zp ZP_BYTE:2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 ] zp ZP_WORD:54 [ signed_multiply_results_compare::ms#0 ] -Uplifting [mulf_init] best 203237 combination zp ZP_WORD:40 [ mulf_init::sqr#3 mulf_init::sqr#4 mulf_init::sqr#1 mulf_init::sqr#2 ] reg byte x [ mulf_init::c#2 mulf_init::c#1 ] zp ZP_BYTE:39 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] reg byte a [ mulf_init::$2 ] reg byte a [ mulf_init::$5 ] reg byte a [ mulf_init::$6 ] zp ZP_WORD:43 [ mulf_init::sqr2_lo#2 mulf_init::sqr2_lo#1 ] zp ZP_WORD:35 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] reg byte x [ mulf_init::x_255#2 mulf_init::x_255#1 ] zp ZP_WORD:45 [ mulf_init::sqr2_hi#2 mulf_init::sqr2_hi#1 ] zp ZP_BYTE:47 [ mulf_init::dir#2 mulf_init::dir#3 ] zp ZP_WORD:37 [ mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] -Uplifting [mulf8s] best 202912 combination zp ZP_WORD:58 [ mulf8s::return#2 ] zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 ] zp ZP_BYTE:57 [ mulf8s::b#0 ] reg byte y [ mulf8s::a#0 ] reg byte a [ mulf8s::$6 ] reg byte a [ mulf8s::$16 ] reg byte a [ mulf8s::$12 ] reg byte a [ mulf8s::$17 ] -Uplifting [] best 202912 combination zp ZP_WORD:14 [ char_cursor#78 char_cursor#129 char_cursor#128 char_cursor#124 char_cursor#141 char_cursor#30 char_cursor#123 char_cursor#17 char_cursor#122 char_cursor#176 char_cursor#180 char_cursor#1 char_cursor#126 char_cursor#201 ] zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#10 line_cursor#1 ] -Uplifting [multiply_tables_compare] best 202912 combination zp ZP_WORD:30 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::kc_sqr#1 ] zp ZP_WORD:32 [ multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 ] -Uplifting [print_str] best 202912 combination zp ZP_WORD:6 [ print_str::str#14 print_str::str#16 print_str::str#0 ] -Uplifting [print_cls] best 202912 combination zp ZP_WORD:48 [ print_cls::sc#2 print_cls::sc#1 ] -Uplifting [print_byte] best 202891 combination reg byte x [ print_byte::b#5 print_byte::b#3 print_byte::b#4 print_byte::b#9 print_byte::b#1 print_byte::b#2 ] reg byte a [ print_byte::$0 ] reg byte a [ print_byte::$2 ] -Uplifting [print_word] best 202891 combination zp ZP_WORD:10 [ print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 ] -Uplifting [print_sword] best 202891 combination zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 ] -Uplifting [print_sbyte] best 202877 combination reg byte x [ print_sbyte::b#4 print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#0 ] -Uplifting [print_char] best 202862 combination reg byte a [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ] -Uplifting [multiply_error] best 202856 combination reg byte x [ multiply_error::a#0 ] zp ZP_BYTE:89 [ multiply_error::b#0 ] zp ZP_WORD:90 [ multiply_error::ms#0 ] zp ZP_WORD:92 [ multiply_error::ma#0 ] -Uplifting [signed_multiply_error] best 202850 combination reg byte x [ signed_multiply_error::a#0 ] zp ZP_BYTE:63 [ signed_multiply_error::b#0 ] zp ZP_WORD:64 [ signed_multiply_error::ms#0 ] zp ZP_WORD:66 [ signed_multiply_error::ma#0 ] -Uplifting [print_ln] best 202850 combination -Uplifting [main] best 202850 combination -Uplifting [mulf_init_asm] best 202850 combination -Attempting to uplift remaining variables inzp ZP_BYTE:3 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 ] -Uplifting [signed_multiply_results_compare] best 202850 combination zp ZP_BYTE:3 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:26 [ multiply_results_compare::b#2 multiply_results_compare::b#1 ] -Uplifting [multiply_results_compare] best 202850 combination zp ZP_BYTE:26 [ multiply_results_compare::b#2 multiply_results_compare::b#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:50 [ muls8s::a#0 ] -Uplifting [muls8s] best 202850 combination zp ZP_BYTE:50 [ muls8s::a#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:78 [ muls8u::a#0 ] -Uplifting [muls8u] best 202850 combination zp ZP_BYTE:78 [ muls8u::a#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 ] -Uplifting [signed_multiply_results_compare] best 202850 combination zp ZP_BYTE:2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:25 [ multiply_results_compare::a#6 multiply_results_compare::a#1 ] -Uplifting [multiply_results_compare] best 202850 combination zp ZP_BYTE:25 [ multiply_results_compare::a#6 multiply_results_compare::a#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:39 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] -Uplifting [mulf_init] best 202850 combination zp ZP_BYTE:39 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] -Attempting to uplift remaining variables inzp ZP_BYTE:47 [ mulf_init::dir#2 mulf_init::dir#3 ] -Uplifting [mulf_init] best 202850 combination zp ZP_BYTE:47 [ mulf_init::dir#2 mulf_init::dir#3 ] -Attempting to uplift remaining variables inzp ZP_BYTE:57 [ mulf8s::b#0 ] -Uplifting [mulf8s] best 202850 combination zp ZP_BYTE:57 [ mulf8s::b#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:63 [ signed_multiply_error::b#0 ] -Uplifting [signed_multiply_error] best 202850 combination zp ZP_BYTE:63 [ signed_multiply_error::b#0 ] -Attempting to uplift remaining variables inzp ZP_BYTE:89 [ multiply_error::b#0 ] -Uplifting [multiply_error] best 202850 combination zp ZP_BYTE:89 [ multiply_error::b#0 ] -Coalescing zero page register [ zp ZP_BYTE:2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 ] ] with [ zp ZP_BYTE:50 [ muls8s::a#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:3 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 ] ] with [ zp ZP_BYTE:57 [ mulf8s::b#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:3 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 mulf8s::b#0 ] ] with [ zp ZP_BYTE:63 [ signed_multiply_error::b#0 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 ] ] with [ zp ZP_WORD:10 [ print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 ] ] with [ zp ZP_WORD:32 [ multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 ] ] with [ zp ZP_WORD:64 [ signed_multiply_error::ms#0 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 signed_multiply_error::ms#0 ] ] with [ zp ZP_WORD:54 [ signed_multiply_results_compare::ms#0 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 signed_multiply_error::ms#0 signed_multiply_results_compare::ms#0 ] ] with [ zp ZP_WORD:52 [ muls8s::return#2 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 signed_multiply_error::ms#0 signed_multiply_results_compare::ms#0 muls8s::return#2 ] ] with [ zp ZP_WORD:22 [ muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 signed_multiply_error::ms#0 signed_multiply_results_compare::ms#0 muls8s::return#2 muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 ] ] with [ zp ZP_WORD:90 [ multiply_error::ms#0 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 signed_multiply_error::ms#0 signed_multiply_results_compare::ms#0 muls8s::return#2 muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 multiply_error::ms#0 ] ] with [ zp ZP_WORD:82 [ multiply_results_compare::ms#0 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 signed_multiply_error::ms#0 signed_multiply_results_compare::ms#0 muls8s::return#2 muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 multiply_error::ms#0 multiply_results_compare::ms#0 ] ] with [ zp ZP_WORD:80 [ muls8u::return#2 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 signed_multiply_error::ms#0 signed_multiply_results_compare::ms#0 muls8s::return#2 muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 multiply_error::ms#0 multiply_results_compare::ms#0 muls8u::return#2 ] ] with [ zp ZP_WORD:28 [ muls8u::return#0 muls8u::m#3 muls8u::m#1 ] ] -Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 ] ] with [ zp ZP_WORD:58 [ mulf8s::return#2 ] ] -Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 ] ] with [ zp ZP_WORD:60 [ signed_multiply_results_compare::ma#0 ] ] -Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 signed_multiply_results_compare::ma#0 ] ] with [ zp ZP_WORD:66 [ signed_multiply_error::ma#0 ] ] -Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 signed_multiply_results_compare::ma#0 signed_multiply_error::ma#0 ] ] with [ zp ZP_WORD:70 [ mulf8u::return#2 ] ] -Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 signed_multiply_results_compare::ma#0 signed_multiply_error::ma#0 mulf8u::return#2 ] ] with [ zp ZP_WORD:76 [ mulf8u::return#0 ] ] -Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 signed_multiply_results_compare::ma#0 signed_multiply_error::ma#0 mulf8u::return#2 mulf8u::return#0 ] ] with [ zp ZP_WORD:84 [ mulf8u::return#3 ] ] -Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 signed_multiply_results_compare::ma#0 signed_multiply_error::ma#0 mulf8u::return#2 mulf8u::return#0 mulf8u::return#3 ] ] with [ zp ZP_WORD:86 [ multiply_results_compare::ma#0 ] ] -Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 signed_multiply_results_compare::ma#0 signed_multiply_error::ma#0 mulf8u::return#2 mulf8u::return#0 mulf8u::return#3 multiply_results_compare::ma#0 ] ] with [ zp ZP_WORD:92 [ multiply_error::ma#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:25 [ multiply_results_compare::a#6 multiply_results_compare::a#1 ] ] with [ zp ZP_BYTE:78 [ muls8u::a#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:26 [ multiply_results_compare::b#2 multiply_results_compare::b#1 ] ] with [ zp ZP_BYTE:89 [ multiply_error::b#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 muls8s::a#0 ] ] with [ zp ZP_BYTE:25 [ multiply_results_compare::a#6 multiply_results_compare::a#1 muls8u::a#0 ] ] -Coalescing zero page register [ zp ZP_BYTE:2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 muls8s::a#0 multiply_results_compare::a#6 multiply_results_compare::a#1 muls8u::a#0 ] ] with [ zp ZP_BYTE:39 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] ] -Coalescing zero page register [ zp ZP_BYTE:2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::a#1 muls8s::a#0 multiply_results_compare::a#6 multiply_results_compare::a#1 muls8u::a#0 mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] ] with [ zp ZP_BYTE:47 [ mulf_init::dir#2 mulf_init::dir#3 ] ] -Coalescing zero page register [ zp ZP_BYTE:3 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::b#1 mulf8s::b#0 signed_multiply_error::b#0 ] ] with [ zp ZP_BYTE:26 [ multiply_results_compare::b#2 multiply_results_compare::b#1 multiply_error::b#0 ] ] -Coalescing zero page register [ zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#10 line_cursor#1 ] ] with [ zp ZP_WORD:30 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::kc_sqr#1 ] ] -Coalescing zero page register [ zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#10 line_cursor#1 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::kc_sqr#1 ] ] with [ zp ZP_WORD:35 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] ] -Coalescing zero page register [ zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#10 line_cursor#1 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::kc_sqr#1 mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] ] with [ zp ZP_WORD:43 [ mulf_init::sqr2_lo#2 mulf_init::sqr2_lo#1 ] ] -Coalescing zero page register [ zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#10 line_cursor#1 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::kc_sqr#1 mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 mulf_init::sqr2_lo#2 mulf_init::sqr2_lo#1 ] ] with [ zp ZP_WORD:48 [ print_cls::sc#2 print_cls::sc#1 ] ] -Coalescing zero page register [ zp ZP_WORD:6 [ print_str::str#14 print_str::str#16 print_str::str#0 ] ] with [ zp ZP_WORD:37 [ mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] ] -Coalescing zero page register [ zp ZP_WORD:6 [ print_str::str#14 print_str::str#16 print_str::str#0 mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] ] with [ zp ZP_WORD:45 [ mulf_init::sqr2_hi#2 mulf_init::sqr2_hi#1 ] ] -Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#5 print_word::w#3 print_word::w#4 print_word::w#9 print_word::w#10 print_word::w#11 multiply_tables_compare::asm_sqr#2 multiply_tables_compare::asm_sqr#1 signed_multiply_error::ms#0 signed_multiply_results_compare::ms#0 muls8s::return#2 muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 multiply_error::ms#0 multiply_results_compare::ms#0 muls8u::return#2 muls8u::return#0 muls8u::m#3 muls8u::m#1 ] ] with [ zp ZP_WORD:40 [ mulf_init::sqr#3 mulf_init::sqr#4 mulf_init::sqr#1 mulf_init::sqr#2 ] ] -Allocated (was zp ZP_WORD:14) zp ZP_WORD:10 [ char_cursor#78 char_cursor#129 char_cursor#128 char_cursor#124 char_cursor#141 char_cursor#30 char_cursor#123 char_cursor#17 char_cursor#122 char_cursor#176 char_cursor#180 char_cursor#1 char_cursor#126 char_cursor#201 ] -Allocated (was zp ZP_WORD:17) zp ZP_WORD:12 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 signed_multiply_results_compare::ma#0 signed_multiply_error::ma#0 mulf8u::return#2 mulf8u::return#0 mulf8u::return#3 multiply_results_compare::ma#0 multiply_error::ma#0 ] +Uplifting [muls8s] best 303618 combination zp ZP_WORD:22 [ muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 ] reg byte y [ muls8s::i#2 muls8s::i#1 ] reg byte y [ muls8s::j#2 muls8s::j#1 ] zp ZP_WORD:58 [ muls8s::return#2 ] reg byte x [ muls8s::b#0 ] zp ZP_BYTE:56 [ muls8s::a#0 ] +Uplifting [mul8u] best 298015 combination zp ZP_WORD:29 [ mul8u::res#2 mul8u::res#6 mul8u::res#1 ] zp ZP_WORD:31 [ mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 ] reg byte a [ mul8u::$1 ] reg byte x [ mul8u::a#2 mul8u::a#1 mul8u::a#0 ] zp ZP_WORD:95 [ mul8u::return#2 ] reg byte a [ mul8u::b#0 ] +Uplifting [muls8u] best 287715 combination zp ZP_WORD:34 [ muls8u::return#0 muls8u::m#3 muls8u::m#1 ] reg byte y [ muls8u::i#2 muls8u::i#1 ] zp ZP_WORD:86 [ muls8u::return#2 ] reg byte x [ muls8u::b#0 ] zp ZP_BYTE:84 [ muls8u::a#0 ] +Uplifting [mulf8u] best 287103 combination reg byte x [ mulf8u::b#2 mulf8u::b#1 mulf8u::b#4 ] reg byte a [ mulf8u::a#2 mulf8u::a#1 mulf8u::a#4 ] zp ZP_WORD:90 [ mulf8u::return#3 ] zp ZP_WORD:82 [ mulf8u::return#0 ] zp ZP_WORD:76 [ mulf8u::return#2 ] +Uplifting [mul8u_slowfast_compare] best 286103 combination reg byte x [ mul8u_slowfast_compare::ok#3 mul8u_slowfast_compare::ok#4 ] zp ZP_BYTE:26 [ mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::b#1 ] zp ZP_BYTE:25 [ mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 ] zp ZP_WORD:97 [ mul8u_slowfast_compare::mn#0 ] zp ZP_WORD:88 [ mul8u_slowfast_compare::ms#0 ] zp ZP_WORD:92 [ mul8u_slowfast_compare::mf#0 ] +Uplifting [mul8s_slowfast_compare] best 286103 combination zp ZP_BYTE:3 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 ] zp ZP_WORD:66 [ mul8s_slowfast_compare::ma#0 ] zp ZP_BYTE:2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 ] zp ZP_WORD:60 [ mul8s_slowfast_compare::ms#0 ] +Uplifting [mulf_init] best 285753 combination zp ZP_WORD:46 [ mulf_init::sqr#3 mulf_init::sqr#4 mulf_init::sqr#1 mulf_init::sqr#2 ] reg byte x [ mulf_init::c#2 mulf_init::c#1 ] zp ZP_BYTE:45 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] reg byte a [ mulf_init::$2 ] reg byte a [ mulf_init::$5 ] reg byte a [ mulf_init::$6 ] zp ZP_WORD:49 [ mulf_init::sqr2_lo#2 mulf_init::sqr2_lo#1 ] zp ZP_WORD:41 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] reg byte x [ mulf_init::x_255#2 mulf_init::x_255#1 ] zp ZP_WORD:51 [ mulf_init::sqr2_hi#2 mulf_init::sqr2_hi#1 ] zp ZP_BYTE:53 [ mulf_init::dir#2 mulf_init::dir#3 ] zp ZP_WORD:43 [ mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] +Uplifting [mulf8s] best 285428 combination zp ZP_WORD:64 [ mulf8s::return#2 ] zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 ] zp ZP_BYTE:63 [ mulf8s::b#0 ] reg byte y [ mulf8s::a#0 ] reg byte a [ mulf8s::$6 ] reg byte a [ mulf8s::$16 ] reg byte a [ mulf8s::$12 ] reg byte a [ mulf8s::$17 ] +Uplifting [] best 285428 combination zp ZP_WORD:14 [ char_cursor#80 char_cursor#133 char_cursor#132 char_cursor#128 char_cursor#145 char_cursor#179 char_cursor#30 char_cursor#127 char_cursor#126 char_cursor#17 char_cursor#187 char_cursor#1 char_cursor#130 char_cursor#212 ] zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#1 line_cursor#10 ] +Uplifting [mulf_tables_cmp] best 285428 combination zp ZP_WORD:36 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::kc_sqr#1 ] zp ZP_WORD:38 [ mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 ] +Uplifting [print_str] best 285428 combination zp ZP_WORD:6 [ print_str::str#15 print_str::str#17 print_str::str#0 ] +Uplifting [print_cls] best 285428 combination zp ZP_WORD:54 [ print_cls::sc#2 print_cls::sc#1 ] +Uplifting [print_byte] best 285407 combination reg byte x [ print_byte::b#5 print_byte::b#3 print_byte::b#4 print_byte::b#9 print_byte::b#1 print_byte::b#2 ] reg byte a [ print_byte::$0 ] reg byte a [ print_byte::$2 ] +Uplifting [print_word] best 285407 combination zp ZP_WORD:10 [ print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 ] +Uplifting [print_sword] best 285407 combination zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 ] +Uplifting [print_sbyte] best 285393 combination reg byte x [ print_sbyte::b#4 print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#0 ] +Uplifting [print_char] best 285378 combination reg byte a [ print_char::ch#4 print_char::ch#2 print_char::ch#3 ] +Uplifting [multiply_error] best 285372 combination reg byte x [ multiply_error::a#0 ] zp ZP_BYTE:100 [ multiply_error::b#0 ] zp ZP_WORD:101 [ multiply_error::ms#0 ] zp ZP_WORD:103 [ multiply_error::mn#0 ] zp ZP_WORD:105 [ multiply_error::mf#0 ] +Uplifting [signed_multiply_error] best 285366 combination reg byte x [ signed_multiply_error::a#0 ] zp ZP_BYTE:69 [ signed_multiply_error::b#0 ] zp ZP_WORD:70 [ signed_multiply_error::ms#0 ] zp ZP_WORD:72 [ signed_multiply_error::ma#0 ] +Uplifting [print_ln] best 285366 combination +Uplifting [main] best 285366 combination +Uplifting [mulf_init_asm] best 285366 combination +Attempting to uplift remaining variables inzp ZP_BYTE:3 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 ] +Uplifting [mul8s_slowfast_compare] best 285366 combination zp ZP_BYTE:3 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:56 [ muls8s::a#0 ] +Uplifting [muls8s] best 285366 combination zp ZP_BYTE:56 [ muls8s::a#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:26 [ mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::b#1 ] +Uplifting [mul8u_slowfast_compare] best 285366 combination zp ZP_BYTE:26 [ mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::b#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:84 [ muls8u::a#0 ] +Uplifting [muls8u] best 285366 combination zp ZP_BYTE:84 [ muls8u::a#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 ] +Uplifting [mul8s_slowfast_compare] best 285366 combination zp ZP_BYTE:2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:25 [ mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 ] +Uplifting [mul8u_slowfast_compare] best 285366 combination zp ZP_BYTE:25 [ mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:45 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] +Uplifting [mulf_init] best 285366 combination zp ZP_BYTE:45 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] +Attempting to uplift remaining variables inzp ZP_BYTE:53 [ mulf_init::dir#2 mulf_init::dir#3 ] +Uplifting [mulf_init] best 285366 combination zp ZP_BYTE:53 [ mulf_init::dir#2 mulf_init::dir#3 ] +Attempting to uplift remaining variables inzp ZP_BYTE:63 [ mulf8s::b#0 ] +Uplifting [mulf8s] best 285366 combination zp ZP_BYTE:63 [ mulf8s::b#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:69 [ signed_multiply_error::b#0 ] +Uplifting [signed_multiply_error] best 285366 combination zp ZP_BYTE:69 [ signed_multiply_error::b#0 ] +Attempting to uplift remaining variables inzp ZP_BYTE:100 [ multiply_error::b#0 ] +Uplifting [multiply_error] best 285366 combination zp ZP_BYTE:100 [ multiply_error::b#0 ] +Coalescing zero page register [ zp ZP_BYTE:2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 ] ] with [ zp ZP_BYTE:56 [ muls8s::a#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:3 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 ] ] with [ zp ZP_BYTE:63 [ mulf8s::b#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:3 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 mulf8s::b#0 ] ] with [ zp ZP_BYTE:69 [ signed_multiply_error::b#0 ] ] +Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 ] ] with [ zp ZP_WORD:10 [ print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 ] ] +Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 ] ] with [ zp ZP_WORD:38 [ mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 ] ] +Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 ] ] with [ zp ZP_WORD:70 [ signed_multiply_error::ms#0 ] ] +Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 signed_multiply_error::ms#0 ] ] with [ zp ZP_WORD:60 [ mul8s_slowfast_compare::ms#0 ] ] +Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#0 ] ] with [ zp ZP_WORD:58 [ muls8s::return#2 ] ] +Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#0 muls8s::return#2 ] ] with [ zp ZP_WORD:22 [ muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 ] ] +Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#0 muls8s::return#2 muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 ] ] with [ zp ZP_WORD:101 [ multiply_error::ms#0 ] ] +Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#0 muls8s::return#2 muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 multiply_error::ms#0 ] ] with [ zp ZP_WORD:88 [ mul8u_slowfast_compare::ms#0 ] ] +Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#0 muls8s::return#2 muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 multiply_error::ms#0 mul8u_slowfast_compare::ms#0 ] ] with [ zp ZP_WORD:86 [ muls8u::return#2 ] ] +Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#0 muls8s::return#2 muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 multiply_error::ms#0 mul8u_slowfast_compare::ms#0 muls8u::return#2 ] ] with [ zp ZP_WORD:34 [ muls8u::return#0 muls8u::m#3 muls8u::m#1 ] ] +Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 ] ] with [ zp ZP_WORD:64 [ mulf8s::return#2 ] ] +Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 ] ] with [ zp ZP_WORD:66 [ mul8s_slowfast_compare::ma#0 ] ] +Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 mul8s_slowfast_compare::ma#0 ] ] with [ zp ZP_WORD:72 [ signed_multiply_error::ma#0 ] ] +Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 mul8s_slowfast_compare::ma#0 signed_multiply_error::ma#0 ] ] with [ zp ZP_WORD:76 [ mulf8u::return#2 ] ] +Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 mul8s_slowfast_compare::ma#0 signed_multiply_error::ma#0 mulf8u::return#2 ] ] with [ zp ZP_WORD:82 [ mulf8u::return#0 ] ] +Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 mul8s_slowfast_compare::ma#0 signed_multiply_error::ma#0 mulf8u::return#2 mulf8u::return#0 ] ] with [ zp ZP_WORD:90 [ mulf8u::return#3 ] ] +Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 mul8s_slowfast_compare::ma#0 signed_multiply_error::ma#0 mulf8u::return#2 mulf8u::return#0 mulf8u::return#3 ] ] with [ zp ZP_WORD:92 [ mul8u_slowfast_compare::mf#0 ] ] +Coalescing zero page register [ zp ZP_WORD:17 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 mul8s_slowfast_compare::ma#0 signed_multiply_error::ma#0 mulf8u::return#2 mulf8u::return#0 mulf8u::return#3 mul8u_slowfast_compare::mf#0 ] ] with [ zp ZP_WORD:105 [ multiply_error::mf#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:25 [ mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 ] ] with [ zp ZP_BYTE:84 [ muls8u::a#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:26 [ mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::b#1 ] ] with [ zp ZP_BYTE:100 [ multiply_error::b#0 ] ] +Coalescing zero page register [ zp ZP_WORD:29 [ mul8u::res#2 mul8u::res#6 mul8u::res#1 ] ] with [ zp ZP_WORD:95 [ mul8u::return#2 ] ] +Coalescing zero page register [ zp ZP_WORD:29 [ mul8u::res#2 mul8u::res#6 mul8u::res#1 mul8u::return#2 ] ] with [ zp ZP_WORD:97 [ mul8u_slowfast_compare::mn#0 ] ] +Coalescing zero page register [ zp ZP_WORD:29 [ mul8u::res#2 mul8u::res#6 mul8u::res#1 mul8u::return#2 mul8u_slowfast_compare::mn#0 ] ] with [ zp ZP_WORD:103 [ multiply_error::mn#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 muls8s::a#0 ] ] with [ zp ZP_BYTE:25 [ mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 muls8u::a#0 ] ] +Coalescing zero page register [ zp ZP_BYTE:2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 muls8s::a#0 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 muls8u::a#0 ] ] with [ zp ZP_BYTE:45 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] ] +Coalescing zero page register [ zp ZP_BYTE:2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::a#1 muls8s::a#0 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::a#1 muls8u::a#0 mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] ] with [ zp ZP_BYTE:53 [ mulf_init::dir#2 mulf_init::dir#3 ] ] +Coalescing zero page register [ zp ZP_BYTE:3 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::b#1 mulf8s::b#0 signed_multiply_error::b#0 ] ] with [ zp ZP_BYTE:26 [ mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::b#1 multiply_error::b#0 ] ] +Coalescing zero page register [ zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#1 line_cursor#10 ] ] with [ zp ZP_WORD:36 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::kc_sqr#1 ] ] +Coalescing zero page register [ zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#1 line_cursor#10 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::kc_sqr#1 ] ] with [ zp ZP_WORD:41 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] ] +Coalescing zero page register [ zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#1 line_cursor#10 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::kc_sqr#1 mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 ] ] with [ zp ZP_WORD:49 [ mulf_init::sqr2_lo#2 mulf_init::sqr2_lo#1 ] ] +Coalescing zero page register [ zp ZP_WORD:4 [ line_cursor#23 line_cursor#45 line_cursor#1 line_cursor#10 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::kc_sqr#1 mulf_init::sqr1_lo#2 mulf_init::sqr1_lo#1 mulf_init::sqr2_lo#2 mulf_init::sqr2_lo#1 ] ] with [ zp ZP_WORD:54 [ print_cls::sc#2 print_cls::sc#1 ] ] +Coalescing zero page register [ zp ZP_WORD:6 [ print_str::str#15 print_str::str#17 print_str::str#0 ] ] with [ zp ZP_WORD:31 [ mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 ] ] +Coalescing zero page register [ zp ZP_WORD:6 [ print_str::str#15 print_str::str#17 print_str::str#0 mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 ] ] with [ zp ZP_WORD:43 [ mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] ] +Coalescing zero page register [ zp ZP_WORD:6 [ print_str::str#15 print_str::str#17 print_str::str#0 mul8u::mb#2 mul8u::mb#0 mul8u::mb#1 mulf_init::sqr1_hi#2 mulf_init::sqr1_hi#1 ] ] with [ zp ZP_WORD:51 [ mulf_init::sqr2_hi#2 mulf_init::sqr2_hi#1 ] ] +Coalescing zero page register [ zp ZP_WORD:8 [ print_sword::w#4 print_sword::w#3 print_sword::w#1 print_sword::w#2 print_sword::w#0 print_word::w#6 print_word::w#8 print_word::w#9 print_word::w#3 print_word::w#4 print_word::w#5 print_word::w#13 mulf_tables_cmp::asm_sqr#2 mulf_tables_cmp::asm_sqr#1 signed_multiply_error::ms#0 mul8s_slowfast_compare::ms#0 muls8s::return#2 muls8s::m#5 muls8s::return#0 muls8s::m#3 muls8s::m#1 muls8s::m#2 multiply_error::ms#0 mul8u_slowfast_compare::ms#0 muls8u::return#2 muls8u::return#0 muls8u::m#3 muls8u::m#1 ] ] with [ zp ZP_WORD:46 [ mulf_init::sqr#3 mulf_init::sqr#4 mulf_init::sqr#1 mulf_init::sqr#2 ] ] +Allocated (was zp ZP_WORD:14) zp ZP_WORD:10 [ char_cursor#80 char_cursor#133 char_cursor#132 char_cursor#128 char_cursor#145 char_cursor#179 char_cursor#30 char_cursor#127 char_cursor#126 char_cursor#17 char_cursor#187 char_cursor#1 char_cursor#130 char_cursor#212 ] +Allocated (was zp ZP_WORD:17) zp ZP_WORD:12 [ mulf8s::m#4 mulf8s::m#5 mulf8s::m#1 mulf8s::m#0 mulf8s::m#2 mulf8s::return#2 mul8s_slowfast_compare::ma#0 signed_multiply_error::ma#0 mulf8u::return#2 mulf8u::return#0 mulf8u::return#3 mul8u_slowfast_compare::mf#0 multiply_error::mf#0 ] +Allocated (was zp ZP_WORD:29) zp ZP_WORD:14 [ mul8u::res#2 mul8u::res#6 mul8u::res#1 mul8u::return#2 mul8u_slowfast_compare::mn#0 multiply_error::mn#0 ] ASSEMBLER BEFORE OPTIMIZATION //SEG0 Basic Upstart @@ -8458,15 +9414,15 @@ ASSEMBLER BEFORE OPTIMIZATION .label line_cursor = 4 //SEG2 @begin bbegin: -//SEG3 [1] phi from @begin to @20 [phi:@begin->@20] -b20_from_bbegin: - jmp b20 -//SEG4 @20 -b20: +//SEG3 [1] phi from @begin to @21 [phi:@begin->@21] +b21_from_bbegin: + jmp b21 +//SEG4 @21 +b21: //SEG5 [2] call main param-assignment [ ] ( ) jsr main -//SEG6 [3] phi from @20 to @end [phi:@20->@end] -bend_from_b20: +//SEG6 [3] phi from @21 to @end [phi:@21->@end] +bend_from_b21: jmp bend //SEG7 @end bend: @@ -8476,7 +9432,7 @@ main: { lda #5 sta BGCOL //SEG10 [5] call print_cls param-assignment [ ] ( main:2 [ ] ) - //SEG11 [258] phi from main to print_cls [phi:main->print_cls] + //SEG11 [284] 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] @@ -8485,7 +9441,7 @@ main: { //SEG13 main::@1 b1: //SEG14 [7] call mulf_init param-assignment [ ] ( main:2 [ ] ) - //SEG15 [229] phi from main::@1 to mulf_init [phi:main::@1->mulf_init] + //SEG15 [255] phi from main::@1 to mulf_init [phi:main::@1->mulf_init] mulf_init_from_b1: jsr mulf_init //SEG16 [8] phi from main::@1 to main::@2 [phi:main::@1->main::@2] @@ -8500,91 +9456,91 @@ main: { jmp b3 //SEG20 main::@3 b3: - //SEG21 [11] call multiply_tables_compare param-assignment [ line_cursor#10 char_cursor#30 ] ( main:2 [ line_cursor#10 char_cursor#30 ] ) - //SEG22 [202] phi from main::@3 to multiply_tables_compare [phi:main::@3->multiply_tables_compare] - multiply_tables_compare_from_b3: - jsr multiply_tables_compare + //SEG21 [11] call mulf_tables_cmp param-assignment [ line_cursor#10 char_cursor#30 ] ( main:2 [ line_cursor#10 char_cursor#30 ] ) + //SEG22 [228] phi from main::@3 to mulf_tables_cmp [phi:main::@3->mulf_tables_cmp] + mulf_tables_cmp_from_b3: + jsr mulf_tables_cmp //SEG23 [12] phi from main::@3 to main::@4 [phi:main::@3->main::@4] b4_from_b3: jmp b4 //SEG24 main::@4 b4: - //SEG25 [13] call multiply_results_compare param-assignment [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) - //SEG26 [147] phi from main::@4 to multiply_results_compare [phi:main::@4->multiply_results_compare] - multiply_results_compare_from_b4: - jsr multiply_results_compare + //SEG25 [13] call mul8u_slowfast_compare param-assignment [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) + //SEG26 [147] phi from main::@4 to mul8u_slowfast_compare [phi:main::@4->mul8u_slowfast_compare] + mul8u_slowfast_compare_from_b4: + jsr mul8u_slowfast_compare //SEG27 [14] phi from main::@4 to main::@5 [phi:main::@4->main::@5] b5_from_b4: jmp b5 //SEG28 main::@5 b5: - //SEG29 [15] call signed_multiply_results_compare param-assignment [ ] ( main:2 [ ] ) - //SEG30 [17] phi from main::@5 to signed_multiply_results_compare [phi:main::@5->signed_multiply_results_compare] - signed_multiply_results_compare_from_b5: - jsr signed_multiply_results_compare + //SEG29 [15] call mul8s_slowfast_compare param-assignment [ ] ( main:2 [ ] ) + //SEG30 [17] phi from main::@5 to mul8s_slowfast_compare [phi:main::@5->mul8s_slowfast_compare] + mul8s_slowfast_compare_from_b5: + jsr mul8s_slowfast_compare jmp breturn //SEG31 main::@return breturn: //SEG32 [16] return [ ] ( main:2 [ ] ) rts } -//SEG33 signed_multiply_results_compare -signed_multiply_results_compare: { +//SEG33 mul8s_slowfast_compare +mul8s_slowfast_compare: { .label ms = 8 .label ma = $c .label b = 3 .label a = 2 - //SEG34 [18] phi from signed_multiply_results_compare to signed_multiply_results_compare::@1 [phi:signed_multiply_results_compare->signed_multiply_results_compare::@1] - b1_from_signed_multiply_results_compare: - //SEG35 [18] phi (signed byte) signed_multiply_results_compare::a#6 = -(byte/word/signed word/dword/signed dword) 128 [phi:signed_multiply_results_compare->signed_multiply_results_compare::@1#0] -- vbsz1=vbsc1 + //SEG34 [18] phi from mul8s_slowfast_compare to mul8s_slowfast_compare::@1 [phi:mul8s_slowfast_compare->mul8s_slowfast_compare::@1] + b1_from_mul8s_slowfast_compare: + //SEG35 [18] phi (signed byte) mul8s_slowfast_compare::a#6 = -(byte/word/signed word/dword/signed dword) 128 [phi:mul8s_slowfast_compare->mul8s_slowfast_compare::@1#0] -- vbsz1=vbsc1 lda #-$80 sta a jmp b1 - //SEG36 [18] phi from signed_multiply_results_compare::@6 to signed_multiply_results_compare::@1 [phi:signed_multiply_results_compare::@6->signed_multiply_results_compare::@1] + //SEG36 [18] phi from mul8s_slowfast_compare::@6 to mul8s_slowfast_compare::@1 [phi:mul8s_slowfast_compare::@6->mul8s_slowfast_compare::@1] b1_from_b6: - //SEG37 [18] phi (signed byte) signed_multiply_results_compare::a#6 = (signed byte) signed_multiply_results_compare::a#1 [phi:signed_multiply_results_compare::@6->signed_multiply_results_compare::@1#0] -- register_copy + //SEG37 [18] phi (signed byte) mul8s_slowfast_compare::a#6 = (signed byte) mul8s_slowfast_compare::a#1 [phi:mul8s_slowfast_compare::@6->mul8s_slowfast_compare::@1#0] -- register_copy jmp b1 - //SEG38 signed_multiply_results_compare::@1 + //SEG38 mul8s_slowfast_compare::@1 b1: - //SEG39 [19] phi from signed_multiply_results_compare::@1 to signed_multiply_results_compare::@2 [phi:signed_multiply_results_compare::@1->signed_multiply_results_compare::@2] + //SEG39 [19] phi from mul8s_slowfast_compare::@1 to mul8s_slowfast_compare::@2 [phi:mul8s_slowfast_compare::@1->mul8s_slowfast_compare::@2] b2_from_b1: - //SEG40 [19] phi (signed byte) signed_multiply_results_compare::b#2 = -(byte/word/signed word/dword/signed dword) 128 [phi:signed_multiply_results_compare::@1->signed_multiply_results_compare::@2#0] -- vbsz1=vbsc1 + //SEG40 [19] phi (signed byte) mul8s_slowfast_compare::b#2 = -(byte/word/signed word/dword/signed dword) 128 [phi:mul8s_slowfast_compare::@1->mul8s_slowfast_compare::@2#0] -- vbsz1=vbsc1 lda #-$80 sta b jmp b2 - //SEG41 [19] phi from signed_multiply_results_compare::@3 to signed_multiply_results_compare::@2 [phi:signed_multiply_results_compare::@3->signed_multiply_results_compare::@2] + //SEG41 [19] phi from mul8s_slowfast_compare::@3 to mul8s_slowfast_compare::@2 [phi:mul8s_slowfast_compare::@3->mul8s_slowfast_compare::@2] b2_from_b3: - //SEG42 [19] phi (signed byte) signed_multiply_results_compare::b#2 = (signed byte) signed_multiply_results_compare::b#1 [phi:signed_multiply_results_compare::@3->signed_multiply_results_compare::@2#0] -- register_copy + //SEG42 [19] phi (signed byte) mul8s_slowfast_compare::b#2 = (signed byte) mul8s_slowfast_compare::b#1 [phi:mul8s_slowfast_compare::@3->mul8s_slowfast_compare::@2#0] -- register_copy jmp b2 - //SEG43 signed_multiply_results_compare::@2 + //SEG43 mul8s_slowfast_compare::@2 b2: - //SEG44 [20] (signed byte) muls8s::a#0 ← (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 line_cursor#1 ] ) - // (signed byte) muls8s::a#0 = (signed byte) signed_multiply_results_compare::a#6 // register copy zp ZP_BYTE:2 - //SEG45 [21] (signed byte) muls8s::b#0 ← (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ) -- vbsxx=vbsz1 + //SEG44 [20] (signed byte) muls8s::a#0 ← (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 line_cursor#1 ] ) + // (signed byte) muls8s::a#0 = (signed byte) mul8s_slowfast_compare::a#6 // register copy zp ZP_BYTE:2 + //SEG45 [21] (signed byte) muls8s::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ) -- vbsxx=vbsz1 ldx b - //SEG46 [22] call muls8s param-assignment [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#0 line_cursor#1 ] ) + //SEG46 [22] call muls8s param-assignment [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#0 line_cursor#1 ] ) jsr muls8s - //SEG47 [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#2 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#2 line_cursor#1 ] ) + //SEG47 [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#2 line_cursor#1 ] ) // (signed word) muls8s::return#2 = (signed word) muls8s::return#0 // register copy zp ZP_WORD:8 jmp b8 - //SEG48 signed_multiply_results_compare::@8 + //SEG48 mul8s_slowfast_compare::@8 b8: - //SEG49 [24] (signed word) signed_multiply_results_compare::ms#0 ← (signed word) muls8s::return#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 ] ) - // (signed word) signed_multiply_results_compare::ms#0 = (signed word) muls8s::return#2 // register copy zp ZP_WORD:8 - //SEG50 [25] (signed byte) mulf8s::a#0 ← (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ) -- vbsyy=vbsz1 + //SEG49 [24] (signed word) mul8s_slowfast_compare::ms#0 ← (signed word) muls8s::return#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 ] ) + // (signed word) mul8s_slowfast_compare::ms#0 = (signed word) muls8s::return#2 // register copy zp ZP_WORD:8 + //SEG50 [25] (signed byte) mulf8s::a#0 ← (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ) -- vbsyy=vbsz1 ldy a - //SEG51 [26] (signed byte) mulf8s::b#0 ← (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ) - // (signed byte) mulf8s::b#0 = (signed byte) signed_multiply_results_compare::b#2 // register copy zp ZP_BYTE:3 - //SEG52 [27] call mulf8s param-assignment [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ) + //SEG51 [26] (signed byte) mulf8s::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ) + // (signed byte) mulf8s::b#0 = (signed byte) mul8s_slowfast_compare::b#2 // register copy zp ZP_BYTE:3 + //SEG52 [27] call mulf8s param-assignment [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ) jsr mulf8s - //SEG53 [28] (signed word) mulf8s::return#2 ← (signed word)(word) mulf8s::m#4 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ) + //SEG53 [28] (signed word) mulf8s::return#2 ← (signed word)(word) mulf8s::m#4 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ) // (signed word) mulf8s::return#2 = (signed word)(word) mulf8s::m#4 // register copy zp ZP_WORD:12 jmp b9 - //SEG54 signed_multiply_results_compare::@9 + //SEG54 mul8s_slowfast_compare::@9 b9: - //SEG55 [29] (signed word) signed_multiply_results_compare::ma#0 ← (signed word) mulf8s::return#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) - // (signed word) signed_multiply_results_compare::ma#0 = (signed word) mulf8s::return#2 // register copy zp ZP_WORD:12 - //SEG56 [30] if((signed word) signed_multiply_results_compare::ms#0==(signed word) signed_multiply_results_compare::ma#0) goto signed_multiply_results_compare::@3 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) -- vwsz1_eq_vwsz2_then_la1 + //SEG55 [29] (signed word) mul8s_slowfast_compare::ma#0 ← (signed word) mulf8s::return#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) + // (signed word) mul8s_slowfast_compare::ma#0 = (signed word) mulf8s::return#2 // register copy zp ZP_WORD:12 + //SEG56 [30] if((signed word) mul8s_slowfast_compare::ms#0==(signed word) mul8s_slowfast_compare::ma#0) goto mul8s_slowfast_compare::@3 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) -- vwsz1_eq_vwsz2_then_la1 lda ms cmp ma bne !+ @@ -8593,71 +9549,71 @@ signed_multiply_results_compare: { beq b3 !: jmp b4 - //SEG57 signed_multiply_results_compare::@4 + //SEG57 mul8s_slowfast_compare::@4 b4: - //SEG58 [31] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) -- _deref_pbuc1=vbuc2 + //SEG58 [31] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG59 [32] (signed byte) signed_multiply_error::a#0 ← (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ) -- vbsxx=vbsz1 + //SEG59 [32] (signed byte) signed_multiply_error::a#0 ← (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ) -- vbsxx=vbsz1 ldx a - //SEG60 [33] (signed byte) signed_multiply_error::b#0 ← (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ) - // (signed byte) signed_multiply_error::b#0 = (signed byte) signed_multiply_results_compare::b#2 // register copy zp ZP_BYTE:3 - //SEG61 [34] (signed word) signed_multiply_error::ms#0 ← (signed word) signed_multiply_results_compare::ms#0 [ signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ) - // (signed word) signed_multiply_error::ms#0 = (signed word) signed_multiply_results_compare::ms#0 // register copy zp ZP_WORD:8 - //SEG62 [35] (signed word) signed_multiply_error::ma#0 ← (signed word) signed_multiply_results_compare::ma#0 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ) - // (signed word) signed_multiply_error::ma#0 = (signed word) signed_multiply_results_compare::ma#0 // register copy zp ZP_WORD:12 - //SEG63 [36] call signed_multiply_error param-assignment [ ] ( main:2::signed_multiply_results_compare:15 [ ] ) + //SEG60 [33] (signed byte) signed_multiply_error::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ) + // (signed byte) signed_multiply_error::b#0 = (signed byte) mul8s_slowfast_compare::b#2 // register copy zp ZP_BYTE:3 + //SEG61 [34] (signed word) signed_multiply_error::ms#0 ← (signed word) mul8s_slowfast_compare::ms#0 [ mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ) + // (signed word) signed_multiply_error::ms#0 = (signed word) mul8s_slowfast_compare::ms#0 // register copy zp ZP_WORD:8 + //SEG62 [35] (signed word) signed_multiply_error::ma#0 ← (signed word) mul8s_slowfast_compare::ma#0 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ) + // (signed word) signed_multiply_error::ma#0 = (signed word) mul8s_slowfast_compare::ma#0 // register copy zp ZP_WORD:12 + //SEG63 [36] call signed_multiply_error param-assignment [ ] ( main:2::mul8s_slowfast_compare:15 [ ] ) jsr signed_multiply_error jmp breturn - //SEG64 signed_multiply_results_compare::@return + //SEG64 mul8s_slowfast_compare::@return breturn: - //SEG65 [37] return [ ] ( main:2::signed_multiply_results_compare:15 [ ] ) + //SEG65 [37] return [ ] ( main:2::mul8s_slowfast_compare:15 [ ] ) rts - //SEG66 signed_multiply_results_compare::@3 + //SEG66 mul8s_slowfast_compare::@3 b3: - //SEG67 [38] (signed byte) signed_multiply_results_compare::b#1 ← ++ (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ) -- vbsz1=_inc_vbsz1 + //SEG67 [38] (signed byte) mul8s_slowfast_compare::b#1 ← ++ (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ) -- vbsz1=_inc_vbsz1 inc b - //SEG68 [39] if((signed byte) signed_multiply_results_compare::b#1!=-(byte/word/signed word/dword/signed dword) 128) goto signed_multiply_results_compare::@2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ) -- vbsz1_neq_vbsc1_then_la1 + //SEG68 [39] if((signed byte) mul8s_slowfast_compare::b#1!=-(byte/word/signed word/dword/signed dword) 128) goto mul8s_slowfast_compare::@2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ) -- vbsz1_neq_vbsc1_then_la1 lda b cmp #-$80 bne b2_from_b3 jmp b6 - //SEG69 signed_multiply_results_compare::@6 + //SEG69 mul8s_slowfast_compare::@6 b6: - //SEG70 [40] (signed byte) signed_multiply_results_compare::a#1 ← ++ (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ) -- vbsz1=_inc_vbsz1 + //SEG70 [40] (signed byte) mul8s_slowfast_compare::a#1 ← ++ (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ) -- vbsz1=_inc_vbsz1 inc a - //SEG71 [41] if((signed byte) signed_multiply_results_compare::a#1!=-(byte/word/signed word/dword/signed dword) 128) goto signed_multiply_results_compare::@1 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ) -- vbsz1_neq_vbsc1_then_la1 + //SEG71 [41] if((signed byte) mul8s_slowfast_compare::a#1!=-(byte/word/signed word/dword/signed dword) 128) goto mul8s_slowfast_compare::@1 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ) -- vbsz1_neq_vbsc1_then_la1 lda a cmp #-$80 bne b1_from_b6 jmp b7 - //SEG72 signed_multiply_results_compare::@7 + //SEG72 mul8s_slowfast_compare::@7 b7: - //SEG73 [42] (byte*~) char_cursor#180 ← (byte*) line_cursor#1 [ char_cursor#180 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ char_cursor#180 line_cursor#1 ] ) -- pbuz1=pbuz2 + //SEG73 [42] (byte*~) char_cursor#179 ← (byte*) line_cursor#1 [ char_cursor#179 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ char_cursor#179 line_cursor#1 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG74 [43] call print_str param-assignment [ line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15 [ line_cursor#1 char_cursor#122 ] ) - //SEG75 [51] phi from signed_multiply_results_compare::@7 to print_str [phi:signed_multiply_results_compare::@7->print_str] + //SEG74 [43] call print_str param-assignment [ line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15 [ line_cursor#1 char_cursor#126 ] ) + //SEG75 [51] phi from mul8s_slowfast_compare::@7 to print_str [phi:mul8s_slowfast_compare::@7->print_str] print_str_from_b7: - //SEG76 [51] phi (byte*) char_cursor#141 = (byte*~) char_cursor#180 [phi:signed_multiply_results_compare::@7->print_str#0] -- register_copy - //SEG77 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_results_compare::str [phi:signed_multiply_results_compare::@7->print_str#1] -- pbuz1=pbuc1 + //SEG76 [51] phi (byte*) char_cursor#145 = (byte*~) char_cursor#179 [phi:mul8s_slowfast_compare::@7->print_str#0] -- register_copy + //SEG77 [51] phi (byte*) print_str::str#17 = (const string) mul8s_slowfast_compare::str [phi:mul8s_slowfast_compare::@7->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str - //SEG78 [44] phi from signed_multiply_results_compare::@7 to signed_multiply_results_compare::@11 [phi:signed_multiply_results_compare::@7->signed_multiply_results_compare::@11] + //SEG78 [44] phi from mul8s_slowfast_compare::@7 to mul8s_slowfast_compare::@11 [phi:mul8s_slowfast_compare::@7->mul8s_slowfast_compare::@11] b11_from_b7: jmp b11 - //SEG79 signed_multiply_results_compare::@11 + //SEG79 mul8s_slowfast_compare::@11 b11: - //SEG80 [45] call print_ln param-assignment [ ] ( main:2::signed_multiply_results_compare:15 [ ] ) - //SEG81 [46] phi from signed_multiply_results_compare::@11 to print_ln [phi:signed_multiply_results_compare::@11->print_ln] + //SEG80 [45] call print_ln param-assignment [ ] ( main:2::mul8s_slowfast_compare:15 [ ] ) + //SEG81 [46] phi from mul8s_slowfast_compare::@11 to print_ln [phi:mul8s_slowfast_compare::@11->print_ln] print_ln_from_b11: - //SEG82 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#122 [phi:signed_multiply_results_compare::@11->print_ln#0] -- register_copy - //SEG83 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#1 [phi:signed_multiply_results_compare::@11->print_ln#1] -- register_copy + //SEG82 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#126 [phi:mul8s_slowfast_compare::@11->print_ln#0] -- register_copy + //SEG83 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#1 [phi:mul8s_slowfast_compare::@11->print_ln#1] -- register_copy jsr print_ln jmp breturn str: .text "signed multiply results match!@" @@ -8671,7 +9627,7 @@ print_ln: { jmp b1 //SEG87 print_ln::@1 b1: - //SEG88 [48] (byte*) line_cursor#1 ← (byte*) line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#123 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 char_cursor#123 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 char_cursor#123 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 char_cursor#123 ] ) -- pbuz1=pbuz1_plus_vbuc1 + //SEG88 [48] (byte*) line_cursor#1 ← (byte*) line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 char_cursor#127 ] ) -- pbuz1=pbuz1_plus_vbuc1 lda line_cursor clc adc #$28 @@ -8679,7 +9635,7 @@ print_ln: { bcc !+ inc line_cursor+1 !: - //SEG89 [49] if((byte*) line_cursor#1<(byte*) char_cursor#123) goto print_ln::@1 [ line_cursor#1 char_cursor#123 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 char_cursor#123 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 char_cursor#123 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 char_cursor#123 ] ) -- pbuz1_lt_pbuz2_then_la1 + //SEG89 [49] if((byte*) line_cursor#1<(byte*) char_cursor#127) goto print_ln::@1 [ line_cursor#1 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 char_cursor#127 ] ) -- pbuz1_lt_pbuz2_then_la1 lda line_cursor+1 cmp char_cursor+1 bcc b1_from_b1 @@ -8691,7 +9647,7 @@ print_ln: { jmp breturn //SEG90 print_ln::@return breturn: - //SEG91 [50] return [ line_cursor#1 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 ] ) + //SEG91 [50] return [ line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 ] ) rts } //SEG92 print_str @@ -8700,12 +9656,12 @@ print_str: { //SEG93 [52] 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: - //SEG94 [52] phi (byte*) char_cursor#122 = (byte*) char_cursor#141 [phi:print_str/print_str::@2->print_str::@1#0] -- register_copy - //SEG95 [52] phi (byte*) print_str::str#14 = (byte*) print_str::str#16 [phi:print_str/print_str::@2->print_str::@1#1] -- register_copy + //SEG94 [52] phi (byte*) char_cursor#126 = (byte*) char_cursor#145 [phi:print_str/print_str::@2->print_str::@1#0] -- register_copy + //SEG95 [52] phi (byte*) print_str::str#15 = (byte*) print_str::str#17 [phi:print_str/print_str::@2->print_str::@1#1] -- register_copy jmp b1 //SEG96 print_str::@1 b1: - //SEG97 [53] if(*((byte*) print_str::str#14)!=(byte) '@') goto print_str::@2 [ char_cursor#122 print_str::str#14 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 print_str::str#14 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 + //SEG97 [53] if(*((byte*) print_str::str#15)!=(byte) '@') goto print_str::@2 [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 ldy #0 lda (str),y cmp #'@' @@ -8713,21 +9669,21 @@ print_str: { jmp breturn //SEG98 print_str::@return breturn: - //SEG99 [54] return [ char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 ] ) + //SEG99 [54] return [ char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 ] ) rts //SEG100 print_str::@2 b2: - //SEG101 [55] *((byte*) char_cursor#122) ← *((byte*) print_str::str#14) [ char_cursor#122 print_str::str#14 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 print_str::str#14 ] ) -- _deref_pbuz1=_deref_pbuz2 + //SEG101 [55] *((byte*) char_cursor#126) ← *((byte*) print_str::str#15) [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (char_cursor),y - //SEG102 [56] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#122 [ print_str::str#14 char_cursor#1 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 print_str::str#14 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 print_str::str#14 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:219 [ print_str::str#14 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG102 [56] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#126 [ print_str::str#15 char_cursor#1 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#15 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 print_str::str#15 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:245 [ print_str::str#15 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc char_cursor bne !+ inc char_cursor+1 !: - //SEG103 [57] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#14 [ print_str::str#0 char_cursor#1 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 print_str::str#0 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 print_str::str#0 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:219 [ print_str::str#0 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG103 [57] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#15 [ print_str::str#0 char_cursor#1 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#0 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 print_str::str#0 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:245 [ print_str::str#0 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -8739,16 +9695,16 @@ signed_multiply_error: { .label b = 3 .label ms = 8 .label ma = $c - //SEG105 [58] (byte*~) char_cursor#176 ← (byte*) line_cursor#1 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#176 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#176 ] ) -- pbuz1=pbuz2 + //SEG105 [58] (byte*~) char_cursor#187 ← (byte*) line_cursor#1 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#187 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#187 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG106 [59] call print_str param-assignment [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + //SEG106 [59] call print_str param-assignment [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) //SEG107 [51] phi from signed_multiply_error to print_str [phi:signed_multiply_error->print_str] print_str_from_signed_multiply_error: - //SEG108 [51] phi (byte*) char_cursor#141 = (byte*~) char_cursor#176 [phi:signed_multiply_error->print_str#0] -- register_copy - //SEG109 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_error::str [phi:signed_multiply_error->print_str#1] -- pbuz1=pbuc1 + //SEG108 [51] phi (byte*) char_cursor#145 = (byte*~) char_cursor#187 [phi:signed_multiply_error->print_str#0] -- register_copy + //SEG109 [51] phi (byte*) print_str::str#17 = (const string) signed_multiply_error::str [phi:signed_multiply_error->print_str#1] -- pbuz1=pbuc1 lda #str @@ -8757,9 +9713,9 @@ signed_multiply_error: { jmp b1 //SEG110 signed_multiply_error::@1 b1: - //SEG111 [60] (signed byte) print_sbyte::b#1 ← (signed byte) signed_multiply_error::a#0 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#1 ] ) + //SEG111 [60] (signed byte) print_sbyte::b#1 ← (signed byte) signed_multiply_error::a#0 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#1 ] ) // (signed byte) print_sbyte::b#1 = (signed byte) signed_multiply_error::a#0 // register copy reg byte x - //SEG112 [61] call print_sbyte param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG112 [61] call print_sbyte param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) //SEG113 [104] phi from signed_multiply_error::@1 to print_sbyte [phi:signed_multiply_error::@1->print_sbyte] print_sbyte_from_b1: //SEG114 [104] phi (signed byte) print_sbyte::b#3 = (signed byte) print_sbyte::b#1 [phi:signed_multiply_error::@1->print_sbyte#0] -- register_copy @@ -8769,11 +9725,11 @@ signed_multiply_error: { jmp b2 //SEG116 signed_multiply_error::@2 b2: - //SEG117 [63] call print_str param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + //SEG117 [63] call print_str param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) //SEG118 [51] phi from signed_multiply_error::@2 to print_str [phi:signed_multiply_error::@2->print_str] print_str_from_b2: - //SEG119 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:signed_multiply_error::@2->print_str#0] -- register_copy - //SEG120 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_error::str1 [phi:signed_multiply_error::@2->print_str#1] -- pbuz1=pbuc1 + //SEG119 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:signed_multiply_error::@2->print_str#0] -- register_copy + //SEG120 [51] phi (byte*) print_str::str#17 = (const string) signed_multiply_error::str1 [phi:signed_multiply_error::@2->print_str#1] -- pbuz1=pbuc1 lda #str1 @@ -8782,9 +9738,9 @@ signed_multiply_error: { jmp b3 //SEG121 signed_multiply_error::@3 b3: - //SEG122 [64] (signed byte) print_sbyte::b#2 ← (signed byte) signed_multiply_error::b#0 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#2 ] ) -- vbsxx=vbsz1 + //SEG122 [64] (signed byte) print_sbyte::b#2 ← (signed byte) signed_multiply_error::b#0 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#2 ] ) -- vbsxx=vbsz1 ldx b - //SEG123 [65] call print_sbyte param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG123 [65] call print_sbyte param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) //SEG124 [104] phi from signed_multiply_error::@3 to print_sbyte [phi:signed_multiply_error::@3->print_sbyte] print_sbyte_from_b3: //SEG125 [104] phi (signed byte) print_sbyte::b#3 = (signed byte) print_sbyte::b#2 [phi:signed_multiply_error::@3->print_sbyte#0] -- register_copy @@ -8794,11 +9750,11 @@ signed_multiply_error: { jmp b4 //SEG127 signed_multiply_error::@4 b4: - //SEG128 [67] call print_str param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + //SEG128 [67] call print_str param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) //SEG129 [51] phi from signed_multiply_error::@4 to print_str [phi:signed_multiply_error::@4->print_str] print_str_from_b4: - //SEG130 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:signed_multiply_error::@4->print_str#0] -- register_copy - //SEG131 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_error::str2 [phi:signed_multiply_error::@4->print_str#1] -- pbuz1=pbuc1 + //SEG130 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:signed_multiply_error::@4->print_str#0] -- register_copy + //SEG131 [51] phi (byte*) print_str::str#17 = (const string) signed_multiply_error::str2 [phi:signed_multiply_error::@4->print_str#1] -- pbuz1=pbuc1 lda #str2 @@ -8807,9 +9763,9 @@ signed_multiply_error: { jmp b5 //SEG132 signed_multiply_error::@5 b5: - //SEG133 [68] (signed word) print_sword::w#1 ← (signed word) signed_multiply_error::ms#0 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#1 ] ) + //SEG133 [68] (signed word) print_sword::w#1 ← (signed word) signed_multiply_error::ms#0 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#1 ] ) // (signed word) print_sword::w#1 = (signed word) signed_multiply_error::ms#0 // register copy zp ZP_WORD:8 - //SEG134 [69] call print_sword param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG134 [69] call print_sword param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) //SEG135 [77] phi from signed_multiply_error::@5 to print_sword [phi:signed_multiply_error::@5->print_sword] print_sword_from_b5: //SEG136 [77] phi (signed word) print_sword::w#3 = (signed word) print_sword::w#1 [phi:signed_multiply_error::@5->print_sword#0] -- register_copy @@ -8819,11 +9775,11 @@ signed_multiply_error: { jmp b6 //SEG138 signed_multiply_error::@6 b6: - //SEG139 [71] call print_str param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + //SEG139 [71] call print_str param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) //SEG140 [51] phi from signed_multiply_error::@6 to print_str [phi:signed_multiply_error::@6->print_str] print_str_from_b6: - //SEG141 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:signed_multiply_error::@6->print_str#0] -- register_copy - //SEG142 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_error::str3 [phi:signed_multiply_error::@6->print_str#1] -- pbuz1=pbuc1 + //SEG141 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:signed_multiply_error::@6->print_str#0] -- register_copy + //SEG142 [51] phi (byte*) print_str::str#17 = (const string) signed_multiply_error::str3 [phi:signed_multiply_error::@6->print_str#1] -- pbuz1=pbuc1 lda #str3 @@ -8832,12 +9788,12 @@ signed_multiply_error: { jmp b7 //SEG143 signed_multiply_error::@7 b7: - //SEG144 [72] (signed word) print_sword::w#2 ← (signed word) signed_multiply_error::ma#0 [ line_cursor#1 char_cursor#122 print_sword::w#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#122 print_sword::w#2 ] ) -- vwsz1=vwsz2 + //SEG144 [72] (signed word) print_sword::w#2 ← (signed word) signed_multiply_error::ma#0 [ line_cursor#1 char_cursor#126 print_sword::w#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#126 print_sword::w#2 ] ) -- vwsz1=vwsz2 lda ma sta print_sword.w lda ma+1 sta print_sword.w+1 - //SEG145 [73] call print_sword param-assignment [ line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#17 ] ) + //SEG145 [73] call print_sword param-assignment [ line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#17 ] ) //SEG146 [77] phi from signed_multiply_error::@7 to print_sword [phi:signed_multiply_error::@7->print_sword] print_sword_from_b7: //SEG147 [77] phi (signed word) print_sword::w#3 = (signed word) print_sword::w#2 [phi:signed_multiply_error::@7->print_sword#0] -- register_copy @@ -8847,16 +9803,16 @@ signed_multiply_error: { jmp b8 //SEG149 signed_multiply_error::@8 b8: - //SEG150 [75] call print_ln param-assignment [ ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ ] ) + //SEG150 [75] call print_ln param-assignment [ ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ ] ) //SEG151 [46] phi from signed_multiply_error::@8 to print_ln [phi:signed_multiply_error::@8->print_ln] print_ln_from_b8: - //SEG152 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#17 [phi:signed_multiply_error::@8->print_ln#0] -- register_copy + //SEG152 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#17 [phi:signed_multiply_error::@8->print_ln#0] -- register_copy //SEG153 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#1 [phi:signed_multiply_error::@8->print_ln#1] -- register_copy jsr print_ln jmp breturn //SEG154 signed_multiply_error::@return breturn: - //SEG155 [76] return [ ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ ] ) + //SEG155 [76] return [ ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ ] ) rts str: .text "signed multiply mismatch @" str1: .text "*@" @@ -8866,7 +9822,7 @@ signed_multiply_error: { //SEG156 print_sword print_sword: { .label w = 8 - //SEG157 [78] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#122 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#122 print_sword::w#3 ] ) -- vwsz1_ge_0_then_la1 + //SEG157 [78] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#126 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#126 print_sword::w#3 ] ) -- vwsz1_ge_0_then_la1 lda w+1 bpl b1_from_print_sword //SEG158 [79] phi from print_sword to print_sword::@2 [phi:print_sword->print_sword::@2] @@ -8874,17 +9830,17 @@ print_sword: { jmp b2 //SEG159 print_sword::@2 b2: - //SEG160 [80] call print_char param-assignment [ char_cursor#17 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#3 ] ) + //SEG160 [80] call print_char param-assignment [ char_cursor#17 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#3 ] ) //SEG161 [100] phi from print_sword::@2 to print_char [phi:print_sword::@2->print_char] print_char_from_b2: - //SEG162 [100] phi (byte*) char_cursor#78 = (byte*) char_cursor#122 [phi:print_sword::@2->print_char#0] -- register_copy + //SEG162 [100] phi (byte*) char_cursor#80 = (byte*) char_cursor#126 [phi:print_sword::@2->print_char#0] -- register_copy //SEG163 [100] phi (byte) print_char::ch#4 = (byte) '-' [phi:print_sword::@2->print_char#1] -- vbuaa=vbuc1 lda #'-' jsr print_char jmp b4 //SEG164 print_sword::@4 b4: - //SEG165 [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) -- vwsz1=_neg_vwsz1 + //SEG165 [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -8897,100 +9853,100 @@ print_sword: { //SEG166 [82] phi from print_sword print_sword::@4 to print_sword::@1 [phi:print_sword/print_sword::@4->print_sword::@1] b1_from_print_sword: b1_from_b4: - //SEG167 [82] phi (byte*) char_cursor#124 = (byte*) char_cursor#122 [phi:print_sword/print_sword::@4->print_sword::@1#0] -- register_copy + //SEG167 [82] phi (byte*) char_cursor#128 = (byte*) char_cursor#126 [phi:print_sword/print_sword::@4->print_sword::@1#0] -- register_copy //SEG168 [82] phi (signed word) print_sword::w#4 = (signed word) print_sword::w#3 [phi:print_sword/print_sword::@4->print_sword::@1#1] -- register_copy jmp b1 //SEG169 print_sword::@1 b1: - //SEG170 [83] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 [ char_cursor#124 print_word::w#11 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#124 print_word::w#11 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#124 print_word::w#11 ] ) - // (word~) print_word::w#11 = (word)(signed word) print_sword::w#4 // register copy zp ZP_WORD:8 - //SEG171 [84] call print_word param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) + //SEG170 [83] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#4 [ char_cursor#128 print_word::w#13 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#128 print_word::w#13 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#128 print_word::w#13 ] ) + // (word~) print_word::w#13 = (word)(signed word) print_sword::w#4 // register copy zp ZP_WORD:8 + //SEG171 [84] call print_word param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) //SEG172 [86] phi from print_sword::@1 to print_word [phi:print_sword::@1->print_word] print_word_from_b1: - //SEG173 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#124 [phi:print_sword::@1->print_word#0] -- register_copy - //SEG174 [86] phi (word) print_word::w#5 = (word~) print_word::w#11 [phi:print_sword::@1->print_word#1] -- register_copy + //SEG173 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#128 [phi:print_sword::@1->print_word#0] -- register_copy + //SEG174 [86] phi (word) print_word::w#6 = (word~) print_word::w#13 [phi:print_sword::@1->print_word#1] -- register_copy jsr print_word jmp breturn //SEG175 print_sword::@return breturn: - //SEG176 [85] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) + //SEG176 [85] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) rts } //SEG177 print_word print_word: { .label w = 8 - //SEG178 [87] (byte) print_byte::b#1 ← > (word) print_word::w#5 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:212 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ) -- vbuxx=_hi_vwuz1 + //SEG178 [87] (byte) print_byte::b#1 ← > (word) print_word::w#6 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:238 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ) -- vbuxx=_hi_vwuz1 lda w+1 tax - //SEG179 [88] call print_byte param-assignment [ char_cursor#17 print_word::w#5 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_word::w#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_word::w#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_word::w#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 print_word::w#5 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_word::w#5 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 print_word::w#5 ] ) + //SEG179 [88] call print_byte param-assignment [ char_cursor#17 print_word::w#6 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_word::w#6 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 print_word::w#6 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_word::w#6 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 print_word::w#6 ] ) //SEG180 [92] phi from print_word to print_byte [phi:print_word->print_byte] print_byte_from_print_word: - //SEG181 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#128 [phi:print_word->print_byte#0] -- register_copy + //SEG181 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#132 [phi:print_word->print_byte#0] -- register_copy //SEG182 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#1 [phi:print_word->print_byte#1] -- register_copy jsr print_byte jmp b1 //SEG183 print_word::@1 b1: - //SEG184 [89] (byte) print_byte::b#2 ← < (word) print_word::w#5 [ char_cursor#17 print_byte::b#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 print_byte::b#2 ] ) -- vbuxx=_lo_vwuz1 + //SEG184 [89] (byte) print_byte::b#2 ← < (word) print_word::w#6 [ char_cursor#17 print_byte::b#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 print_byte::b#2 ] ) -- vbuxx=_lo_vwuz1 lda w tax - //SEG185 [90] call print_byte param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 ] ) + //SEG185 [90] call print_byte param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 ] ) //SEG186 [92] phi from print_word::@1 to print_byte [phi:print_word::@1->print_byte] print_byte_from_b1: - //SEG187 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#17 [phi:print_word::@1->print_byte#0] -- register_copy + //SEG187 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#17 [phi:print_word::@1->print_byte#0] -- register_copy //SEG188 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#2 [phi:print_word::@1->print_byte#1] -- register_copy jsr print_byte jmp breturn //SEG189 print_word::@return breturn: - //SEG190 [91] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 ] ) + //SEG190 [91] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 ] ) rts } //SEG191 print_byte print_byte: { - //SEG192 [93] (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#129 print_byte::$0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] ) -- vbuaa=vbuxx_ror_4 + //SEG192 [93] (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#133 print_byte::$0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] ) -- vbuaa=vbuxx_ror_4 txa lsr lsr lsr lsr - //SEG193 [94] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#129 print_char::ch#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG193 [94] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#133 print_char::ch#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa tay lda hextab,y - //SEG194 [95] call print_char param-assignment [ char_cursor#17 print_byte::b#5 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] ) + //SEG194 [95] call print_char param-assignment [ char_cursor#17 print_byte::b#5 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] ) //SEG195 [100] phi from print_byte to print_char [phi:print_byte->print_char] print_char_from_print_byte: - //SEG196 [100] phi (byte*) char_cursor#78 = (byte*) char_cursor#129 [phi:print_byte->print_char#0] -- register_copy + //SEG196 [100] phi (byte*) char_cursor#80 = (byte*) char_cursor#133 [phi:print_byte->print_char#0] -- register_copy //SEG197 [100] phi (byte) print_char::ch#4 = (byte) print_char::ch#2 [phi:print_byte->print_char#1] -- register_copy jsr print_char jmp b1 //SEG198 print_byte::@1 b1: - //SEG199 [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] ) -- vbuaa=vbuxx_band_vbuc1 + //SEG199 [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] ) -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG200 [97] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#17 print_char::ch#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] ) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG200 [97] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#17 print_char::ch#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] ) -- vbuaa=pbuc1_derefidx_vbuaa tay lda hextab,y - //SEG201 [98] call print_char param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] ) + //SEG201 [98] call print_char param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] ) //SEG202 [100] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] print_char_from_b1: - //SEG203 [100] phi (byte*) char_cursor#78 = (byte*) char_cursor#17 [phi:print_byte::@1->print_char#0] -- register_copy + //SEG203 [100] phi (byte*) char_cursor#80 = (byte*) char_cursor#17 [phi:print_byte::@1->print_char#0] -- register_copy //SEG204 [100] phi (byte) print_char::ch#4 = (byte) print_char::ch#3 [phi:print_byte::@1->print_char#1] -- register_copy jsr print_char jmp breturn //SEG205 print_byte::@return breturn: - //SEG206 [99] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] ) + //SEG206 [99] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] ) rts hextab: .text "0123456789abcdef" } //SEG207 print_char print_char: { - //SEG208 [101] *((byte*) char_cursor#78) ← (byte) print_char::ch#4 [ char_cursor#78 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] ) -- _deref_pbuz1=vbuaa + //SEG208 [101] *((byte*) char_cursor#80) ← (byte) print_char::ch#4 [ char_cursor#80 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (char_cursor),y - //SEG209 [102] (byte*) char_cursor#17 ← ++ (byte*) char_cursor#78 [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) -- pbuz1=_inc_pbuz1 + //SEG209 [102] (byte*) char_cursor#17 ← ++ (byte*) char_cursor#80 [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) -- pbuz1=_inc_pbuz1 inc char_cursor bne !+ inc char_cursor+1 @@ -8998,12 +9954,12 @@ print_char: { jmp breturn //SEG210 print_char::@return breturn: - //SEG211 [103] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) + //SEG211 [103] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) rts } //SEG212 print_sbyte print_sbyte: { - //SEG213 [105] if((signed byte) print_sbyte::b#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#122 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] ) -- vbsxx_ge_0_then_la1 + //SEG213 [105] if((signed byte) print_sbyte::b#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#126 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] ) -- vbsxx_ge_0_then_la1 cpx #0 bpl b1_from_print_sbyte //SEG214 [106] phi from print_sbyte to print_sbyte::@2 [phi:print_sbyte->print_sbyte::@2] @@ -9011,17 +9967,17 @@ print_sbyte: { jmp b2 //SEG215 print_sbyte::@2 b2: - //SEG216 [107] call print_char param-assignment [ char_cursor#17 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] ) + //SEG216 [107] call print_char param-assignment [ char_cursor#17 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] ) //SEG217 [100] phi from print_sbyte::@2 to print_char [phi:print_sbyte::@2->print_char] print_char_from_b2: - //SEG218 [100] phi (byte*) char_cursor#78 = (byte*) char_cursor#122 [phi:print_sbyte::@2->print_char#0] -- register_copy + //SEG218 [100] phi (byte*) char_cursor#80 = (byte*) char_cursor#126 [phi:print_sbyte::@2->print_char#0] -- register_copy //SEG219 [100] phi (byte) print_char::ch#4 = (byte) '-' [phi:print_sbyte::@2->print_char#1] -- vbuaa=vbuc1 lda #'-' jsr print_char jmp b4 //SEG220 print_sbyte::@4 b4: - //SEG221 [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) -- vbsxx=_neg_vbsxx + //SEG221 [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) -- vbsxx=_neg_vbsxx txa eor #$ff clc @@ -9030,23 +9986,23 @@ print_sbyte: { //SEG222 [109] 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: - //SEG223 [109] phi (byte*) char_cursor#126 = (byte*) char_cursor#122 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#0] -- register_copy + //SEG223 [109] phi (byte*) char_cursor#130 = (byte*) char_cursor#126 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#0] -- register_copy //SEG224 [109] phi (signed byte) print_sbyte::b#4 = (signed byte) print_sbyte::b#3 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#1] -- register_copy jmp b1 //SEG225 print_sbyte::@1 b1: - //SEG226 [110] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#4 [ print_byte::b#9 char_cursor#126 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#126 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#126 ] ) + //SEG226 [110] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#4 [ print_byte::b#9 char_cursor#130 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#130 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#130 ] ) // (byte~) print_byte::b#9 = (byte)(signed byte) print_sbyte::b#4 // register copy reg byte x - //SEG227 [111] call print_byte param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG227 [111] call print_byte param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) //SEG228 [92] phi from print_sbyte::@1 to print_byte [phi:print_sbyte::@1->print_byte] print_byte_from_b1: - //SEG229 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#126 [phi:print_sbyte::@1->print_byte#0] -- register_copy + //SEG229 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#130 [phi:print_sbyte::@1->print_byte#0] -- register_copy //SEG230 [92] phi (byte) print_byte::b#5 = (byte~) print_byte::b#9 [phi:print_sbyte::@1->print_byte#1] -- register_copy jsr print_byte jmp breturn //SEG231 print_sbyte::@return breturn: - //SEG232 [112] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG232 [112] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) rts } //SEG233 mulf8s @@ -9054,35 +10010,35 @@ mulf8s: { .label m = $c .label b = 3 .label return = $c - //SEG234 [113] (byte~) mulf8u::a#3 ← (byte)(signed byte) mulf8s::a#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 ] ) -- vbuaa=vbuyy + //SEG234 [113] (byte~) mulf8u::a#4 ← (byte)(signed byte) mulf8s::a#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 ] ) -- vbuaa=vbuyy tya - //SEG235 [114] (byte~) mulf8u::b#3 ← (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 mulf8u::b#3 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 mulf8u::b#3 ] ) -- vbuxx=vbuz1 + //SEG235 [114] (byte~) mulf8u::b#4 ← (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 mulf8u::b#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 mulf8u::b#4 ] ) -- vbuxx=vbuz1 ldx b - //SEG236 [115] call mulf8u param-assignment [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ) + //SEG236 [115] call mulf8u param-assignment [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ) //SEG237 [129] phi from mulf8s to mulf8u [phi:mulf8s->mulf8u] mulf8u_from_mulf8s: - //SEG238 [129] phi (byte) mulf8u::b#2 = (byte~) mulf8u::b#3 [phi:mulf8s->mulf8u#0] -- register_copy - //SEG239 [129] phi (byte) mulf8u::a#2 = (byte~) mulf8u::a#3 [phi:mulf8s->mulf8u#1] -- register_copy + //SEG238 [129] phi (byte) mulf8u::b#2 = (byte~) mulf8u::b#4 [phi:mulf8s->mulf8u#0] -- register_copy + //SEG239 [129] phi (byte) mulf8u::a#2 = (byte~) mulf8u::a#4 [phi:mulf8s->mulf8u#1] -- register_copy jsr mulf8u - //SEG240 [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) + //SEG240 [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) // (word) mulf8u::return#2 = (word) mulf8u::return#0 // register copy zp ZP_WORD:12 jmp b6 //SEG241 mulf8s::@6 b6: - //SEG242 [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) + //SEG242 [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) // (word) mulf8s::m#0 = (word) mulf8u::return#2 // register copy zp ZP_WORD:12 - //SEG243 [118] if((signed byte) mulf8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@1 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) -- vbsyy_ge_0_then_la1 + //SEG243 [118] if((signed byte) mulf8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@1 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) -- vbsyy_ge_0_then_la1 cpy #0 bpl b1_from_b6 jmp b3 //SEG244 mulf8s::@3 b3: - //SEG245 [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) -- vbuaa=_hi_vwuz1 + //SEG245 [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) -- vbuaa=_hi_vwuz1 lda m+1 - //SEG246 [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) -- vbuaa=vbuaa_minus_vbuz1 + //SEG246 [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) -- vbuaa=vbuaa_minus_vbuz1 sec sbc b - //SEG247 [121] (word) mulf8s::m#1 ← (word) mulf8s::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ) -- vwuz1=vwuz1_sethi_vbuaa + //SEG247 [121] (word) mulf8s::m#1 ← (word) mulf8s::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ) -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG248 [122] phi from mulf8s::@3 mulf8s::@6 to mulf8s::@1 [phi:mulf8s::@3/mulf8s::@6->mulf8s::@1] b1_from_b3: @@ -9091,20 +10047,20 @@ mulf8s: { jmp b1 //SEG250 mulf8s::@1 b1: - //SEG251 [123] if((signed byte) mulf8s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@2 [ mulf8s::a#0 mulf8s::m#5 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 ] ) -- vbsz1_ge_0_then_la1 + //SEG251 [123] if((signed byte) mulf8s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@2 [ mulf8s::a#0 mulf8s::m#5 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 ] ) -- vbsz1_ge_0_then_la1 lda b cmp #0 bpl b2_from_b1 jmp b4 //SEG252 mulf8s::@4 b4: - //SEG253 [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) -- vbuaa=_hi_vwuz1 + //SEG253 [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) -- vbuaa=_hi_vwuz1 lda m+1 - //SEG254 [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) -- vbuaa=vbuaa_minus_vbuyy + //SEG254 [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) -- vbuaa=vbuaa_minus_vbuyy sty $ff sec sbc $ff - //SEG255 [126] (word) mulf8s::m#2 ← (word) mulf8s::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 [ mulf8s::m#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#2 ] ) -- vwuz1=vwuz1_sethi_vbuaa + //SEG255 [126] (word) mulf8s::m#2 ← (word) mulf8s::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 [ mulf8s::m#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#2 ] ) -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG256 [127] phi from mulf8s::@1 mulf8s::@4 to mulf8s::@2 [phi:mulf8s::@1/mulf8s::@4->mulf8s::@2] b2_from_b1: @@ -9116,7 +10072,7 @@ mulf8s: { jmp breturn //SEG259 mulf8s::@return breturn: - //SEG260 [128] return [ mulf8s::m#4 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) + //SEG260 [128] return [ mulf8s::m#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) rts } //SEG261 mulf8u @@ -9124,9 +10080,9 @@ mulf8u: { .label memA = $fe .label memB = $ff .label return = $c - //SEG262 [130] *((const byte*) mulf8u::memA#0) ← (byte) mulf8u::a#2 [ mulf8u::b#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::b#2 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::b#2 ] ) -- _deref_pbuc1=vbuaa + //SEG262 [130] *((const byte*) mulf8u::memA#0) ← (byte) mulf8u::a#2 [ mulf8u::b#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::b#2 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::b#2 ] ) -- _deref_pbuc1=vbuaa sta memA - //SEG263 [131] *((const byte*) mulf8u::memB#0) ← (byte) mulf8u::b#2 [ ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) -- _deref_pbuc1=vbuxx + //SEG263 [131] *((const byte*) mulf8u::memB#0) ← (byte) mulf8u::b#2 [ ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) -- _deref_pbuc1=vbuxx stx memB //SEG264 asm { ldamemA stasm1+1 stasm3+1 eor#$ff stasm2+1 stasm4+1 ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x stamemA sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } lda memA @@ -9147,7 +10103,7 @@ mulf8u: { sm4: sbc mulf_sqr2_hi,x sta memB - //SEG265 [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#0 ] ) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG265 [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#0 ] ) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda memA sta return lda memB @@ -9155,7 +10111,7 @@ mulf8u: { jmp breturn //SEG266 mulf8u::@return breturn: - //SEG267 [134] return [ mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#0 ] ) + //SEG267 [134] return [ mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#0 ] ) rts } //SEG268 muls8s @@ -9163,7 +10119,7 @@ muls8s: { .label m = 8 .label return = 8 .label a = 2 - //SEG269 [135] if((signed byte) muls8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@1 [ muls8s::a#0 muls8s::b#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) -- vbsz1_ge_0_then_la1 + //SEG269 [135] if((signed byte) muls8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@1 [ muls8s::a#0 muls8s::b#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) -- vbsz1_ge_0_then_la1 lda a cmp #0 bpl b1 @@ -9185,7 +10141,7 @@ muls8s: { jmp b2 //SEG276 muls8s::@2 b2: - //SEG277 [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) -- vwsz1=vwsz1_minus_vbsxx + //SEG277 [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) -- vwsz1=vwsz1_minus_vbsxx txa sta $fe ora #$7f @@ -9200,9 +10156,9 @@ muls8s: { lda m+1 sbc $ff sta m+1 - //SEG278 [138] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) -- vbsyy=_dec_vbsyy + //SEG278 [138] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) -- vbsyy=_dec_vbsyy dey - //SEG279 [139] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) -- vbsyy_neq_vbsz1_then_la1 + //SEG279 [139] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) -- vbsyy_neq_vbsz1_then_la1 cpy a bne b2_from_b2 //SEG280 [140] phi from muls8s::@2 muls8s::@5 to muls8s::@3 [phi:muls8s::@2/muls8s::@5->muls8s::@3] @@ -9223,11 +10179,11 @@ muls8s: { jmp breturn //SEG285 muls8s::@return breturn: - //SEG286 [141] return [ muls8s::return#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::return#0 ] ) + //SEG286 [141] return [ muls8s::return#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::return#0 ] ) rts //SEG287 muls8s::@1 b1: - //SEG288 [142] if((signed byte) muls8s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@3 [ muls8s::a#0 muls8s::b#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) -- vbsz1_le_0_then_la1 + //SEG288 [142] if((signed byte) muls8s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@3 [ muls8s::a#0 muls8s::b#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) -- vbsz1_le_0_then_la1 lda a cmp #1 bmi b3_from_b1 @@ -9249,7 +10205,7 @@ muls8s: { jmp b5 //SEG295 muls8s::@5 b5: - //SEG296 [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) -- vwsz1=vwsz1_plus_vbsxx + //SEG296 [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) -- vwsz1=vwsz1_plus_vbsxx txa sta $fe ora #$7f @@ -9264,302 +10220,462 @@ muls8s: { lda m+1 adc $ff sta m+1 - //SEG297 [145] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) -- vbsyy=_inc_vbsyy + //SEG297 [145] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) -- vbsyy=_inc_vbsyy iny - //SEG298 [146] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@5 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) -- vbsyy_neq_vbsz1_then_la1 + //SEG298 [146] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@5 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) -- vbsyy_neq_vbsz1_then_la1 cpy a bne b5_from_b5 jmp b3_from_b5 } -//SEG299 multiply_results_compare -multiply_results_compare: { +//SEG299 mul8u_slowfast_compare +mul8u_slowfast_compare: { .label ms = 8 - .label ma = $c + .label mf = $c + .label mn = $e .label b = 3 .label a = 2 - //SEG300 [148] phi from multiply_results_compare to multiply_results_compare::@1 [phi:multiply_results_compare->multiply_results_compare::@1] - b1_from_multiply_results_compare: - //SEG301 [148] phi (byte) multiply_results_compare::a#6 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:multiply_results_compare->multiply_results_compare::@1#0] -- vbuz1=vbuc1 + //SEG300 [148] phi from mul8u_slowfast_compare to mul8u_slowfast_compare::@1 [phi:mul8u_slowfast_compare->mul8u_slowfast_compare::@1] + b1_from_mul8u_slowfast_compare: + //SEG301 [148] phi (byte) mul8u_slowfast_compare::a#7 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u_slowfast_compare->mul8u_slowfast_compare::@1#0] -- vbuz1=vbuc1 lda #0 sta a jmp b1 - //SEG302 [148] phi from multiply_results_compare::@6 to multiply_results_compare::@1 [phi:multiply_results_compare::@6->multiply_results_compare::@1] - b1_from_b6: - //SEG303 [148] phi (byte) multiply_results_compare::a#6 = (byte) multiply_results_compare::a#1 [phi:multiply_results_compare::@6->multiply_results_compare::@1#0] -- register_copy + //SEG302 [148] phi from mul8u_slowfast_compare::@10 to mul8u_slowfast_compare::@1 [phi:mul8u_slowfast_compare::@10->mul8u_slowfast_compare::@1] + b1_from_b10: + //SEG303 [148] phi (byte) mul8u_slowfast_compare::a#7 = (byte) mul8u_slowfast_compare::a#1 [phi:mul8u_slowfast_compare::@10->mul8u_slowfast_compare::@1#0] -- register_copy jmp b1 - //SEG304 multiply_results_compare::@1 + //SEG304 mul8u_slowfast_compare::@1 b1: - //SEG305 [149] phi from multiply_results_compare::@1 to multiply_results_compare::@2 [phi:multiply_results_compare::@1->multiply_results_compare::@2] + //SEG305 [149] phi from mul8u_slowfast_compare::@1 to mul8u_slowfast_compare::@2 [phi:mul8u_slowfast_compare::@1->mul8u_slowfast_compare::@2] b2_from_b1: - //SEG306 [149] phi (byte) multiply_results_compare::b#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:multiply_results_compare::@1->multiply_results_compare::@2#0] -- vbuz1=vbuc1 + //SEG306 [149] phi (byte) mul8u_slowfast_compare::b#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u_slowfast_compare::@1->mul8u_slowfast_compare::@2#0] -- vbuz1=vbuc1 lda #0 sta b jmp b2 - //SEG307 [149] phi from multiply_results_compare::@3 to multiply_results_compare::@2 [phi:multiply_results_compare::@3->multiply_results_compare::@2] - b2_from_b3: - //SEG308 [149] phi (byte) multiply_results_compare::b#2 = (byte) multiply_results_compare::b#1 [phi:multiply_results_compare::@3->multiply_results_compare::@2#0] -- register_copy + //SEG307 [149] phi from mul8u_slowfast_compare::@5 to mul8u_slowfast_compare::@2 [phi:mul8u_slowfast_compare::@5->mul8u_slowfast_compare::@2] + b2_from_b5: + //SEG308 [149] phi (byte) mul8u_slowfast_compare::b#10 = (byte) mul8u_slowfast_compare::b#1 [phi:mul8u_slowfast_compare::@5->mul8u_slowfast_compare::@2#0] -- register_copy jmp b2 - //SEG309 multiply_results_compare::@2 + //SEG309 mul8u_slowfast_compare::@2 b2: - //SEG310 [150] (byte) muls8u::a#0 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 ] ) - // (byte) muls8u::a#0 = (byte) multiply_results_compare::a#6 // register copy zp ZP_BYTE:2 - //SEG311 [151] (byte) muls8u::b#0 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ) -- vbuxx=vbuz1 + //SEG310 [150] (byte) muls8u::a#0 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 ] ) + // (byte) muls8u::a#0 = (byte) mul8u_slowfast_compare::a#7 // register copy zp ZP_BYTE:2 + //SEG311 [151] (byte) muls8u::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ) -- vbuxx=vbuz1 ldx b - //SEG312 [152] call muls8u param-assignment [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ) + //SEG312 [152] call muls8u param-assignment [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ) jsr muls8u - //SEG313 [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ) + //SEG313 [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ) // (word) muls8u::return#2 = (word) muls8u::return#0 // register copy zp ZP_WORD:8 - jmp b8 - //SEG314 multiply_results_compare::@8 - b8: - //SEG315 [154] (word) multiply_results_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - // (word) multiply_results_compare::ms#0 = (word) muls8u::return#2 // register copy zp ZP_WORD:8 - //SEG316 [155] (byte) mulf8u::a#1 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 mulf8u::a#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) -- vbuaa=vbuz1 + jmp b12 + //SEG314 mul8u_slowfast_compare::@12 + b12: + //SEG315 [154] (word) mul8u_slowfast_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + // (word) mul8u_slowfast_compare::ms#0 = (word) muls8u::return#2 // register copy zp ZP_WORD:8 + //SEG316 [155] (byte) mulf8u::a#1 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) -- vbuaa=vbuz1 lda a - //SEG317 [156] (byte) mulf8u::b#1 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) -- vbuxx=vbuz1 + //SEG317 [156] (byte) mulf8u::b#1 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) -- vbuxx=vbuz1 ldx b - //SEG318 [157] call mulf8u param-assignment [ line_cursor#10 char_cursor#30 mulf8u::return#0 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::return#0 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - //SEG319 [129] phi from multiply_results_compare::@8 to mulf8u [phi:multiply_results_compare::@8->mulf8u] - mulf8u_from_b8: - //SEG320 [129] phi (byte) mulf8u::b#2 = (byte) mulf8u::b#1 [phi:multiply_results_compare::@8->mulf8u#0] -- register_copy - //SEG321 [129] phi (byte) mulf8u::a#2 = (byte) mulf8u::a#1 [phi:multiply_results_compare::@8->mulf8u#1] -- register_copy + //SEG318 [157] call mulf8u param-assignment [ line_cursor#10 char_cursor#30 mulf8u::return#0 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::return#0 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + //SEG319 [129] phi from mul8u_slowfast_compare::@12 to mulf8u [phi:mul8u_slowfast_compare::@12->mulf8u] + mulf8u_from_b12: + //SEG320 [129] phi (byte) mulf8u::b#2 = (byte) mulf8u::b#1 [phi:mul8u_slowfast_compare::@12->mulf8u#0] -- register_copy + //SEG321 [129] phi (byte) mulf8u::a#2 = (byte) mulf8u::a#1 [phi:mul8u_slowfast_compare::@12->mulf8u#1] -- register_copy jsr mulf8u - //SEG322 [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ) + //SEG322 [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ) // (word) mulf8u::return#3 = (word) mulf8u::return#0 // register copy zp ZP_WORD:12 - jmp b9 - //SEG323 multiply_results_compare::@9 - b9: - //SEG324 [159] (word) multiply_results_compare::ma#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) - // (word) multiply_results_compare::ma#0 = (word) mulf8u::return#3 // register copy zp ZP_WORD:12 - //SEG325 [160] if((word) multiply_results_compare::ms#0==(word) multiply_results_compare::ma#0) goto multiply_results_compare::@3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) -- vwuz1_eq_vwuz2_then_la1 + jmp b13 + //SEG323 mul8u_slowfast_compare::@13 + b13: + //SEG324 [159] (word) mul8u_slowfast_compare::mf#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ) + // (word) mul8u_slowfast_compare::mf#0 = (word) mulf8u::return#3 // register copy zp ZP_WORD:12 + //SEG325 [160] (byte) mul8u::a#1 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 ] ) -- vbuxx=vbuz1 + ldx a + //SEG326 [161] (byte) mul8u::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::b#0 ] ) -- vbuaa=vbuz1 + lda b + //SEG327 [162] call mul8u param-assignment [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ) + jsr mul8u + //SEG328 [163] (word) mul8u::return#2 ← (word) mul8u::res#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ) + // (word) mul8u::return#2 = (word) mul8u::res#2 // register copy zp ZP_WORD:14 + jmp b14 + //SEG329 mul8u_slowfast_compare::@14 + b14: + //SEG330 [164] (word) mul8u_slowfast_compare::mn#0 ← (word) mul8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) + // (word) mul8u_slowfast_compare::mn#0 = (word) mul8u::return#2 // register copy zp ZP_WORD:14 + //SEG331 [165] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mf#0) goto mul8u_slowfast_compare::@3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) -- vwuz1_eq_vwuz2_then_la1 lda ms - cmp ma + cmp mf bne !+ lda ms+1 - cmp ma+1 - beq b3 + cmp mf+1 + beq b3_from_b14 !: + //SEG332 [166] phi from mul8u_slowfast_compare::@14 to mul8u_slowfast_compare::@6 [phi:mul8u_slowfast_compare::@14->mul8u_slowfast_compare::@6] + b6_from_b14: + jmp b6 + //SEG333 mul8u_slowfast_compare::@6 + b6: + //SEG334 [167] phi from mul8u_slowfast_compare::@6 to mul8u_slowfast_compare::@3 [phi:mul8u_slowfast_compare::@6->mul8u_slowfast_compare::@3] + b3_from_b6: + //SEG335 [167] phi (byte) mul8u_slowfast_compare::ok#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u_slowfast_compare::@6->mul8u_slowfast_compare::@3#0] -- vbuxx=vbuc1 + ldx #0 + jmp b3 + //SEG336 [167] phi from mul8u_slowfast_compare::@14 to mul8u_slowfast_compare::@3 [phi:mul8u_slowfast_compare::@14->mul8u_slowfast_compare::@3] + b3_from_b14: + //SEG337 [167] phi (byte) mul8u_slowfast_compare::ok#4 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mul8u_slowfast_compare::@14->mul8u_slowfast_compare::@3#0] -- vbuxx=vbuc1 + ldx #1 + jmp b3 + //SEG338 mul8u_slowfast_compare::@3 + b3: + //SEG339 [168] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mn#0) goto mul8u_slowfast_compare::@20 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ) -- vwuz1_eq_vwuz2_then_la1 + lda ms + cmp mn + bne !+ + lda ms+1 + cmp mn+1 + beq b20_from_b3 + !: + //SEG340 [169] phi from mul8u_slowfast_compare::@3 to mul8u_slowfast_compare::@4 [phi:mul8u_slowfast_compare::@3->mul8u_slowfast_compare::@4] + b4_from_b3: + //SEG341 [169] phi (byte) mul8u_slowfast_compare::ok#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u_slowfast_compare::@3->mul8u_slowfast_compare::@4#0] -- vbuxx=vbuc1 + ldx #0 jmp b4 - //SEG326 multiply_results_compare::@4 + //SEG342 mul8u_slowfast_compare::@4 b4: - //SEG327 [161] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) -- _deref_pbuc1=vbuc2 + //SEG343 [170] if((byte) mul8u_slowfast_compare::ok#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@5 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) -- vbuxx_neq_0_then_la1 + cpx #0 + bne b5 + jmp b8 + //SEG344 mul8u_slowfast_compare::@8 + b8: + //SEG345 [171] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG328 [162] (byte) multiply_error::a#0 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 ] ) -- vbuxx=vbuz1 + //SEG346 [172] (byte) multiply_error::a#0 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 ] ) -- vbuxx=vbuz1 ldx a - //SEG329 [163] (byte) multiply_error::b#0 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 ] ) - // (byte) multiply_error::b#0 = (byte) multiply_results_compare::b#2 // register copy zp ZP_BYTE:3 - //SEG330 [164] (word) multiply_error::ms#0 ← (word) multiply_results_compare::ms#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) - // (word) multiply_error::ms#0 = (word) multiply_results_compare::ms#0 // register copy zp ZP_WORD:8 - //SEG331 [165] (word) multiply_error::ma#0 ← (word) multiply_results_compare::ma#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - // (word) multiply_error::ma#0 = (word) multiply_results_compare::ma#0 // register copy zp ZP_WORD:12 - //SEG332 [166] call multiply_error param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) - //SEG333 [176] phi from multiply_results_compare::@4 to multiply_error [phi:multiply_results_compare::@4->multiply_error] - multiply_error_from_b4: + //SEG347 [173] (byte) multiply_error::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 ] ) + // (byte) multiply_error::b#0 = (byte) mul8u_slowfast_compare::b#10 // register copy zp ZP_BYTE:3 + //SEG348 [174] (word) multiply_error::ms#0 ← (word) mul8u_slowfast_compare::ms#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) + // (word) multiply_error::ms#0 = (word) mul8u_slowfast_compare::ms#0 // register copy zp ZP_WORD:8 + //SEG349 [175] (word) multiply_error::mn#0 ← (word) mul8u_slowfast_compare::mn#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ) + // (word) multiply_error::mn#0 = (word) mul8u_slowfast_compare::mn#0 // register copy zp ZP_WORD:14 + //SEG350 [176] (word) multiply_error::mf#0 ← (word) mul8u_slowfast_compare::mf#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + // (word) multiply_error::mf#0 = (word) mul8u_slowfast_compare::mf#0 // register copy zp ZP_WORD:12 + //SEG351 [177] call multiply_error param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) + //SEG352 [188] phi from mul8u_slowfast_compare::@8 to multiply_error [phi:mul8u_slowfast_compare::@8->multiply_error] + multiply_error_from_b8: jsr multiply_error jmp breturn - //SEG334 multiply_results_compare::@return + //SEG353 mul8u_slowfast_compare::@return breturn: - //SEG335 [167] return [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) + //SEG354 [178] return [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) rts - //SEG336 multiply_results_compare::@3 - b3: - //SEG337 [168] (byte) multiply_results_compare::b#1 ← ++ (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ) -- vbuz1=_inc_vbuz1 + //SEG355 mul8u_slowfast_compare::@5 + b5: + //SEG356 [179] (byte) mul8u_slowfast_compare::b#1 ← ++ (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ) -- vbuz1=_inc_vbuz1 inc b - //SEG338 [169] if((byte) multiply_results_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto multiply_results_compare::@2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ) -- vbuz1_neq_0_then_la1 + //SEG357 [180] if((byte) mul8u_slowfast_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ) -- vbuz1_neq_0_then_la1 lda b - bne b2_from_b3 - jmp b6 - //SEG339 multiply_results_compare::@6 - b6: - //SEG340 [170] (byte) multiply_results_compare::a#1 ← ++ (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ) -- vbuz1=_inc_vbuz1 + bne b2_from_b5 + jmp b10 + //SEG358 mul8u_slowfast_compare::@10 + b10: + //SEG359 [181] (byte) mul8u_slowfast_compare::a#1 ← ++ (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ) -- vbuz1=_inc_vbuz1 inc a - //SEG341 [171] if((byte) multiply_results_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto multiply_results_compare::@1 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ) -- vbuz1_neq_0_then_la1 + //SEG360 [182] if((byte) mul8u_slowfast_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@1 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ) -- vbuz1_neq_0_then_la1 lda a - bne b1_from_b6 - //SEG342 [172] phi from multiply_results_compare::@6 to multiply_results_compare::@7 [phi:multiply_results_compare::@6->multiply_results_compare::@7] - b7_from_b6: - jmp b7 - //SEG343 multiply_results_compare::@7 - b7: - //SEG344 [173] call print_str param-assignment [ char_cursor#122 line_cursor#10 ] ( main:2::multiply_results_compare:13 [ char_cursor#122 line_cursor#10 ] ) - //SEG345 [51] phi from multiply_results_compare::@7 to print_str [phi:multiply_results_compare::@7->print_str] - print_str_from_b7: - //SEG346 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#30 [phi:multiply_results_compare::@7->print_str#0] -- register_copy - //SEG347 [51] phi (byte*) print_str::str#16 = (const string) multiply_results_compare::str [phi:multiply_results_compare::@7->print_str#1] -- pbuz1=pbuc1 + bne b1_from_b10 + //SEG361 [183] phi from mul8u_slowfast_compare::@10 to mul8u_slowfast_compare::@11 [phi:mul8u_slowfast_compare::@10->mul8u_slowfast_compare::@11] + b11_from_b10: + jmp b11 + //SEG362 mul8u_slowfast_compare::@11 + b11: + //SEG363 [184] call print_str param-assignment [ char_cursor#126 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13 [ char_cursor#126 line_cursor#10 ] ) + //SEG364 [51] phi from mul8u_slowfast_compare::@11 to print_str [phi:mul8u_slowfast_compare::@11->print_str] + print_str_from_b11: + //SEG365 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#30 [phi:mul8u_slowfast_compare::@11->print_str#0] -- register_copy + //SEG366 [51] phi (byte*) print_str::str#17 = (const string) mul8u_slowfast_compare::str [phi:mul8u_slowfast_compare::@11->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str - //SEG348 [174] phi from multiply_results_compare::@7 to multiply_results_compare::@11 [phi:multiply_results_compare::@7->multiply_results_compare::@11] - b11_from_b7: - jmp b11 - //SEG349 multiply_results_compare::@11 - b11: - //SEG350 [175] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) - //SEG351 [46] phi from multiply_results_compare::@11 to print_ln [phi:multiply_results_compare::@11->print_ln] - print_ln_from_b11: - //SEG352 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#122 [phi:multiply_results_compare::@11->print_ln#0] -- register_copy - //SEG353 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#10 [phi:multiply_results_compare::@11->print_ln#1] -- register_copy + //SEG367 [185] phi from mul8u_slowfast_compare::@11 to mul8u_slowfast_compare::@16 [phi:mul8u_slowfast_compare::@11->mul8u_slowfast_compare::@16] + b16_from_b11: + jmp b16 + //SEG368 mul8u_slowfast_compare::@16 + b16: + //SEG369 [186] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) + //SEG370 [46] phi from mul8u_slowfast_compare::@16 to print_ln [phi:mul8u_slowfast_compare::@16->print_ln] + print_ln_from_b16: + //SEG371 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#126 [phi:mul8u_slowfast_compare::@16->print_ln#0] -- register_copy + //SEG372 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#10 [phi:mul8u_slowfast_compare::@16->print_ln#1] -- register_copy jsr print_ln jmp breturn + //SEG373 [187] phi from mul8u_slowfast_compare::@3 to mul8u_slowfast_compare::@20 [phi:mul8u_slowfast_compare::@3->mul8u_slowfast_compare::@20] + b20_from_b3: + jmp b20 + //SEG374 mul8u_slowfast_compare::@20 + b20: + //SEG375 [169] phi from mul8u_slowfast_compare::@20 to mul8u_slowfast_compare::@4 [phi:mul8u_slowfast_compare::@20->mul8u_slowfast_compare::@4] + b4_from_b20: + //SEG376 [169] phi (byte) mul8u_slowfast_compare::ok#3 = (byte) mul8u_slowfast_compare::ok#4 [phi:mul8u_slowfast_compare::@20->mul8u_slowfast_compare::@4#0] -- register_copy + jmp b4 str: .text "multiply results match!@" } -//SEG354 multiply_error +//SEG377 multiply_error multiply_error: { .label b = 3 .label ms = 8 - .label ma = $c - //SEG355 [177] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG356 [51] phi from multiply_error to print_str [phi:multiply_error->print_str] + .label mn = $e + .label mf = $c + //SEG378 [189] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG379 [51] phi from multiply_error to print_str [phi:multiply_error->print_str] print_str_from_multiply_error: - //SEG357 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#30 [phi:multiply_error->print_str#0] -- register_copy - //SEG358 [51] phi (byte*) print_str::str#16 = (const string) multiply_error::str [phi:multiply_error->print_str#1] -- pbuz1=pbuc1 + //SEG380 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#30 [phi:multiply_error->print_str#0] -- register_copy + //SEG381 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str [phi:multiply_error->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str jmp b1 - //SEG359 multiply_error::@1 + //SEG382 multiply_error::@1 b1: - //SEG360 [178] (byte) print_byte::b#3 ← (byte) multiply_error::a#0 [ char_cursor#122 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) + //SEG383 [190] (byte) print_byte::b#3 ← (byte) multiply_error::a#0 [ char_cursor#126 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) // (byte) print_byte::b#3 = (byte) multiply_error::a#0 // register copy reg byte x - //SEG361 [179] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG362 [92] phi from multiply_error::@1 to print_byte [phi:multiply_error::@1->print_byte] + //SEG384 [191] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG385 [92] phi from multiply_error::@1 to print_byte [phi:multiply_error::@1->print_byte] print_byte_from_b1: - //SEG363 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#122 [phi:multiply_error::@1->print_byte#0] -- register_copy - //SEG364 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#3 [phi:multiply_error::@1->print_byte#1] -- register_copy + //SEG386 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#126 [phi:multiply_error::@1->print_byte#0] -- register_copy + //SEG387 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#3 [phi:multiply_error::@1->print_byte#1] -- register_copy jsr print_byte - //SEG365 [180] phi from multiply_error::@1 to multiply_error::@2 [phi:multiply_error::@1->multiply_error::@2] + //SEG388 [192] phi from multiply_error::@1 to multiply_error::@2 [phi:multiply_error::@1->multiply_error::@2] b2_from_b1: jmp b2 - //SEG366 multiply_error::@2 + //SEG389 multiply_error::@2 b2: - //SEG367 [181] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG368 [51] phi from multiply_error::@2 to print_str [phi:multiply_error::@2->print_str] + //SEG390 [193] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG391 [51] phi from multiply_error::@2 to print_str [phi:multiply_error::@2->print_str] print_str_from_b2: - //SEG369 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:multiply_error::@2->print_str#0] -- register_copy - //SEG370 [51] phi (byte*) print_str::str#16 = (const string) multiply_error::str1 [phi:multiply_error::@2->print_str#1] -- pbuz1=pbuc1 + //SEG392 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:multiply_error::@2->print_str#0] -- register_copy + //SEG393 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str1 [phi:multiply_error::@2->print_str#1] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str jmp b3 - //SEG371 multiply_error::@3 + //SEG394 multiply_error::@3 b3: - //SEG372 [182] (byte) print_byte::b#4 ← (byte) multiply_error::b#0 [ char_cursor#122 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::ma#0 ] ) -- vbuxx=vbuz1 + //SEG395 [194] (byte) print_byte::b#4 ← (byte) multiply_error::b#0 [ char_cursor#126 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) -- vbuxx=vbuz1 ldx b - //SEG373 [183] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG374 [92] phi from multiply_error::@3 to print_byte [phi:multiply_error::@3->print_byte] + //SEG396 [195] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG397 [92] phi from multiply_error::@3 to print_byte [phi:multiply_error::@3->print_byte] print_byte_from_b3: - //SEG375 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#122 [phi:multiply_error::@3->print_byte#0] -- register_copy - //SEG376 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#4 [phi:multiply_error::@3->print_byte#1] -- register_copy + //SEG398 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#126 [phi:multiply_error::@3->print_byte#0] -- register_copy + //SEG399 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#4 [phi:multiply_error::@3->print_byte#1] -- register_copy jsr print_byte - //SEG377 [184] phi from multiply_error::@3 to multiply_error::@4 [phi:multiply_error::@3->multiply_error::@4] + //SEG400 [196] phi from multiply_error::@3 to multiply_error::@4 [phi:multiply_error::@3->multiply_error::@4] b4_from_b3: jmp b4 - //SEG378 multiply_error::@4 + //SEG401 multiply_error::@4 b4: - //SEG379 [185] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG380 [51] phi from multiply_error::@4 to print_str [phi:multiply_error::@4->print_str] + //SEG402 [197] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG403 [51] phi from multiply_error::@4 to print_str [phi:multiply_error::@4->print_str] print_str_from_b4: - //SEG381 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:multiply_error::@4->print_str#0] -- register_copy - //SEG382 [51] phi (byte*) print_str::str#16 = (const string) multiply_error::str2 [phi:multiply_error::@4->print_str#1] -- pbuz1=pbuc1 + //SEG404 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:multiply_error::@4->print_str#0] -- register_copy + //SEG405 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str2 [phi:multiply_error::@4->print_str#1] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str jmp b5 - //SEG383 multiply_error::@5 + //SEG406 multiply_error::@5 b5: - //SEG384 [186] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ) + //SEG407 [198] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ) // (word) print_word::w#3 = (word) multiply_error::ms#0 // register copy zp ZP_WORD:8 - //SEG385 [187] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ) - //SEG386 [86] phi from multiply_error::@5 to print_word [phi:multiply_error::@5->print_word] + //SEG408 [199] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG409 [86] phi from multiply_error::@5 to print_word [phi:multiply_error::@5->print_word] print_word_from_b5: - //SEG387 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#122 [phi:multiply_error::@5->print_word#0] -- register_copy - //SEG388 [86] phi (word) print_word::w#5 = (word) print_word::w#3 [phi:multiply_error::@5->print_word#1] -- register_copy + //SEG410 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:multiply_error::@5->print_word#0] -- register_copy + //SEG411 [86] phi (word) print_word::w#6 = (word) print_word::w#3 [phi:multiply_error::@5->print_word#1] -- register_copy jsr print_word - //SEG389 [188] phi from multiply_error::@5 to multiply_error::@6 [phi:multiply_error::@5->multiply_error::@6] + //SEG412 [200] phi from multiply_error::@5 to multiply_error::@6 [phi:multiply_error::@5->multiply_error::@6] b6_from_b5: jmp b6 - //SEG390 multiply_error::@6 + //SEG413 multiply_error::@6 b6: - //SEG391 [189] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::ma#0 ] ) - //SEG392 [51] phi from multiply_error::@6 to print_str [phi:multiply_error::@6->print_str] + //SEG414 [201] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG415 [51] phi from multiply_error::@6 to print_str [phi:multiply_error::@6->print_str] print_str_from_b6: - //SEG393 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:multiply_error::@6->print_str#0] -- register_copy - //SEG394 [51] phi (byte*) print_str::str#16 = (const string) multiply_error::str3 [phi:multiply_error::@6->print_str#1] -- pbuz1=pbuc1 + //SEG416 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:multiply_error::@6->print_str#0] -- register_copy + //SEG417 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str3 [phi:multiply_error::@6->print_str#1] -- pbuz1=pbuc1 lda #str3 sta print_str.str+1 jsr print_str jmp b7 - //SEG395 multiply_error::@7 + //SEG418 multiply_error::@7 b7: - //SEG396 [190] (word) print_word::w#4 ← (word) multiply_error::ma#0 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ) -- vwuz1=vwuz2 - lda ma + //SEG419 [202] (word) print_word::w#4 ← (word) multiply_error::mn#0 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ) -- vwuz1=vwuz2 + lda mn sta print_word.w - lda ma+1 + lda mn+1 sta print_word.w+1 - //SEG397 [191] call print_word param-assignment [ char_cursor#17 line_cursor#10 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 ] ) - //SEG398 [86] phi from multiply_error::@7 to print_word [phi:multiply_error::@7->print_word] + //SEG420 [203] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ) + //SEG421 [86] phi from multiply_error::@7 to print_word [phi:multiply_error::@7->print_word] print_word_from_b7: - //SEG399 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#122 [phi:multiply_error::@7->print_word#0] -- register_copy - //SEG400 [86] phi (word) print_word::w#5 = (word) print_word::w#4 [phi:multiply_error::@7->print_word#1] -- register_copy + //SEG422 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:multiply_error::@7->print_word#0] -- register_copy + //SEG423 [86] phi (word) print_word::w#6 = (word) print_word::w#4 [phi:multiply_error::@7->print_word#1] -- register_copy jsr print_word - //SEG401 [192] phi from multiply_error::@7 to multiply_error::@8 [phi:multiply_error::@7->multiply_error::@8] + //SEG424 [204] phi from multiply_error::@7 to multiply_error::@8 [phi:multiply_error::@7->multiply_error::@8] b8_from_b7: jmp b8 - //SEG402 multiply_error::@8 + //SEG425 multiply_error::@8 b8: - //SEG403 [193] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ line_cursor#1 ] ) - //SEG404 [46] phi from multiply_error::@8 to print_ln [phi:multiply_error::@8->print_ln] - print_ln_from_b8: - //SEG405 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#17 [phi:multiply_error::@8->print_ln#0] -- register_copy - //SEG406 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#10 [phi:multiply_error::@8->print_ln#1] -- register_copy + //SEG426 [205] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::mf#0 ] ) + //SEG427 [51] phi from multiply_error::@8 to print_str [phi:multiply_error::@8->print_str] + print_str_from_b8: + //SEG428 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:multiply_error::@8->print_str#0] -- register_copy + //SEG429 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str4 [phi:multiply_error::@8->print_str#1] -- pbuz1=pbuc1 + lda #str4 + sta print_str.str+1 + jsr print_str + jmp b9 + //SEG430 multiply_error::@9 + b9: + //SEG431 [206] (word) print_word::w#5 ← (word) multiply_error::mf#0 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ) -- vwuz1=vwuz2 + lda mf + sta print_word.w + lda mf+1 + sta print_word.w+1 + //SEG432 [207] call print_word param-assignment [ char_cursor#17 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 ] ) + //SEG433 [86] phi from multiply_error::@9 to print_word [phi:multiply_error::@9->print_word] + print_word_from_b9: + //SEG434 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:multiply_error::@9->print_word#0] -- register_copy + //SEG435 [86] phi (word) print_word::w#6 = (word) print_word::w#5 [phi:multiply_error::@9->print_word#1] -- register_copy + jsr print_word + //SEG436 [208] phi from multiply_error::@9 to multiply_error::@10 [phi:multiply_error::@9->multiply_error::@10] + b10_from_b9: + jmp b10 + //SEG437 multiply_error::@10 + b10: + //SEG438 [209] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ line_cursor#1 ] ) + //SEG439 [46] phi from multiply_error::@10 to print_ln [phi:multiply_error::@10->print_ln] + print_ln_from_b10: + //SEG440 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#17 [phi:multiply_error::@10->print_ln#0] -- register_copy + //SEG441 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#10 [phi:multiply_error::@10->print_ln#1] -- register_copy jsr print_ln jmp breturn - //SEG407 multiply_error::@return + //SEG442 multiply_error::@return breturn: - //SEG408 [194] return [ line_cursor#1 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ line_cursor#1 ] ) + //SEG443 [210] return [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ line_cursor#1 ] ) rts str: .text "multiply mismatch @" str1: .text "*@" str2: .text " slow:@" - str3: .text " / fast asm:@" + str3: .text " / normal:@" + str4: .text " / fast:@" } -//SEG409 muls8u +//SEG444 mul8u +mul8u: { + .label mb = 6 + .label res = $e + .label return = $e + //SEG445 [211] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::mb#0 ] ) -- vwuz1=_word_vbuaa + sta mb + lda #0 + sta mb+1 + //SEG446 [212] phi from mul8u to mul8u::@1 [phi:mul8u->mul8u::@1] + b1_from_mul8u: + //SEG447 [212] phi (word) mul8u::mb#2 = (word) mul8u::mb#0 [phi:mul8u->mul8u::@1#0] -- register_copy + //SEG448 [212] phi (word) mul8u::res#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u->mul8u::@1#1] -- vwuz1=vbuc1 + lda #0 + sta res + lda #0 + sta res+1 + //SEG449 [212] phi (byte) mul8u::a#2 = (byte) mul8u::a#1 [phi:mul8u->mul8u::@1#2] -- register_copy + jmp b1 + //SEG450 mul8u::@1 + b1: + //SEG451 [213] if((byte) mul8u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@2 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) -- vbuxx_neq_0_then_la1 + cpx #0 + bne b2 + jmp breturn + //SEG452 mul8u::@return + breturn: + //SEG453 [214] return [ mul8u::res#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ) + rts + //SEG454 mul8u::@2 + b2: + //SEG455 [215] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) -- vbuaa=vbuxx_band_vbuc1 + txa + and #1 + //SEG456 [216] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@4 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b4_from_b2 + jmp b7 + //SEG457 mul8u::@7 + b7: + //SEG458 [217] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) -- vwuz1=vwuz1_plus_vwuz2 + lda res + clc + adc mb + sta res + lda res+1 + adc mb+1 + sta res+1 + //SEG459 [218] phi from mul8u::@2 mul8u::@7 to mul8u::@4 [phi:mul8u::@2/mul8u::@7->mul8u::@4] + b4_from_b2: + b4_from_b7: + //SEG460 [218] phi (word) mul8u::res#6 = (word) mul8u::res#2 [phi:mul8u::@2/mul8u::@7->mul8u::@4#0] -- register_copy + jmp b4 + //SEG461 mul8u::@4 + b4: + //SEG462 [219] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::mb#2 mul8u::a#0 mul8u::res#6 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::mb#2 mul8u::a#0 mul8u::res#6 ] ) -- vbuxx=vbuxx_ror_1 + txa + lsr + tax + //SEG463 [220] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::a#0 mul8u::res#6 mul8u::mb#1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#0 mul8u::res#6 mul8u::mb#1 ] ) -- vwuz1=vwuz1_rol_1 + asl mb + rol mb+1 + //SEG464 [212] phi from mul8u::@4 to mul8u::@1 [phi:mul8u::@4->mul8u::@1] + b1_from_b4: + //SEG465 [212] phi (word) mul8u::mb#2 = (word) mul8u::mb#1 [phi:mul8u::@4->mul8u::@1#0] -- register_copy + //SEG466 [212] phi (word) mul8u::res#2 = (word) mul8u::res#6 [phi:mul8u::@4->mul8u::@1#1] -- register_copy + //SEG467 [212] phi (byte) mul8u::a#2 = (byte) mul8u::a#0 [phi:mul8u::@4->mul8u::@1#2] -- register_copy + jmp b1 +} +//SEG468 muls8u muls8u: { .label return = 8 .label m = 8 .label a = 2 - //SEG410 [195] if((byte) muls8u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8u::@1 [ muls8u::a#0 muls8u::b#0 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ) -- vbuz1_eq_0_then_la1 + //SEG469 [221] if((byte) muls8u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8u::@1 [ muls8u::a#0 muls8u::b#0 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ) -- vbuz1_eq_0_then_la1 lda a beq b1_from_muls8u - //SEG411 [196] phi from muls8u to muls8u::@2 [phi:muls8u->muls8u::@2] + //SEG470 [222] phi from muls8u to muls8u::@2 [phi:muls8u->muls8u::@2] b2_from_muls8u: - //SEG412 [196] phi (byte) muls8u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@2#0] -- vbuyy=vbuc1 + //SEG471 [222] phi (byte) muls8u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@2#0] -- vbuyy=vbuc1 ldy #0 - //SEG413 [196] phi (word) muls8u::m#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@2#1] -- vwuz1=vbuc1 + //SEG472 [222] phi (word) muls8u::m#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@2#1] -- vwuz1=vbuc1 lda #0 sta m lda #0 sta m+1 jmp b2 - //SEG414 [196] phi from muls8u::@2 to muls8u::@2 [phi:muls8u::@2->muls8u::@2] + //SEG473 [222] phi from muls8u::@2 to muls8u::@2 [phi:muls8u::@2->muls8u::@2] b2_from_b2: - //SEG415 [196] phi (byte) muls8u::i#2 = (byte) muls8u::i#1 [phi:muls8u::@2->muls8u::@2#0] -- register_copy - //SEG416 [196] phi (word) muls8u::m#3 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@2#1] -- register_copy + //SEG474 [222] phi (byte) muls8u::i#2 = (byte) muls8u::i#1 [phi:muls8u::@2->muls8u::@2#0] -- register_copy + //SEG475 [222] phi (word) muls8u::m#3 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@2#1] -- register_copy jmp b2 - //SEG417 muls8u::@2 + //SEG476 muls8u::@2 b2: - //SEG418 [197] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) -- vwuz1=vwuz1_plus_vbuxx + //SEG477 [223] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) -- vwuz1=vwuz1_plus_vbuxx txa clc adc m @@ -9567,147 +10683,147 @@ muls8u: { lda #0 adc m+1 sta m+1 - //SEG419 [198] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) -- vbuyy=_inc_vbuyy + //SEG478 [224] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) -- vbuyy=_inc_vbuyy iny - //SEG420 [199] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) -- vbuyy_neq_vbuz1_then_la1 + //SEG479 [225] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) -- vbuyy_neq_vbuz1_then_la1 cpy a bne b2_from_b2 - //SEG421 [200] phi from muls8u::@2 to muls8u::@1 [phi:muls8u::@2->muls8u::@1] + //SEG480 [226] phi from muls8u::@2 to muls8u::@1 [phi:muls8u::@2->muls8u::@1] b1_from_b2: - //SEG422 [200] phi (word) muls8u::return#0 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@1#0] -- register_copy + //SEG481 [226] phi (word) muls8u::return#0 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@1#0] -- register_copy jmp b1 - //SEG423 [200] phi from muls8u to muls8u::@1 [phi:muls8u->muls8u::@1] + //SEG482 [226] phi from muls8u to muls8u::@1 [phi:muls8u->muls8u::@1] b1_from_muls8u: - //SEG424 [200] phi (word) muls8u::return#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@1#0] -- vwuz1=vbuc1 + //SEG483 [226] phi (word) muls8u::return#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@1#0] -- vwuz1=vbuc1 lda #0 sta return lda #0 sta return+1 jmp b1 - //SEG425 muls8u::@1 + //SEG484 muls8u::@1 b1: jmp breturn - //SEG426 muls8u::@return + //SEG485 muls8u::@return breturn: - //SEG427 [201] return [ muls8u::return#0 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ) + //SEG486 [227] return [ muls8u::return#0 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ) rts } -//SEG428 multiply_tables_compare -multiply_tables_compare: { +//SEG487 mulf_tables_cmp +mulf_tables_cmp: { .label asm_sqr = 8 .label kc_sqr = 4 - //SEG429 [203] phi from multiply_tables_compare to multiply_tables_compare::@1 [phi:multiply_tables_compare->multiply_tables_compare::@1] - b1_from_multiply_tables_compare: - //SEG430 [203] phi (byte*) multiply_tables_compare::asm_sqr#2 = (const byte[512]) mula_sqr1_lo#0 [phi:multiply_tables_compare->multiply_tables_compare::@1#0] -- pbuz1=pbuc1 + //SEG488 [229] phi from mulf_tables_cmp to mulf_tables_cmp::@1 [phi:mulf_tables_cmp->mulf_tables_cmp::@1] + b1_from_mulf_tables_cmp: + //SEG489 [229] phi (byte*) mulf_tables_cmp::asm_sqr#2 = (const byte[512]) mula_sqr1_lo#0 [phi:mulf_tables_cmp->mulf_tables_cmp::@1#0] -- pbuz1=pbuc1 lda #mula_sqr1_lo sta asm_sqr+1 - //SEG431 [203] phi (byte*) multiply_tables_compare::kc_sqr#2 = (const byte[512]) mulf_sqr1_lo#0 [phi:multiply_tables_compare->multiply_tables_compare::@1#1] -- pbuz1=pbuc1 + //SEG490 [229] phi (byte*) mulf_tables_cmp::kc_sqr#2 = (const byte[512]) mulf_sqr1_lo#0 [phi:mulf_tables_cmp->mulf_tables_cmp::@1#1] -- pbuz1=pbuc1 lda #mulf_sqr1_lo sta kc_sqr+1 jmp b1 - //SEG432 [203] phi from multiply_tables_compare::@2 to multiply_tables_compare::@1 [phi:multiply_tables_compare::@2->multiply_tables_compare::@1] + //SEG491 [229] phi from mulf_tables_cmp::@2 to mulf_tables_cmp::@1 [phi:mulf_tables_cmp::@2->mulf_tables_cmp::@1] b1_from_b2: - //SEG433 [203] phi (byte*) multiply_tables_compare::asm_sqr#2 = (byte*) multiply_tables_compare::asm_sqr#1 [phi:multiply_tables_compare::@2->multiply_tables_compare::@1#0] -- register_copy - //SEG434 [203] phi (byte*) multiply_tables_compare::kc_sqr#2 = (byte*) multiply_tables_compare::kc_sqr#1 [phi:multiply_tables_compare::@2->multiply_tables_compare::@1#1] -- register_copy + //SEG492 [229] phi (byte*) mulf_tables_cmp::asm_sqr#2 = (byte*) mulf_tables_cmp::asm_sqr#1 [phi:mulf_tables_cmp::@2->mulf_tables_cmp::@1#0] -- register_copy + //SEG493 [229] phi (byte*) mulf_tables_cmp::kc_sqr#2 = (byte*) mulf_tables_cmp::kc_sqr#1 [phi:mulf_tables_cmp::@2->mulf_tables_cmp::@1#1] -- register_copy jmp b1 - //SEG435 multiply_tables_compare::@1 + //SEG494 mulf_tables_cmp::@1 b1: - //SEG436 [204] if(*((byte*) multiply_tables_compare::kc_sqr#2)==*((byte*) multiply_tables_compare::asm_sqr#2)) goto multiply_tables_compare::@2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) -- _deref_pbuz1_eq__deref_pbuz2_then_la1 + //SEG495 [230] if(*((byte*) mulf_tables_cmp::kc_sqr#2)==*((byte*) mulf_tables_cmp::asm_sqr#2)) goto mulf_tables_cmp::@2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) -- _deref_pbuz1_eq__deref_pbuz2_then_la1 ldy #0 lda (kc_sqr),y ldy #0 cmp (asm_sqr),y beq b2 jmp b3 - //SEG437 multiply_tables_compare::@3 + //SEG496 mulf_tables_cmp::@3 b3: - //SEG438 [205] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) -- _deref_pbuc1=vbuc2 + //SEG497 [231] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG439 [206] call print_str param-assignment [ char_cursor#122 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - //SEG440 [51] phi from multiply_tables_compare::@3 to print_str [phi:multiply_tables_compare::@3->print_str] + //SEG498 [232] call print_str param-assignment [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + //SEG499 [51] phi from mulf_tables_cmp::@3 to print_str [phi:mulf_tables_cmp::@3->print_str] print_str_from_b3: - //SEG441 [51] phi (byte*) char_cursor#141 = (const byte*) SCREEN#0 [phi:multiply_tables_compare::@3->print_str#0] -- pbuz1=pbuc1 + //SEG500 [51] phi (byte*) char_cursor#145 = (const byte*) SCREEN#0 [phi:mulf_tables_cmp::@3->print_str#0] -- pbuz1=pbuc1 lda #SCREEN sta char_cursor+1 - //SEG442 [51] phi (byte*) print_str::str#16 = (const string) multiply_tables_compare::str [phi:multiply_tables_compare::@3->print_str#1] -- pbuz1=pbuc1 + //SEG501 [51] phi (byte*) print_str::str#17 = (const string) mulf_tables_cmp::str [phi:mulf_tables_cmp::@3->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str jmp b6 - //SEG443 multiply_tables_compare::@6 + //SEG502 mulf_tables_cmp::@6 b6: - //SEG444 [207] (word~) print_word::w#9 ← (word)(byte*) multiply_tables_compare::asm_sqr#2 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ) - // (word~) print_word::w#9 = (word)(byte*) multiply_tables_compare::asm_sqr#2 // register copy zp ZP_WORD:8 - //SEG445 [208] call print_word param-assignment [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ) - //SEG446 [86] phi from multiply_tables_compare::@6 to print_word [phi:multiply_tables_compare::@6->print_word] + //SEG503 [233] (word~) print_word::w#8 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ) + // (word~) print_word::w#8 = (word)(byte*) mulf_tables_cmp::asm_sqr#2 // register copy zp ZP_WORD:8 + //SEG504 [234] call print_word param-assignment [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ) + //SEG505 [86] phi from mulf_tables_cmp::@6 to print_word [phi:mulf_tables_cmp::@6->print_word] print_word_from_b6: - //SEG447 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#122 [phi:multiply_tables_compare::@6->print_word#0] -- register_copy - //SEG448 [86] phi (word) print_word::w#5 = (word~) print_word::w#9 [phi:multiply_tables_compare::@6->print_word#1] -- register_copy + //SEG506 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:mulf_tables_cmp::@6->print_word#0] -- register_copy + //SEG507 [86] phi (word) print_word::w#6 = (word~) print_word::w#8 [phi:mulf_tables_cmp::@6->print_word#1] -- register_copy jsr print_word - //SEG449 [209] phi from multiply_tables_compare::@6 to multiply_tables_compare::@7 [phi:multiply_tables_compare::@6->multiply_tables_compare::@7] + //SEG508 [235] phi from mulf_tables_cmp::@6 to mulf_tables_cmp::@7 [phi:mulf_tables_cmp::@6->mulf_tables_cmp::@7] b7_from_b6: jmp b7 - //SEG450 multiply_tables_compare::@7 + //SEG509 mulf_tables_cmp::@7 b7: - //SEG451 [210] call print_str param-assignment [ char_cursor#122 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 multiply_tables_compare::kc_sqr#2 ] ) - //SEG452 [51] phi from multiply_tables_compare::@7 to print_str [phi:multiply_tables_compare::@7->print_str] + //SEG510 [236] call print_str param-assignment [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 ] ) + //SEG511 [51] phi from mulf_tables_cmp::@7 to print_str [phi:mulf_tables_cmp::@7->print_str] print_str_from_b7: - //SEG453 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:multiply_tables_compare::@7->print_str#0] -- register_copy - //SEG454 [51] phi (byte*) print_str::str#16 = (const string) multiply_tables_compare::str1 [phi:multiply_tables_compare::@7->print_str#1] -- pbuz1=pbuc1 + //SEG512 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:mulf_tables_cmp::@7->print_str#0] -- register_copy + //SEG513 [51] phi (byte*) print_str::str#17 = (const string) mulf_tables_cmp::str1 [phi:mulf_tables_cmp::@7->print_str#1] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str jmp b8 - //SEG455 multiply_tables_compare::@8 + //SEG514 mulf_tables_cmp::@8 b8: - //SEG456 [211] (word~) print_word::w#10 ← (word)(byte*) multiply_tables_compare::kc_sqr#2 [ char_cursor#122 print_word::w#10 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#10 ] ) -- vwuz1=vwuz2 + //SEG515 [237] (word~) print_word::w#9 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 [ char_cursor#126 print_word::w#9 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#9 ] ) -- vwuz1=vwuz2 lda kc_sqr sta print_word.w lda kc_sqr+1 sta print_word.w+1 - //SEG457 [212] call print_word param-assignment [ char_cursor#17 ] ( main:2::multiply_tables_compare:11 [ char_cursor#17 ] ) - //SEG458 [86] phi from multiply_tables_compare::@8 to print_word [phi:multiply_tables_compare::@8->print_word] + //SEG516 [238] call print_word param-assignment [ char_cursor#17 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#17 ] ) + //SEG517 [86] phi from mulf_tables_cmp::@8 to print_word [phi:mulf_tables_cmp::@8->print_word] print_word_from_b8: - //SEG459 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#122 [phi:multiply_tables_compare::@8->print_word#0] -- register_copy - //SEG460 [86] phi (word) print_word::w#5 = (word~) print_word::w#10 [phi:multiply_tables_compare::@8->print_word#1] -- register_copy + //SEG518 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:mulf_tables_cmp::@8->print_word#0] -- register_copy + //SEG519 [86] phi (word) print_word::w#6 = (word~) print_word::w#9 [phi:mulf_tables_cmp::@8->print_word#1] -- register_copy jsr print_word - //SEG461 [213] phi from multiply_tables_compare::@8 to multiply_tables_compare::@return [phi:multiply_tables_compare::@8->multiply_tables_compare::@return] + //SEG520 [239] phi from mulf_tables_cmp::@8 to mulf_tables_cmp::@return [phi:mulf_tables_cmp::@8->mulf_tables_cmp::@return] breturn_from_b8: - //SEG462 [213] phi (byte*) line_cursor#10 = (const byte*) SCREEN#0 [phi:multiply_tables_compare::@8->multiply_tables_compare::@return#0] -- pbuz1=pbuc1 + //SEG521 [239] phi (byte*) line_cursor#10 = (const byte*) SCREEN#0 [phi:mulf_tables_cmp::@8->mulf_tables_cmp::@return#0] -- pbuz1=pbuc1 lda #SCREEN sta line_cursor+1 - //SEG463 [213] phi (byte*) char_cursor#30 = (byte*) char_cursor#17 [phi:multiply_tables_compare::@8->multiply_tables_compare::@return#1] -- register_copy + //SEG522 [239] phi (byte*) char_cursor#30 = (byte*) char_cursor#17 [phi:mulf_tables_cmp::@8->mulf_tables_cmp::@return#1] -- register_copy jmp breturn - //SEG464 multiply_tables_compare::@return + //SEG523 mulf_tables_cmp::@return breturn: - //SEG465 [214] return [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_tables_compare:11 [ line_cursor#10 char_cursor#30 ] ) + //SEG524 [240] return [ line_cursor#10 char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#10 char_cursor#30 ] ) rts - //SEG466 multiply_tables_compare::@2 + //SEG525 mulf_tables_cmp::@2 b2: - //SEG467 [215] (byte*) multiply_tables_compare::asm_sqr#1 ← ++ (byte*) multiply_tables_compare::asm_sqr#2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG526 [241] (byte*) mulf_tables_cmp::asm_sqr#1 ← ++ (byte*) mulf_tables_cmp::asm_sqr#2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#1 ] ) -- pbuz1=_inc_pbuz1 inc asm_sqr bne !+ inc asm_sqr+1 !: - //SEG468 [216] (byte*) multiply_tables_compare::kc_sqr#1 ← ++ (byte*) multiply_tables_compare::kc_sqr#2 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG527 [242] (byte*) mulf_tables_cmp::kc_sqr#1 ← ++ (byte*) mulf_tables_cmp::kc_sqr#2 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) -- pbuz1=_inc_pbuz1 inc kc_sqr bne !+ inc kc_sqr+1 !: - //SEG469 [217] if((byte*) multiply_tables_compare::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto multiply_tables_compare::@1 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ) -- pbuz1_lt_pbuc1_then_la1 + //SEG528 [243] if((byte*) mulf_tables_cmp::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto mulf_tables_cmp::@1 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) -- pbuz1_lt_pbuc1_then_la1 lda kc_sqr+1 cmp #>mulf_sqr1_lo+$200*4 bcc b1_from_b2 @@ -9716,58 +10832,58 @@ multiply_tables_compare: { cmp #multiply_tables_compare::@5] + //SEG529 [244] phi from mulf_tables_cmp::@2 to mulf_tables_cmp::@5 [phi:mulf_tables_cmp::@2->mulf_tables_cmp::@5] b5_from_b2: jmp b5 - //SEG471 multiply_tables_compare::@5 + //SEG530 mulf_tables_cmp::@5 b5: - //SEG472 [219] call print_str param-assignment [ char_cursor#122 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 ] ) - //SEG473 [51] phi from multiply_tables_compare::@5 to print_str [phi:multiply_tables_compare::@5->print_str] + //SEG531 [245] call print_str param-assignment [ char_cursor#126 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 ] ) + //SEG532 [51] phi from mulf_tables_cmp::@5 to print_str [phi:mulf_tables_cmp::@5->print_str] print_str_from_b5: - //SEG474 [51] phi (byte*) char_cursor#141 = (const byte*) SCREEN#0 [phi:multiply_tables_compare::@5->print_str#0] -- pbuz1=pbuc1 + //SEG533 [51] phi (byte*) char_cursor#145 = (const byte*) SCREEN#0 [phi:mulf_tables_cmp::@5->print_str#0] -- pbuz1=pbuc1 lda #SCREEN sta char_cursor+1 - //SEG475 [51] phi (byte*) print_str::str#16 = (const string) multiply_tables_compare::str2 [phi:multiply_tables_compare::@5->print_str#1] -- pbuz1=pbuc1 + //SEG534 [51] phi (byte*) print_str::str#17 = (const string) mulf_tables_cmp::str2 [phi:mulf_tables_cmp::@5->print_str#1] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str - //SEG476 [220] phi from multiply_tables_compare::@5 to multiply_tables_compare::@10 [phi:multiply_tables_compare::@5->multiply_tables_compare::@10] + //SEG535 [246] phi from mulf_tables_cmp::@5 to mulf_tables_cmp::@10 [phi:mulf_tables_cmp::@5->mulf_tables_cmp::@10] b10_from_b5: jmp b10 - //SEG477 multiply_tables_compare::@10 + //SEG536 mulf_tables_cmp::@10 b10: - //SEG478 [221] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_tables_compare:11 [ line_cursor#1 ] ) - //SEG479 [46] phi from multiply_tables_compare::@10 to print_ln [phi:multiply_tables_compare::@10->print_ln] + //SEG537 [247] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#1 ] ) + //SEG538 [46] phi from mulf_tables_cmp::@10 to print_ln [phi:mulf_tables_cmp::@10->print_ln] print_ln_from_b10: - //SEG480 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#122 [phi:multiply_tables_compare::@10->print_ln#0] -- register_copy - //SEG481 [46] phi (byte*) line_cursor#45 = (const byte*) SCREEN#0 [phi:multiply_tables_compare::@10->print_ln#1] -- pbuz1=pbuc1 + //SEG539 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#126 [phi:mulf_tables_cmp::@10->print_ln#0] -- register_copy + //SEG540 [46] phi (byte*) line_cursor#45 = (const byte*) SCREEN#0 [phi:mulf_tables_cmp::@10->print_ln#1] -- pbuz1=pbuc1 lda #SCREEN sta line_cursor+1 jsr print_ln - //SEG482 [222] (byte*~) char_cursor#201 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#201 ] ( main:2::multiply_tables_compare:11 [ line_cursor#1 char_cursor#201 ] ) -- pbuz1=pbuz2 + //SEG541 [248] (byte*~) char_cursor#212 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#212 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#1 char_cursor#212 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG483 [213] phi from multiply_tables_compare::@10 to multiply_tables_compare::@return [phi:multiply_tables_compare::@10->multiply_tables_compare::@return] + //SEG542 [239] phi from mulf_tables_cmp::@10 to mulf_tables_cmp::@return [phi:mulf_tables_cmp::@10->mulf_tables_cmp::@return] breturn_from_b10: - //SEG484 [213] phi (byte*) line_cursor#10 = (byte*) line_cursor#1 [phi:multiply_tables_compare::@10->multiply_tables_compare::@return#0] -- register_copy - //SEG485 [213] phi (byte*) char_cursor#30 = (byte*~) char_cursor#201 [phi:multiply_tables_compare::@10->multiply_tables_compare::@return#1] -- register_copy + //SEG543 [239] phi (byte*) line_cursor#10 = (byte*) line_cursor#1 [phi:mulf_tables_cmp::@10->mulf_tables_cmp::@return#0] -- register_copy + //SEG544 [239] phi (byte*) char_cursor#30 = (byte*~) char_cursor#212 [phi:mulf_tables_cmp::@10->mulf_tables_cmp::@return#1] -- register_copy jmp breturn str: .text "multiply table mismatch at @" str1: .text " / @" str2: .text "multiply tables match!@" } -//SEG486 mulf_init_asm +//SEG545 mulf_init_asm mulf_init_asm: { .label mem = $ff - //SEG487 asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } + //SEG546 asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } ldx #0 txa .byte $c9 @@ -9806,25 +10922,25 @@ mulf_init_asm: { dey inx bne !- - //SEG488 [224] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 + //SEG547 [250] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr1_lo sta mem - //SEG489 [225] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 + //SEG548 [251] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr1_hi sta mem - //SEG490 [226] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 + //SEG549 [252] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr2_lo sta mem - //SEG491 [227] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 + //SEG550 [253] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr2_hi sta mem jmp breturn - //SEG492 mulf_init_asm::@return + //SEG551 mulf_init_asm::@return breturn: - //SEG493 [228] return [ ] ( main:2::mulf_init_asm:9 [ ] ) + //SEG552 [254] return [ ] ( main:2::mulf_init_asm:9 [ ] ) rts } -//SEG494 mulf_init +//SEG553 mulf_init mulf_init: { .label sqr1_hi = 6 .label sqr = 8 @@ -9833,81 +10949,81 @@ mulf_init: { .label sqr2_hi = 6 .label sqr2_lo = 4 .label dir = 2 - //SEG495 [230] phi from mulf_init to mulf_init::@1 [phi:mulf_init->mulf_init::@1] + //SEG554 [256] phi from mulf_init to mulf_init::@1 [phi:mulf_init->mulf_init::@1] b1_from_mulf_init: - //SEG496 [230] phi (byte) mulf_init::x_2#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#0] -- vbuz1=vbuc1 + //SEG555 [256] phi (byte) mulf_init::x_2#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#0] -- vbuz1=vbuc1 lda #0 sta x_2 - //SEG497 [230] phi (byte*) mulf_init::sqr1_hi#2 = (const byte[512]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init->mulf_init::@1#1] -- pbuz1=pbuc1 + //SEG556 [256] phi (byte*) mulf_init::sqr1_hi#2 = (const byte[512]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init->mulf_init::@1#1] -- pbuz1=pbuc1 lda #mulf_sqr1_hi+1 sta sqr1_hi+1 - //SEG498 [230] phi (byte*) mulf_init::sqr1_lo#2 = (const byte[512]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init->mulf_init::@1#2] -- pbuz1=pbuc1 + //SEG557 [256] phi (byte*) mulf_init::sqr1_lo#2 = (const byte[512]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init->mulf_init::@1#2] -- pbuz1=pbuc1 lda #mulf_sqr1_lo+1 sta sqr1_lo+1 - //SEG499 [230] phi (word) mulf_init::sqr#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#3] -- vwuz1=vbuc1 + //SEG558 [256] phi (word) mulf_init::sqr#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#3] -- vwuz1=vbuc1 lda #0 sta sqr lda #0 sta sqr+1 - //SEG500 [230] phi (byte) mulf_init::c#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#4] -- vbuxx=vbuc1 + //SEG559 [256] phi (byte) mulf_init::c#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#4] -- vbuxx=vbuc1 ldx #0 jmp b1 - //SEG501 [230] phi from mulf_init::@2 to mulf_init::@1 [phi:mulf_init::@2->mulf_init::@1] + //SEG560 [256] phi from mulf_init::@2 to mulf_init::@1 [phi:mulf_init::@2->mulf_init::@1] b1_from_b2: - //SEG502 [230] phi (byte) mulf_init::x_2#3 = (byte) mulf_init::x_2#2 [phi:mulf_init::@2->mulf_init::@1#0] -- register_copy - //SEG503 [230] phi (byte*) mulf_init::sqr1_hi#2 = (byte*) mulf_init::sqr1_hi#1 [phi:mulf_init::@2->mulf_init::@1#1] -- register_copy - //SEG504 [230] phi (byte*) mulf_init::sqr1_lo#2 = (byte*) mulf_init::sqr1_lo#1 [phi:mulf_init::@2->mulf_init::@1#2] -- register_copy - //SEG505 [230] phi (word) mulf_init::sqr#4 = (word) mulf_init::sqr#1 [phi:mulf_init::@2->mulf_init::@1#3] -- register_copy - //SEG506 [230] phi (byte) mulf_init::c#2 = (byte) mulf_init::c#1 [phi:mulf_init::@2->mulf_init::@1#4] -- register_copy + //SEG561 [256] phi (byte) mulf_init::x_2#3 = (byte) mulf_init::x_2#2 [phi:mulf_init::@2->mulf_init::@1#0] -- register_copy + //SEG562 [256] phi (byte*) mulf_init::sqr1_hi#2 = (byte*) mulf_init::sqr1_hi#1 [phi:mulf_init::@2->mulf_init::@1#1] -- register_copy + //SEG563 [256] phi (byte*) mulf_init::sqr1_lo#2 = (byte*) mulf_init::sqr1_lo#1 [phi:mulf_init::@2->mulf_init::@1#2] -- register_copy + //SEG564 [256] phi (word) mulf_init::sqr#4 = (word) mulf_init::sqr#1 [phi:mulf_init::@2->mulf_init::@1#3] -- register_copy + //SEG565 [256] phi (byte) mulf_init::c#2 = (byte) mulf_init::c#1 [phi:mulf_init::@2->mulf_init::@1#4] -- register_copy jmp b1 - //SEG507 mulf_init::@1 + //SEG566 mulf_init::@1 b1: - //SEG508 [231] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) -- vbuxx=_inc_vbuxx + //SEG567 [257] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) -- vbuxx=_inc_vbuxx inx - //SEG509 [232] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) -- vbuaa=vbuxx_band_vbuc1 + //SEG568 [258] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) -- vbuaa=vbuxx_band_vbuc1 txa and #1 - //SEG510 [233] if((byte~) mulf_init::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) -- vbuaa_neq_0_then_la1 + //SEG569 [259] if((byte~) mulf_init::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) -- vbuaa_neq_0_then_la1 cmp #0 bne b2_from_b1 jmp b5 - //SEG511 mulf_init::@5 + //SEG570 mulf_init::@5 b5: - //SEG512 [234] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ) -- vbuz1=_inc_vbuz1 + //SEG571 [260] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ) -- vbuz1=_inc_vbuz1 inc x_2 - //SEG513 [235] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ) -- vwuz1=_inc_vwuz1 + //SEG572 [261] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ) -- vwuz1=_inc_vwuz1 inc sqr bne !+ inc sqr+1 !: - //SEG514 [236] phi from mulf_init::@1 mulf_init::@5 to mulf_init::@2 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2] + //SEG573 [262] phi from mulf_init::@1 mulf_init::@5 to mulf_init::@2 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2] b2_from_b1: b2_from_b5: - //SEG515 [236] phi (byte) mulf_init::x_2#2 = (byte) mulf_init::x_2#3 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2#0] -- register_copy - //SEG516 [236] phi (word) mulf_init::sqr#3 = (word) mulf_init::sqr#4 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2#1] -- register_copy + //SEG574 [262] phi (byte) mulf_init::x_2#2 = (byte) mulf_init::x_2#3 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2#0] -- register_copy + //SEG575 [262] phi (word) mulf_init::sqr#3 = (word) mulf_init::sqr#4 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2#1] -- register_copy jmp b2 - //SEG517 mulf_init::@2 + //SEG576 mulf_init::@2 b2: - //SEG518 [237] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) -- vbuaa=_lo_vwuz1 + //SEG577 [263] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) -- vbuaa=_lo_vwuz1 lda sqr - //SEG519 [238] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- _deref_pbuz1=vbuaa + //SEG578 [264] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (sqr1_lo),y - //SEG520 [239] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) -- vbuaa=_hi_vwuz1 + //SEG579 [265] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) -- vbuaa=_hi_vwuz1 lda sqr+1 - //SEG521 [240] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- _deref_pbuz1=vbuaa + //SEG580 [266] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (sqr1_hi),y - //SEG522 [241] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- pbuz1=_inc_pbuz1 + //SEG581 [267] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- pbuz1=_inc_pbuz1 inc sqr1_hi bne !+ inc sqr1_hi+1 !: - //SEG523 [242] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- vwuz1=vwuz1_plus_vbuz2 + //SEG582 [268] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- vwuz1=vwuz1_plus_vbuz2 lda x_2 clc adc sqr @@ -9915,80 +11031,80 @@ mulf_init: { lda #0 adc sqr+1 sta sqr+1 - //SEG524 [243] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- pbuz1=_inc_pbuz1 + //SEG583 [269] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- pbuz1=_inc_pbuz1 inc sqr1_lo bne !+ inc sqr1_lo+1 !: - //SEG525 [244] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- pbuz1_neq_pbuc1_then_la1 + //SEG584 [270] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- pbuz1_neq_pbuc1_then_la1 lda sqr1_lo+1 cmp #>mulf_sqr1_lo+$200 bne b1_from_b2 lda sqr1_lo cmp #mulf_init::@3] + //SEG585 [271] phi from mulf_init::@2 to mulf_init::@3 [phi:mulf_init::@2->mulf_init::@3] b3_from_b2: - //SEG527 [245] phi (byte) mulf_init::dir#2 = (byte/word/signed word/dword/signed dword) 255 [phi:mulf_init::@2->mulf_init::@3#0] -- vbuz1=vbuc1 + //SEG586 [271] phi (byte) mulf_init::dir#2 = (byte/word/signed word/dword/signed dword) 255 [phi:mulf_init::@2->mulf_init::@3#0] -- vbuz1=vbuc1 lda #$ff sta dir - //SEG528 [245] phi (byte*) mulf_init::sqr2_hi#2 = (const byte[512]) mulf_sqr2_hi#0 [phi:mulf_init::@2->mulf_init::@3#1] -- pbuz1=pbuc1 + //SEG587 [271] phi (byte*) mulf_init::sqr2_hi#2 = (const byte[512]) mulf_sqr2_hi#0 [phi:mulf_init::@2->mulf_init::@3#1] -- pbuz1=pbuc1 lda #mulf_sqr2_hi sta sqr2_hi+1 - //SEG529 [245] phi (byte*) mulf_init::sqr2_lo#2 = (const byte[512]) mulf_sqr2_lo#0 [phi:mulf_init::@2->mulf_init::@3#2] -- pbuz1=pbuc1 + //SEG588 [271] phi (byte*) mulf_init::sqr2_lo#2 = (const byte[512]) mulf_sqr2_lo#0 [phi:mulf_init::@2->mulf_init::@3#2] -- pbuz1=pbuc1 lda #mulf_sqr2_lo sta sqr2_lo+1 - //SEG530 [245] phi (byte) mulf_init::x_255#2 = ((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init::@2->mulf_init::@3#3] -- vbuxx=vbuc1 + //SEG589 [271] phi (byte) mulf_init::x_255#2 = ((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init::@2->mulf_init::@3#3] -- vbuxx=vbuc1 ldx #-1 jmp b3 - //SEG531 [245] phi from mulf_init::@4 to mulf_init::@3 [phi:mulf_init::@4->mulf_init::@3] + //SEG590 [271] phi from mulf_init::@4 to mulf_init::@3 [phi:mulf_init::@4->mulf_init::@3] b3_from_b4: - //SEG532 [245] phi (byte) mulf_init::dir#2 = (byte) mulf_init::dir#3 [phi:mulf_init::@4->mulf_init::@3#0] -- register_copy - //SEG533 [245] phi (byte*) mulf_init::sqr2_hi#2 = (byte*) mulf_init::sqr2_hi#1 [phi:mulf_init::@4->mulf_init::@3#1] -- register_copy - //SEG534 [245] phi (byte*) mulf_init::sqr2_lo#2 = (byte*) mulf_init::sqr2_lo#1 [phi:mulf_init::@4->mulf_init::@3#2] -- register_copy - //SEG535 [245] phi (byte) mulf_init::x_255#2 = (byte) mulf_init::x_255#1 [phi:mulf_init::@4->mulf_init::@3#3] -- register_copy + //SEG591 [271] phi (byte) mulf_init::dir#2 = (byte) mulf_init::dir#3 [phi:mulf_init::@4->mulf_init::@3#0] -- register_copy + //SEG592 [271] phi (byte*) mulf_init::sqr2_hi#2 = (byte*) mulf_init::sqr2_hi#1 [phi:mulf_init::@4->mulf_init::@3#1] -- register_copy + //SEG593 [271] phi (byte*) mulf_init::sqr2_lo#2 = (byte*) mulf_init::sqr2_lo#1 [phi:mulf_init::@4->mulf_init::@3#2] -- register_copy + //SEG594 [271] phi (byte) mulf_init::x_255#2 = (byte) mulf_init::x_255#1 [phi:mulf_init::@4->mulf_init::@3#3] -- register_copy jmp b3 - //SEG536 mulf_init::@3 + //SEG595 mulf_init::@3 b3: - //SEG537 [246] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG596 [272] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda mulf_sqr1_lo,x ldy #0 sta (sqr2_lo),y - //SEG538 [247] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG597 [273] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda mulf_sqr1_hi,x ldy #0 sta (sqr2_hi),y - //SEG539 [248] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG598 [274] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ) -- pbuz1=_inc_pbuz1 inc sqr2_hi bne !+ inc sqr2_hi+1 !: - //SEG540 [249] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) -- vbuxx=vbuxx_plus_vbuz1 + //SEG599 [275] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) -- vbuxx=vbuxx_plus_vbuz1 txa clc adc dir tax - //SEG541 [250] if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@12 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) -- vbuxx_neq_0_then_la1 + //SEG600 [276] if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@12 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) -- vbuxx_neq_0_then_la1 cpx #0 bne b12_from_b3 - //SEG542 [251] phi from mulf_init::@3 to mulf_init::@4 [phi:mulf_init::@3->mulf_init::@4] + //SEG601 [277] phi from mulf_init::@3 to mulf_init::@4 [phi:mulf_init::@3->mulf_init::@4] b4_from_b3: - //SEG543 [251] phi (byte) mulf_init::dir#3 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init::@3->mulf_init::@4#0] -- vbuz1=vbuc1 + //SEG602 [277] phi (byte) mulf_init::dir#3 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init::@3->mulf_init::@4#0] -- vbuz1=vbuc1 lda #1 sta dir jmp b4 - //SEG544 mulf_init::@4 + //SEG603 mulf_init::@4 b4: - //SEG545 [252] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) -- pbuz1=_inc_pbuz1 + //SEG604 [278] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) -- pbuz1=_inc_pbuz1 inc sqr2_lo bne !+ inc sqr2_lo+1 !: - //SEG546 [253] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) -- pbuz1_neq_pbuc1_then_la1 + //SEG605 [279] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) -- pbuz1_neq_pbuc1_then_la1 lda sqr2_lo+1 cmp #>mulf_sqr2_lo+$1ff bne b3_from_b4 @@ -9996,56 +11112,56 @@ mulf_init: { cmp #mulf_init::@12] + //SEG611 [283] phi from mulf_init::@3 to mulf_init::@12 [phi:mulf_init::@3->mulf_init::@12] b12_from_b3: jmp b12 - //SEG553 mulf_init::@12 + //SEG612 mulf_init::@12 b12: - //SEG554 [251] phi from mulf_init::@12 to mulf_init::@4 [phi:mulf_init::@12->mulf_init::@4] + //SEG613 [277] phi from mulf_init::@12 to mulf_init::@4 [phi:mulf_init::@12->mulf_init::@4] b4_from_b12: - //SEG555 [251] phi (byte) mulf_init::dir#3 = (byte) mulf_init::dir#2 [phi:mulf_init::@12->mulf_init::@4#0] -- register_copy + //SEG614 [277] phi (byte) mulf_init::dir#3 = (byte) mulf_init::dir#2 [phi:mulf_init::@12->mulf_init::@4#0] -- register_copy jmp b4 } -//SEG556 print_cls +//SEG615 print_cls print_cls: { .label sc = 4 - //SEG557 [259] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] + //SEG616 [285] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] b1_from_print_cls: - //SEG558 [259] phi (byte*) print_cls::sc#2 = (const byte*) SCREEN#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 + //SEG617 [285] 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 - //SEG559 [259] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] + //SEG618 [285] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] b1_from_b1: - //SEG560 [259] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy + //SEG619 [285] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy jmp b1 - //SEG561 print_cls::@1 + //SEG620 print_cls::@1 b1: - //SEG562 [260] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 + //SEG621 [286] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG563 [261] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG622 [287] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 !: - //SEG564 [262] 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 [ print_cls::sc#1 ] ) -- pbuz1_neq_pbuc1_then_la1 + //SEG623 [288] 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 [ print_cls::sc#1 ] ) -- pbuz1_neq_pbuc1_then_la1 lda sc+1 cmp #>SCREEN+$3e8 bne b1_from_b1 @@ -10053,9 +11169,9 @@ print_cls: { cmp #@20] -//SEG4 @20 +//SEG3 [1] phi from @begin to @21 [phi:@begin->@21] +//SEG4 @21 //SEG5 [2] call main param-assignment [ ] ( ) jsr main -//SEG6 [3] phi from @20 to @end [phi:@20->@end] +//SEG6 [3] phi from @21 to @end [phi:@21->@end] //SEG7 @end //SEG8 main main: { @@ -10833,12 +12031,12 @@ main: { lda #5 sta BGCOL //SEG10 [5] call print_cls param-assignment [ ] ( main:2 [ ] ) - //SEG11 [258] phi from main to print_cls [phi:main->print_cls] + //SEG11 [284] 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 mulf_init param-assignment [ ] ( main:2 [ ] ) - //SEG15 [229] phi from main::@1 to mulf_init [phi:main::@1->mulf_init] + //SEG15 [255] phi from main::@1 to mulf_init [phi:main::@1->mulf_init] jsr mulf_init //SEG16 [8] phi from main::@1 to main::@2 [phi:main::@1->main::@2] //SEG17 main::@2 @@ -10846,68 +12044,68 @@ main: { jsr mulf_init_asm //SEG19 [10] phi from main::@2 to main::@3 [phi:main::@2->main::@3] //SEG20 main::@3 - //SEG21 [11] call multiply_tables_compare param-assignment [ line_cursor#10 char_cursor#30 ] ( main:2 [ line_cursor#10 char_cursor#30 ] ) - //SEG22 [202] phi from main::@3 to multiply_tables_compare [phi:main::@3->multiply_tables_compare] - jsr multiply_tables_compare + //SEG21 [11] call mulf_tables_cmp param-assignment [ line_cursor#10 char_cursor#30 ] ( main:2 [ line_cursor#10 char_cursor#30 ] ) + //SEG22 [228] phi from main::@3 to mulf_tables_cmp [phi:main::@3->mulf_tables_cmp] + jsr mulf_tables_cmp //SEG23 [12] phi from main::@3 to main::@4 [phi:main::@3->main::@4] //SEG24 main::@4 - //SEG25 [13] call multiply_results_compare param-assignment [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) - //SEG26 [147] phi from main::@4 to multiply_results_compare [phi:main::@4->multiply_results_compare] - jsr multiply_results_compare + //SEG25 [13] call mul8u_slowfast_compare param-assignment [ line_cursor#1 ] ( main:2 [ line_cursor#1 ] ) + //SEG26 [147] phi from main::@4 to mul8u_slowfast_compare [phi:main::@4->mul8u_slowfast_compare] + jsr mul8u_slowfast_compare //SEG27 [14] phi from main::@4 to main::@5 [phi:main::@4->main::@5] //SEG28 main::@5 - //SEG29 [15] call signed_multiply_results_compare param-assignment [ ] ( main:2 [ ] ) - //SEG30 [17] phi from main::@5 to signed_multiply_results_compare [phi:main::@5->signed_multiply_results_compare] - jsr signed_multiply_results_compare + //SEG29 [15] call mul8s_slowfast_compare param-assignment [ ] ( main:2 [ ] ) + //SEG30 [17] phi from main::@5 to mul8s_slowfast_compare [phi:main::@5->mul8s_slowfast_compare] + jsr mul8s_slowfast_compare //SEG31 main::@return //SEG32 [16] return [ ] ( main:2 [ ] ) rts } -//SEG33 signed_multiply_results_compare -signed_multiply_results_compare: { +//SEG33 mul8s_slowfast_compare +mul8s_slowfast_compare: { .label ms = 8 .label ma = $c .label b = 3 .label a = 2 - //SEG34 [18] phi from signed_multiply_results_compare to signed_multiply_results_compare::@1 [phi:signed_multiply_results_compare->signed_multiply_results_compare::@1] - //SEG35 [18] phi (signed byte) signed_multiply_results_compare::a#6 = -(byte/word/signed word/dword/signed dword) 128 [phi:signed_multiply_results_compare->signed_multiply_results_compare::@1#0] -- vbsz1=vbsc1 + //SEG34 [18] phi from mul8s_slowfast_compare to mul8s_slowfast_compare::@1 [phi:mul8s_slowfast_compare->mul8s_slowfast_compare::@1] + //SEG35 [18] phi (signed byte) mul8s_slowfast_compare::a#6 = -(byte/word/signed word/dword/signed dword) 128 [phi:mul8s_slowfast_compare->mul8s_slowfast_compare::@1#0] -- vbsz1=vbsc1 lda #-$80 sta a - //SEG36 [18] phi from signed_multiply_results_compare::@6 to signed_multiply_results_compare::@1 [phi:signed_multiply_results_compare::@6->signed_multiply_results_compare::@1] - //SEG37 [18] phi (signed byte) signed_multiply_results_compare::a#6 = (signed byte) signed_multiply_results_compare::a#1 [phi:signed_multiply_results_compare::@6->signed_multiply_results_compare::@1#0] -- register_copy - //SEG38 signed_multiply_results_compare::@1 + //SEG36 [18] phi from mul8s_slowfast_compare::@6 to mul8s_slowfast_compare::@1 [phi:mul8s_slowfast_compare::@6->mul8s_slowfast_compare::@1] + //SEG37 [18] phi (signed byte) mul8s_slowfast_compare::a#6 = (signed byte) mul8s_slowfast_compare::a#1 [phi:mul8s_slowfast_compare::@6->mul8s_slowfast_compare::@1#0] -- register_copy + //SEG38 mul8s_slowfast_compare::@1 b1: - //SEG39 [19] phi from signed_multiply_results_compare::@1 to signed_multiply_results_compare::@2 [phi:signed_multiply_results_compare::@1->signed_multiply_results_compare::@2] - //SEG40 [19] phi (signed byte) signed_multiply_results_compare::b#2 = -(byte/word/signed word/dword/signed dword) 128 [phi:signed_multiply_results_compare::@1->signed_multiply_results_compare::@2#0] -- vbsz1=vbsc1 + //SEG39 [19] phi from mul8s_slowfast_compare::@1 to mul8s_slowfast_compare::@2 [phi:mul8s_slowfast_compare::@1->mul8s_slowfast_compare::@2] + //SEG40 [19] phi (signed byte) mul8s_slowfast_compare::b#2 = -(byte/word/signed word/dword/signed dword) 128 [phi:mul8s_slowfast_compare::@1->mul8s_slowfast_compare::@2#0] -- vbsz1=vbsc1 lda #-$80 sta b - //SEG41 [19] phi from signed_multiply_results_compare::@3 to signed_multiply_results_compare::@2 [phi:signed_multiply_results_compare::@3->signed_multiply_results_compare::@2] - //SEG42 [19] phi (signed byte) signed_multiply_results_compare::b#2 = (signed byte) signed_multiply_results_compare::b#1 [phi:signed_multiply_results_compare::@3->signed_multiply_results_compare::@2#0] -- register_copy - //SEG43 signed_multiply_results_compare::@2 + //SEG41 [19] phi from mul8s_slowfast_compare::@3 to mul8s_slowfast_compare::@2 [phi:mul8s_slowfast_compare::@3->mul8s_slowfast_compare::@2] + //SEG42 [19] phi (signed byte) mul8s_slowfast_compare::b#2 = (signed byte) mul8s_slowfast_compare::b#1 [phi:mul8s_slowfast_compare::@3->mul8s_slowfast_compare::@2#0] -- register_copy + //SEG43 mul8s_slowfast_compare::@2 b2: - //SEG44 [20] (signed byte) muls8s::a#0 ← (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 line_cursor#1 ] ) - // (signed byte) muls8s::a#0 = (signed byte) signed_multiply_results_compare::a#6 // register copy zp ZP_BYTE:2 - //SEG45 [21] (signed byte) muls8s::b#0 ← (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ) -- vbsxx=vbsz1 + //SEG44 [20] (signed byte) muls8s::a#0 ← (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 line_cursor#1 ] ) + // (signed byte) muls8s::a#0 = (signed byte) mul8s_slowfast_compare::a#6 // register copy zp ZP_BYTE:2 + //SEG45 [21] (signed byte) muls8s::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::a#0 muls8s::b#0 line_cursor#1 ] ) -- vbsxx=vbsz1 ldx b - //SEG46 [22] call muls8s param-assignment [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#0 line_cursor#1 ] ) + //SEG46 [22] call muls8s param-assignment [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#0 line_cursor#1 ] ) jsr muls8s - //SEG47 [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#2 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 muls8s::return#2 line_cursor#1 ] ) + //SEG47 [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 muls8s::return#2 line_cursor#1 ] ) // (signed word) muls8s::return#2 = (signed word) muls8s::return#0 // register copy zp ZP_WORD:8 - //SEG48 signed_multiply_results_compare::@8 - //SEG49 [24] (signed word) signed_multiply_results_compare::ms#0 ← (signed word) muls8s::return#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 ] ) - // (signed word) signed_multiply_results_compare::ms#0 = (signed word) muls8s::return#2 // register copy zp ZP_WORD:8 - //SEG50 [25] (signed byte) mulf8s::a#0 ← (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ) -- vbsyy=vbsz1 + //SEG48 mul8s_slowfast_compare::@8 + //SEG49 [24] (signed word) mul8s_slowfast_compare::ms#0 ← (signed word) muls8s::return#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 ] ) + // (signed word) mul8s_slowfast_compare::ms#0 = (signed word) muls8s::return#2 // register copy zp ZP_WORD:8 + //SEG50 [25] (signed byte) mulf8s::a#0 ← (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 line_cursor#1 ] ) -- vbsyy=vbsz1 ldy a - //SEG51 [26] (signed byte) mulf8s::b#0 ← (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ) - // (signed byte) mulf8s::b#0 = (signed byte) signed_multiply_results_compare::b#2 // register copy zp ZP_BYTE:3 - //SEG52 [27] call mulf8s param-assignment [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ) + //SEG51 [26] (signed byte) mulf8s::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::a#0 mulf8s::b#0 line_cursor#1 ] ) + // (signed byte) mulf8s::b#0 = (signed byte) mul8s_slowfast_compare::b#2 // register copy zp ZP_BYTE:3 + //SEG52 [27] call mulf8s param-assignment [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::m#4 line_cursor#1 ] ) jsr mulf8s - //SEG53 [28] (signed word) mulf8s::return#2 ← (signed word)(word) mulf8s::m#4 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ) + //SEG53 [28] (signed word) mulf8s::return#2 ← (signed word)(word) mulf8s::m#4 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mulf8s::return#2 line_cursor#1 ] ) // (signed word) mulf8s::return#2 = (signed word)(word) mulf8s::m#4 // register copy zp ZP_WORD:12 - //SEG54 signed_multiply_results_compare::@9 - //SEG55 [29] (signed word) signed_multiply_results_compare::ma#0 ← (signed word) mulf8s::return#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) - // (signed word) signed_multiply_results_compare::ma#0 = (signed word) mulf8s::return#2 // register copy zp ZP_WORD:12 - //SEG56 [30] if((signed word) signed_multiply_results_compare::ms#0==(signed word) signed_multiply_results_compare::ma#0) goto signed_multiply_results_compare::@3 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) -- vwsz1_eq_vwsz2_then_la1 + //SEG54 mul8s_slowfast_compare::@9 + //SEG55 [29] (signed word) mul8s_slowfast_compare::ma#0 ← (signed word) mulf8s::return#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) + // (signed word) mul8s_slowfast_compare::ma#0 = (signed word) mulf8s::return#2 // register copy zp ZP_WORD:12 + //SEG56 [30] if((signed word) mul8s_slowfast_compare::ms#0==(signed word) mul8s_slowfast_compare::ma#0) goto mul8s_slowfast_compare::@3 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) -- vwsz1_eq_vwsz2_then_la1 lda ms cmp ma bne !+ @@ -10915,60 +12113,60 @@ signed_multiply_results_compare: { cmp ma+1 beq b3 !: - //SEG57 signed_multiply_results_compare::@4 - //SEG58 [31] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 line_cursor#1 ] ) -- _deref_pbuc1=vbuc2 + //SEG57 mul8s_slowfast_compare::@4 + //SEG58 [31] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 line_cursor#1 ] ) -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG59 [32] (signed byte) signed_multiply_error::a#0 ← (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ) -- vbsxx=vbsz1 + //SEG59 [32] (signed byte) signed_multiply_error::a#0 ← (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 line_cursor#1 ] ) -- vbsxx=vbsz1 ldx a - //SEG60 [33] (signed byte) signed_multiply_error::b#0 ← (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::ms#0 signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ) - // (signed byte) signed_multiply_error::b#0 = (signed byte) signed_multiply_results_compare::b#2 // register copy zp ZP_BYTE:3 - //SEG61 [34] (signed word) signed_multiply_error::ms#0 ← (signed word) signed_multiply_results_compare::ms#0 [ signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ) - // (signed word) signed_multiply_error::ms#0 = (signed word) signed_multiply_results_compare::ms#0 // register copy zp ZP_WORD:8 - //SEG62 [35] (signed word) signed_multiply_error::ma#0 ← (signed word) signed_multiply_results_compare::ma#0 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ) - // (signed word) signed_multiply_error::ma#0 = (signed word) signed_multiply_results_compare::ma#0 // register copy zp ZP_WORD:12 - //SEG63 [36] call signed_multiply_error param-assignment [ ] ( main:2::signed_multiply_results_compare:15 [ ] ) + //SEG60 [33] (signed byte) signed_multiply_error::b#0 ← (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::ms#0 mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 line_cursor#1 ] ) + // (signed byte) signed_multiply_error::b#0 = (signed byte) mul8s_slowfast_compare::b#2 // register copy zp ZP_BYTE:3 + //SEG61 [34] (signed word) signed_multiply_error::ms#0 ← (signed word) mul8s_slowfast_compare::ms#0 [ mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::ma#0 signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 line_cursor#1 ] ) + // (signed word) signed_multiply_error::ms#0 = (signed word) mul8s_slowfast_compare::ms#0 // register copy zp ZP_WORD:8 + //SEG62 [35] (signed word) signed_multiply_error::ma#0 ← (signed word) mul8s_slowfast_compare::ma#0 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 ] ) + // (signed word) signed_multiply_error::ma#0 = (signed word) mul8s_slowfast_compare::ma#0 // register copy zp ZP_WORD:12 + //SEG63 [36] call signed_multiply_error param-assignment [ ] ( main:2::mul8s_slowfast_compare:15 [ ] ) jsr signed_multiply_error - //SEG64 signed_multiply_results_compare::@return + //SEG64 mul8s_slowfast_compare::@return breturn: - //SEG65 [37] return [ ] ( main:2::signed_multiply_results_compare:15 [ ] ) + //SEG65 [37] return [ ] ( main:2::mul8s_slowfast_compare:15 [ ] ) rts - //SEG66 signed_multiply_results_compare::@3 + //SEG66 mul8s_slowfast_compare::@3 b3: - //SEG67 [38] (signed byte) signed_multiply_results_compare::b#1 ← ++ (signed byte) signed_multiply_results_compare::b#2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ) -- vbsz1=_inc_vbsz1 + //SEG67 [38] (signed byte) mul8s_slowfast_compare::b#1 ← ++ (signed byte) mul8s_slowfast_compare::b#2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ) -- vbsz1=_inc_vbsz1 inc b - //SEG68 [39] if((signed byte) signed_multiply_results_compare::b#1!=-(byte/word/signed word/dword/signed dword) 128) goto signed_multiply_results_compare::@2 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#1 line_cursor#1 ] ) -- vbsz1_neq_vbsc1_then_la1 + //SEG68 [39] if((signed byte) mul8s_slowfast_compare::b#1!=-(byte/word/signed word/dword/signed dword) 128) goto mul8s_slowfast_compare::@2 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#1 line_cursor#1 ] ) -- vbsz1_neq_vbsc1_then_la1 lda b cmp #-$80 bne b2 - //SEG69 signed_multiply_results_compare::@6 - //SEG70 [40] (signed byte) signed_multiply_results_compare::a#1 ← ++ (signed byte) signed_multiply_results_compare::a#6 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ) -- vbsz1=_inc_vbsz1 + //SEG69 mul8s_slowfast_compare::@6 + //SEG70 [40] (signed byte) mul8s_slowfast_compare::a#1 ← ++ (signed byte) mul8s_slowfast_compare::a#6 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ) -- vbsz1=_inc_vbsz1 inc a - //SEG71 [41] if((signed byte) signed_multiply_results_compare::a#1!=-(byte/word/signed word/dword/signed dword) 128) goto signed_multiply_results_compare::@1 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ signed_multiply_results_compare::a#1 line_cursor#1 ] ) -- vbsz1_neq_vbsc1_then_la1 + //SEG71 [41] if((signed byte) mul8s_slowfast_compare::a#1!=-(byte/word/signed word/dword/signed dword) 128) goto mul8s_slowfast_compare::@1 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ mul8s_slowfast_compare::a#1 line_cursor#1 ] ) -- vbsz1_neq_vbsc1_then_la1 lda a cmp #-$80 bne b1 - //SEG72 signed_multiply_results_compare::@7 - //SEG73 [42] (byte*~) char_cursor#180 ← (byte*) line_cursor#1 [ char_cursor#180 line_cursor#1 ] ( main:2::signed_multiply_results_compare:15 [ char_cursor#180 line_cursor#1 ] ) -- pbuz1=pbuz2 + //SEG72 mul8s_slowfast_compare::@7 + //SEG73 [42] (byte*~) char_cursor#179 ← (byte*) line_cursor#1 [ char_cursor#179 line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15 [ char_cursor#179 line_cursor#1 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG74 [43] call print_str param-assignment [ line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15 [ line_cursor#1 char_cursor#122 ] ) - //SEG75 [51] phi from signed_multiply_results_compare::@7 to print_str [phi:signed_multiply_results_compare::@7->print_str] - //SEG76 [51] phi (byte*) char_cursor#141 = (byte*~) char_cursor#180 [phi:signed_multiply_results_compare::@7->print_str#0] -- register_copy - //SEG77 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_results_compare::str [phi:signed_multiply_results_compare::@7->print_str#1] -- pbuz1=pbuc1 + //SEG74 [43] call print_str param-assignment [ line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15 [ line_cursor#1 char_cursor#126 ] ) + //SEG75 [51] phi from mul8s_slowfast_compare::@7 to print_str [phi:mul8s_slowfast_compare::@7->print_str] + //SEG76 [51] phi (byte*) char_cursor#145 = (byte*~) char_cursor#179 [phi:mul8s_slowfast_compare::@7->print_str#0] -- register_copy + //SEG77 [51] phi (byte*) print_str::str#17 = (const string) mul8s_slowfast_compare::str [phi:mul8s_slowfast_compare::@7->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str - //SEG78 [44] phi from signed_multiply_results_compare::@7 to signed_multiply_results_compare::@11 [phi:signed_multiply_results_compare::@7->signed_multiply_results_compare::@11] - //SEG79 signed_multiply_results_compare::@11 - //SEG80 [45] call print_ln param-assignment [ ] ( main:2::signed_multiply_results_compare:15 [ ] ) - //SEG81 [46] phi from signed_multiply_results_compare::@11 to print_ln [phi:signed_multiply_results_compare::@11->print_ln] - //SEG82 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#122 [phi:signed_multiply_results_compare::@11->print_ln#0] -- register_copy - //SEG83 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#1 [phi:signed_multiply_results_compare::@11->print_ln#1] -- register_copy + //SEG78 [44] phi from mul8s_slowfast_compare::@7 to mul8s_slowfast_compare::@11 [phi:mul8s_slowfast_compare::@7->mul8s_slowfast_compare::@11] + //SEG79 mul8s_slowfast_compare::@11 + //SEG80 [45] call print_ln param-assignment [ ] ( main:2::mul8s_slowfast_compare:15 [ ] ) + //SEG81 [46] phi from mul8s_slowfast_compare::@11 to print_ln [phi:mul8s_slowfast_compare::@11->print_ln] + //SEG82 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#126 [phi:mul8s_slowfast_compare::@11->print_ln#0] -- register_copy + //SEG83 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#1 [phi:mul8s_slowfast_compare::@11->print_ln#1] -- register_copy jsr print_ln jmp breturn str: .text "signed multiply results match!@" @@ -10979,7 +12177,7 @@ print_ln: { //SEG86 [47] phi (byte*) line_cursor#23 = (byte*) line_cursor#45 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy //SEG87 print_ln::@1 b1: - //SEG88 [48] (byte*) line_cursor#1 ← (byte*) line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#123 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 char_cursor#123 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 char_cursor#123 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 char_cursor#123 ] ) -- pbuz1=pbuz1_plus_vbuc1 + //SEG88 [48] (byte*) line_cursor#1 ← (byte*) line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) 40 [ line_cursor#1 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 char_cursor#127 ] ) -- pbuz1=pbuz1_plus_vbuc1 lda line_cursor clc adc #$28 @@ -10987,7 +12185,7 @@ print_ln: { bcc !+ inc line_cursor+1 !: - //SEG89 [49] if((byte*) line_cursor#1<(byte*) char_cursor#123) goto print_ln::@1 [ line_cursor#1 char_cursor#123 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 char_cursor#123 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 char_cursor#123 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 char_cursor#123 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 char_cursor#123 ] ) -- pbuz1_lt_pbuz2_then_la1 + //SEG89 [49] if((byte*) line_cursor#1<(byte*) char_cursor#127) goto print_ln::@1 [ line_cursor#1 char_cursor#127 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 char_cursor#127 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 char_cursor#127 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 char_cursor#127 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 char_cursor#127 ] ) -- pbuz1_lt_pbuz2_then_la1 lda line_cursor+1 cmp char_cursor+1 bcc b1 @@ -10997,37 +12195,37 @@ print_ln: { bcc b1 !: //SEG90 print_ln::@return - //SEG91 [50] return [ line_cursor#1 ] ( main:2::signed_multiply_results_compare:15::print_ln:45 [ line_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 ] main:2::multiply_results_compare:13::print_ln:175 [ line_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_ln:193 [ line_cursor#1 ] main:2::multiply_tables_compare:11::print_ln:221 [ line_cursor#1 ] ) + //SEG91 [50] return [ line_cursor#1 ] ( main:2::mul8s_slowfast_compare:15::print_ln:45 [ line_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_ln:75 [ line_cursor#1 ] main:2::mul8u_slowfast_compare:13::print_ln:186 [ line_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_ln:209 [ line_cursor#1 ] main:2::mulf_tables_cmp:11::print_ln:247 [ line_cursor#1 ] ) rts } //SEG92 print_str print_str: { .label str = 6 //SEG93 [52] phi from print_str print_str::@2 to print_str::@1 [phi:print_str/print_str::@2->print_str::@1] - //SEG94 [52] phi (byte*) char_cursor#122 = (byte*) char_cursor#141 [phi:print_str/print_str::@2->print_str::@1#0] -- register_copy - //SEG95 [52] phi (byte*) print_str::str#14 = (byte*) print_str::str#16 [phi:print_str/print_str::@2->print_str::@1#1] -- register_copy + //SEG94 [52] phi (byte*) char_cursor#126 = (byte*) char_cursor#145 [phi:print_str/print_str::@2->print_str::@1#0] -- register_copy + //SEG95 [52] phi (byte*) print_str::str#15 = (byte*) print_str::str#17 [phi:print_str/print_str::@2->print_str::@1#1] -- register_copy //SEG96 print_str::@1 b1: - //SEG97 [53] if(*((byte*) print_str::str#14)!=(byte) '@') goto print_str::@2 [ char_cursor#122 print_str::str#14 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 print_str::str#14 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 + //SEG97 [53] if(*((byte*) print_str::str#15)!=(byte) '@') goto print_str::@2 [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) -- _deref_pbuz1_neq_vbuc1_then_la1 ldy #0 lda (str),y cmp #'@' bne b2 //SEG98 print_str::@return - //SEG99 [54] return [ char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 ] ) + //SEG99 [54] return [ char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 ] ) rts //SEG100 print_str::@2 b2: - //SEG101 [55] *((byte*) char_cursor#122) ← *((byte*) print_str::str#14) [ char_cursor#122 print_str::str#14 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 char_cursor#122 print_str::str#14 ] main:2::multiply_tables_compare:11::print_str:219 [ char_cursor#122 print_str::str#14 ] ) -- _deref_pbuz1=_deref_pbuz2 + //SEG101 [55] *((byte*) char_cursor#126) ← *((byte*) print_str::str#15) [ char_cursor#126 print_str::str#15 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 char_cursor#126 print_str::str#15 ] main:2::mulf_tables_cmp:11::print_str:245 [ char_cursor#126 print_str::str#15 ] ) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y sta (char_cursor),y - //SEG102 [56] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#122 [ print_str::str#14 char_cursor#1 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 print_str::str#14 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 print_str::str#14 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 print_str::str#14 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:219 [ print_str::str#14 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG102 [56] (byte*) char_cursor#1 ← ++ (byte*) char_cursor#126 [ print_str::str#15 char_cursor#1 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 print_str::str#15 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#15 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 print_str::str#15 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:245 [ print_str::str#15 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc char_cursor bne !+ inc char_cursor+1 !: - //SEG103 [57] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#14 [ print_str::str#0 char_cursor#1 ] ( main:2::signed_multiply_results_compare:15::print_str:43 [ line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::print_str:173 [ line_cursor#10 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:177 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:181 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:185 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_str:189 [ line_cursor#10 multiply_error::ma#0 print_str::str#0 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:206 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 print_str::str#0 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:210 [ multiply_tables_compare::kc_sqr#2 print_str::str#0 char_cursor#1 ] main:2::multiply_tables_compare:11::print_str:219 [ print_str::str#0 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG103 [57] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#15 [ print_str::str#0 char_cursor#1 ] ( main:2::mul8s_slowfast_compare:15::print_str:43 [ line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:59 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:63 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:67 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_str:71 [ signed_multiply_error::ma#0 line_cursor#1 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::print_str:184 [ line_cursor#10 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:189 [ line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:193 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:197 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:201 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_str:205 [ line_cursor#10 multiply_error::mf#0 print_str::str#0 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:232 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_str::str#0 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:236 [ mulf_tables_cmp::kc_sqr#2 print_str::str#0 char_cursor#1 ] main:2::mulf_tables_cmp:11::print_str:245 [ print_str::str#0 char_cursor#1 ] ) -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -11039,93 +12237,93 @@ signed_multiply_error: { .label b = 3 .label ms = 8 .label ma = $c - //SEG105 [58] (byte*~) char_cursor#176 ← (byte*) line_cursor#1 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#176 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#176 ] ) -- pbuz1=pbuz2 + //SEG105 [58] (byte*~) char_cursor#187 ← (byte*) line_cursor#1 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#187 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#187 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG106 [59] call print_str param-assignment [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + //SEG106 [59] call print_str param-assignment [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::a#0 signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) //SEG107 [51] phi from signed_multiply_error to print_str [phi:signed_multiply_error->print_str] - //SEG108 [51] phi (byte*) char_cursor#141 = (byte*~) char_cursor#176 [phi:signed_multiply_error->print_str#0] -- register_copy - //SEG109 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_error::str [phi:signed_multiply_error->print_str#1] -- pbuz1=pbuc1 + //SEG108 [51] phi (byte*) char_cursor#145 = (byte*~) char_cursor#187 [phi:signed_multiply_error->print_str#0] -- register_copy + //SEG109 [51] phi (byte*) print_str::str#17 = (const string) signed_multiply_error::str [phi:signed_multiply_error->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str //SEG110 signed_multiply_error::@1 - //SEG111 [60] (signed byte) print_sbyte::b#1 ← (signed byte) signed_multiply_error::a#0 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#1 ] ) + //SEG111 [60] (signed byte) print_sbyte::b#1 ← (signed byte) signed_multiply_error::a#0 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#1 ] ) // (signed byte) print_sbyte::b#1 = (signed byte) signed_multiply_error::a#0 // register copy reg byte x - //SEG112 [61] call print_sbyte param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG112 [61] call print_sbyte param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) //SEG113 [104] phi from signed_multiply_error::@1 to print_sbyte [phi:signed_multiply_error::@1->print_sbyte] //SEG114 [104] phi (signed byte) print_sbyte::b#3 = (signed byte) print_sbyte::b#1 [phi:signed_multiply_error::@1->print_sbyte#0] -- register_copy jsr print_sbyte //SEG115 [62] phi from signed_multiply_error::@1 to signed_multiply_error::@2 [phi:signed_multiply_error::@1->signed_multiply_error::@2] //SEG116 signed_multiply_error::@2 - //SEG117 [63] call print_str param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + //SEG117 [63] call print_str param-assignment [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) //SEG118 [51] phi from signed_multiply_error::@2 to print_str [phi:signed_multiply_error::@2->print_str] - //SEG119 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:signed_multiply_error::@2->print_str#0] -- register_copy - //SEG120 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_error::str1 [phi:signed_multiply_error::@2->print_str#1] -- pbuz1=pbuc1 + //SEG119 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:signed_multiply_error::@2->print_str#0] -- register_copy + //SEG120 [51] phi (byte*) print_str::str#17 = (const string) signed_multiply_error::str1 [phi:signed_multiply_error::@2->print_str#1] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str //SEG121 signed_multiply_error::@3 - //SEG122 [64] (signed byte) print_sbyte::b#2 ← (signed byte) signed_multiply_error::b#0 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#2 ] ) -- vbsxx=vbsz1 + //SEG122 [64] (signed byte) print_sbyte::b#2 ← (signed byte) signed_multiply_error::b#0 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#2 ] ) -- vbsxx=vbsz1 ldx b - //SEG123 [65] call print_sbyte param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG123 [65] call print_sbyte param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) //SEG124 [104] phi from signed_multiply_error::@3 to print_sbyte [phi:signed_multiply_error::@3->print_sbyte] //SEG125 [104] phi (signed byte) print_sbyte::b#3 = (signed byte) print_sbyte::b#2 [phi:signed_multiply_error::@3->print_sbyte#0] -- register_copy jsr print_sbyte //SEG126 [66] phi from signed_multiply_error::@3 to signed_multiply_error::@4 [phi:signed_multiply_error::@3->signed_multiply_error::@4] //SEG127 signed_multiply_error::@4 - //SEG128 [67] call print_str param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + //SEG128 [67] call print_str param-assignment [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) //SEG129 [51] phi from signed_multiply_error::@4 to print_str [phi:signed_multiply_error::@4->print_str] - //SEG130 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:signed_multiply_error::@4->print_str#0] -- register_copy - //SEG131 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_error::str2 [phi:signed_multiply_error::@4->print_str#1] -- pbuz1=pbuc1 + //SEG130 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:signed_multiply_error::@4->print_str#0] -- register_copy + //SEG131 [51] phi (byte*) print_str::str#17 = (const string) signed_multiply_error::str2 [phi:signed_multiply_error::@4->print_str#1] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str //SEG132 signed_multiply_error::@5 - //SEG133 [68] (signed word) print_sword::w#1 ← (signed word) signed_multiply_error::ms#0 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#1 ] ) + //SEG133 [68] (signed word) print_sword::w#1 ← (signed word) signed_multiply_error::ms#0 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#1 ] ) // (signed word) print_sword::w#1 = (signed word) signed_multiply_error::ms#0 // register copy zp ZP_WORD:8 - //SEG134 [69] call print_sword param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG134 [69] call print_sword param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) //SEG135 [77] phi from signed_multiply_error::@5 to print_sword [phi:signed_multiply_error::@5->print_sword] //SEG136 [77] phi (signed word) print_sword::w#3 = (signed word) print_sword::w#1 [phi:signed_multiply_error::@5->print_sword#0] -- register_copy jsr print_sword //SEG137 [70] phi from signed_multiply_error::@5 to signed_multiply_error::@6 [phi:signed_multiply_error::@5->signed_multiply_error::@6] //SEG138 signed_multiply_error::@6 - //SEG139 [71] call print_str param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 ] ) + //SEG139 [71] call print_str param-assignment [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 ] ) //SEG140 [51] phi from signed_multiply_error::@6 to print_str [phi:signed_multiply_error::@6->print_str] - //SEG141 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:signed_multiply_error::@6->print_str#0] -- register_copy - //SEG142 [51] phi (byte*) print_str::str#16 = (const string) signed_multiply_error::str3 [phi:signed_multiply_error::@6->print_str#1] -- pbuz1=pbuc1 + //SEG141 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:signed_multiply_error::@6->print_str#0] -- register_copy + //SEG142 [51] phi (byte*) print_str::str#17 = (const string) signed_multiply_error::str3 [phi:signed_multiply_error::@6->print_str#1] -- pbuz1=pbuc1 lda #str3 sta print_str.str+1 jsr print_str //SEG143 signed_multiply_error::@7 - //SEG144 [72] (signed word) print_sword::w#2 ← (signed word) signed_multiply_error::ma#0 [ line_cursor#1 char_cursor#122 print_sword::w#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#122 print_sword::w#2 ] ) -- vwsz1=vwsz2 + //SEG144 [72] (signed word) print_sword::w#2 ← (signed word) signed_multiply_error::ma#0 [ line_cursor#1 char_cursor#126 print_sword::w#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#126 print_sword::w#2 ] ) -- vwsz1=vwsz2 lda ma sta print_sword.w lda ma+1 sta print_sword.w+1 - //SEG145 [73] call print_sword param-assignment [ line_cursor#1 char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#17 ] ) + //SEG145 [73] call print_sword param-assignment [ line_cursor#1 char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ line_cursor#1 char_cursor#17 ] ) //SEG146 [77] phi from signed_multiply_error::@7 to print_sword [phi:signed_multiply_error::@7->print_sword] //SEG147 [77] phi (signed word) print_sword::w#3 = (signed word) print_sword::w#2 [phi:signed_multiply_error::@7->print_sword#0] -- register_copy jsr print_sword //SEG148 [74] phi from signed_multiply_error::@7 to signed_multiply_error::@8 [phi:signed_multiply_error::@7->signed_multiply_error::@8] //SEG149 signed_multiply_error::@8 - //SEG150 [75] call print_ln param-assignment [ ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ ] ) + //SEG150 [75] call print_ln param-assignment [ ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ ] ) //SEG151 [46] phi from signed_multiply_error::@8 to print_ln [phi:signed_multiply_error::@8->print_ln] - //SEG152 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#17 [phi:signed_multiply_error::@8->print_ln#0] -- register_copy + //SEG152 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#17 [phi:signed_multiply_error::@8->print_ln#0] -- register_copy //SEG153 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#1 [phi:signed_multiply_error::@8->print_ln#1] -- register_copy jsr print_ln //SEG154 signed_multiply_error::@return - //SEG155 [76] return [ ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36 [ ] ) + //SEG155 [76] return [ ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36 [ ] ) rts str: .text "signed multiply mismatch @" str1: .text "*@" @@ -11135,19 +12333,19 @@ signed_multiply_error: { //SEG156 print_sword print_sword: { .label w = 8 - //SEG157 [78] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#122 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#122 print_sword::w#3 ] ) -- vwsz1_ge_0_then_la1 + //SEG157 [78] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ char_cursor#126 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#126 print_sword::w#3 ] ) -- vwsz1_ge_0_then_la1 lda w+1 bpl b1 //SEG158 [79] phi from print_sword to print_sword::@2 [phi:print_sword->print_sword::@2] //SEG159 print_sword::@2 - //SEG160 [80] call print_char param-assignment [ char_cursor#17 print_sword::w#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#3 ] ) + //SEG160 [80] call print_char param-assignment [ char_cursor#17 print_sword::w#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#3 ] ) //SEG161 [100] phi from print_sword::@2 to print_char [phi:print_sword::@2->print_char] - //SEG162 [100] phi (byte*) char_cursor#78 = (byte*) char_cursor#122 [phi:print_sword::@2->print_char#0] -- register_copy + //SEG162 [100] phi (byte*) char_cursor#80 = (byte*) char_cursor#126 [phi:print_sword::@2->print_char#0] -- register_copy //SEG163 [100] phi (byte) print_char::ch#4 = (byte) '-' [phi:print_sword::@2->print_char#1] -- vbuaa=vbuc1 lda #'-' jsr print_char //SEG164 print_sword::@4 - //SEG165 [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) -- vwsz1=_neg_vwsz1 + //SEG165 [81] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ char_cursor#17 print_sword::w#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sword::w#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 print_sword::w#0 ] ) -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -11158,126 +12356,126 @@ print_sword: { adc #0 sta w+1 //SEG166 [82] phi from print_sword print_sword::@4 to print_sword::@1 [phi:print_sword/print_sword::@4->print_sword::@1] - //SEG167 [82] phi (byte*) char_cursor#124 = (byte*) char_cursor#122 [phi:print_sword/print_sword::@4->print_sword::@1#0] -- register_copy + //SEG167 [82] phi (byte*) char_cursor#128 = (byte*) char_cursor#126 [phi:print_sword/print_sword::@4->print_sword::@1#0] -- register_copy //SEG168 [82] phi (signed word) print_sword::w#4 = (signed word) print_sword::w#3 [phi:print_sword/print_sword::@4->print_sword::@1#1] -- register_copy //SEG169 print_sword::@1 b1: - //SEG170 [83] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 [ char_cursor#124 print_word::w#11 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#124 print_word::w#11 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#124 print_word::w#11 ] ) - // (word~) print_word::w#11 = (word)(signed word) print_sword::w#4 // register copy zp ZP_WORD:8 - //SEG171 [84] call print_word param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) + //SEG170 [83] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#4 [ char_cursor#128 print_word::w#13 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#128 print_word::w#13 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#128 print_word::w#13 ] ) + // (word~) print_word::w#13 = (word)(signed word) print_sword::w#4 // register copy zp ZP_WORD:8 + //SEG171 [84] call print_word param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) //SEG172 [86] phi from print_sword::@1 to print_word [phi:print_sword::@1->print_word] - //SEG173 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#124 [phi:print_sword::@1->print_word#0] -- register_copy - //SEG174 [86] phi (word) print_word::w#5 = (word~) print_word::w#11 [phi:print_sword::@1->print_word#1] -- register_copy + //SEG173 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#128 [phi:print_sword::@1->print_word#0] -- register_copy + //SEG174 [86] phi (word) print_word::w#6 = (word~) print_word::w#13 [phi:print_sword::@1->print_word#1] -- register_copy jsr print_word //SEG175 print_sword::@return - //SEG176 [85] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) + //SEG176 [85] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73 [ line_cursor#1 char_cursor#17 ] ) rts } //SEG177 print_word print_word: { .label w = 8 - //SEG178 [87] (byte) print_byte::b#1 ← > (word) print_word::w#5 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#128 print_byte::b#1 ] main:2::multiply_tables_compare:11::print_word:212 [ print_word::w#5 char_cursor#128 print_byte::b#1 ] ) -- vbuxx=_hi_vwuz1 + //SEG178 [87] (byte) print_byte::b#1 ← > (word) print_word::w#6 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#132 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:238 [ print_word::w#6 char_cursor#132 print_byte::b#1 ] ) -- vbuxx=_hi_vwuz1 lda w+1 tax - //SEG179 [88] call print_byte param-assignment [ char_cursor#17 print_word::w#5 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_word::w#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_word::w#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_word::w#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 print_word::w#5 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_word::w#5 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 print_word::w#5 ] ) + //SEG179 [88] call print_byte param-assignment [ char_cursor#17 print_word::w#6 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_word::w#6 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_word::w#6 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 print_word::w#6 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_word::w#6 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 print_word::w#6 ] ) //SEG180 [92] phi from print_word to print_byte [phi:print_word->print_byte] - //SEG181 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#128 [phi:print_word->print_byte#0] -- register_copy + //SEG181 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#132 [phi:print_word->print_byte#0] -- register_copy //SEG182 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#1 [phi:print_word->print_byte#1] -- register_copy jsr print_byte //SEG183 print_word::@1 - //SEG184 [89] (byte) print_byte::b#2 ← < (word) print_word::w#5 [ char_cursor#17 print_byte::b#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::b#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 print_byte::b#2 ] ) -- vbuxx=_lo_vwuz1 + //SEG184 [89] (byte) print_byte::b#2 ← < (word) print_word::w#6 [ char_cursor#17 print_byte::b#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::b#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 print_byte::b#2 ] ) -- vbuxx=_lo_vwuz1 lda w tax - //SEG185 [90] call print_byte param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 ] ) + //SEG185 [90] call print_byte param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 ] ) //SEG186 [92] phi from print_word::@1 to print_byte [phi:print_word::@1->print_byte] - //SEG187 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#17 [phi:print_word::@1->print_byte#0] -- register_copy + //SEG187 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#17 [phi:print_word::@1->print_byte#0] -- register_copy //SEG188 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#2 [phi:print_word::@1->print_byte#1] -- register_copy jsr print_byte //SEG189 print_word::@return - //SEG190 [91] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212 [ char_cursor#17 ] ) + //SEG190 [91] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238 [ char_cursor#17 ] ) rts } //SEG191 print_byte print_byte: { - //SEG192 [93] (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#129 print_byte::$0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_byte::$0 ] ) -- vbuaa=vbuxx_ror_4 + //SEG192 [93] (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#133 print_byte::$0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_byte::$0 ] ) -- vbuaa=vbuxx_ror_4 txa lsr lsr lsr lsr - //SEG193 [94] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#129 print_char::ch#2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#129 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG193 [94] (byte) print_char::ch#2 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$0) [ print_byte::b#5 char_cursor#133 print_char::ch#2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#133 print_char::ch#2 ] ) -- vbuaa=pbuc1_derefidx_vbuaa tay lda hextab,y - //SEG194 [95] call print_char param-assignment [ char_cursor#17 print_byte::b#5 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::b#5 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::b#5 ] ) + //SEG194 [95] call print_char param-assignment [ char_cursor#17 print_byte::b#5 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::b#5 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::b#5 ] ) //SEG195 [100] phi from print_byte to print_char [phi:print_byte->print_char] - //SEG196 [100] phi (byte*) char_cursor#78 = (byte*) char_cursor#129 [phi:print_byte->print_char#0] -- register_copy + //SEG196 [100] phi (byte*) char_cursor#80 = (byte*) char_cursor#133 [phi:print_byte->print_char#0] -- register_copy //SEG197 [100] phi (byte) print_char::ch#4 = (byte) print_char::ch#2 [phi:print_byte->print_char#1] -- register_copy jsr print_char //SEG198 print_byte::@1 - //SEG199 [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_byte::$2 ] ) -- vbuaa=vbuxx_band_vbuc1 + //SEG199 [96] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) 15 [ char_cursor#17 print_byte::$2 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_byte::$2 ] ) -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG200 [97] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#17 print_char::ch#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 print_char::ch#3 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 print_char::ch#3 ] ) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG200 [97] (byte) print_char::ch#3 ← *((const string) print_byte::hextab#0 + (byte~) print_byte::$2) [ char_cursor#17 print_char::ch#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 print_char::ch#3 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 print_char::ch#3 ] ) -- vbuaa=pbuc1_derefidx_vbuaa tay lda hextab,y - //SEG201 [98] call print_char param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] ) + //SEG201 [98] call print_char param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] ) //SEG202 [100] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] - //SEG203 [100] phi (byte*) char_cursor#78 = (byte*) char_cursor#17 [phi:print_byte::@1->print_char#0] -- register_copy + //SEG203 [100] phi (byte*) char_cursor#80 = (byte*) char_cursor#17 [phi:print_byte::@1->print_char#0] -- register_copy //SEG204 [100] phi (byte) print_char::ch#4 = (byte) print_char::ch#3 [phi:print_byte::@1->print_char#1] -- register_copy jsr print_char //SEG205 print_byte::@return - //SEG206 [99] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] ) + //SEG206 [99] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] ) rts hextab: .text "0123456789abcdef" } //SEG207 print_char print_char: { - //SEG208 [101] *((byte*) char_cursor#78) ← (byte) print_char::ch#4 [ char_cursor#78 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#78 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#78 ] ) -- _deref_pbuz1=vbuaa + //SEG208 [101] *((byte*) char_cursor#80) ← (byte) print_char::ch#4 [ char_cursor#80 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#80 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#80 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (char_cursor),y - //SEG209 [102] (byte*) char_cursor#17 ← ++ (byte*) char_cursor#78 [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) -- pbuz1=_inc_pbuz1 + //SEG209 [102] (byte*) char_cursor#17 ← ++ (byte*) char_cursor#80 [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) -- pbuz1=_inc_pbuz1 inc char_cursor bne !+ inc char_cursor+1 !: //SEG210 print_char::@return - //SEG211 [103] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:95 [ print_word::w#5 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:95 [ multiply_tables_compare::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 print_byte::b#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::ma#0 print_word::w#5 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:88::print_char:98 [ multiply_tables_compare::kc_sqr#2 print_word::w#5 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:88::print_char:98 [ print_word::w#5 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:187::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_word:191::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:208::print_byte:90::print_char:98 [ multiply_tables_compare::kc_sqr#2 char_cursor#17 ] main:2::multiply_tables_compare:11::print_word:212::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:179::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::multiply_results_compare:13::multiply_error:166::print_byte:183::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) + //SEG211 [103] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_char:80 [ signed_multiply_error::ma#0 line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_char:80 [ line_cursor#1 print_sword::w#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:95 [ line_cursor#1 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:95 [ line_cursor#10 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:95 [ print_word::w#6 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:95 [ signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:95 [ line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:95 [ line_cursor#10 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:95 [ line_cursor#10 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:95 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:95 [ print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:95 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:95 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:95 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:95 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 print_byte::b#5 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:88::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:88::print_char:98 [ line_cursor#1 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:88::print_char:98 [ line_cursor#10 multiply_error::mf#0 print_word::w#6 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:88::print_char:98 [ line_cursor#10 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:88::print_char:98 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:88::print_char:98 [ print_word::w#6 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:69::print_word:84::print_byte:90::print_char:98 [ signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sword:73::print_word:84::print_byte:90::print_char:98 [ line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:199::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:203::print_byte:90::print_char:98 [ line_cursor#10 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_word:207::print_byte:90::print_char:98 [ line_cursor#10 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:234::print_byte:90::print_char:98 [ mulf_tables_cmp::kc_sqr#2 char_cursor#17 ] main:2::mulf_tables_cmp:11::print_word:238::print_byte:90::print_char:98 [ char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_byte:111::print_char:98 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_byte:111::print_char:98 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:191::print_char:98 [ line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8u_slowfast_compare:13::multiply_error:177::print_byte:195::print_char:98 [ line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61::print_char:107 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65::print_char:107 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_sbyte::b#3 char_cursor#17 ] ) rts } //SEG212 print_sbyte print_sbyte: { - //SEG213 [105] if((signed byte) print_sbyte::b#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#122 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#122 print_sbyte::b#3 ] ) -- vbsxx_ge_0_then_la1 + //SEG213 [105] if((signed byte) print_sbyte::b#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 [ char_cursor#126 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#126 print_sbyte::b#3 ] ) -- vbsxx_ge_0_then_la1 cpx #0 bpl b1 //SEG214 [106] phi from print_sbyte to print_sbyte::@2 [phi:print_sbyte->print_sbyte::@2] //SEG215 print_sbyte::@2 - //SEG216 [107] call print_char param-assignment [ char_cursor#17 print_sbyte::b#3 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] ) + //SEG216 [107] call print_char param-assignment [ char_cursor#17 print_sbyte::b#3 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#3 ] ) //SEG217 [100] phi from print_sbyte::@2 to print_char [phi:print_sbyte::@2->print_char] - //SEG218 [100] phi (byte*) char_cursor#78 = (byte*) char_cursor#122 [phi:print_sbyte::@2->print_char#0] -- register_copy + //SEG218 [100] phi (byte*) char_cursor#80 = (byte*) char_cursor#126 [phi:print_sbyte::@2->print_char#0] -- register_copy //SEG219 [100] phi (byte) print_char::ch#4 = (byte) '-' [phi:print_sbyte::@2->print_char#1] -- vbuaa=vbuc1 lda #'-' jsr print_char //SEG220 print_sbyte::@4 - //SEG221 [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) -- vbsxx=_neg_vbsxx + //SEG221 [108] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ char_cursor#17 print_sbyte::b#0 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 print_sbyte::b#0 ] ) -- vbsxx=_neg_vbsxx txa eor #$ff clc adc #1 tax //SEG222 [109] phi from print_sbyte print_sbyte::@4 to print_sbyte::@1 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1] - //SEG223 [109] phi (byte*) char_cursor#126 = (byte*) char_cursor#122 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#0] -- register_copy + //SEG223 [109] phi (byte*) char_cursor#130 = (byte*) char_cursor#126 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#0] -- register_copy //SEG224 [109] phi (signed byte) print_sbyte::b#4 = (signed byte) print_sbyte::b#3 [phi:print_sbyte/print_sbyte::@4->print_sbyte::@1#1] -- register_copy //SEG225 print_sbyte::@1 b1: - //SEG226 [110] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#4 [ print_byte::b#9 char_cursor#126 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#126 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#126 ] ) + //SEG226 [110] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#4 [ print_byte::b#9 char_cursor#130 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#130 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 print_byte::b#9 char_cursor#130 ] ) // (byte~) print_byte::b#9 = (byte)(signed byte) print_sbyte::b#4 // register copy reg byte x - //SEG227 [111] call print_byte param-assignment [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG227 [111] call print_byte param-assignment [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) //SEG228 [92] phi from print_sbyte::@1 to print_byte [phi:print_sbyte::@1->print_byte] - //SEG229 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#126 [phi:print_sbyte::@1->print_byte#0] -- register_copy + //SEG229 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#130 [phi:print_sbyte::@1->print_byte#0] -- register_copy //SEG230 [92] phi (byte) print_byte::b#5 = (byte~) print_byte::b#9 [phi:print_sbyte::@1->print_byte#1] -- register_copy jsr print_byte //SEG231 print_sbyte::@return - //SEG232 [112] return [ char_cursor#17 ] ( main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::signed_multiply_results_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) + //SEG232 [112] return [ char_cursor#17 ] ( main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:61 [ signed_multiply_error::b#0 signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] main:2::mul8s_slowfast_compare:15::signed_multiply_error:36::print_sbyte:65 [ signed_multiply_error::ms#0 signed_multiply_error::ma#0 line_cursor#1 char_cursor#17 ] ) rts } //SEG233 mulf8s @@ -11285,54 +12483,54 @@ mulf8s: { .label m = $c .label b = 3 .label return = $c - //SEG234 [113] (byte~) mulf8u::a#3 ← (byte)(signed byte) mulf8s::a#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 ] ) -- vbuaa=vbuyy + //SEG234 [113] (byte~) mulf8u::a#4 ← (byte)(signed byte) mulf8s::a#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 ] ) -- vbuaa=vbuyy tya - //SEG235 [114] (byte~) mulf8u::b#3 ← (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 mulf8u::b#3 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#3 mulf8u::b#3 ] ) -- vbuxx=vbuz1 + //SEG235 [114] (byte~) mulf8u::b#4 ← (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 mulf8u::b#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::a#4 mulf8u::b#4 ] ) -- vbuxx=vbuz1 ldx b - //SEG236 [115] call mulf8u param-assignment [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ) + //SEG236 [115] call mulf8u param-assignment [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] ) //SEG237 [129] phi from mulf8s to mulf8u [phi:mulf8s->mulf8u] - //SEG238 [129] phi (byte) mulf8u::b#2 = (byte~) mulf8u::b#3 [phi:mulf8s->mulf8u#0] -- register_copy - //SEG239 [129] phi (byte) mulf8u::a#2 = (byte~) mulf8u::a#3 [phi:mulf8s->mulf8u#1] -- register_copy + //SEG238 [129] phi (byte) mulf8u::b#2 = (byte~) mulf8u::b#4 [phi:mulf8s->mulf8u#0] -- register_copy + //SEG239 [129] phi (byte) mulf8u::a#2 = (byte~) mulf8u::a#4 [phi:mulf8s->mulf8u#1] -- register_copy jsr mulf8u - //SEG240 [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) + //SEG240 [116] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#2 ] ) // (word) mulf8u::return#2 = (word) mulf8u::return#0 // register copy zp ZP_WORD:12 //SEG241 mulf8s::@6 - //SEG242 [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) + //SEG242 [117] (word) mulf8s::m#0 ← (word) mulf8u::return#2 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) // (word) mulf8s::m#0 = (word) mulf8u::return#2 // register copy zp ZP_WORD:12 - //SEG243 [118] if((signed byte) mulf8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@1 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) -- vbsyy_ge_0_then_la1 + //SEG243 [118] if((signed byte) mulf8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@1 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 ] ) -- vbsyy_ge_0_then_la1 cpy #0 bpl b1 //SEG244 mulf8s::@3 - //SEG245 [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) -- vbuaa=_hi_vwuz1 + //SEG245 [119] (byte~) mulf8s::$6 ← > (word) mulf8s::m#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$6 ] ) -- vbuaa=_hi_vwuz1 lda m+1 - //SEG246 [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) -- vbuaa=vbuaa_minus_vbuz1 + //SEG246 [120] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 ← (byte~) mulf8s::$6 - (byte)(signed byte) mulf8s::b#0 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#0 mulf8s::$16 ] ) -- vbuaa=vbuaa_minus_vbuz1 sec sbc b - //SEG247 [121] (word) mulf8s::m#1 ← (word) mulf8s::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ) -- vwuz1=vwuz1_sethi_vbuaa + //SEG247 [121] (word) mulf8s::m#1 ← (word) mulf8s::m#0 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$16 [ mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8s::m#1 ] ) -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG248 [122] phi from mulf8s::@3 mulf8s::@6 to mulf8s::@1 [phi:mulf8s::@3/mulf8s::@6->mulf8s::@1] //SEG249 [122] phi (word) mulf8s::m#5 = (word) mulf8s::m#1 [phi:mulf8s::@3/mulf8s::@6->mulf8s::@1#0] -- register_copy //SEG250 mulf8s::@1 b1: - //SEG251 [123] if((signed byte) mulf8s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@2 [ mulf8s::a#0 mulf8s::m#5 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 ] ) -- vbsz1_ge_0_then_la1 + //SEG251 [123] if((signed byte) mulf8s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s::@2 [ mulf8s::a#0 mulf8s::m#5 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 ] ) -- vbsz1_ge_0_then_la1 lda b cmp #0 bpl b2 //SEG252 mulf8s::@4 - //SEG253 [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) -- vbuaa=_hi_vwuz1 + //SEG253 [124] (byte~) mulf8s::$12 ← > (word) mulf8s::m#5 [ mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::m#5 mulf8s::$12 ] ) -- vbuaa=_hi_vwuz1 lda m+1 - //SEG254 [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) -- vbuaa=vbuaa_minus_vbuyy + //SEG254 [125] (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 ← (byte~) mulf8s::$12 - (byte)(signed byte) mulf8s::a#0 [ mulf8s::m#5 mulf8s::$17 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#5 mulf8s::$17 ] ) -- vbuaa=vbuaa_minus_vbuyy sty $ff sec sbc $ff - //SEG255 [126] (word) mulf8s::m#2 ← (word) mulf8s::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 [ mulf8s::m#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#2 ] ) -- vwuz1=vwuz1_sethi_vbuaa + //SEG255 [126] (word) mulf8s::m#2 ← (word) mulf8s::m#5 hi= (byte/signed byte/word/signed word/dword/signed dword~) mulf8s::$17 [ mulf8s::m#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#2 ] ) -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG256 [127] phi from mulf8s::@1 mulf8s::@4 to mulf8s::@2 [phi:mulf8s::@1/mulf8s::@4->mulf8s::@2] //SEG257 [127] phi (word) mulf8s::m#4 = (word) mulf8s::m#5 [phi:mulf8s::@1/mulf8s::@4->mulf8s::@2#0] -- register_copy //SEG258 mulf8s::@2 b2: //SEG259 mulf8s::@return - //SEG260 [128] return [ mulf8s::m#4 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) + //SEG260 [128] return [ mulf8s::m#4 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::m#4 ] ) rts } //SEG261 mulf8u @@ -11340,9 +12538,9 @@ mulf8u: { .label memA = $fe .label memB = $ff .label return = $c - //SEG262 [130] *((const byte*) mulf8u::memA#0) ← (byte) mulf8u::a#2 [ mulf8u::b#2 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::b#2 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::b#2 ] ) -- _deref_pbuc1=vbuaa + //SEG262 [130] *((const byte*) mulf8u::memA#0) ← (byte) mulf8u::a#2 [ mulf8u::b#2 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::b#2 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::b#2 ] ) -- _deref_pbuc1=vbuaa sta memA - //SEG263 [131] *((const byte*) mulf8u::memB#0) ← (byte) mulf8u::b#2 [ ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) -- _deref_pbuc1=vbuxx + //SEG263 [131] *((const byte*) mulf8u::memB#0) ← (byte) mulf8u::b#2 [ ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) -- _deref_pbuc1=vbuxx stx memB //SEG264 asm { ldamemA stasm1+1 stasm3+1 eor#$ff stasm2+1 stasm4+1 ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x stamemA sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } sta sm1+1 @@ -11361,13 +12559,13 @@ mulf8u: { sm4: sbc mulf_sqr2_hi,x sta memB - //SEG265 [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#0 ] ) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG265 [133] (word) mulf8u::return#0 ← *((const byte*) mulf8u::memB#0) w= *((const byte*) mulf8u::memA#0) [ mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#0 ] ) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda memA sta return lda memB sta return+1 //SEG266 mulf8u::@return - //SEG267 [134] return [ mulf8u::return#0 ] ( main:2::signed_multiply_results_compare:15::mulf8s:27::mulf8u:115 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 signed_multiply_results_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::multiply_results_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#0 ] ) + //SEG267 [134] return [ mulf8u::return#0 ] ( main:2::mul8s_slowfast_compare:15::mulf8s:27::mulf8u:115 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 mul8s_slowfast_compare::ms#0 line_cursor#1 mulf8s::a#0 mulf8s::b#0 mulf8u::return#0 ] main:2::mul8u_slowfast_compare:13::mulf8u:157 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#0 ] ) rts } //SEG268 muls8s @@ -11375,7 +12573,7 @@ muls8s: { .label m = 8 .label return = 8 .label a = 2 - //SEG269 [135] if((signed byte) muls8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@1 [ muls8s::a#0 muls8s::b#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) -- vbsz1_ge_0_then_la1 + //SEG269 [135] if((signed byte) muls8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@1 [ muls8s::a#0 muls8s::b#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) -- vbsz1_ge_0_then_la1 lda a cmp #0 bpl b1 @@ -11391,7 +12589,7 @@ muls8s: { //SEG275 [136] phi (signed word) muls8s::m#3 = (signed word) muls8s::m#1 [phi:muls8s::@2->muls8s::@2#1] -- register_copy //SEG276 muls8s::@2 b2: - //SEG277 [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) -- vwsz1=vwsz1_minus_vbsxx + //SEG277 [137] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::i#2 muls8s::m#1 ] ) -- vwsz1=vwsz1_minus_vbsxx txa sta $fe ora #$7f @@ -11406,9 +12604,9 @@ muls8s: { lda m+1 sbc $ff sta m+1 - //SEG278 [138] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) -- vbsyy=_dec_vbsyy + //SEG278 [138] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) -- vbsyy=_dec_vbsyy dey - //SEG279 [139] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) -- vbsyy_neq_vbsz1_then_la1 + //SEG279 [139] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@2 [ muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#1 muls8s::i#1 ] ) -- vbsyy_neq_vbsz1_then_la1 cpy a bne b2 //SEG280 [140] phi from muls8s::@2 muls8s::@5 to muls8s::@3 [phi:muls8s::@2/muls8s::@5->muls8s::@3] @@ -11423,11 +12621,11 @@ muls8s: { //SEG284 muls8s::@3 b3: //SEG285 muls8s::@return - //SEG286 [141] return [ muls8s::return#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::return#0 ] ) + //SEG286 [141] return [ muls8s::return#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::return#0 ] ) rts //SEG287 muls8s::@1 b1: - //SEG288 [142] if((signed byte) muls8s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@3 [ muls8s::a#0 muls8s::b#0 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) -- vbsz1_le_0_then_la1 + //SEG288 [142] if((signed byte) muls8s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@3 [ muls8s::a#0 muls8s::b#0 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 ] ) -- vbsz1_le_0_then_la1 lda a cmp #1 bmi b6 @@ -11443,7 +12641,7 @@ muls8s: { //SEG294 [143] phi (signed word) muls8s::m#5 = (signed word) muls8s::m#2 [phi:muls8s::@5->muls8s::@5#1] -- register_copy //SEG295 muls8s::@5 b5: - //SEG296 [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) -- vwsz1=vwsz1_plus_vbsxx + //SEG296 [144] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#2 ] ) -- vwsz1=vwsz1_plus_vbsxx txa sta $fe ora #$7f @@ -11458,239 +12656,366 @@ muls8s: { lda m+1 adc $ff sta m+1 - //SEG297 [145] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) -- vbsyy=_inc_vbsyy + //SEG297 [145] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) -- vbsyy=_inc_vbsyy iny - //SEG298 [146] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@5 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::signed_multiply_results_compare:15::muls8s:22 [ signed_multiply_results_compare::a#6 signed_multiply_results_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) -- vbsyy_neq_vbsz1_then_la1 + //SEG298 [146] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@5 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ( main:2::mul8s_slowfast_compare:15::muls8s:22 [ mul8s_slowfast_compare::a#6 mul8s_slowfast_compare::b#2 line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::j#1 ] ) -- vbsyy_neq_vbsz1_then_la1 cpy a bne b5 jmp b3 } -//SEG299 multiply_results_compare -multiply_results_compare: { +//SEG299 mul8u_slowfast_compare +mul8u_slowfast_compare: { .label ms = 8 - .label ma = $c + .label mf = $c + .label mn = $e .label b = 3 .label a = 2 - //SEG300 [148] phi from multiply_results_compare to multiply_results_compare::@1 [phi:multiply_results_compare->multiply_results_compare::@1] - //SEG301 [148] phi (byte) multiply_results_compare::a#6 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:multiply_results_compare->multiply_results_compare::@1#0] -- vbuz1=vbuc1 + //SEG300 [148] phi from mul8u_slowfast_compare to mul8u_slowfast_compare::@1 [phi:mul8u_slowfast_compare->mul8u_slowfast_compare::@1] + //SEG301 [148] phi (byte) mul8u_slowfast_compare::a#7 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u_slowfast_compare->mul8u_slowfast_compare::@1#0] -- vbuz1=vbuc1 lda #0 sta a - //SEG302 [148] phi from multiply_results_compare::@6 to multiply_results_compare::@1 [phi:multiply_results_compare::@6->multiply_results_compare::@1] - //SEG303 [148] phi (byte) multiply_results_compare::a#6 = (byte) multiply_results_compare::a#1 [phi:multiply_results_compare::@6->multiply_results_compare::@1#0] -- register_copy - //SEG304 multiply_results_compare::@1 + //SEG302 [148] phi from mul8u_slowfast_compare::@10 to mul8u_slowfast_compare::@1 [phi:mul8u_slowfast_compare::@10->mul8u_slowfast_compare::@1] + //SEG303 [148] phi (byte) mul8u_slowfast_compare::a#7 = (byte) mul8u_slowfast_compare::a#1 [phi:mul8u_slowfast_compare::@10->mul8u_slowfast_compare::@1#0] -- register_copy + //SEG304 mul8u_slowfast_compare::@1 b1: - //SEG305 [149] phi from multiply_results_compare::@1 to multiply_results_compare::@2 [phi:multiply_results_compare::@1->multiply_results_compare::@2] - //SEG306 [149] phi (byte) multiply_results_compare::b#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:multiply_results_compare::@1->multiply_results_compare::@2#0] -- vbuz1=vbuc1 + //SEG305 [149] phi from mul8u_slowfast_compare::@1 to mul8u_slowfast_compare::@2 [phi:mul8u_slowfast_compare::@1->mul8u_slowfast_compare::@2] + //SEG306 [149] phi (byte) mul8u_slowfast_compare::b#10 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u_slowfast_compare::@1->mul8u_slowfast_compare::@2#0] -- vbuz1=vbuc1 lda #0 sta b - //SEG307 [149] phi from multiply_results_compare::@3 to multiply_results_compare::@2 [phi:multiply_results_compare::@3->multiply_results_compare::@2] - //SEG308 [149] phi (byte) multiply_results_compare::b#2 = (byte) multiply_results_compare::b#1 [phi:multiply_results_compare::@3->multiply_results_compare::@2#0] -- register_copy - //SEG309 multiply_results_compare::@2 + //SEG307 [149] phi from mul8u_slowfast_compare::@5 to mul8u_slowfast_compare::@2 [phi:mul8u_slowfast_compare::@5->mul8u_slowfast_compare::@2] + //SEG308 [149] phi (byte) mul8u_slowfast_compare::b#10 = (byte) mul8u_slowfast_compare::b#1 [phi:mul8u_slowfast_compare::@5->mul8u_slowfast_compare::@2#0] -- register_copy + //SEG309 mul8u_slowfast_compare::@2 b2: - //SEG310 [150] (byte) muls8u::a#0 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 ] ) - // (byte) muls8u::a#0 = (byte) multiply_results_compare::a#6 // register copy zp ZP_BYTE:2 - //SEG311 [151] (byte) muls8u::b#0 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ) -- vbuxx=vbuz1 + //SEG310 [150] (byte) muls8u::a#0 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 ] ) + // (byte) muls8u::a#0 = (byte) mul8u_slowfast_compare::a#7 // register copy zp ZP_BYTE:2 + //SEG311 [151] (byte) muls8u::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ) -- vbuxx=vbuz1 ldx b - //SEG312 [152] call muls8u param-assignment [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ) + //SEG312 [152] call muls8u param-assignment [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ) jsr muls8u - //SEG313 [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#2 ] ) + //SEG313 [153] (word) muls8u::return#2 ← (word) muls8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#2 ] ) // (word) muls8u::return#2 = (word) muls8u::return#0 // register copy zp ZP_WORD:8 - //SEG314 multiply_results_compare::@8 - //SEG315 [154] (word) multiply_results_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - // (word) multiply_results_compare::ms#0 = (word) muls8u::return#2 // register copy zp ZP_WORD:8 - //SEG316 [155] (byte) mulf8u::a#1 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 mulf8u::a#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) -- vbuaa=vbuz1 + //SEG314 mul8u_slowfast_compare::@12 + //SEG315 [154] (word) mul8u_slowfast_compare::ms#0 ← (word) muls8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + // (word) mul8u_slowfast_compare::ms#0 = (word) muls8u::return#2 // register copy zp ZP_WORD:8 + //SEG316 [155] (byte) mulf8u::a#1 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) -- vbuaa=vbuz1 lda a - //SEG317 [156] (byte) mulf8u::b#1 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) -- vbuxx=vbuz1 + //SEG317 [156] (byte) mulf8u::b#1 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::a#1 mulf8u::b#1 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) -- vbuxx=vbuz1 ldx b - //SEG318 [157] call mulf8u param-assignment [ line_cursor#10 char_cursor#30 mulf8u::return#0 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::return#0 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 ] ) - //SEG319 [129] phi from multiply_results_compare::@8 to mulf8u [phi:multiply_results_compare::@8->mulf8u] - //SEG320 [129] phi (byte) mulf8u::b#2 = (byte) mulf8u::b#1 [phi:multiply_results_compare::@8->mulf8u#0] -- register_copy - //SEG321 [129] phi (byte) mulf8u::a#2 = (byte) mulf8u::a#1 [phi:multiply_results_compare::@8->mulf8u#1] -- register_copy + //SEG318 [157] call mulf8u param-assignment [ line_cursor#10 char_cursor#30 mulf8u::return#0 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mulf8u::return#0 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 ] ) + //SEG319 [129] phi from mul8u_slowfast_compare::@12 to mulf8u [phi:mul8u_slowfast_compare::@12->mulf8u] + //SEG320 [129] phi (byte) mulf8u::b#2 = (byte) mulf8u::b#1 [phi:mul8u_slowfast_compare::@12->mulf8u#0] -- register_copy + //SEG321 [129] phi (byte) mulf8u::a#2 = (byte) mulf8u::a#1 [phi:mul8u_slowfast_compare::@12->mulf8u#1] -- register_copy jsr mulf8u - //SEG322 [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 mulf8u::return#3 ] ) + //SEG322 [158] (word) mulf8u::return#3 ← (word) mulf8u::return#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mulf8u::return#3 ] ) // (word) mulf8u::return#3 = (word) mulf8u::return#0 // register copy zp ZP_WORD:12 - //SEG323 multiply_results_compare::@9 - //SEG324 [159] (word) multiply_results_compare::ma#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) - // (word) multiply_results_compare::ma#0 = (word) mulf8u::return#3 // register copy zp ZP_WORD:12 - //SEG325 [160] if((word) multiply_results_compare::ms#0==(word) multiply_results_compare::ma#0) goto multiply_results_compare::@3 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) -- vwuz1_eq_vwuz2_then_la1 + //SEG323 mul8u_slowfast_compare::@13 + //SEG324 [159] (word) mul8u_slowfast_compare::mf#0 ← (word) mulf8u::return#3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 ] ) + // (word) mul8u_slowfast_compare::mf#0 = (word) mulf8u::return#3 // register copy zp ZP_WORD:12 + //SEG325 [160] (byte) mul8u::a#1 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 ] ) -- vbuxx=vbuz1 + ldx a + //SEG326 [161] (byte) mul8u::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::b#0 ] ) -- vbuaa=vbuz1 + lda b + //SEG327 [162] call mul8u param-assignment [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ) + jsr mul8u + //SEG328 [163] (word) mul8u::return#2 ← (word) mul8u::res#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::return#2 ] ) + // (word) mul8u::return#2 = (word) mul8u::res#2 // register copy zp ZP_WORD:14 + //SEG329 mul8u_slowfast_compare::@14 + //SEG330 [164] (word) mul8u_slowfast_compare::mn#0 ← (word) mul8u::return#2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) + // (word) mul8u_slowfast_compare::mn#0 = (word) mul8u::return#2 // register copy zp ZP_WORD:14 + //SEG331 [165] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mf#0) goto mul8u_slowfast_compare::@3 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) -- vwuz1_eq_vwuz2_then_la1 lda ms - cmp ma + cmp mf bne !+ lda ms+1 - cmp ma+1 - beq b3 + cmp mf+1 + beq b6 !: - //SEG326 multiply_results_compare::@4 - //SEG327 [161] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 ] ) -- _deref_pbuc1=vbuc2 + //SEG332 [166] phi from mul8u_slowfast_compare::@14 to mul8u_slowfast_compare::@6 [phi:mul8u_slowfast_compare::@14->mul8u_slowfast_compare::@6] + //SEG333 mul8u_slowfast_compare::@6 + //SEG334 [167] phi from mul8u_slowfast_compare::@6 to mul8u_slowfast_compare::@3 [phi:mul8u_slowfast_compare::@6->mul8u_slowfast_compare::@3] + //SEG335 [167] phi (byte) mul8u_slowfast_compare::ok#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u_slowfast_compare::@6->mul8u_slowfast_compare::@3#0] -- vbuxx=vbuc1 + ldx #0 + jmp b3 + //SEG336 [167] phi from mul8u_slowfast_compare::@14 to mul8u_slowfast_compare::@3 [phi:mul8u_slowfast_compare::@14->mul8u_slowfast_compare::@3] + b6: + //SEG337 [167] phi (byte) mul8u_slowfast_compare::ok#4 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mul8u_slowfast_compare::@14->mul8u_slowfast_compare::@3#0] -- vbuxx=vbuc1 + ldx #1 + //SEG338 mul8u_slowfast_compare::@3 + b3: + //SEG339 [168] if((word) mul8u_slowfast_compare::ms#0==(word) mul8u_slowfast_compare::mn#0) goto mul8u_slowfast_compare::@20 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 mul8u_slowfast_compare::ok#4 ] ) -- vwuz1_eq_vwuz2_then_la1 + lda ms + cmp mn + bne !+ + lda ms+1 + cmp mn+1 + beq b4 + !: + //SEG340 [169] phi from mul8u_slowfast_compare::@3 to mul8u_slowfast_compare::@4 [phi:mul8u_slowfast_compare::@3->mul8u_slowfast_compare::@4] + //SEG341 [169] phi (byte) mul8u_slowfast_compare::ok#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u_slowfast_compare::@3->mul8u_slowfast_compare::@4#0] -- vbuxx=vbuc1 + ldx #0 + //SEG342 mul8u_slowfast_compare::@4 + b4: + //SEG343 [170] if((byte) mul8u_slowfast_compare::ok#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@5 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) -- vbuxx_neq_0_then_la1 + cpx #0 + bne b5 + //SEG344 mul8u_slowfast_compare::@8 + //SEG345 [171] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 ] ) -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG328 [162] (byte) multiply_error::a#0 ← (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::b#2 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 ] ) -- vbuxx=vbuz1 + //SEG346 [172] (byte) multiply_error::a#0 ← (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 ] ) -- vbuxx=vbuz1 ldx a - //SEG329 [163] (byte) multiply_error::b#0 ← (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::ms#0 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 ] ) - // (byte) multiply_error::b#0 = (byte) multiply_results_compare::b#2 // register copy zp ZP_BYTE:3 - //SEG330 [164] (word) multiply_error::ms#0 ← (word) multiply_results_compare::ms#0 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::ma#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) - // (word) multiply_error::ms#0 = (word) multiply_results_compare::ms#0 // register copy zp ZP_WORD:8 - //SEG331 [165] (word) multiply_error::ma#0 ← (word) multiply_results_compare::ma#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - // (word) multiply_error::ma#0 = (word) multiply_results_compare::ma#0 // register copy zp ZP_WORD:12 - //SEG332 [166] call multiply_error param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) - //SEG333 [176] phi from multiply_results_compare::@4 to multiply_error [phi:multiply_results_compare::@4->multiply_error] + //SEG347 [173] (byte) multiply_error::b#0 ← (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 ] ) + // (byte) multiply_error::b#0 = (byte) mul8u_slowfast_compare::b#10 // register copy zp ZP_BYTE:3 + //SEG348 [174] (word) multiply_error::ms#0 ← (word) mul8u_slowfast_compare::ms#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 mul8u_slowfast_compare::mn#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 ] ) + // (word) multiply_error::ms#0 = (word) mul8u_slowfast_compare::ms#0 // register copy zp ZP_WORD:8 + //SEG349 [175] (word) multiply_error::mn#0 ← (word) mul8u_slowfast_compare::mn#0 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::mf#0 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 ] ) + // (word) multiply_error::mn#0 = (word) mul8u_slowfast_compare::mn#0 // register copy zp ZP_WORD:14 + //SEG350 [176] (word) multiply_error::mf#0 ← (word) mul8u_slowfast_compare::mf#0 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + // (word) multiply_error::mf#0 = (word) mul8u_slowfast_compare::mf#0 // register copy zp ZP_WORD:12 + //SEG351 [177] call multiply_error param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) + //SEG352 [188] phi from mul8u_slowfast_compare::@8 to multiply_error [phi:mul8u_slowfast_compare::@8->multiply_error] jsr multiply_error - //SEG334 multiply_results_compare::@return + //SEG353 mul8u_slowfast_compare::@return breturn: - //SEG335 [167] return [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) + //SEG354 [178] return [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) rts - //SEG336 multiply_results_compare::@3 - b3: - //SEG337 [168] (byte) multiply_results_compare::b#1 ← ++ (byte) multiply_results_compare::b#2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ) -- vbuz1=_inc_vbuz1 + //SEG355 mul8u_slowfast_compare::@5 + b5: + //SEG356 [179] (byte) mul8u_slowfast_compare::b#1 ← ++ (byte) mul8u_slowfast_compare::b#10 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ) -- vbuz1=_inc_vbuz1 inc b - //SEG338 [169] if((byte) multiply_results_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto multiply_results_compare::@2 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#1 ] ) -- vbuz1_neq_0_then_la1 + //SEG357 [180] if((byte) mul8u_slowfast_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@2 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#1 ] ) -- vbuz1_neq_0_then_la1 lda b bne b2 - //SEG339 multiply_results_compare::@6 - //SEG340 [170] (byte) multiply_results_compare::a#1 ← ++ (byte) multiply_results_compare::a#6 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ) -- vbuz1=_inc_vbuz1 + //SEG358 mul8u_slowfast_compare::@10 + //SEG359 [181] (byte) mul8u_slowfast_compare::a#1 ← ++ (byte) mul8u_slowfast_compare::a#7 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ) -- vbuz1=_inc_vbuz1 inc a - //SEG341 [171] if((byte) multiply_results_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto multiply_results_compare::@1 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#1 ] ) -- vbuz1_neq_0_then_la1 + //SEG360 [182] if((byte) mul8u_slowfast_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_slowfast_compare::@1 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#1 ] ) -- vbuz1_neq_0_then_la1 lda a bne b1 - //SEG342 [172] phi from multiply_results_compare::@6 to multiply_results_compare::@7 [phi:multiply_results_compare::@6->multiply_results_compare::@7] - //SEG343 multiply_results_compare::@7 - //SEG344 [173] call print_str param-assignment [ char_cursor#122 line_cursor#10 ] ( main:2::multiply_results_compare:13 [ char_cursor#122 line_cursor#10 ] ) - //SEG345 [51] phi from multiply_results_compare::@7 to print_str [phi:multiply_results_compare::@7->print_str] - //SEG346 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#30 [phi:multiply_results_compare::@7->print_str#0] -- register_copy - //SEG347 [51] phi (byte*) print_str::str#16 = (const string) multiply_results_compare::str [phi:multiply_results_compare::@7->print_str#1] -- pbuz1=pbuc1 + //SEG361 [183] phi from mul8u_slowfast_compare::@10 to mul8u_slowfast_compare::@11 [phi:mul8u_slowfast_compare::@10->mul8u_slowfast_compare::@11] + //SEG362 mul8u_slowfast_compare::@11 + //SEG363 [184] call print_str param-assignment [ char_cursor#126 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13 [ char_cursor#126 line_cursor#10 ] ) + //SEG364 [51] phi from mul8u_slowfast_compare::@11 to print_str [phi:mul8u_slowfast_compare::@11->print_str] + //SEG365 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#30 [phi:mul8u_slowfast_compare::@11->print_str#0] -- register_copy + //SEG366 [51] phi (byte*) print_str::str#17 = (const string) mul8u_slowfast_compare::str [phi:mul8u_slowfast_compare::@11->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str - //SEG348 [174] phi from multiply_results_compare::@7 to multiply_results_compare::@11 [phi:multiply_results_compare::@7->multiply_results_compare::@11] - //SEG349 multiply_results_compare::@11 - //SEG350 [175] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13 [ line_cursor#1 ] ) - //SEG351 [46] phi from multiply_results_compare::@11 to print_ln [phi:multiply_results_compare::@11->print_ln] - //SEG352 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#122 [phi:multiply_results_compare::@11->print_ln#0] -- register_copy - //SEG353 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#10 [phi:multiply_results_compare::@11->print_ln#1] -- register_copy + //SEG367 [185] phi from mul8u_slowfast_compare::@11 to mul8u_slowfast_compare::@16 [phi:mul8u_slowfast_compare::@11->mul8u_slowfast_compare::@16] + //SEG368 mul8u_slowfast_compare::@16 + //SEG369 [186] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13 [ line_cursor#1 ] ) + //SEG370 [46] phi from mul8u_slowfast_compare::@16 to print_ln [phi:mul8u_slowfast_compare::@16->print_ln] + //SEG371 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#126 [phi:mul8u_slowfast_compare::@16->print_ln#0] -- register_copy + //SEG372 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#10 [phi:mul8u_slowfast_compare::@16->print_ln#1] -- register_copy jsr print_ln jmp breturn + //SEG373 [187] phi from mul8u_slowfast_compare::@3 to mul8u_slowfast_compare::@20 [phi:mul8u_slowfast_compare::@3->mul8u_slowfast_compare::@20] + //SEG374 mul8u_slowfast_compare::@20 + //SEG375 [169] phi from mul8u_slowfast_compare::@20 to mul8u_slowfast_compare::@4 [phi:mul8u_slowfast_compare::@20->mul8u_slowfast_compare::@4] + //SEG376 [169] phi (byte) mul8u_slowfast_compare::ok#3 = (byte) mul8u_slowfast_compare::ok#4 [phi:mul8u_slowfast_compare::@20->mul8u_slowfast_compare::@4#0] -- register_copy str: .text "multiply results match!@" } -//SEG354 multiply_error +//SEG377 multiply_error multiply_error: { .label b = 3 .label ms = 8 - .label ma = $c - //SEG355 [177] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG356 [51] phi from multiply_error to print_str [phi:multiply_error->print_str] - //SEG357 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#30 [phi:multiply_error->print_str#0] -- register_copy - //SEG358 [51] phi (byte*) print_str::str#16 = (const string) multiply_error::str [phi:multiply_error->print_str#1] -- pbuz1=pbuc1 + .label mn = $e + .label mf = $c + //SEG378 [189] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::a#0 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG379 [51] phi from multiply_error to print_str [phi:multiply_error->print_str] + //SEG380 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#30 [phi:multiply_error->print_str#0] -- register_copy + //SEG381 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str [phi:multiply_error->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str - //SEG359 multiply_error::@1 - //SEG360 [178] (byte) print_byte::b#3 ← (byte) multiply_error::a#0 [ char_cursor#122 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) + //SEG382 multiply_error::@1 + //SEG383 [190] (byte) print_byte::b#3 ← (byte) multiply_error::a#0 [ char_cursor#126 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_byte::b#3 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) // (byte) print_byte::b#3 = (byte) multiply_error::a#0 // register copy reg byte x - //SEG361 [179] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG362 [92] phi from multiply_error::@1 to print_byte [phi:multiply_error::@1->print_byte] - //SEG363 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#122 [phi:multiply_error::@1->print_byte#0] -- register_copy - //SEG364 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#3 [phi:multiply_error::@1->print_byte#1] -- register_copy + //SEG384 [191] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG385 [92] phi from multiply_error::@1 to print_byte [phi:multiply_error::@1->print_byte] + //SEG386 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#126 [phi:multiply_error::@1->print_byte#0] -- register_copy + //SEG387 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#3 [phi:multiply_error::@1->print_byte#1] -- register_copy jsr print_byte - //SEG365 [180] phi from multiply_error::@1 to multiply_error::@2 [phi:multiply_error::@1->multiply_error::@2] - //SEG366 multiply_error::@2 - //SEG367 [181] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG368 [51] phi from multiply_error::@2 to print_str [phi:multiply_error::@2->print_str] - //SEG369 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:multiply_error::@2->print_str#0] -- register_copy - //SEG370 [51] phi (byte*) print_str::str#16 = (const string) multiply_error::str1 [phi:multiply_error::@2->print_str#1] -- pbuz1=pbuc1 + //SEG388 [192] phi from multiply_error::@1 to multiply_error::@2 [phi:multiply_error::@1->multiply_error::@2] + //SEG389 multiply_error::@2 + //SEG390 [193] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::b#0 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG391 [51] phi from multiply_error::@2 to print_str [phi:multiply_error::@2->print_str] + //SEG392 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:multiply_error::@2->print_str#0] -- register_copy + //SEG393 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str1 [phi:multiply_error::@2->print_str#1] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str - //SEG371 multiply_error::@3 - //SEG372 [182] (byte) print_byte::b#4 ← (byte) multiply_error::b#0 [ char_cursor#122 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::ma#0 ] ) -- vbuxx=vbuz1 + //SEG394 multiply_error::@3 + //SEG395 [194] (byte) print_byte::b#4 ← (byte) multiply_error::b#0 [ char_cursor#126 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_byte::b#4 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) -- vbuxx=vbuz1 ldx b - //SEG373 [183] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG374 [92] phi from multiply_error::@3 to print_byte [phi:multiply_error::@3->print_byte] - //SEG375 [92] phi (byte*) char_cursor#129 = (byte*) char_cursor#122 [phi:multiply_error::@3->print_byte#0] -- register_copy - //SEG376 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#4 [phi:multiply_error::@3->print_byte#1] -- register_copy + //SEG396 [195] call print_byte param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG397 [92] phi from multiply_error::@3 to print_byte [phi:multiply_error::@3->print_byte] + //SEG398 [92] phi (byte*) char_cursor#133 = (byte*) char_cursor#126 [phi:multiply_error::@3->print_byte#0] -- register_copy + //SEG399 [92] phi (byte) print_byte::b#5 = (byte) print_byte::b#4 [phi:multiply_error::@3->print_byte#1] -- register_copy jsr print_byte - //SEG377 [184] phi from multiply_error::@3 to multiply_error::@4 [phi:multiply_error::@3->multiply_error::@4] - //SEG378 multiply_error::@4 - //SEG379 [185] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::ms#0 multiply_error::ma#0 ] ) - //SEG380 [51] phi from multiply_error::@4 to print_str [phi:multiply_error::@4->print_str] - //SEG381 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:multiply_error::@4->print_str#0] -- register_copy - //SEG382 [51] phi (byte*) print_str::str#16 = (const string) multiply_error::str2 [phi:multiply_error::@4->print_str#1] -- pbuz1=pbuc1 + //SEG400 [196] phi from multiply_error::@3 to multiply_error::@4 [phi:multiply_error::@3->multiply_error::@4] + //SEG401 multiply_error::@4 + //SEG402 [197] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::ms#0 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG403 [51] phi from multiply_error::@4 to print_str [phi:multiply_error::@4->print_str] + //SEG404 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:multiply_error::@4->print_str#0] -- register_copy + //SEG405 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str2 [phi:multiply_error::@4->print_str#1] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str - //SEG383 multiply_error::@5 - //SEG384 [186] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#3 multiply_error::ma#0 ] ) + //SEG406 multiply_error::@5 + //SEG407 [198] (word) print_word::w#3 ← (word) multiply_error::ms#0 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#3 multiply_error::mn#0 multiply_error::mf#0 ] ) // (word) print_word::w#3 = (word) multiply_error::ms#0 // register copy zp ZP_WORD:8 - //SEG385 [187] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 multiply_error::ma#0 ] ) - //SEG386 [86] phi from multiply_error::@5 to print_word [phi:multiply_error::@5->print_word] - //SEG387 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#122 [phi:multiply_error::@5->print_word#0] -- register_copy - //SEG388 [86] phi (word) print_word::w#5 = (word) print_word::w#3 [phi:multiply_error::@5->print_word#1] -- register_copy + //SEG408 [199] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG409 [86] phi from multiply_error::@5 to print_word [phi:multiply_error::@5->print_word] + //SEG410 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:multiply_error::@5->print_word#0] -- register_copy + //SEG411 [86] phi (word) print_word::w#6 = (word) print_word::w#3 [phi:multiply_error::@5->print_word#1] -- register_copy jsr print_word - //SEG389 [188] phi from multiply_error::@5 to multiply_error::@6 [phi:multiply_error::@5->multiply_error::@6] - //SEG390 multiply_error::@6 - //SEG391 [189] call print_str param-assignment [ char_cursor#122 line_cursor#10 multiply_error::ma#0 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 multiply_error::ma#0 ] ) - //SEG392 [51] phi from multiply_error::@6 to print_str [phi:multiply_error::@6->print_str] - //SEG393 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:multiply_error::@6->print_str#0] -- register_copy - //SEG394 [51] phi (byte*) print_str::str#16 = (const string) multiply_error::str3 [phi:multiply_error::@6->print_str#1] -- pbuz1=pbuc1 + //SEG412 [200] phi from multiply_error::@5 to multiply_error::@6 [phi:multiply_error::@5->multiply_error::@6] + //SEG413 multiply_error::@6 + //SEG414 [201] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::mn#0 multiply_error::mf#0 ] ) + //SEG415 [51] phi from multiply_error::@6 to print_str [phi:multiply_error::@6->print_str] + //SEG416 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:multiply_error::@6->print_str#0] -- register_copy + //SEG417 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str3 [phi:multiply_error::@6->print_str#1] -- pbuz1=pbuc1 lda #str3 sta print_str.str+1 jsr print_str - //SEG395 multiply_error::@7 - //SEG396 [190] (word) print_word::w#4 ← (word) multiply_error::ma#0 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#122 line_cursor#10 print_word::w#4 ] ) -- vwuz1=vwuz2 - lda ma + //SEG418 multiply_error::@7 + //SEG419 [202] (word) print_word::w#4 ← (word) multiply_error::mn#0 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#4 multiply_error::mf#0 ] ) -- vwuz1=vwuz2 + lda mn sta print_word.w - lda ma+1 + lda mn+1 sta print_word.w+1 - //SEG397 [191] call print_word param-assignment [ char_cursor#17 line_cursor#10 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ char_cursor#17 line_cursor#10 ] ) - //SEG398 [86] phi from multiply_error::@7 to print_word [phi:multiply_error::@7->print_word] - //SEG399 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#122 [phi:multiply_error::@7->print_word#0] -- register_copy - //SEG400 [86] phi (word) print_word::w#5 = (word) print_word::w#4 [phi:multiply_error::@7->print_word#1] -- register_copy + //SEG420 [203] call print_word param-assignment [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 multiply_error::mf#0 ] ) + //SEG421 [86] phi from multiply_error::@7 to print_word [phi:multiply_error::@7->print_word] + //SEG422 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:multiply_error::@7->print_word#0] -- register_copy + //SEG423 [86] phi (word) print_word::w#6 = (word) print_word::w#4 [phi:multiply_error::@7->print_word#1] -- register_copy jsr print_word - //SEG401 [192] phi from multiply_error::@7 to multiply_error::@8 [phi:multiply_error::@7->multiply_error::@8] - //SEG402 multiply_error::@8 - //SEG403 [193] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ line_cursor#1 ] ) - //SEG404 [46] phi from multiply_error::@8 to print_ln [phi:multiply_error::@8->print_ln] - //SEG405 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#17 [phi:multiply_error::@8->print_ln#0] -- register_copy - //SEG406 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#10 [phi:multiply_error::@8->print_ln#1] -- register_copy + //SEG424 [204] phi from multiply_error::@7 to multiply_error::@8 [phi:multiply_error::@7->multiply_error::@8] + //SEG425 multiply_error::@8 + //SEG426 [205] call print_str param-assignment [ char_cursor#126 line_cursor#10 multiply_error::mf#0 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 multiply_error::mf#0 ] ) + //SEG427 [51] phi from multiply_error::@8 to print_str [phi:multiply_error::@8->print_str] + //SEG428 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:multiply_error::@8->print_str#0] -- register_copy + //SEG429 [51] phi (byte*) print_str::str#17 = (const string) multiply_error::str4 [phi:multiply_error::@8->print_str#1] -- pbuz1=pbuc1 + lda #str4 + sta print_str.str+1 + jsr print_str + //SEG430 multiply_error::@9 + //SEG431 [206] (word) print_word::w#5 ← (word) multiply_error::mf#0 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#126 line_cursor#10 print_word::w#5 ] ) -- vwuz1=vwuz2 + lda mf + sta print_word.w + lda mf+1 + sta print_word.w+1 + //SEG432 [207] call print_word param-assignment [ char_cursor#17 line_cursor#10 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ char_cursor#17 line_cursor#10 ] ) + //SEG433 [86] phi from multiply_error::@9 to print_word [phi:multiply_error::@9->print_word] + //SEG434 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:multiply_error::@9->print_word#0] -- register_copy + //SEG435 [86] phi (word) print_word::w#6 = (word) print_word::w#5 [phi:multiply_error::@9->print_word#1] -- register_copy + jsr print_word + //SEG436 [208] phi from multiply_error::@9 to multiply_error::@10 [phi:multiply_error::@9->multiply_error::@10] + //SEG437 multiply_error::@10 + //SEG438 [209] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ line_cursor#1 ] ) + //SEG439 [46] phi from multiply_error::@10 to print_ln [phi:multiply_error::@10->print_ln] + //SEG440 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#17 [phi:multiply_error::@10->print_ln#0] -- register_copy + //SEG441 [46] phi (byte*) line_cursor#45 = (byte*) line_cursor#10 [phi:multiply_error::@10->print_ln#1] -- register_copy jsr print_ln - //SEG407 multiply_error::@return - //SEG408 [194] return [ line_cursor#1 ] ( main:2::multiply_results_compare:13::multiply_error:166 [ line_cursor#1 ] ) + //SEG442 multiply_error::@return + //SEG443 [210] return [ line_cursor#1 ] ( main:2::mul8u_slowfast_compare:13::multiply_error:177 [ line_cursor#1 ] ) rts str: .text "multiply mismatch @" str1: .text "*@" str2: .text " slow:@" - str3: .text " / fast asm:@" + str3: .text " / normal:@" + str4: .text " / fast:@" } -//SEG409 muls8u +//SEG444 mul8u +mul8u: { + .label mb = 6 + .label res = $e + .label return = $e + //SEG445 [211] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#1 mul8u::mb#0 ] ) -- vwuz1=_word_vbuaa + sta mb + lda #0 + sta mb+1 + //SEG446 [212] phi from mul8u to mul8u::@1 [phi:mul8u->mul8u::@1] + //SEG447 [212] phi (word) mul8u::mb#2 = (word) mul8u::mb#0 [phi:mul8u->mul8u::@1#0] -- register_copy + //SEG448 [212] phi (word) mul8u::res#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mul8u->mul8u::@1#1] -- vwuz1=vbuc1 + sta res + sta res+1 + //SEG449 [212] phi (byte) mul8u::a#2 = (byte) mul8u::a#1 [phi:mul8u->mul8u::@1#2] -- register_copy + //SEG450 mul8u::@1 + b1: + //SEG451 [213] if((byte) mul8u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@2 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) -- vbuxx_neq_0_then_la1 + cpx #0 + bne b2 + //SEG452 mul8u::@return + //SEG453 [214] return [ mul8u::res#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 ] ) + rts + //SEG454 mul8u::@2 + b2: + //SEG455 [215] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) -- vbuaa=vbuxx_band_vbuc1 + txa + and #1 + //SEG456 [216] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@4 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::res#2 mul8u::a#2 mul8u::mb#2 ] ) -- vbuaa_eq_0_then_la1 + cmp #0 + beq b4 + //SEG457 mul8u::@7 + //SEG458 [217] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) -- vwuz1=vwuz1_plus_vwuz2 + lda res + clc + adc mb + sta res + lda res+1 + adc mb+1 + sta res+1 + //SEG459 [218] phi from mul8u::@2 mul8u::@7 to mul8u::@4 [phi:mul8u::@2/mul8u::@7->mul8u::@4] + //SEG460 [218] phi (word) mul8u::res#6 = (word) mul8u::res#2 [phi:mul8u::@2/mul8u::@7->mul8u::@4#0] -- register_copy + //SEG461 mul8u::@4 + b4: + //SEG462 [219] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::mb#2 mul8u::a#0 mul8u::res#6 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::mb#2 mul8u::a#0 mul8u::res#6 ] ) -- vbuxx=vbuxx_ror_1 + txa + lsr + tax + //SEG463 [220] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::a#0 mul8u::res#6 mul8u::mb#1 ] ( main:2::mul8u_slowfast_compare:13::mul8u:162 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 mul8u_slowfast_compare::ms#0 mul8u_slowfast_compare::mf#0 mul8u::a#0 mul8u::res#6 mul8u::mb#1 ] ) -- vwuz1=vwuz1_rol_1 + asl mb + rol mb+1 + //SEG464 [212] phi from mul8u::@4 to mul8u::@1 [phi:mul8u::@4->mul8u::@1] + //SEG465 [212] phi (word) mul8u::mb#2 = (word) mul8u::mb#1 [phi:mul8u::@4->mul8u::@1#0] -- register_copy + //SEG466 [212] phi (word) mul8u::res#2 = (word) mul8u::res#6 [phi:mul8u::@4->mul8u::@1#1] -- register_copy + //SEG467 [212] phi (byte) mul8u::a#2 = (byte) mul8u::a#0 [phi:mul8u::@4->mul8u::@1#2] -- register_copy + jmp b1 +} +//SEG468 muls8u muls8u: { .label return = 8 .label m = 8 .label a = 2 - //SEG410 [195] if((byte) muls8u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8u::@1 [ muls8u::a#0 muls8u::b#0 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 ] ) -- vbuz1_eq_0_then_la1 + //SEG469 [221] if((byte) muls8u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8u::@1 [ muls8u::a#0 muls8u::b#0 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 ] ) -- vbuz1_eq_0_then_la1 lda a beq b3 - //SEG411 [196] phi from muls8u to muls8u::@2 [phi:muls8u->muls8u::@2] - //SEG412 [196] phi (byte) muls8u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@2#0] -- vbuyy=vbuc1 + //SEG470 [222] phi from muls8u to muls8u::@2 [phi:muls8u->muls8u::@2] + //SEG471 [222] phi (byte) muls8u::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@2#0] -- vbuyy=vbuc1 ldy #0 - //SEG413 [196] phi (word) muls8u::m#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@2#1] -- vwuz1=vbuc1 + //SEG472 [222] phi (word) muls8u::m#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@2#1] -- vwuz1=vbuc1 tya sta m sta m+1 - //SEG414 [196] phi from muls8u::@2 to muls8u::@2 [phi:muls8u::@2->muls8u::@2] - //SEG415 [196] phi (byte) muls8u::i#2 = (byte) muls8u::i#1 [phi:muls8u::@2->muls8u::@2#0] -- register_copy - //SEG416 [196] phi (word) muls8u::m#3 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@2#1] -- register_copy - //SEG417 muls8u::@2 + //SEG473 [222] phi from muls8u::@2 to muls8u::@2 [phi:muls8u::@2->muls8u::@2] + //SEG474 [222] phi (byte) muls8u::i#2 = (byte) muls8u::i#1 [phi:muls8u::@2->muls8u::@2#0] -- register_copy + //SEG475 [222] phi (word) muls8u::m#3 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@2#1] -- register_copy + //SEG476 muls8u::@2 b2: - //SEG418 [197] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) -- vwuz1=vwuz1_plus_vbuxx + //SEG477 [223] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) -- vwuz1=vwuz1_plus_vbuxx txa clc adc m @@ -11698,122 +13023,122 @@ muls8u: { lda #0 adc m+1 sta m+1 - //SEG419 [198] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) -- vbuyy=_inc_vbuyy + //SEG478 [224] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) -- vbuyy=_inc_vbuyy iny - //SEG420 [199] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) -- vbuyy_neq_vbuz1_then_la1 + //SEG479 [225] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 [ muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::m#1 muls8u::i#1 ] ) -- vbuyy_neq_vbuz1_then_la1 cpy a bne b2 - //SEG421 [200] phi from muls8u::@2 to muls8u::@1 [phi:muls8u::@2->muls8u::@1] - //SEG422 [200] phi (word) muls8u::return#0 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@1#0] -- register_copy + //SEG480 [226] phi from muls8u::@2 to muls8u::@1 [phi:muls8u::@2->muls8u::@1] + //SEG481 [226] phi (word) muls8u::return#0 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@1#0] -- register_copy jmp b1 - //SEG423 [200] phi from muls8u to muls8u::@1 [phi:muls8u->muls8u::@1] + //SEG482 [226] phi from muls8u to muls8u::@1 [phi:muls8u->muls8u::@1] b3: - //SEG424 [200] phi (word) muls8u::return#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@1#0] -- vwuz1=vbuc1 + //SEG483 [226] phi (word) muls8u::return#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:muls8u->muls8u::@1#0] -- vwuz1=vbuc1 lda #0 sta return sta return+1 - //SEG425 muls8u::@1 + //SEG484 muls8u::@1 b1: - //SEG426 muls8u::@return - //SEG427 [201] return [ muls8u::return#0 ] ( main:2::multiply_results_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 multiply_results_compare::a#6 multiply_results_compare::b#2 muls8u::return#0 ] ) + //SEG485 muls8u::@return + //SEG486 [227] return [ muls8u::return#0 ] ( main:2::mul8u_slowfast_compare:13::muls8u:152 [ line_cursor#10 char_cursor#30 mul8u_slowfast_compare::a#7 mul8u_slowfast_compare::b#10 muls8u::return#0 ] ) rts } -//SEG428 multiply_tables_compare -multiply_tables_compare: { +//SEG487 mulf_tables_cmp +mulf_tables_cmp: { .label asm_sqr = 8 .label kc_sqr = 4 - //SEG429 [203] phi from multiply_tables_compare to multiply_tables_compare::@1 [phi:multiply_tables_compare->multiply_tables_compare::@1] - //SEG430 [203] phi (byte*) multiply_tables_compare::asm_sqr#2 = (const byte[512]) mula_sqr1_lo#0 [phi:multiply_tables_compare->multiply_tables_compare::@1#0] -- pbuz1=pbuc1 + //SEG488 [229] phi from mulf_tables_cmp to mulf_tables_cmp::@1 [phi:mulf_tables_cmp->mulf_tables_cmp::@1] + //SEG489 [229] phi (byte*) mulf_tables_cmp::asm_sqr#2 = (const byte[512]) mula_sqr1_lo#0 [phi:mulf_tables_cmp->mulf_tables_cmp::@1#0] -- pbuz1=pbuc1 lda #mula_sqr1_lo sta asm_sqr+1 - //SEG431 [203] phi (byte*) multiply_tables_compare::kc_sqr#2 = (const byte[512]) mulf_sqr1_lo#0 [phi:multiply_tables_compare->multiply_tables_compare::@1#1] -- pbuz1=pbuc1 + //SEG490 [229] phi (byte*) mulf_tables_cmp::kc_sqr#2 = (const byte[512]) mulf_sqr1_lo#0 [phi:mulf_tables_cmp->mulf_tables_cmp::@1#1] -- pbuz1=pbuc1 lda #mulf_sqr1_lo sta kc_sqr+1 - //SEG432 [203] phi from multiply_tables_compare::@2 to multiply_tables_compare::@1 [phi:multiply_tables_compare::@2->multiply_tables_compare::@1] - //SEG433 [203] phi (byte*) multiply_tables_compare::asm_sqr#2 = (byte*) multiply_tables_compare::asm_sqr#1 [phi:multiply_tables_compare::@2->multiply_tables_compare::@1#0] -- register_copy - //SEG434 [203] phi (byte*) multiply_tables_compare::kc_sqr#2 = (byte*) multiply_tables_compare::kc_sqr#1 [phi:multiply_tables_compare::@2->multiply_tables_compare::@1#1] -- register_copy - //SEG435 multiply_tables_compare::@1 + //SEG491 [229] phi from mulf_tables_cmp::@2 to mulf_tables_cmp::@1 [phi:mulf_tables_cmp::@2->mulf_tables_cmp::@1] + //SEG492 [229] phi (byte*) mulf_tables_cmp::asm_sqr#2 = (byte*) mulf_tables_cmp::asm_sqr#1 [phi:mulf_tables_cmp::@2->mulf_tables_cmp::@1#0] -- register_copy + //SEG493 [229] phi (byte*) mulf_tables_cmp::kc_sqr#2 = (byte*) mulf_tables_cmp::kc_sqr#1 [phi:mulf_tables_cmp::@2->mulf_tables_cmp::@1#1] -- register_copy + //SEG494 mulf_tables_cmp::@1 b1: - //SEG436 [204] if(*((byte*) multiply_tables_compare::kc_sqr#2)==*((byte*) multiply_tables_compare::asm_sqr#2)) goto multiply_tables_compare::@2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) -- _deref_pbuz1_eq__deref_pbuz2_then_la1 + //SEG495 [230] if(*((byte*) mulf_tables_cmp::kc_sqr#2)==*((byte*) mulf_tables_cmp::asm_sqr#2)) goto mulf_tables_cmp::@2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) -- _deref_pbuz1_eq__deref_pbuz2_then_la1 ldy #0 lda (kc_sqr),y cmp (asm_sqr),y beq b2 - //SEG437 multiply_tables_compare::@3 - //SEG438 [205] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) -- _deref_pbuc1=vbuc2 + //SEG496 mulf_tables_cmp::@3 + //SEG497 [231] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG439 [206] call print_str param-assignment [ char_cursor#122 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#2 ] ) - //SEG440 [51] phi from multiply_tables_compare::@3 to print_str [phi:multiply_tables_compare::@3->print_str] - //SEG441 [51] phi (byte*) char_cursor#141 = (const byte*) SCREEN#0 [phi:multiply_tables_compare::@3->print_str#0] -- pbuz1=pbuc1 + //SEG498 [232] call print_str param-assignment [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) + //SEG499 [51] phi from mulf_tables_cmp::@3 to print_str [phi:mulf_tables_cmp::@3->print_str] + //SEG500 [51] phi (byte*) char_cursor#145 = (const byte*) SCREEN#0 [phi:mulf_tables_cmp::@3->print_str#0] -- pbuz1=pbuc1 lda #SCREEN sta char_cursor+1 - //SEG442 [51] phi (byte*) print_str::str#16 = (const string) multiply_tables_compare::str [phi:multiply_tables_compare::@3->print_str#1] -- pbuz1=pbuc1 + //SEG501 [51] phi (byte*) print_str::str#17 = (const string) mulf_tables_cmp::str [phi:mulf_tables_cmp::@3->print_str#1] -- pbuz1=pbuc1 lda #str sta print_str.str+1 jsr print_str - //SEG443 multiply_tables_compare::@6 - //SEG444 [207] (word~) print_word::w#9 ← (word)(byte*) multiply_tables_compare::asm_sqr#2 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#9 multiply_tables_compare::kc_sqr#2 ] ) - // (word~) print_word::w#9 = (word)(byte*) multiply_tables_compare::asm_sqr#2 // register copy zp ZP_WORD:8 - //SEG445 [208] call print_word param-assignment [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#17 multiply_tables_compare::kc_sqr#2 ] ) - //SEG446 [86] phi from multiply_tables_compare::@6 to print_word [phi:multiply_tables_compare::@6->print_word] - //SEG447 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#122 [phi:multiply_tables_compare::@6->print_word#0] -- register_copy - //SEG448 [86] phi (word) print_word::w#5 = (word~) print_word::w#9 [phi:multiply_tables_compare::@6->print_word#1] -- register_copy + //SEG502 mulf_tables_cmp::@6 + //SEG503 [233] (word~) print_word::w#8 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#8 mulf_tables_cmp::kc_sqr#2 ] ) + // (word~) print_word::w#8 = (word)(byte*) mulf_tables_cmp::asm_sqr#2 // register copy zp ZP_WORD:8 + //SEG504 [234] call print_word param-assignment [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#17 mulf_tables_cmp::kc_sqr#2 ] ) + //SEG505 [86] phi from mulf_tables_cmp::@6 to print_word [phi:mulf_tables_cmp::@6->print_word] + //SEG506 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:mulf_tables_cmp::@6->print_word#0] -- register_copy + //SEG507 [86] phi (word) print_word::w#6 = (word~) print_word::w#8 [phi:mulf_tables_cmp::@6->print_word#1] -- register_copy jsr print_word - //SEG449 [209] phi from multiply_tables_compare::@6 to multiply_tables_compare::@7 [phi:multiply_tables_compare::@6->multiply_tables_compare::@7] - //SEG450 multiply_tables_compare::@7 - //SEG451 [210] call print_str param-assignment [ char_cursor#122 multiply_tables_compare::kc_sqr#2 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 multiply_tables_compare::kc_sqr#2 ] ) - //SEG452 [51] phi from multiply_tables_compare::@7 to print_str [phi:multiply_tables_compare::@7->print_str] - //SEG453 [51] phi (byte*) char_cursor#141 = (byte*) char_cursor#17 [phi:multiply_tables_compare::@7->print_str#0] -- register_copy - //SEG454 [51] phi (byte*) print_str::str#16 = (const string) multiply_tables_compare::str1 [phi:multiply_tables_compare::@7->print_str#1] -- pbuz1=pbuc1 + //SEG508 [235] phi from mulf_tables_cmp::@6 to mulf_tables_cmp::@7 [phi:mulf_tables_cmp::@6->mulf_tables_cmp::@7] + //SEG509 mulf_tables_cmp::@7 + //SEG510 [236] call print_str param-assignment [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 mulf_tables_cmp::kc_sqr#2 ] ) + //SEG511 [51] phi from mulf_tables_cmp::@7 to print_str [phi:mulf_tables_cmp::@7->print_str] + //SEG512 [51] phi (byte*) char_cursor#145 = (byte*) char_cursor#17 [phi:mulf_tables_cmp::@7->print_str#0] -- register_copy + //SEG513 [51] phi (byte*) print_str::str#17 = (const string) mulf_tables_cmp::str1 [phi:mulf_tables_cmp::@7->print_str#1] -- pbuz1=pbuc1 lda #str1 sta print_str.str+1 jsr print_str - //SEG455 multiply_tables_compare::@8 - //SEG456 [211] (word~) print_word::w#10 ← (word)(byte*) multiply_tables_compare::kc_sqr#2 [ char_cursor#122 print_word::w#10 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 print_word::w#10 ] ) -- vwuz1=vwuz2 + //SEG514 mulf_tables_cmp::@8 + //SEG515 [237] (word~) print_word::w#9 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 [ char_cursor#126 print_word::w#9 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 print_word::w#9 ] ) -- vwuz1=vwuz2 lda kc_sqr sta print_word.w lda kc_sqr+1 sta print_word.w+1 - //SEG457 [212] call print_word param-assignment [ char_cursor#17 ] ( main:2::multiply_tables_compare:11 [ char_cursor#17 ] ) - //SEG458 [86] phi from multiply_tables_compare::@8 to print_word [phi:multiply_tables_compare::@8->print_word] - //SEG459 [86] phi (byte*) char_cursor#128 = (byte*) char_cursor#122 [phi:multiply_tables_compare::@8->print_word#0] -- register_copy - //SEG460 [86] phi (word) print_word::w#5 = (word~) print_word::w#10 [phi:multiply_tables_compare::@8->print_word#1] -- register_copy + //SEG516 [238] call print_word param-assignment [ char_cursor#17 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#17 ] ) + //SEG517 [86] phi from mulf_tables_cmp::@8 to print_word [phi:mulf_tables_cmp::@8->print_word] + //SEG518 [86] phi (byte*) char_cursor#132 = (byte*) char_cursor#126 [phi:mulf_tables_cmp::@8->print_word#0] -- register_copy + //SEG519 [86] phi (word) print_word::w#6 = (word~) print_word::w#9 [phi:mulf_tables_cmp::@8->print_word#1] -- register_copy jsr print_word - //SEG461 [213] phi from multiply_tables_compare::@8 to multiply_tables_compare::@return [phi:multiply_tables_compare::@8->multiply_tables_compare::@return] - //SEG462 [213] phi (byte*) line_cursor#10 = (const byte*) SCREEN#0 [phi:multiply_tables_compare::@8->multiply_tables_compare::@return#0] -- pbuz1=pbuc1 + //SEG520 [239] phi from mulf_tables_cmp::@8 to mulf_tables_cmp::@return [phi:mulf_tables_cmp::@8->mulf_tables_cmp::@return] + //SEG521 [239] phi (byte*) line_cursor#10 = (const byte*) SCREEN#0 [phi:mulf_tables_cmp::@8->mulf_tables_cmp::@return#0] -- pbuz1=pbuc1 lda #SCREEN sta line_cursor+1 - //SEG463 [213] phi (byte*) char_cursor#30 = (byte*) char_cursor#17 [phi:multiply_tables_compare::@8->multiply_tables_compare::@return#1] -- register_copy - //SEG464 multiply_tables_compare::@return + //SEG522 [239] phi (byte*) char_cursor#30 = (byte*) char_cursor#17 [phi:mulf_tables_cmp::@8->mulf_tables_cmp::@return#1] -- register_copy + //SEG523 mulf_tables_cmp::@return breturn: - //SEG465 [214] return [ line_cursor#10 char_cursor#30 ] ( main:2::multiply_tables_compare:11 [ line_cursor#10 char_cursor#30 ] ) + //SEG524 [240] return [ line_cursor#10 char_cursor#30 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#10 char_cursor#30 ] ) rts - //SEG466 multiply_tables_compare::@2 + //SEG525 mulf_tables_cmp::@2 b2: - //SEG467 [215] (byte*) multiply_tables_compare::asm_sqr#1 ← ++ (byte*) multiply_tables_compare::asm_sqr#2 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#2 multiply_tables_compare::asm_sqr#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG526 [241] (byte*) mulf_tables_cmp::asm_sqr#1 ← ++ (byte*) mulf_tables_cmp::asm_sqr#2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#1 ] ) -- pbuz1=_inc_pbuz1 inc asm_sqr bne !+ inc asm_sqr+1 !: - //SEG468 [216] (byte*) multiply_tables_compare::kc_sqr#1 ← ++ (byte*) multiply_tables_compare::kc_sqr#2 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG527 [242] (byte*) mulf_tables_cmp::kc_sqr#1 ← ++ (byte*) mulf_tables_cmp::kc_sqr#2 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) -- pbuz1=_inc_pbuz1 inc kc_sqr bne !+ inc kc_sqr+1 !: - //SEG469 [217] if((byte*) multiply_tables_compare::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto multiply_tables_compare::@1 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ( main:2::multiply_tables_compare:11 [ multiply_tables_compare::kc_sqr#1 multiply_tables_compare::asm_sqr#1 ] ) -- pbuz1_lt_pbuc1_then_la1 + //SEG528 [243] if((byte*) mulf_tables_cmp::kc_sqr#1<(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512*(byte/signed byte/word/signed word/dword/signed dword) 4) goto mulf_tables_cmp::@1 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) -- pbuz1_lt_pbuc1_then_la1 lda kc_sqr+1 cmp #>mulf_sqr1_lo+$200*4 bcc b1 @@ -11822,49 +13147,49 @@ multiply_tables_compare: { cmp #multiply_tables_compare::@5] - //SEG471 multiply_tables_compare::@5 - //SEG472 [219] call print_str param-assignment [ char_cursor#122 ] ( main:2::multiply_tables_compare:11 [ char_cursor#122 ] ) - //SEG473 [51] phi from multiply_tables_compare::@5 to print_str [phi:multiply_tables_compare::@5->print_str] - //SEG474 [51] phi (byte*) char_cursor#141 = (const byte*) SCREEN#0 [phi:multiply_tables_compare::@5->print_str#0] -- pbuz1=pbuc1 + //SEG529 [244] phi from mulf_tables_cmp::@2 to mulf_tables_cmp::@5 [phi:mulf_tables_cmp::@2->mulf_tables_cmp::@5] + //SEG530 mulf_tables_cmp::@5 + //SEG531 [245] call print_str param-assignment [ char_cursor#126 ] ( main:2::mulf_tables_cmp:11 [ char_cursor#126 ] ) + //SEG532 [51] phi from mulf_tables_cmp::@5 to print_str [phi:mulf_tables_cmp::@5->print_str] + //SEG533 [51] phi (byte*) char_cursor#145 = (const byte*) SCREEN#0 [phi:mulf_tables_cmp::@5->print_str#0] -- pbuz1=pbuc1 lda #SCREEN sta char_cursor+1 - //SEG475 [51] phi (byte*) print_str::str#16 = (const string) multiply_tables_compare::str2 [phi:multiply_tables_compare::@5->print_str#1] -- pbuz1=pbuc1 + //SEG534 [51] phi (byte*) print_str::str#17 = (const string) mulf_tables_cmp::str2 [phi:mulf_tables_cmp::@5->print_str#1] -- pbuz1=pbuc1 lda #str2 sta print_str.str+1 jsr print_str - //SEG476 [220] phi from multiply_tables_compare::@5 to multiply_tables_compare::@10 [phi:multiply_tables_compare::@5->multiply_tables_compare::@10] - //SEG477 multiply_tables_compare::@10 - //SEG478 [221] call print_ln param-assignment [ line_cursor#1 ] ( main:2::multiply_tables_compare:11 [ line_cursor#1 ] ) - //SEG479 [46] phi from multiply_tables_compare::@10 to print_ln [phi:multiply_tables_compare::@10->print_ln] - //SEG480 [46] phi (byte*) char_cursor#123 = (byte*) char_cursor#122 [phi:multiply_tables_compare::@10->print_ln#0] -- register_copy - //SEG481 [46] phi (byte*) line_cursor#45 = (const byte*) SCREEN#0 [phi:multiply_tables_compare::@10->print_ln#1] -- pbuz1=pbuc1 + //SEG535 [246] phi from mulf_tables_cmp::@5 to mulf_tables_cmp::@10 [phi:mulf_tables_cmp::@5->mulf_tables_cmp::@10] + //SEG536 mulf_tables_cmp::@10 + //SEG537 [247] call print_ln param-assignment [ line_cursor#1 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#1 ] ) + //SEG538 [46] phi from mulf_tables_cmp::@10 to print_ln [phi:mulf_tables_cmp::@10->print_ln] + //SEG539 [46] phi (byte*) char_cursor#127 = (byte*) char_cursor#126 [phi:mulf_tables_cmp::@10->print_ln#0] -- register_copy + //SEG540 [46] phi (byte*) line_cursor#45 = (const byte*) SCREEN#0 [phi:mulf_tables_cmp::@10->print_ln#1] -- pbuz1=pbuc1 lda #SCREEN sta line_cursor+1 jsr print_ln - //SEG482 [222] (byte*~) char_cursor#201 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#201 ] ( main:2::multiply_tables_compare:11 [ line_cursor#1 char_cursor#201 ] ) -- pbuz1=pbuz2 + //SEG541 [248] (byte*~) char_cursor#212 ← (byte*) line_cursor#1 [ line_cursor#1 char_cursor#212 ] ( main:2::mulf_tables_cmp:11 [ line_cursor#1 char_cursor#212 ] ) -- pbuz1=pbuz2 lda line_cursor sta char_cursor lda line_cursor+1 sta char_cursor+1 - //SEG483 [213] phi from multiply_tables_compare::@10 to multiply_tables_compare::@return [phi:multiply_tables_compare::@10->multiply_tables_compare::@return] - //SEG484 [213] phi (byte*) line_cursor#10 = (byte*) line_cursor#1 [phi:multiply_tables_compare::@10->multiply_tables_compare::@return#0] -- register_copy - //SEG485 [213] phi (byte*) char_cursor#30 = (byte*~) char_cursor#201 [phi:multiply_tables_compare::@10->multiply_tables_compare::@return#1] -- register_copy + //SEG542 [239] phi from mulf_tables_cmp::@10 to mulf_tables_cmp::@return [phi:mulf_tables_cmp::@10->mulf_tables_cmp::@return] + //SEG543 [239] phi (byte*) line_cursor#10 = (byte*) line_cursor#1 [phi:mulf_tables_cmp::@10->mulf_tables_cmp::@return#0] -- register_copy + //SEG544 [239] phi (byte*) char_cursor#30 = (byte*~) char_cursor#212 [phi:mulf_tables_cmp::@10->mulf_tables_cmp::@return#1] -- register_copy jmp breturn str: .text "multiply table mismatch at @" str1: .text " / @" str2: .text "multiply tables match!@" } -//SEG486 mulf_init_asm +//SEG545 mulf_init_asm mulf_init_asm: { .label mem = $ff - //SEG487 asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } + //SEG546 asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } ldx #0 txa .byte $c9 @@ -11903,23 +13228,23 @@ mulf_init_asm: { dey inx bne !- - //SEG488 [224] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 + //SEG547 [250] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr1_lo sta mem - //SEG489 [225] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 + //SEG548 [251] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr1_hi sta mem - //SEG490 [226] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 + //SEG549 [252] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr2_lo sta mem - //SEG491 [227] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 + //SEG550 [253] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[512]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr2_hi sta mem - //SEG492 mulf_init_asm::@return - //SEG493 [228] return [ ] ( main:2::mulf_init_asm:9 [ ] ) + //SEG551 mulf_init_asm::@return + //SEG552 [254] return [ ] ( main:2::mulf_init_asm:9 [ ] ) rts } -//SEG494 mulf_init +//SEG553 mulf_init mulf_init: { .label sqr1_hi = 6 .label sqr = 8 @@ -11928,70 +13253,70 @@ mulf_init: { .label sqr2_hi = 6 .label sqr2_lo = 4 .label dir = 2 - //SEG495 [230] phi from mulf_init to mulf_init::@1 [phi:mulf_init->mulf_init::@1] - //SEG496 [230] phi (byte) mulf_init::x_2#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#0] -- vbuz1=vbuc1 + //SEG554 [256] phi from mulf_init to mulf_init::@1 [phi:mulf_init->mulf_init::@1] + //SEG555 [256] phi (byte) mulf_init::x_2#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#0] -- vbuz1=vbuc1 lda #0 sta x_2 - //SEG497 [230] phi (byte*) mulf_init::sqr1_hi#2 = (const byte[512]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init->mulf_init::@1#1] -- pbuz1=pbuc1 + //SEG556 [256] phi (byte*) mulf_init::sqr1_hi#2 = (const byte[512]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init->mulf_init::@1#1] -- pbuz1=pbuc1 lda #mulf_sqr1_hi+1 sta sqr1_hi+1 - //SEG498 [230] phi (byte*) mulf_init::sqr1_lo#2 = (const byte[512]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init->mulf_init::@1#2] -- pbuz1=pbuc1 + //SEG557 [256] phi (byte*) mulf_init::sqr1_lo#2 = (const byte[512]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init->mulf_init::@1#2] -- pbuz1=pbuc1 lda #mulf_sqr1_lo+1 sta sqr1_lo+1 - //SEG499 [230] phi (word) mulf_init::sqr#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#3] -- vwuz1=vbuc1 + //SEG558 [256] phi (word) mulf_init::sqr#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#3] -- vwuz1=vbuc1 lda #0 sta sqr sta sqr+1 - //SEG500 [230] phi (byte) mulf_init::c#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#4] -- vbuxx=vbuc1 + //SEG559 [256] phi (byte) mulf_init::c#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:mulf_init->mulf_init::@1#4] -- vbuxx=vbuc1 tax - //SEG501 [230] phi from mulf_init::@2 to mulf_init::@1 [phi:mulf_init::@2->mulf_init::@1] - //SEG502 [230] phi (byte) mulf_init::x_2#3 = (byte) mulf_init::x_2#2 [phi:mulf_init::@2->mulf_init::@1#0] -- register_copy - //SEG503 [230] phi (byte*) mulf_init::sqr1_hi#2 = (byte*) mulf_init::sqr1_hi#1 [phi:mulf_init::@2->mulf_init::@1#1] -- register_copy - //SEG504 [230] phi (byte*) mulf_init::sqr1_lo#2 = (byte*) mulf_init::sqr1_lo#1 [phi:mulf_init::@2->mulf_init::@1#2] -- register_copy - //SEG505 [230] phi (word) mulf_init::sqr#4 = (word) mulf_init::sqr#1 [phi:mulf_init::@2->mulf_init::@1#3] -- register_copy - //SEG506 [230] phi (byte) mulf_init::c#2 = (byte) mulf_init::c#1 [phi:mulf_init::@2->mulf_init::@1#4] -- register_copy - //SEG507 mulf_init::@1 + //SEG560 [256] phi from mulf_init::@2 to mulf_init::@1 [phi:mulf_init::@2->mulf_init::@1] + //SEG561 [256] phi (byte) mulf_init::x_2#3 = (byte) mulf_init::x_2#2 [phi:mulf_init::@2->mulf_init::@1#0] -- register_copy + //SEG562 [256] phi (byte*) mulf_init::sqr1_hi#2 = (byte*) mulf_init::sqr1_hi#1 [phi:mulf_init::@2->mulf_init::@1#1] -- register_copy + //SEG563 [256] phi (byte*) mulf_init::sqr1_lo#2 = (byte*) mulf_init::sqr1_lo#1 [phi:mulf_init::@2->mulf_init::@1#2] -- register_copy + //SEG564 [256] phi (word) mulf_init::sqr#4 = (word) mulf_init::sqr#1 [phi:mulf_init::@2->mulf_init::@1#3] -- register_copy + //SEG565 [256] phi (byte) mulf_init::c#2 = (byte) mulf_init::c#1 [phi:mulf_init::@2->mulf_init::@1#4] -- register_copy + //SEG566 mulf_init::@1 b1: - //SEG508 [231] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) -- vbuxx=_inc_vbuxx + //SEG567 [257] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) -- vbuxx=_inc_vbuxx inx - //SEG509 [232] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) -- vbuaa=vbuxx_band_vbuc1 + //SEG568 [258] (byte~) mulf_init::$2 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$2 ] ) -- vbuaa=vbuxx_band_vbuc1 txa and #1 - //SEG510 [233] if((byte~) mulf_init::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) -- vbuaa_neq_0_then_la1 + //SEG569 [259] if((byte~) mulf_init::$2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 ] ) -- vbuaa_neq_0_then_la1 cmp #0 bne b2 - //SEG511 mulf_init::@5 - //SEG512 [234] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ) -- vbuz1=_inc_vbuz1 + //SEG570 mulf_init::@5 + //SEG571 [260] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 ] ) -- vbuz1=_inc_vbuz1 inc x_2 - //SEG513 [235] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ) -- vwuz1=_inc_vwuz1 + //SEG572 [261] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#1 mulf_init::sqr#2 ] ) -- vwuz1=_inc_vwuz1 inc sqr bne !+ inc sqr+1 !: - //SEG514 [236] phi from mulf_init::@1 mulf_init::@5 to mulf_init::@2 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2] - //SEG515 [236] phi (byte) mulf_init::x_2#2 = (byte) mulf_init::x_2#3 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2#0] -- register_copy - //SEG516 [236] phi (word) mulf_init::sqr#3 = (word) mulf_init::sqr#4 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2#1] -- register_copy - //SEG517 mulf_init::@2 + //SEG573 [262] phi from mulf_init::@1 mulf_init::@5 to mulf_init::@2 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2] + //SEG574 [262] phi (byte) mulf_init::x_2#2 = (byte) mulf_init::x_2#3 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2#0] -- register_copy + //SEG575 [262] phi (word) mulf_init::sqr#3 = (word) mulf_init::sqr#4 [phi:mulf_init::@1/mulf_init::@5->mulf_init::@2#1] -- register_copy + //SEG576 mulf_init::@2 b2: - //SEG518 [237] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) -- vbuaa=_lo_vwuz1 + //SEG577 [263] (byte~) mulf_init::$5 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$5 ] ) -- vbuaa=_lo_vwuz1 lda sqr - //SEG519 [238] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- _deref_pbuz1=vbuaa + //SEG578 [264] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$5 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- _deref_pbuz1=vbuaa ldy #0 sta (sqr1_lo),y - //SEG520 [239] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) -- vbuaa=_hi_vwuz1 + //SEG579 [265] (byte~) mulf_init::$6 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$6 ] ) -- vbuaa=_hi_vwuz1 lda sqr+1 - //SEG521 [240] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- _deref_pbuz1=vbuaa + //SEG580 [266] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$6 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- _deref_pbuz1=vbuaa sta (sqr1_hi),y - //SEG522 [241] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- pbuz1=_inc_pbuz1 + //SEG581 [267] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) -- pbuz1=_inc_pbuz1 inc sqr1_hi bne !+ inc sqr1_hi+1 !: - //SEG523 [242] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- vwuz1=vwuz1_plus_vbuz2 + //SEG582 [268] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- vwuz1=vwuz1_plus_vbuz2 lda x_2 clc adc sqr @@ -11999,125 +13324,125 @@ mulf_init: { lda #0 adc sqr+1 sta sqr+1 - //SEG524 [243] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- pbuz1=_inc_pbuz1 + //SEG583 [269] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- pbuz1=_inc_pbuz1 inc sqr1_lo bne !+ inc sqr1_lo+1 !: - //SEG525 [244] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- pbuz1_neq_pbuc1_then_la1 + //SEG584 [270] if((byte*) mulf_init::sqr1_lo#1!=(const byte[512]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) 512) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) -- pbuz1_neq_pbuc1_then_la1 lda sqr1_lo+1 cmp #>mulf_sqr1_lo+$200 bne b1 lda sqr1_lo cmp #mulf_init::@3] - //SEG527 [245] phi (byte) mulf_init::dir#2 = (byte/word/signed word/dword/signed dword) 255 [phi:mulf_init::@2->mulf_init::@3#0] -- vbuz1=vbuc1 + //SEG585 [271] phi from mulf_init::@2 to mulf_init::@3 [phi:mulf_init::@2->mulf_init::@3] + //SEG586 [271] phi (byte) mulf_init::dir#2 = (byte/word/signed word/dword/signed dword) 255 [phi:mulf_init::@2->mulf_init::@3#0] -- vbuz1=vbuc1 lda #$ff sta dir - //SEG528 [245] phi (byte*) mulf_init::sqr2_hi#2 = (const byte[512]) mulf_sqr2_hi#0 [phi:mulf_init::@2->mulf_init::@3#1] -- pbuz1=pbuc1 + //SEG587 [271] phi (byte*) mulf_init::sqr2_hi#2 = (const byte[512]) mulf_sqr2_hi#0 [phi:mulf_init::@2->mulf_init::@3#1] -- pbuz1=pbuc1 lda #mulf_sqr2_hi sta sqr2_hi+1 - //SEG529 [245] phi (byte*) mulf_init::sqr2_lo#2 = (const byte[512]) mulf_sqr2_lo#0 [phi:mulf_init::@2->mulf_init::@3#2] -- pbuz1=pbuc1 + //SEG588 [271] phi (byte*) mulf_init::sqr2_lo#2 = (const byte[512]) mulf_sqr2_lo#0 [phi:mulf_init::@2->mulf_init::@3#2] -- pbuz1=pbuc1 lda #mulf_sqr2_lo sta sqr2_lo+1 - //SEG530 [245] phi (byte) mulf_init::x_255#2 = ((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init::@2->mulf_init::@3#3] -- vbuxx=vbuc1 + //SEG589 [271] phi (byte) mulf_init::x_255#2 = ((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init::@2->mulf_init::@3#3] -- vbuxx=vbuc1 ldx #-1 - //SEG531 [245] phi from mulf_init::@4 to mulf_init::@3 [phi:mulf_init::@4->mulf_init::@3] - //SEG532 [245] phi (byte) mulf_init::dir#2 = (byte) mulf_init::dir#3 [phi:mulf_init::@4->mulf_init::@3#0] -- register_copy - //SEG533 [245] phi (byte*) mulf_init::sqr2_hi#2 = (byte*) mulf_init::sqr2_hi#1 [phi:mulf_init::@4->mulf_init::@3#1] -- register_copy - //SEG534 [245] phi (byte*) mulf_init::sqr2_lo#2 = (byte*) mulf_init::sqr2_lo#1 [phi:mulf_init::@4->mulf_init::@3#2] -- register_copy - //SEG535 [245] phi (byte) mulf_init::x_255#2 = (byte) mulf_init::x_255#1 [phi:mulf_init::@4->mulf_init::@3#3] -- register_copy - //SEG536 mulf_init::@3 + //SEG590 [271] phi from mulf_init::@4 to mulf_init::@3 [phi:mulf_init::@4->mulf_init::@3] + //SEG591 [271] phi (byte) mulf_init::dir#2 = (byte) mulf_init::dir#3 [phi:mulf_init::@4->mulf_init::@3#0] -- register_copy + //SEG592 [271] phi (byte*) mulf_init::sqr2_hi#2 = (byte*) mulf_init::sqr2_hi#1 [phi:mulf_init::@4->mulf_init::@3#1] -- register_copy + //SEG593 [271] phi (byte*) mulf_init::sqr2_lo#2 = (byte*) mulf_init::sqr2_lo#1 [phi:mulf_init::@4->mulf_init::@3#2] -- register_copy + //SEG594 [271] phi (byte) mulf_init::x_255#2 = (byte) mulf_init::x_255#1 [phi:mulf_init::@4->mulf_init::@3#3] -- register_copy + //SEG595 mulf_init::@3 b3: - //SEG537 [246] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG596 [272] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[512]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda mulf_sqr1_lo,x ldy #0 sta (sqr2_lo),y - //SEG538 [247] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG597 [273] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[512]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda mulf_sqr1_hi,x sta (sqr2_hi),y - //SEG539 [248] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG598 [274] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::sqr2_hi#1 ] ) -- pbuz1=_inc_pbuz1 inc sqr2_hi bne !+ inc sqr2_hi+1 !: - //SEG540 [249] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) -- vbuxx=vbuxx_plus_vbuz1 + //SEG599 [275] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) -- vbuxx=vbuxx_plus_vbuz1 txa clc adc dir tax - //SEG541 [250] if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@12 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) -- vbuxx_neq_0_then_la1 + //SEG600 [276] if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@12 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) -- vbuxx_neq_0_then_la1 cpx #0 bne b4 - //SEG542 [251] phi from mulf_init::@3 to mulf_init::@4 [phi:mulf_init::@3->mulf_init::@4] - //SEG543 [251] phi (byte) mulf_init::dir#3 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init::@3->mulf_init::@4#0] -- vbuz1=vbuc1 + //SEG601 [277] phi from mulf_init::@3 to mulf_init::@4 [phi:mulf_init::@3->mulf_init::@4] + //SEG602 [277] phi (byte) mulf_init::dir#3 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:mulf_init::@3->mulf_init::@4#0] -- vbuz1=vbuc1 lda #1 sta dir - //SEG544 mulf_init::@4 + //SEG603 mulf_init::@4 b4: - //SEG545 [252] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) -- pbuz1=_inc_pbuz1 + //SEG604 [278] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) -- pbuz1=_inc_pbuz1 inc sqr2_lo bne !+ inc sqr2_lo+1 !: - //SEG546 [253] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) -- pbuz1_neq_pbuc1_then_la1 + //SEG605 [279] if((byte*) mulf_init::sqr2_lo#1!=(const byte[512]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) 511) goto mulf_init::@3 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) -- pbuz1_neq_pbuc1_then_la1 lda sqr2_lo+1 cmp #>mulf_sqr2_lo+$1ff bne b3 lda sqr2_lo cmp #mulf_init::@12] - //SEG553 mulf_init::@12 - //SEG554 [251] phi from mulf_init::@12 to mulf_init::@4 [phi:mulf_init::@12->mulf_init::@4] - //SEG555 [251] phi (byte) mulf_init::dir#3 = (byte) mulf_init::dir#2 [phi:mulf_init::@12->mulf_init::@4#0] -- register_copy + //SEG611 [283] phi from mulf_init::@3 to mulf_init::@12 [phi:mulf_init::@3->mulf_init::@12] + //SEG612 mulf_init::@12 + //SEG613 [277] phi from mulf_init::@12 to mulf_init::@4 [phi:mulf_init::@12->mulf_init::@4] + //SEG614 [277] phi (byte) mulf_init::dir#3 = (byte) mulf_init::dir#2 [phi:mulf_init::@12->mulf_init::@4#0] -- register_copy } -//SEG556 print_cls +//SEG615 print_cls print_cls: { .label sc = 4 - //SEG557 [259] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] - //SEG558 [259] phi (byte*) print_cls::sc#2 = (const byte*) SCREEN#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 + //SEG616 [285] phi from print_cls to print_cls::@1 [phi:print_cls->print_cls::@1] + //SEG617 [285] phi (byte*) print_cls::sc#2 = (const byte*) SCREEN#0 [phi:print_cls->print_cls::@1#0] -- pbuz1=pbuc1 lda #SCREEN sta sc+1 - //SEG559 [259] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] - //SEG560 [259] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy - //SEG561 print_cls::@1 + //SEG618 [285] phi from print_cls::@1 to print_cls::@1 [phi:print_cls::@1->print_cls::@1] + //SEG619 [285] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy + //SEG620 print_cls::@1 b1: - //SEG562 [260] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 + //SEG621 [286] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG563 [261] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 + //SEG622 [287] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 !: - //SEG564 [262] 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 [ print_cls::sc#1 ] ) -- pbuz1_neq_pbuc1_then_la1 + //SEG623 [288] 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 [ print_cls::sc#1 ] ) -- pbuz1_neq_pbuc1_then_la1 lda sc+1 cmp #>SCREEN+$3e8 bne b1 lda sc cmp #