From 39925809e318d3120899ec5b3413fb85fb7bd4b4 Mon Sep 17 00:00:00 2001 From: jespergravgaard Date: Fri, 29 Dec 2017 16:34:55 +0100 Subject: [PATCH] Removed AsmFragment log again --- .../dk/camelot64/kickc/test/ref/multiply.log | 272 ------------------ 1 file changed, 272 deletions(-) diff --git a/src/test/java/dk/camelot64/kickc/test/ref/multiply.log b/src/test/java/dk/camelot64/kickc/test/ref/multiply.log index 5592baa4c..b578fd82a 100644 --- a/src/test/java/dk/camelot64/kickc/test/ref/multiply.log +++ b/src/test/java/dk/camelot64/kickc/test/ref/multiply.log @@ -2225,80 +2225,6 @@ Allocated zp ZP_BYTE:31 [ print_byte::$2 ] Allocated zp ZP_BYTE:32 [ init_mul_tables::$2 ] Allocated zp ZP_BYTE:33 [ init_mul_tables::$5 ] Allocated zp ZP_BYTE:34 [ init_mul_tables::$6 ] -Attempting fragment synthesis _deref_pbuc1=vbuc2 -Succesfully loaded fragment _deref_vwuc1=vbuc2 -Succesfully synthesized fragment _deref_pbuc1=vbuc2 (from _deref_vwuc1=vbuc2) -Attempting fragment synthesis pbuz1=pbuc1 -Succesfully loaded fragment pbuz1=vwuc1 -Succesfully synthesized fragment pbuz1=pbuc1 (from pbuz1=vwuc1) -Attempting fragment synthesis _deref_pbuz1_eq__deref_pbuz2_then_la1 -Succesfully loaded fragment vbuaa_eq__deref_pbuz1_then_la1 -Succesfully synthesized fragment _deref_pbuz1_eq__deref_pbuz2_then_la1 (from vbuaa_eq__deref_pbuz1_then_la1) -Succesfully loaded fragment vwuz1=_word_pbuz2 -Succesfully loaded fragment pbuz1=_inc_pbuz1 -Attempting fragment synthesis pbuz1_lt_pbuc1_then_la1 -Succesfully loaded fragment pbuz1_lt_vwuc1_then_la1 -Succesfully synthesized fragment pbuz1_lt_pbuc1_then_la1 (from pbuz1_lt_vwuc1_then_la1) -Attempting fragment synthesis vbuz1=_hi_vwuz2 -Succesfully loaded fragment vbuaa=_hi_vwuz1 -Succesfully synthesized fragment vbuz1=_hi_vwuz2 (from vbuaa=_hi_vwuz1) -Attempting fragment synthesis vbuz1=_lo_vwuz2 -Succesfully loaded fragment vbuaa=_lo_vwuz1 -Succesfully synthesized fragment vbuz1=_lo_vwuz2 (from vbuaa=_lo_vwuz1) -Attempting fragment synthesis vbuz1=vbuz2_ror_4 -Attempting fragment synthesis vbuaa=vbuz1_ror_4 -Succesfully loaded fragment vbuaa=vbuaa_ror_4 -Succesfully synthesized fragment vbuaa=vbuz1_ror_4 (from vbuaa=vbuaa_ror_4) -Succesfully synthesized fragment vbuz1=vbuz2_ror_4 (from vbuaa=vbuz1_ror_4) -Attempting fragment synthesis vbuz1=pbuc1_derefidx_vbuz2 -Attempting fragment synthesis vbuz1=vwuc1_derefidx_vbuz2 -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuz1 -Succesfully synthesized fragment vbuz1=vwuc1_derefidx_vbuz2 (from vbuaa=vwuc1_derefidx_vbuz1) -Succesfully synthesized fragment vbuz1=pbuc1_derefidx_vbuz2 (from vbuz1=vwuc1_derefidx_vbuz2) -Attempting fragment synthesis vbuz1=vbuz2_band_vbuc1 -Attempting fragment synthesis vbuaa=vbuz1_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuaa=vbuz1_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Succesfully synthesized fragment vbuz1=vbuz2_band_vbuc1 (from vbuaa=vbuz1_band_vbuc1) -Succesfully loaded fragment _deref_pbuz1=vbuz2 -Attempting fragment synthesis _deref_pbuz1_neq_vbuc1_then_la1 -Succesfully loaded fragment vbuaa_neq_vbuc1_then_la1 -Succesfully synthesized fragment _deref_pbuz1_neq_vbuc1_then_la1 (from vbuaa_neq_vbuc1_then_la1) -Attempting fragment synthesis _deref_pbuz1=_deref_pbuz2 -Succesfully loaded fragment vbuaa=_deref_pbuz1 -Succesfully synthesized fragment _deref_pbuz1=_deref_pbuz2 (from vbuaa=_deref_pbuz1) -Succesfully loaded fragment _deref_pbuz1=vbuc1 -Succesfully loaded fragment pbuz1_neq_vwuc1_then_la1 -Attempting fragment synthesis _deref_pbuc1=_deref_pbuc2 -Attempting fragment synthesis _deref_pbuc1=_deref_vwuc2 -Attempting fragment synthesis _deref_vwuc1=_deref_vwuc2 -Succesfully loaded fragment vbuaa=_deref_vwuc1 -Succesfully synthesized fragment _deref_vwuc1=_deref_vwuc2 (from vbuaa=_deref_vwuc1) -Succesfully synthesized fragment _deref_pbuc1=_deref_vwuc2 (from _deref_vwuc1=_deref_vwuc2) -Succesfully synthesized fragment _deref_pbuc1=_deref_pbuc2 (from _deref_pbuc1=_deref_vwuc2) -Attempting fragment synthesis vbuz1=vbuc1 -Succesfully loaded fragment vbuaa=vbuc1 -Succesfully synthesized fragment vbuz1=vbuc1 (from vbuaa=vbuc1) -Attempting fragment synthesis vwuz1=vbuc1 -Succesfully loaded fragment vwuz1=vbuaa -Succesfully synthesized fragment vwuz1=vbuc1 (from vwuz1=vbuaa) -Succesfully loaded fragment vbuz1=_inc_vbuz1 -Succesfully loaded fragment vbuz1_neq_0_then_la1 -Succesfully loaded fragment vwuz1=_inc_vwuz1 -Attempting fragment synthesis vwuz1=vwuz1_plus_vbuz2 -Attempting fragment synthesis vwuz1=vwuz1_plus_vbuaa -Succesfully loaded fragment vwuz1=vbuaa_plus_vwuz1 -Succesfully synthesized fragment vwuz1=vwuz1_plus_vbuaa (from vwuz1=vbuaa_plus_vwuz1) -Succesfully synthesized fragment vwuz1=vwuz1_plus_vbuz2 (from vwuz1=vwuz1_plus_vbuaa) -Attempting fragment synthesis pbuz1_neq_pbuc1_then_la1 -Succesfully loaded fragment pbuz1_neq_vwuc1_then_la1 -Succesfully synthesized fragment pbuz1_neq_pbuc1_then_la1 (from pbuz1_neq_vwuc1_then_la1) -Attempting fragment synthesis _deref_pbuz1=pbuc1_derefidx_vbuz2 -Attempting fragment synthesis _deref_pbuz1=vwuc1_derefidx_vbuz2 -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuz1 -Succesfully synthesized fragment _deref_pbuz1=vwuc1_derefidx_vbuz2 (from vbuaa=vwuc1_derefidx_vbuz1) -Succesfully synthesized fragment _deref_pbuz1=pbuc1_derefidx_vbuz2 (from _deref_pbuz1=vwuc1_derefidx_vbuz2) -Succesfully loaded fragment vbuz1=vbuz1_plus_vbuz2 INITIAL ASM //SEG0 Basic Upstart @@ -2951,129 +2877,9 @@ Statement [14] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word) Statement [18] (word) print_word::w#0 ← ((word)) (byte*) mul_tables_compare::asm_sqr#2 [ mul_tables_compare::kc_sqr#2 print_word::w#0 char_cursor#19 ] ( main:2::mul_tables_compare:9 [ mul_tables_compare::kc_sqr#2 print_word::w#0 char_cursor#19 ] ) always clobbers reg byte a Statement [22] (word) print_word::w#1 ← ((word)) (byte*) mul_tables_compare::kc_sqr#2 [ print_word::w#1 char_cursor#19 ] ( main:2::mul_tables_compare:9 [ print_word::w#1 char_cursor#19 ] ) always clobbers reg byte a Statement [28] if((byte*) mul_tables_compare::kc_sqr#1<(const byte[512]) mul_sqr1_lo#0+(word/signed word) 512*(byte/signed byte/word/signed word) 4) goto mul_tables_compare::@1 [ mul_tables_compare::kc_sqr#1 mul_tables_compare::asm_sqr#1 ] ( main:2::mul_tables_compare:9 [ mul_tables_compare::kc_sqr#1 mul_tables_compare::asm_sqr#1 ] ) always clobbers reg byte a -Succesfully loaded fragment vbuaa=_hi_vwuz1 -Attempting fragment synthesis vbuxx=_hi_vwuz1 -Succesfully loaded fragment vbuaa=_hi_vwuz1 -Succesfully synthesized fragment vbuxx=_hi_vwuz1 (from vbuaa=_hi_vwuz1) -Attempting fragment synthesis vbuyy=_hi_vwuz1 -Succesfully loaded fragment vbuaa=_hi_vwuz1 -Succesfully synthesized fragment vbuyy=_hi_vwuz1 (from vbuaa=_hi_vwuz1) Statement [30] (byte) print_byte::b#0 ← > (word) print_word::w#2 [ print_word::w#2 print_byte::b#0 char_cursor#19 ] ( main:2::mul_tables_compare:9::print_word:19 [ mul_tables_compare::kc_sqr#2 print_word::w#2 print_byte::b#0 char_cursor#19 ] main:2::mul_tables_compare:9::print_word:23 [ print_word::w#2 print_byte::b#0 char_cursor#19 ] ) always clobbers reg byte a -Succesfully loaded fragment vbuaa=_lo_vwuz1 -Attempting fragment synthesis vbuxx=_lo_vwuz1 -Succesfully loaded fragment vbuaa=_lo_vwuz1 -Succesfully synthesized fragment vbuxx=_lo_vwuz1 (from vbuaa=_lo_vwuz1) -Attempting fragment synthesis vbuyy=_lo_vwuz1 -Succesfully loaded fragment vbuaa=_lo_vwuz1 -Succesfully synthesized fragment vbuyy=_lo_vwuz1 (from vbuaa=_lo_vwuz1) Statement [32] (byte) print_byte::b#1 ← < (word) print_word::w#2 [ char_cursor#10 print_byte::b#1 ] ( main:2::mul_tables_compare:9::print_word:19 [ mul_tables_compare::kc_sqr#2 char_cursor#10 print_byte::b#1 ] main:2::mul_tables_compare:9::print_word:23 [ char_cursor#10 print_byte::b#1 ] ) always clobbers reg byte a -Attempting fragment synthesis vbuz1=vbuaa_ror_4 -Succesfully loaded fragment vbuaa=vbuaa_ror_4 -Succesfully synthesized fragment vbuz1=vbuaa_ror_4 (from vbuaa=vbuaa_ror_4) -Attempting fragment synthesis vbuaa=pbuc1_derefidx_vbuz1 -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuz1 -Succesfully synthesized fragment vbuaa=pbuc1_derefidx_vbuz1 (from vbuaa=vwuc1_derefidx_vbuz1) -Attempting fragment synthesis vbuxx=pbuc1_derefidx_vbuz1 -Succesfully loaded fragment vbuxx=vwuc1_derefidx_vbuz1 -Succesfully synthesized fragment vbuxx=pbuc1_derefidx_vbuz1 (from vbuxx=vwuc1_derefidx_vbuz1) -Attempting fragment synthesis vbuyy=pbuc1_derefidx_vbuz1 -Attempting fragment synthesis vbuyy=vwuc1_derefidx_vbuz1 -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuz1 -Succesfully synthesized fragment vbuyy=vwuc1_derefidx_vbuz1 (from vbuaa=vwuc1_derefidx_vbuz1) -Succesfully synthesized fragment vbuyy=pbuc1_derefidx_vbuz1 (from vbuyy=vwuc1_derefidx_vbuz1) -Attempting fragment synthesis vbuz1=pbuc1_derefidx_vbuaa -Attempting fragment synthesis vbuz1=vwuc1_derefidx_vbuaa -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuaa -Succesfully synthesized fragment vbuz1=vwuc1_derefidx_vbuaa (from vbuaa=vwuc1_derefidx_vbuaa) -Succesfully synthesized fragment vbuz1=pbuc1_derefidx_vbuaa (from vbuz1=vwuc1_derefidx_vbuaa) -Attempting fragment synthesis vbuaa=pbuc1_derefidx_vbuaa -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuaa -Succesfully synthesized fragment vbuaa=pbuc1_derefidx_vbuaa (from vbuaa=vwuc1_derefidx_vbuaa) -Attempting fragment synthesis vbuxx=pbuc1_derefidx_vbuaa -Succesfully loaded fragment vbuxx=vwuc1_derefidx_vbuaa -Succesfully synthesized fragment vbuxx=pbuc1_derefidx_vbuaa (from vbuxx=vwuc1_derefidx_vbuaa) -Attempting fragment synthesis vbuyy=pbuc1_derefidx_vbuaa -Attempting fragment synthesis vbuyy=vwuc1_derefidx_vbuaa -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuaa -Succesfully synthesized fragment vbuyy=vwuc1_derefidx_vbuaa (from vbuaa=vwuc1_derefidx_vbuaa) -Succesfully synthesized fragment vbuyy=pbuc1_derefidx_vbuaa (from vbuyy=vwuc1_derefidx_vbuaa) -Attempting fragment synthesis vbuz1=pbuc1_derefidx_vbuxx -Attempting fragment synthesis vbuz1=vwuc1_derefidx_vbuxx -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuxx -Succesfully synthesized fragment vbuz1=vwuc1_derefidx_vbuxx (from vbuaa=vwuc1_derefidx_vbuxx) -Succesfully synthesized fragment vbuz1=pbuc1_derefidx_vbuxx (from vbuz1=vwuc1_derefidx_vbuxx) -Attempting fragment synthesis vbuaa=pbuc1_derefidx_vbuxx -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuxx -Succesfully synthesized fragment vbuaa=pbuc1_derefidx_vbuxx (from vbuaa=vwuc1_derefidx_vbuxx) -Attempting fragment synthesis vbuxx=pbuc1_derefidx_vbuxx -Succesfully loaded fragment vbuxx=vwuc1_derefidx_vbuxx -Succesfully synthesized fragment vbuxx=pbuc1_derefidx_vbuxx (from vbuxx=vwuc1_derefidx_vbuxx) -Attempting fragment synthesis vbuyy=pbuc1_derefidx_vbuxx -Succesfully loaded fragment vbuyy=vwuc1_derefidx_vbuxx -Succesfully synthesized fragment vbuyy=pbuc1_derefidx_vbuxx (from vbuyy=vwuc1_derefidx_vbuxx) -Attempting fragment synthesis vbuz1=vbuaa_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuz1=vbuaa_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Attempting fragment synthesis vbuz1=vbuxx_band_vbuc1 -Attempting fragment synthesis vbuaa=vbuxx_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuaa=vbuxx_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Succesfully synthesized fragment vbuz1=vbuxx_band_vbuc1 (from vbuaa=vbuxx_band_vbuc1) -Attempting fragment synthesis vbuz1=vbuyy_band_vbuc1 -Attempting fragment synthesis vbuaa=vbuyy_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuaa=vbuyy_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Succesfully synthesized fragment vbuz1=vbuyy_band_vbuc1 (from vbuaa=vbuyy_band_vbuc1) -Attempting fragment synthesis vbuaa=vbuz1_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuaa=vbuz1_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Attempting fragment synthesis vbuaa=vbuxx_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuaa=vbuxx_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Attempting fragment synthesis vbuaa=vbuyy_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuaa=vbuyy_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Attempting fragment synthesis vbuxx=vbuz1_band_vbuc1 -Attempting fragment synthesis vbuaa=vbuz1_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuaa=vbuz1_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Succesfully synthesized fragment vbuxx=vbuz1_band_vbuc1 (from vbuaa=vbuz1_band_vbuc1) -Attempting fragment synthesis vbuxx=vbuaa_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuxx=vbuaa_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Attempting fragment synthesis vbuxx=vbuxx_band_vbuc1 -Attempting fragment synthesis vbuaa=vbuxx_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuaa=vbuxx_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Succesfully synthesized fragment vbuxx=vbuxx_band_vbuc1 (from vbuaa=vbuxx_band_vbuc1) -Attempting fragment synthesis vbuxx=vbuyy_band_vbuc1 -Attempting fragment synthesis vbuaa=vbuyy_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuaa=vbuyy_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Succesfully synthesized fragment vbuxx=vbuyy_band_vbuc1 (from vbuaa=vbuyy_band_vbuc1) -Attempting fragment synthesis vbuyy=vbuz1_band_vbuc1 -Attempting fragment synthesis vbuaa=vbuz1_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuaa=vbuz1_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Succesfully synthesized fragment vbuyy=vbuz1_band_vbuc1 (from vbuaa=vbuz1_band_vbuc1) -Attempting fragment synthesis vbuyy=vbuaa_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuyy=vbuaa_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Attempting fragment synthesis vbuyy=vbuxx_band_vbuc1 -Attempting fragment synthesis vbuaa=vbuxx_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuaa=vbuxx_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Succesfully synthesized fragment vbuyy=vbuxx_band_vbuc1 (from vbuaa=vbuxx_band_vbuc1) -Attempting fragment synthesis vbuyy=vbuyy_band_vbuc1 -Attempting fragment synthesis vbuaa=vbuyy_band_vbuc1 -Succesfully loaded fragment vbuaa=vbuaa_band_vbuc1 -Succesfully synthesized fragment vbuaa=vbuyy_band_vbuc1 (from vbuaa=vbuaa_band_vbuc1) -Succesfully synthesized fragment vbuyy=vbuyy_band_vbuc1 (from vbuaa=vbuyy_band_vbuc1) Statement [39] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word) 15 [ char_cursor#10 print_byte::$2 ] ( main:2::mul_tables_compare:9::print_word:19::print_byte:31 [ mul_tables_compare::kc_sqr#2 print_word::w#2 char_cursor#10 print_byte::$2 ] main:2::mul_tables_compare:9::print_word:23::print_byte:31 [ print_word::w#2 char_cursor#10 print_byte::$2 ] main:2::mul_tables_compare:9::print_word:19::print_byte:33 [ mul_tables_compare::kc_sqr#2 char_cursor#10 print_byte::$2 ] main:2::mul_tables_compare:9::print_word:23::print_byte:33 [ char_cursor#10 print_byte::$2 ] ) always clobbers reg byte a -Succesfully loaded fragment _deref_pbuz1=vbuaa -Succesfully loaded fragment _deref_pbuz1=vbuxx -Succesfully loaded fragment _deref_pbuz1=vbuyy Statement [44] *((byte*) char_cursor#27) ← (byte) print_char::ch#2 [ char_cursor#27 ] ( main:2::mul_tables_compare:9::print_word:19::print_byte:31::print_char:38 [ mul_tables_compare::kc_sqr#2 print_word::w#2 print_byte::b#2 char_cursor#27 ] main:2::mul_tables_compare:9::print_word:23::print_byte:31::print_char:38 [ print_word::w#2 print_byte::b#2 char_cursor#27 ] main:2::mul_tables_compare:9::print_word:19::print_byte:33::print_char:38 [ mul_tables_compare::kc_sqr#2 print_byte::b#2 char_cursor#27 ] main:2::mul_tables_compare:9::print_word:23::print_byte:33::print_char:38 [ print_byte::b#2 char_cursor#27 ] main:2::mul_tables_compare:9::print_word:19::print_byte:31::print_char:41 [ mul_tables_compare::kc_sqr#2 print_word::w#2 char_cursor#27 ] main:2::mul_tables_compare:9::print_word:23::print_byte:31::print_char:41 [ print_word::w#2 char_cursor#27 ] main:2::mul_tables_compare:9::print_word:19::print_byte:33::print_char:41 [ mul_tables_compare::kc_sqr#2 char_cursor#27 ] main:2::mul_tables_compare:9::print_word:23::print_byte:33::print_char:41 [ char_cursor#27 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:8 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ] Statement [49] if(*((byte*) print_str::str#3)!=(byte) '@') goto print_str::@2 [ char_cursor#19 print_str::str#3 ] ( main:2::mul_tables_compare:9::print_str:17 [ mul_tables_compare::kc_sqr#2 mul_tables_compare::asm_sqr#2 char_cursor#19 print_str::str#3 ] main:2::mul_tables_compare:9::print_str:21 [ mul_tables_compare::kc_sqr#2 char_cursor#19 print_str::str#3 ] ) always clobbers reg byte a reg byte y @@ -3088,50 +2894,21 @@ Statement [64] *((const byte*) init_mul_tables_asm::mem#0) ← *((const byte[512 Statement [69] (byte~) init_mul_tables::$2 ← (byte) init_mul_tables::c#1 & (byte/signed byte/word/signed word) 1 [ init_mul_tables::sqr#4 init_mul_tables::sqr1_lo#2 init_mul_tables::sqr1_hi#2 init_mul_tables::x_2#3 init_mul_tables::c#1 init_mul_tables::$2 ] ( main:2::init_mul_tables:5 [ init_mul_tables::sqr#4 init_mul_tables::sqr1_lo#2 init_mul_tables::sqr1_hi#2 init_mul_tables::x_2#3 init_mul_tables::c#1 init_mul_tables::$2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:21 [ init_mul_tables::x_2#3 init_mul_tables::x_2#2 init_mul_tables::x_2#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:16 [ init_mul_tables::c#2 init_mul_tables::c#1 ] -Succesfully loaded fragment vbuaa_neq_0_then_la1 Statement [74] (byte~) init_mul_tables::$5 ← < (word) init_mul_tables::sqr#3 [ init_mul_tables::sqr1_lo#2 init_mul_tables::sqr1_hi#2 init_mul_tables::c#1 init_mul_tables::x_2#2 init_mul_tables::sqr#3 init_mul_tables::$5 ] ( main:2::init_mul_tables:5 [ init_mul_tables::sqr1_lo#2 init_mul_tables::sqr1_hi#2 init_mul_tables::c#1 init_mul_tables::x_2#2 init_mul_tables::sqr#3 init_mul_tables::$5 ] ) always clobbers reg byte a Statement [75] *((byte*) init_mul_tables::sqr1_lo#2) ← (byte~) init_mul_tables::$5 [ init_mul_tables::sqr1_lo#2 init_mul_tables::sqr1_hi#2 init_mul_tables::c#1 init_mul_tables::x_2#2 init_mul_tables::sqr#3 ] ( main:2::init_mul_tables:5 [ init_mul_tables::sqr1_lo#2 init_mul_tables::sqr1_hi#2 init_mul_tables::c#1 init_mul_tables::x_2#2 init_mul_tables::sqr#3 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:16 [ init_mul_tables::c#2 init_mul_tables::c#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:21 [ init_mul_tables::x_2#3 init_mul_tables::x_2#2 init_mul_tables::x_2#1 ] Statement [76] (byte~) init_mul_tables::$6 ← > (word) init_mul_tables::sqr#3 [ init_mul_tables::sqr1_lo#2 init_mul_tables::sqr1_hi#2 init_mul_tables::c#1 init_mul_tables::x_2#2 init_mul_tables::sqr#3 init_mul_tables::$6 ] ( main:2::init_mul_tables:5 [ init_mul_tables::sqr1_lo#2 init_mul_tables::sqr1_hi#2 init_mul_tables::c#1 init_mul_tables::x_2#2 init_mul_tables::sqr#3 init_mul_tables::$6 ] ) always clobbers reg byte a Statement [77] *((byte*) init_mul_tables::sqr1_hi#2) ← (byte~) init_mul_tables::$6 [ init_mul_tables::sqr1_lo#2 init_mul_tables::sqr1_hi#2 init_mul_tables::c#1 init_mul_tables::x_2#2 init_mul_tables::sqr#3 ] ( main:2::init_mul_tables:5 [ init_mul_tables::sqr1_lo#2 init_mul_tables::sqr1_hi#2 init_mul_tables::c#1 init_mul_tables::x_2#2 init_mul_tables::sqr#3 ] ) always clobbers reg byte y -Attempting fragment synthesis vwuz1=vwuz1_plus_vbuxx -Attempting fragment synthesis vwuz1=vbuxx_plus_vwuz1 -Succesfully loaded fragment vwuz1=vbuaa_plus_vwuz1 -Succesfully synthesized fragment vwuz1=vbuxx_plus_vwuz1 (from vwuz1=vbuaa_plus_vwuz1) -Succesfully synthesized fragment vwuz1=vwuz1_plus_vbuxx (from vwuz1=vbuxx_plus_vwuz1) Statement [79] (word) init_mul_tables::sqr#1 ← (word) init_mul_tables::sqr#3 + (byte) init_mul_tables::x_2#2 [ init_mul_tables::sqr1_lo#2 init_mul_tables::c#1 init_mul_tables::sqr#1 init_mul_tables::sqr1_hi#1 init_mul_tables::x_2#2 ] ( main:2::init_mul_tables:5 [ init_mul_tables::sqr1_lo#2 init_mul_tables::c#1 init_mul_tables::sqr#1 init_mul_tables::sqr1_hi#1 init_mul_tables::x_2#2 ] ) always clobbers reg byte a Statement [81] if((byte*) init_mul_tables::sqr1_lo#1!=(const byte[512]) mul_sqr1_lo#0+(word/signed word) 512) goto init_mul_tables::@1 [ init_mul_tables::c#1 init_mul_tables::sqr#1 init_mul_tables::sqr1_lo#1 init_mul_tables::sqr1_hi#1 init_mul_tables::x_2#2 ] ( main:2::init_mul_tables:5 [ init_mul_tables::c#1 init_mul_tables::sqr#1 init_mul_tables::sqr1_lo#1 init_mul_tables::sqr1_hi#1 init_mul_tables::x_2#2 ] ) always clobbers reg byte a -Attempting fragment synthesis _deref_pbuz1=pbuc1_derefidx_vbuaa -Attempting fragment synthesis _deref_pbuz1=vwuc1_derefidx_vbuaa -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuaa -Succesfully synthesized fragment _deref_pbuz1=vwuc1_derefidx_vbuaa (from vbuaa=vwuc1_derefidx_vbuaa) -Succesfully synthesized fragment _deref_pbuz1=pbuc1_derefidx_vbuaa (from _deref_pbuz1=vwuc1_derefidx_vbuaa) -Attempting fragment synthesis _deref_pbuz1=pbuc1_derefidx_vbuxx -Attempting fragment synthesis _deref_pbuz1=vwuc1_derefidx_vbuxx -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuxx -Succesfully synthesized fragment _deref_pbuz1=vwuc1_derefidx_vbuxx (from vbuaa=vwuc1_derefidx_vbuxx) -Succesfully synthesized fragment _deref_pbuz1=pbuc1_derefidx_vbuxx (from _deref_pbuz1=vwuc1_derefidx_vbuxx) -Attempting fragment synthesis _deref_pbuz1=pbuc1_derefidx_vbuyy -Attempting fragment synthesis _deref_pbuz1=vwuc1_derefidx_vbuyy -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuyy -Succesfully synthesized fragment _deref_pbuz1=vwuc1_derefidx_vbuyy (from vbuaa=vwuc1_derefidx_vbuyy) -Succesfully synthesized fragment _deref_pbuz1=pbuc1_derefidx_vbuyy (from _deref_pbuz1=vwuc1_derefidx_vbuyy) Statement [83] *((byte*) init_mul_tables::sqr2_lo#2) ← *((const byte[512]) mul_sqr1_lo#0 + (byte) init_mul_tables::x_255#2) [ init_mul_tables::x_255#2 init_mul_tables::sqr2_lo#2 init_mul_tables::sqr2_hi#2 init_mul_tables::dir#2 ] ( main:2::init_mul_tables:5 [ init_mul_tables::x_255#2 init_mul_tables::sqr2_lo#2 init_mul_tables::sqr2_hi#2 init_mul_tables::dir#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:24 [ init_mul_tables::x_255#2 init_mul_tables::x_255#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:24 [ init_mul_tables::x_255#2 init_mul_tables::x_255#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:29 [ init_mul_tables::dir#2 init_mul_tables::dir#3 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:29 [ init_mul_tables::dir#2 init_mul_tables::dir#3 ] Statement [84] *((byte*) init_mul_tables::sqr2_hi#2) ← *((const byte[512]) mul_sqr1_hi#0 + (byte) init_mul_tables::x_255#2) [ init_mul_tables::x_255#2 init_mul_tables::sqr2_lo#2 init_mul_tables::sqr2_hi#2 init_mul_tables::dir#2 ] ( main:2::init_mul_tables:5 [ init_mul_tables::x_255#2 init_mul_tables::sqr2_lo#2 init_mul_tables::sqr2_hi#2 init_mul_tables::dir#2 ] ) always clobbers reg byte a reg byte y -Attempting fragment synthesis vbuxx=vbuxx_plus_vbuz1 -Succesfully loaded fragment vbuaa=vbuxx_plus_vbuz1 -Succesfully synthesized fragment vbuxx=vbuxx_plus_vbuz1 (from vbuaa=vbuxx_plus_vbuz1) -Succesfully loaded fragment vbuz1=vbuz1_plus_vbuxx -Attempting fragment synthesis vbuxx=vbuxx_plus_vbuxx -Succesfully loaded fragment vbuaa=vbuxx_plus_vbuxx -Succesfully synthesized fragment vbuxx=vbuxx_plus_vbuxx (from vbuaa=vbuxx_plus_vbuxx) Statement [86] (byte) init_mul_tables::x_255#1 ← (byte) init_mul_tables::x_255#2 + (byte) init_mul_tables::dir#2 [ init_mul_tables::sqr2_lo#2 init_mul_tables::dir#2 init_mul_tables::x_255#1 init_mul_tables::sqr2_hi#1 ] ( main:2::init_mul_tables:5 [ init_mul_tables::sqr2_lo#2 init_mul_tables::dir#2 init_mul_tables::x_255#1 init_mul_tables::sqr2_hi#1 ] ) always clobbers reg byte a -Succesfully loaded fragment vbuxx_neq_0_then_la1 Statement [90] if((byte*) init_mul_tables::sqr2_lo#1!=(const byte[512]) mul_sqr2_lo#0+(word/signed word) 511) goto init_mul_tables::@3 [ init_mul_tables::x_255#1 init_mul_tables::sqr2_lo#1 init_mul_tables::sqr2_hi#1 init_mul_tables::dir#3 ] ( main:2::init_mul_tables:5 [ init_mul_tables::x_255#1 init_mul_tables::sqr2_lo#1 init_mul_tables::sqr2_hi#1 init_mul_tables::dir#3 ] ) always clobbers reg byte a Statement [91] *((const byte[512]) mul_sqr2_lo#0+(word/signed word) 511) ← *((const byte[512]) mul_sqr1_lo#0+(word/signed word) 256) [ ] ( main:2::init_mul_tables:5 [ ] ) always clobbers reg byte a Statement [92] *((const byte[512]) mul_sqr2_hi#0+(word/signed word) 511) ← *((const byte[512]) mul_sqr1_hi#0+(word/signed word) 256) [ ] ( main:2::init_mul_tables:5 [ ] ) always clobbers reg byte a @@ -3202,60 +2979,12 @@ Uplift Scope [print_word] 10.67: zp ZP_WORD:6 [ print_word::w#2 print_word::w#0 Uplift Scope [main] Uplift Scope [init_mul_tables_asm] -Succesfully loaded fragment vbuxx=vbuc1 -Succesfully loaded fragment vbuxx=_inc_vbuxx -Succesfully loaded fragment vbuyy_neq_0_then_la1 Uplifting [init_mul_tables] best 5670 combination zp ZP_WORD:22 [ init_mul_tables::sqr#3 init_mul_tables::sqr#4 init_mul_tables::sqr#1 init_mul_tables::sqr#2 ] reg byte x [ init_mul_tables::c#2 init_mul_tables::c#1 ] zp ZP_BYTE:21 [ init_mul_tables::x_2#3 init_mul_tables::x_2#2 init_mul_tables::x_2#1 ] reg byte a [ init_mul_tables::$2 ] reg byte a [ init_mul_tables::$5 ] reg byte a [ init_mul_tables::$6 ] zp ZP_WORD:25 [ init_mul_tables::sqr2_lo#2 init_mul_tables::sqr2_lo#1 ] zp ZP_WORD:17 [ init_mul_tables::sqr1_lo#2 init_mul_tables::sqr1_lo#1 ] reg byte x [ init_mul_tables::x_255#2 init_mul_tables::x_255#1 ] zp ZP_WORD:27 [ init_mul_tables::sqr2_hi#2 init_mul_tables::sqr2_hi#1 ] zp ZP_BYTE:29 [ init_mul_tables::dir#2 init_mul_tables::dir#3 ] zp ZP_WORD:19 [ init_mul_tables::sqr1_hi#2 init_mul_tables::sqr1_hi#1 ] Uplifting [] best 5670 combination zp ZP_WORD:10 [ char_cursor#44 char_cursor#27 char_cursor#39 char_cursor#19 char_cursor#17 char_cursor#10 char_cursor#1 ] Uplifting [print_str] best 5670 combination zp ZP_WORD:12 [ print_str::str#3 print_str::str#5 print_str::str#0 ] Uplifting [print_cls] best 5670 combination zp ZP_WORD:14 [ print_cls::sc#2 print_cls::sc#1 ] Uplifting [mul_tables_compare] best 5670 combination zp ZP_WORD:2 [ mul_tables_compare::kc_sqr#2 mul_tables_compare::kc_sqr#1 ] zp ZP_WORD:4 [ mul_tables_compare::asm_sqr#2 mul_tables_compare::asm_sqr#1 ] -Attempting fragment synthesis vbuz1=vbuxx_ror_4 -Attempting fragment synthesis vbuaa=vbuxx_ror_4 -Succesfully loaded fragment vbuaa=vbuaa_ror_4 -Succesfully synthesized fragment vbuaa=vbuxx_ror_4 (from vbuaa=vbuaa_ror_4) -Succesfully synthesized fragment vbuz1=vbuxx_ror_4 (from vbuaa=vbuxx_ror_4) -Attempting fragment synthesis vbuaa=vbuz1_ror_4 -Succesfully loaded fragment vbuaa=vbuaa_ror_4 -Succesfully synthesized fragment vbuaa=vbuz1_ror_4 (from vbuaa=vbuaa_ror_4) -Attempting fragment synthesis vbuaa=vbuxx_ror_4 -Succesfully loaded fragment vbuaa=vbuaa_ror_4 -Succesfully synthesized fragment vbuaa=vbuxx_ror_4 (from vbuaa=vbuaa_ror_4) -Attempting fragment synthesis vbuxx=vbuz1_ror_4 -Attempting fragment synthesis vbuaa=vbuz1_ror_4 -Succesfully loaded fragment vbuaa=vbuaa_ror_4 -Succesfully synthesized fragment vbuaa=vbuz1_ror_4 (from vbuaa=vbuaa_ror_4) -Succesfully synthesized fragment vbuxx=vbuz1_ror_4 (from vbuaa=vbuz1_ror_4) -Attempting fragment synthesis vbuxx=vbuaa_ror_4 -Succesfully loaded fragment vbuaa=vbuaa_ror_4 -Succesfully synthesized fragment vbuxx=vbuaa_ror_4 (from vbuaa=vbuaa_ror_4) -Attempting fragment synthesis vbuyy=vbuz1_ror_4 -Attempting fragment synthesis vbuaa=vbuz1_ror_4 -Succesfully loaded fragment vbuaa=vbuaa_ror_4 -Succesfully synthesized fragment vbuaa=vbuz1_ror_4 (from vbuaa=vbuaa_ror_4) -Succesfully synthesized fragment vbuyy=vbuz1_ror_4 (from vbuaa=vbuz1_ror_4) -Attempting fragment synthesis vbuz1=pbuc1_derefidx_vbuyy -Attempting fragment synthesis vbuz1=vwuc1_derefidx_vbuyy -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuyy -Succesfully synthesized fragment vbuz1=vwuc1_derefidx_vbuyy (from vbuaa=vwuc1_derefidx_vbuyy) -Succesfully synthesized fragment vbuz1=pbuc1_derefidx_vbuyy (from vbuz1=vwuc1_derefidx_vbuyy) -Attempting fragment synthesis vbuyy=vbuaa_ror_4 -Succesfully loaded fragment vbuaa=vbuaa_ror_4 -Succesfully synthesized fragment vbuyy=vbuaa_ror_4 (from vbuaa=vbuaa_ror_4) -Attempting fragment synthesis vbuyy=vbuxx_ror_4 -Attempting fragment synthesis vbuaa=vbuxx_ror_4 -Succesfully loaded fragment vbuaa=vbuaa_ror_4 -Succesfully synthesized fragment vbuaa=vbuxx_ror_4 (from vbuaa=vbuaa_ror_4) -Succesfully synthesized fragment vbuyy=vbuxx_ror_4 (from vbuaa=vbuxx_ror_4) Uplifting [print_byte] best 5658 combination reg byte x [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ] reg byte y [ print_byte::$0 ] reg byte a [ print_byte::$2 ] -Attempting fragment synthesis vbuaa=pbuc1_derefidx_vbuyy -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuyy -Succesfully synthesized fragment vbuaa=pbuc1_derefidx_vbuyy (from vbuaa=vwuc1_derefidx_vbuyy) -Attempting fragment synthesis vbuyy=pbuc1_derefidx_vbuyy -Attempting fragment synthesis vbuyy=vwuc1_derefidx_vbuyy -Succesfully loaded fragment vbuaa=vwuc1_derefidx_vbuyy -Succesfully synthesized fragment vbuyy=vwuc1_derefidx_vbuyy (from vbuaa=vwuc1_derefidx_vbuyy) -Succesfully synthesized fragment vbuyy=pbuc1_derefidx_vbuyy (from vbuyy=vwuc1_derefidx_vbuyy) Uplifting [print_char] best 5649 combination reg byte a [ print_char::ch#2 print_char::ch#0 print_char::ch#1 ] Uplifting [print_word] best 5649 combination zp ZP_WORD:6 [ print_word::w#2 print_word::w#0 print_word::w#1 ] Uplifting [main] best 5649 combination @@ -3275,7 +3004,6 @@ Coalescing zero page register [ zp ZP_BYTE:21 [ init_mul_tables::x_2#3 init_mul_ Allocated (was zp ZP_WORD:10) zp ZP_WORD:6 [ char_cursor#44 char_cursor#27 char_cursor#39 char_cursor#19 char_cursor#17 char_cursor#10 char_cursor#1 print_cls::sc#2 print_cls::sc#1 init_mul_tables::sqr#3 init_mul_tables::sqr#4 init_mul_tables::sqr#1 init_mul_tables::sqr#2 ] Allocated (was zp ZP_WORD:12) zp ZP_WORD:8 [ print_str::str#3 print_str::str#5 print_str::str#0 ] Allocated (was zp ZP_BYTE:21) zp ZP_BYTE:10 [ init_mul_tables::x_2#3 init_mul_tables::x_2#2 init_mul_tables::x_2#1 init_mul_tables::dir#2 init_mul_tables::dir#3 ] -Succesfully loaded fragment vwuz1=_word_pbuz1 ASSEMBLER BEFORE OPTIMIZATION //SEG0 Basic Upstart